/* NALVEON RACINE™ — custom CSS (centralized, editable). Generated by Claude Code. */
:root{--nlv-encre:#15171B;--nlv-creme:#F2EDE4;--nlv-champ:#C9A878;--nlv-taupe:#7A6E5F;--nlv-mist:#B8B2A6;}

/* ERROR #2 — split payment under price */
.nalveon-split-pay{display:flex;align-items:center;gap:6px;font-family:'Manrope',sans-serif;font-size:13px;color:var(--nlv-taupe);margin-top:6px;}
.nalveon-split-pay strong{color:var(--nlv-encre);font-weight:600;}
.nalveon-split-pay svg{color:var(--nlv-champ);flex-shrink:0;}

/* ERROR #4 — urgency badge above price */
.nalveon-urgency-badge{display:inline-flex;align-items:center;gap:7px;background:var(--nlv-creme);border:1px solid var(--nlv-champ);border-radius:99px;padding:4px 12px;font-family:'Manrope',sans-serif;font-size:12px;font-weight:600;color:var(--nlv-taupe);letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px;}
.nalveon-urgency-badge .badge-dot{width:6px;height:6px;border-radius:50%;background:var(--nlv-champ);animation:nlv-dot-blink 1.5s ease-in-out infinite;}
@keyframes nlv-dot-blink{0%,100%{opacity:1}50%{opacity:.3}}

/* ERROR #3 — CTA pulse (text set via PHP filter) */
@keyframes nalveon-pulse{0%,100%{box-shadow:0 0 0 0 rgba(201,168,120,.4)}50%{box-shadow:0 0 0 8px rgba(201,168,120,0)}}
.single_add_to_cart_button{animation:nalveon-pulse 2.5s ease-in-out infinite;}
.single_add_to_cart_button:hover{animation:none;}

/* ERROR #5 — colour swatches */
.variable-items-wrapper .variable-item{border:2px solid transparent !important;border-radius:50% !important;transition:border-color .2s ease, box-shadow .2s ease !important;}
.variable-items-wrapper .variable-item.selected,
.variable-items-wrapper .variable-item:hover{border-color:var(--nlv-champ) !important;box-shadow:0 0 0 2px rgba(201,168,120,.3) !important;}

/* ERROR #6 — hook line */
.nalveon-hook-line{font-family:'Space Grotesk',sans-serif;font-size:18px;font-weight:500;color:var(--nlv-taupe);font-style:italic;line-height:1.5;margin:8px 0 16px;border-left:2px solid var(--nlv-champ);padding-left:14px;}

/* ERROR #7 — media placeholders */
.nalveon-media-placeholder{background:var(--nlv-creme);border:1px dashed var(--nlv-champ);border-radius:12px;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;}
.nalveon-media-placeholder .placeholder-inner{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;}
.nalveon-media-placeholder .placeholder-inner p{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:600;color:var(--nlv-taupe);margin:0;}
.nalveon-media-placeholder .placeholder-inner span{font-family:'Manrope',sans-serif;font-size:12px;color:var(--nlv-mist);}

/* ERROR #8 — stat context micro-text */
.nalveon-stat-context{font-family:'Manrope',sans-serif;font-size:11px;font-weight:500;color:var(--nlv-mist);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;display:block;}

/* ERROR #10 — mobile sticky CTA */
.nalveon-sticky-cta{position:fixed;bottom:0;left:0;right:0;background:var(--nlv-encre);padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:9999;transform:translateY(100%);transition:transform .35s cubic-bezier(.22,1,.36,1);border-top:1px solid rgba(201,168,120,.3);}
.nalveon-sticky-cta.visible{transform:translateY(0);}
.nalveon-sticky-cta .sticky-name{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;color:var(--nlv-creme);}
.nalveon-sticky-cta .sticky-price{font-family:'Manrope',sans-serif;font-size:13px;color:var(--nlv-champ);display:block;}
.nalveon-sticky-cta .sticky-btn{background:var(--nlv-champ);color:var(--nlv-encre);font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:700;padding:10px 18px;border-radius:8px;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:background .2s;}
.nalveon-sticky-cta .sticky-btn:hover{background:#b8976a;}
@media (min-width:768px){.nalveon-sticky-cta{display:none !important;}}

/* GLOBAL — scroll reveal */
.nlv-js .nalveon-reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease, transform .6s cubic-bezier(.22,1,.36,1);}
.nlv-js .nalveon-reveal.is-visible{opacity:1;transform:translateY(0);}

/* GLOBAL — card hover */
.nalveon-card-hover{transition:transform .25s ease, box-shadow .25s ease;}
.nalveon-card-hover:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(21,23,27,.08);}

/* GLOBAL — gallery variant transition */
.woocommerce-product-gallery__image img{transition:opacity .3s ease;}

/* ERROR #12 — review cards */
.nalveon-review-card{background:var(--nlv-creme);border-radius:16px;padding:24px;position:relative;}
.nalveon-review-card::before{content:'\201C';font-family:'Space Grotesk',sans-serif;font-size:64px;color:var(--nlv-champ);opacity:.3;position:absolute;top:10px;left:20px;line-height:1;}
.nalveon-reviewer-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--nlv-champ);}

/* ERROR #12 — initials avatar */
.nlv-avatar-initial{display:flex;align-items:center;justify-content:center;background:#C9A878;color:#15171B;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:18px;margin-bottom:10px;}

/* ===== added: CTA emphasis + responsive offer/design ===== */
.single_add_to_cart_button{font-family:'Space Grotesk',sans-serif !important;font-weight:700 !important;font-size:16px !important;letter-spacing:.03em !important;padding:16px 26px !important;width:100% !important;border-radius:10px !important;box-shadow:0 6px 18px rgba(201,168,120,.28) !important;transition:transform .2s ease, box-shadow .2s ease, background .2s ease;}
.single_add_to_cart_button:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(201,168,120,.38) !important;}
.nalveon-urgency-badge{white-space:normal;line-height:1.3;max-width:100%;}
@media(max-width:767px){
 .nlv-price-row{flex-wrap:wrap !important;align-items:center !important;row-gap:6px !important;column-gap:10px !important;}
 .nlv-price-row > .elementor-element-bd7163d{flex:0 0 100% !important;}
 .nalveon-urgency-badge{font-size:11px;padding:4px 10px;letter-spacing:.03em;}
 .single_add_to_cart_button{font-size:15px !important;padding:15px 18px !important;}
 .elementor-element-rStRow{flex-wrap:wrap !important;}
 .elementor-element-rStRow > .elementor-element{flex:0 0 calc(50% - 8px) !important;}
 .nalveon-media-placeholder{aspect-ratio:16/9;}
}
@media(max-width:480px){ .nalveon-urgency-badge{font-size:10px;letter-spacing:.02em;} }

/* ===== Reviews: rating bars + photo space ===== */
.nlv-rating-bars{display:flex;flex-direction:column;gap:9px;max-width:440px;margin-top:6px;}
.nlv-bar-row{display:flex;align-items:center;gap:12px;font-family:'Manrope',sans-serif;font-size:13px;color:#7A6E5F;}
.nlv-bar-star{flex:0 0 38px;white-space:nowrap;color:#15171B;font-weight:600;letter-spacing:.02em;}
.nlv-bar-track{flex:1;height:8px;background:#E9E2D5;border-radius:99px;overflow:hidden;}
.nlv-bar-fill{display:block;height:100%;background:#C9A878;border-radius:99px;}
.nlv-bar-pct{flex:0 0 40px;text-align:right;color:#15171B;font-weight:600;font-variant-numeric:tabular-nums;}
.nlv-review-photos{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 2px;}
.nlv-review-photo{width:66px;height:66px;border-radius:10px;background:#F2EDE4;border:1px dashed #C9A878;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.nlv-review-photo img{width:100%;height:100%;object-fit:cover;}
@media(max-width:767px){.nlv-rating-bars{max-width:100%;}.nlv-bar-row{font-size:12px;gap:10px;}.nlv-review-photo{width:58px;height:58px;}}
