/* Schel Cosméticos · direção "Brilho": névoa rosada, magenta de gloss, ameixa profunda */
:root{
  --canvas:#FBF0F4;
  --panel:#FFF8FB;
  --panel-2:#F7E3EB;
  --plum:#2B0D1E;
  --plum-2:#3D1530;
  --accent:#C8105F;
  --accent-hover:#A00B4C;
  --accent-muted:#F2B8CF;
  --text-primary:#2B0D1E;
  --text-secondary:#76465F;
  --line:#EBCFDB;
  --line-strong:#B98AA0;
  --wpp:#1FA855;
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-io:cubic-bezier(.65,0,.35,1);
  --r-lg:32px;
  --r-md:22px;
  --pad:max(clamp(16px,5vw,64px), calc((100% - 1200px) / 2));
  --f-display:'Bricolage Grotesque', 'Hanken Grotesk', system-ui, sans-serif;
  --f-text:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --f-mono:'DM Mono', ui-monospace, 'Cascadia Mono', monospace;
  --tglow:0 1px 1px rgba(255,248,251,.9),0 2px 14px rgba(255,242,247,.85),0 8px 40px rgba(255,236,244,.75);
  --shadow:0 1px 2px rgba(43,13,30,.06),0 12px 40px -12px rgba(43,13,30,.22);
}
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:hidden;overflow-x:clip;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;overflow-x:clip;background:var(--canvas);color:var(--text-primary);font-family:var(--f-text);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;animation:pageIn .5s var(--ease-out) both}
@keyframes pageIn{from{opacity:0}to{opacity:1}}
img{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;padding:0}
input,select{font:inherit;color:inherit}
svg{display:block}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mono{font-family:var(--f-mono);font-feature-settings:"tnum"}
.skip{position:fixed;left:16px;top:-60px;z-index:100;background:var(--plum);color:#fff;padding:10px 16px;border-radius:12px;text-decoration:none;transition:top .3s var(--ease-out)}
.skip:focus{top:12px}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:10px}
main:focus{outline:none}

/* Ambiente fixo: bokeh rosado derivando devagar */
.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.blob{position:absolute;width:70vmax;height:70vmax;border-radius:50%;opacity:.55;will-change:transform}
.blob.a1{left:-25vmax;top:-20vmax;background:radial-gradient(circle,rgba(242,184,207,.75),rgba(242,184,207,0) 62%);animation:drift1 74s var(--ease-io) -12s infinite alternate}
.blob.a2{right:-30vmax;top:30vh;background:radial-gradient(circle,rgba(232,51,127,.16),rgba(232,51,127,0) 60%);animation:drift2 88s var(--ease-io) -30s infinite alternate}
.blob.a3{left:20vw;bottom:-40vmax;background:radial-gradient(circle,rgba(170,90,200,.14),rgba(170,90,200,0) 60%);animation:drift1 96s var(--ease-io) -50s infinite alternate-reverse}
@keyframes drift1{to{transform:translate3d(18vw,12vh,0) scale(1.15)}}
@keyframes drift2{to{transform:translate3d(-16vw,-18vh,0) scale(.9)}}
.grain{position:absolute;inset:-50%;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* Navegação */
.nav{position:fixed;top:0;left:0;right:0;z-index:40;height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 clamp(16px,4vw,44px)}
.nav::before{content:"";position:absolute;inset:0;background:rgba(251,240,244,.84);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);box-shadow:0 1px 0 rgba(185,138,160,.25);opacity:0;transition:opacity .5s var(--ease-out)}
.nav::before{opacity:.55}
.nav.solid::before{opacity:1}
.nav>*{position:relative}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none}
.logo{width:118px;height:34px}
.brand-sub{font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary);transform:translateY(2px)}
.links{display:flex;gap:4px}
.links a{position:relative;text-decoration:none;font-weight:500;font-size:15px;padding:10px 12px;border-radius:999px;transition:color .3s var(--ease-out)}
.links a::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:2px;border-radius:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-out)}
.links a:hover::after,.links a.on::after{transform:scaleX(1)}
.nav-actions{display:flex;align-items:center;gap:6px}
.icon-btn{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;transition:background-color .3s var(--ease-out),transform .3s var(--ease-out)}
.icon-btn:hover{background:rgba(200,16,95,.08)}
.icon-btn svg{width:22px;height:22px}

/* Assinatura: a sacola que enche de gloss */
.bag{position:relative;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;color:var(--plum);transition:background-color .3s var(--ease-out)}
.bag:hover{background:rgba(200,16,95,.08)}
.bag-svg{width:34px;height:38px;overflow:visible}
.bag-svg .liquid{transform:translateY(46px);transition:transform 1.1s var(--ease-out)}
.bag-svg .wave{animation:wave 2.8s linear infinite}
@keyframes wave{to{transform:translateX(22px)}}
.bag::after{content:"";position:absolute;inset:2px;border-radius:50%;box-shadow:0 0 0 2px rgba(200,16,95,.5),0 0 24px 6px rgba(232,51,127,.45);opacity:0;transition:opacity .6s var(--ease-out)}
.bag.full::after{animation:bagGlow 3.2s ease-in-out -1s infinite}
@keyframes bagGlow{0%,100%{opacity:.25}50%{opacity:.9}}
.bag.gulp .bag-svg{animation:gulp .7s var(--ease-out)}
@keyframes gulp{0%{transform:scale(1)}30%{transform:scale(1.18,.9)}60%{transform:scale(.94,1.06)}100%{transform:scale(1)}}
.bag-count{position:absolute;top:2px;right:0;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font:600 11px/20px var(--f-mono);text-align:center;transform:scale(0);transition:transform .5s var(--ease-out)}
.bag-count.on{transform:scale(1)}
.fly{position:fixed;left:0;top:0;z-index:90;width:22px;height:30px;pointer-events:none;will-change:transform}

/* Botões */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none;white-space:nowrap;transition:background-color .35s var(--ease-out),color .35s var(--ease-out),transform .35s var(--ease-out),box-shadow .35s var(--ease-out);isolation:isolate;overflow:hidden}
.btn svg{width:20px;height:20px}
.btn-main{background:var(--accent);color:#fff;box-shadow:0 10px 30px -10px rgba(200,16,95,.7)}
.btn-main::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.38) 50%,transparent 70%);transform:translateX(-120%);transition:transform .9s var(--ease-out)}
.btn-main:hover{background:var(--accent-hover);transform:translateY(-2px)}
.btn-main:hover::before{transform:translateX(120%)}
.btn-main:disabled{background:#D9B3C4;box-shadow:none;cursor:not-allowed;transform:none}
.btn-ghost{background:rgba(255,248,251,.7);color:var(--plum);box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.btn-ghost:hover{background:#fff;transform:translateY(-2px)}
.btn-light{background:#FFF0F6;color:var(--plum)}
.btn-light:hover{background:#fff;transform:translateY(-2px)}
.btn-wide{width:100%}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
.cta-row.center{justify-content:center}

/* HERO */
.hero{position:relative;height:660vh}
.stage{position:sticky;top:0;height:100vh;overflow:hidden;background:var(--plum)}
.stage-in{position:absolute;inset:0;transform-origin:50% 35%;will-change:transform;background:var(--panel-2)}
.stage-shade{position:absolute;inset:0;background:var(--plum);opacity:0;pointer-events:none}
.poster{position:absolute;inset:0;background:var(--panel-2) center/cover no-repeat}
#heroVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s var(--ease-out);will-change:transform;transform:translateZ(0)}
.stage.video-ready #heroVideo{opacity:1}
.stage.video-failed #heroVideo{display:none}
.scrim{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 120% 95% at 50% 45%,rgba(251,240,244,0) 45%,rgba(251,240,244,.4) 100%)}
.band{position:absolute;opacity:0;pointer-events:none;text-shadow:var(--tglow);isolation:isolate}
.band.live{pointer-events:auto}
.band::before{content:"";position:absolute;inset:-18% -14%;z-index:-1;pointer-events:none;opacity:calc(.3 + .7*var(--k,1));background:radial-gradient(ellipse 72% 64% at 50% 50%,rgba(253,244,248,.7) 0%,rgba(253,244,248,.45) 45%,rgba(253,244,248,0) 78%)}
.band .btn{text-shadow:none}
.b2::before{background:radial-gradient(ellipse 72% 64% at 50% 50%,rgba(253,244,248,.8) 0%,rgba(253,244,248,.56) 45%,rgba(253,244,248,0) 78%)}
.b1,.b3{left:clamp(24px,5.5vw,96px);top:50%;transform:translateY(-50%);width:min(500px,33vw)}
.b3{top:42%}
.b2{right:clamp(24px,5.5vw,96px);top:44%;transform:translateY(-50%);width:min(500px,33vw);text-align:right}
.b4{left:50%;top:15vh;transform:translateX(-50%);width:min(900px,86vw);text-align:center}
.b4 .cta-row{justify-content:center;margin-top:26px}
.kicker{margin:0 0 18px;font-family:var(--f-mono);font-weight:500;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--plum-2)}
.h-hero{margin:0;font-family:var(--f-display);font-weight:800;font-size:clamp(46px,5.6vw,96px);line-height:.94;letter-spacing:-.025em;font-variation-settings:"opsz" 96}
.h-band{margin:0;font-family:var(--f-display);font-weight:800;font-size:clamp(40px,4.4vw,76px);line-height:.96;letter-spacing:-.02em}
.h-band em,.h-hero em,.w.em{font-style:normal;color:var(--accent)}
.band .sub{margin:20px 0 0;font-size:clamp(17px,1.35vw,20px);line-height:1.5;color:var(--plum-2);max-width:40ch}
.b2 .sub{margin-left:auto}
/* divisão de texto */
.vis{display:inline}
.w{display:inline-block;white-space:nowrap}
.c{display:inline-block}
/* faixa 1: deriva para baixo, como a gota */
.b1 .kicker{--kc:clamp(0,var(--k,0)*3,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*-10px))}
.b1 .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*2.8,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*-30px))}
/* faixa 2: soco no impacto */
.b2 .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*3,1);--ks:clamp(0,(var(--k,0) - var(--th,0) - var(--sd,.1))*var(--ss,3.2),1);opacity:var(--kc);transform:scale(calc(.6 + (.4 + var(--ov,.12))*var(--kc) - var(--ov,.12)*var(--ks)))}
.b2 .w.em{--ov:.26;--sd:.16;--ss:2.6}
/* faixa 3: metades se abrindo, como as ondas */
.b3 .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*2.6,1);opacity:var(--kc);transform:translateX(calc((1 - var(--kc))*var(--jx,0px)))}
/* faixa 4: subida palavra por palavra, em etapas */
.b4 .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*3,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*34px))}
.b4 .cta-row{--kb:clamp(0,(var(--k,0) - .7)*4,1);opacity:var(--kb);transform:translateY(calc((1 - var(--kb))*16px))}
.band .sub{--ks:clamp(0,(var(--k,0) - .5)*3,1);opacity:var(--ks);transform:translateY(calc((1 - var(--ks))*12px))}
.cue{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--plum);transition:opacity .6s var(--ease-out)}
.cue.gone{opacity:0}
.ring{width:44px;height:44px}
.ring-fill{stroke-dashoffset:var(--ld,126);transition:stroke-dashoffset .2s linear}
.cue-label{font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.cue .chev{width:20px;height:20px;animation:chev 2.4s var(--ease-io) -1s infinite}
@keyframes chev{0%,100%{transform:translateY(-3px)}50%{transform:translateY(5px)}}
.hero-static{display:none}
@media (max-height:560px){.cue{display:none}}

/* Os cinco portões do hero estático (iguais aos do JavaScript) */
@media (max-width: 720px), (orientation: portrait) and (max-width: 1024px), (orientation: portrait) and (pointer: coarse), (orientation: landscape) and (pointer: coarse) and (max-height: 560px), (prefers-reduced-motion: reduce){
  html:not(.cel-scrub) .hero{height:auto}
  html:not(.cel-scrub) .stage{display:none}
  html:not(.cel-scrub) .hero-static{display:flex;align-items:flex-end;min-height:100vh;min-height:100svh;padding:110px clamp(20px,6vw,64px) 64px;background:url('hero-poster.jpg') center 35%/cover no-repeat;position:relative}
  html:not(.cel-scrub) .hero-static::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(251,240,244,0) 30%,rgba(251,240,244,.78) 62%,rgba(251,240,244,.96) 100%)}
  html:not(.cel-scrub) .hs-copy{position:relative;max-width:620px;text-shadow:var(--tglow)}
  html:not(.cel-scrub) .hs-copy .sub{margin:18px 0 26px;font-size:18px;color:var(--plum-2);max-width:34ch}
  html:not(.cel-scrub) .hs-copy .btn{text-shadow:none}
  html:not(.cel-scrub) .sheet{margin-top:-44px}
}
@media (max-width: 720px){
  .hero-static{background-image:url('hero-poster-cel.jpg');background-position:center top}
  .hs-copy .h-hero{font-size:clamp(46px,13vw,64px)}
  .hero-static{padding-bottom:118px}
  .stats li{flex-direction:column;gap:2px}
}

/* A folha do site: sobe por cima da gota no fim do hero */
.sheet{position:relative;z-index:2;margin-top:-100vh;padding-top:44px;border-radius:44px 44px 0 0;background:radial-gradient(120% 70vh at 12% 0,rgba(242,184,207,.6),rgba(242,184,207,0) 70%) no-repeat,linear-gradient(180deg,var(--canvas) 0,var(--canvas) calc(100vh + 160px),rgba(251,240,244,0) calc(100vh + 560px)) no-repeat;box-shadow:0 -34px 80px -30px rgba(43,13,30,.6),inset 0 1px 0 rgba(255,255,255,.95)}
.sheet-lip{position:absolute;left:50%;top:14px;width:54px;height:5px;margin-left:-27px;border-radius:5px;background:var(--accent-muted)}

/* Celular em pé com a gota andando com o dedo */
@media (max-width: 720px) and (orientation: portrait){
  html.cel-scrub .band{left:18px;right:18px;width:auto;transform:none;text-align:center}
  html.cel-scrub .b1{top:auto;bottom:calc(104px + env(safe-area-inset-bottom))}
  html.cel-scrub .b2,html.cel-scrub .b3,html.cel-scrub .b4{top:92px}
  html.cel-scrub .band .sub{margin:14px auto 0;font-size:16px;max-width:30ch}
  html.cel-scrub .band .h-hero{font-size:clamp(40px,11.4vw,58px)}
  html.cel-scrub .band .h-band{font-size:clamp(34px,9.6vw,50px)}
  html.cel-scrub .band .kicker{font-size:11px;margin-bottom:10px}
  html.cel-scrub .b4 .cta-row{margin-top:20px}
  html.cel-scrub .band::before{inset:-6px -2px;border-radius:30px;background:rgba(253,244,248,.74);box-shadow:0 0 34px 22px rgba(253,244,248,.74)}
  html.cel-scrub .cue{bottom:calc(92px + env(safe-area-inset-bottom))}
  html.cel-scrub .cue{display:none}
  .sheet{border-radius:30px 30px 0 0}
}

/* Letreiro */
.ticker{overflow:hidden;background:var(--plum);color:#FBE3EC;padding:18px 0}
.ticker-track{display:flex;width:max-content}
.ticker-list{display:flex;gap:44px;margin:0;padding:0 22px;list-style:none;font-family:var(--f-display);font-weight:600;font-size:20px;white-space:nowrap}
.ticker-list li{display:flex;align-items:center;gap:14px}
.ticker-list svg{width:14px;height:19px}
.ticker.inview .ticker-track{animation:marquee 42s linear infinite}
@keyframes marquee{to{transform:translateX(-50%)}}

/* Seções */
.sec{position:relative;padding:clamp(80px,11vw,150px) var(--pad)}
.sec-head{margin-bottom:clamp(32px,4vw,52px)}
.sec-head.center{text-align:center}
.eyebrow{margin:0 0 14px;font-family:var(--f-mono);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.h2{margin:0;font-family:var(--f-display);font-weight:800;font-size:clamp(36px,4.6vw,64px);line-height:1;letter-spacing:-.022em}
.h3{margin:0;font-family:var(--f-display);font-weight:600;font-size:clamp(22px,2vw,28px);line-height:1.15;letter-spacing:-.01em}
.lede{margin:18px 0 0;font-size:clamp(17px,1.4vw,20px);color:var(--text-secondary);max-width:46ch}

/* entradas por scroll */
[data-rv] .rv{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);transition-delay:calc(var(--i,0)*90ms)}
[data-rv].in .rv{opacity:1;transform:none}
[data-rv].in.done .rv{transition-delay:0s!important}

/* Categorias */
.cat-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:repeat(2,minmax(220px,300px));gap:18px}
.cat{position:relative;display:block;border-radius:var(--r-lg);overflow:hidden;background:var(--panel-2);text-align:left;isolation:isolate;opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);transition-delay:calc(var(--i,0)*90ms)}
.cats.in .cat{opacity:1;transform:none}
.cats.in.done .cat{transition-delay:0s!important}
.cat:first-child{grid-row:span 2}
.cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
.cat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(43,13,30,0) 40%,rgba(43,13,30,.78) 100%);z-index:1}
.cat:hover img{transform:scale(1.07)}
.cat-txt{position:absolute;left:24px;right:24px;bottom:22px;z-index:2;color:#fff}
.cat-name{display:flex;align-items:center;justify-content:space-between;font-family:var(--f-display);font-weight:800;font-size:clamp(26px,2.6vw,38px);line-height:1}
.cat-name svg{width:30px;height:30px;padding:6px;border-radius:50%;background:rgba(255,255,255,.2);transition:transform .5s var(--ease-out),background-color .5s var(--ease-out)}
.cat:hover .cat-name svg{transform:translateX(4px);background:var(--accent)}
.cat-line{margin:6px 0 0;font-size:15px;opacity:.86}
.cat-n{font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;opacity:.8}
.cat::before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.22) 50%,transparent 65%);transform:translateX(-120%)}
.cats.inview .cat:first-child::before{animation:sheen 7s var(--ease-io) -2s infinite}
@keyframes sheen{0%,60%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}

/* Lançamentos */
.news-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:36px}
.news-nav{display:flex;gap:10px}
.round{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--line-strong);background:rgba(255,248,251,.7);transition:background-color .3s var(--ease-out),transform .3s var(--ease-out)}
.round:hover{background:#fff;transform:scale(1.06)}
.round svg{width:20px;height:20px}
.news-track{display:grid;grid-auto-flow:column;grid-auto-columns:min(320px,76vw);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px var(--pad) 26px;margin:0 calc(var(--pad) * -1);scrollbar-width:none;cursor:grab;overscroll-behavior-x:contain}
.news-track::-webkit-scrollbar{display:none}
.news-track.drag{cursor:grabbing;scroll-snap-type:none}
.news-track.drag *{pointer-events:none}
.news-track .card{scroll-snap-align:start}

/* Cartão de produto */
.card{position:relative;display:flex;flex-direction:column;background:var(--panel);border-radius:var(--r-md);padding:10px;box-shadow:var(--shadow);transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out)}
.card:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(43,13,30,.06),0 24px 50px -16px rgba(43,13,30,.3)}
.card-img{position:relative;aspect-ratio:1;border-radius:16px;overflow:hidden;background:var(--panel-2)}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease-out)}
.card:hover .card-img img{transform:scale(1.06)}
.card-img .zoom{position:absolute;inset:0;z-index:1}
.badge{position:absolute;left:10px;top:10px;z-index:2;padding:5px 10px;border-radius:999px;font:500 12px/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;background:#fff;color:var(--plum)}
.badge.off{background:var(--accent);color:#fff}
.badge.new::after{content:"";position:absolute;inset:-3px;border-radius:999px;box-shadow:0 0 14px 3px rgba(232,51,127,.5);opacity:0}
.inview .badge.new::after{animation:pulse 4s ease-in-out -1.5s infinite}
@keyframes pulse{0%,100%{opacity:0}50%{opacity:1}}
.fav{position:absolute;right:10px;top:10px;z-index:2;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.88);color:var(--plum);transition:transform .4s var(--ease-out)}
.fav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.fav:hover{transform:scale(1.1)}
.fav.on{color:var(--accent)}
.fav.on svg{fill:currentColor;animation:heart .6s var(--ease-out)}
@keyframes heart{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}
.card-body{display:flex;flex-direction:column;flex:1;padding:14px 8px 6px}
.card-brand{margin:0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}
.card-name{margin:4px 0 0;font-family:var(--f-text);font-weight:600;font-size:17px;line-height:1.3}
.card-name button{text-align:left}
.card-name button:hover{color:var(--accent)}
.card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px}
.price{margin:0;font-family:var(--f-mono);font-weight:500;font-size:18px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.price s{font-size:13px;color:var(--text-secondary)}
.add{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--plum);color:#fff;transition:background-color .3s var(--ease-out),transform .4s var(--ease-out)}
.add svg{width:20px;height:20px;transition:transform .4s var(--ease-out)}
.add:hover{background:var(--accent);transform:scale(1.08)}
.add:hover svg{transform:rotate(90deg)}
.add.ok{background:var(--accent)}

/* Provador */
.try{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(32px,6vw,90px);align-items:center}
.try-stage{position:relative;border-radius:40px;padding:clamp(36px,5vw,70px) clamp(20px,4vw,50px) 26px;background:radial-gradient(circle at 50% 40%,#FFE9F1,#F5D2DF 70%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.6),var(--shadow)}
.lips{width:100%;max-width:440px;margin:0 auto;filter:drop-shadow(0 18px 24px rgba(160,11,76,.25))}
.lip-color{transition:opacity .7s var(--ease-out)}
.lip-shine{opacity:.5}
.try.inview .lip-shine.s1{animation:shine 5s ease-in-out -2s infinite}
.try.inview .lip-shine.s2{animation:shine 5s ease-in-out -3.4s infinite}
@keyframes shine{0%,100%{opacity:.35}50%{opacity:.75}}
.try-note{margin:22px 0 0;text-align:center;font-size:13px;color:var(--text-secondary)}
.swatches{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0 26px}
.sw{position:relative;width:58px;height:58px;border-radius:50%;background:var(--c);box-shadow:inset 0 -6px 12px rgba(0,0,0,.15),inset 0 6px 10px rgba(255,255,255,.45);transition:transform .45s var(--ease-out)}
.sw::after{content:"";position:absolute;inset:-6px;border-radius:50%;box-shadow:0 0 0 2.5px var(--plum);opacity:0;transform:scale(.85);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out)}
.sw:hover{transform:translateY(-3px)}
.sw[aria-checked="true"]::after{opacity:1;transform:scale(1)}
.sw-name{position:absolute;left:50%;top:calc(100% + 10px);transform:translateX(-50%);font-size:12px;white-space:nowrap;color:var(--text-secondary);opacity:0;transition:opacity .3s}
.sw:hover .sw-name,.sw[aria-checked="true"] .sw-name{opacity:1}
.try-pick{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:34px;padding:18px 18px 18px 24px;border-radius:999px;background:var(--panel);box-shadow:var(--shadow)}
.try-name{margin:0;font-weight:600}
.try-price{margin:0;color:var(--text-secondary)}

/* Loja */
.shop-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:26px}
.shop-tools{display:flex;gap:12px;flex-wrap:wrap}
.search{display:flex;align-items:center;gap:10px;height:52px;padding:0 18px;border-radius:999px;background:var(--panel);box-shadow:inset 0 0 0 1.5px var(--line);min-width:min(320px,100%);transition:box-shadow .3s var(--ease-out)}
.search:focus-within{box-shadow:inset 0 0 0 2px var(--accent)}
.search svg{width:20px;height:20px;color:var(--text-secondary);flex:none}
.search input{border:0;background:none;outline:none;width:100%;font-size:16px}
.sort select{height:52px;padding:0 44px 0 18px;border-radius:999px;border:0;background:var(--panel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%232B0D1E' stroke-width='2'/%3E%3C/svg%3E") right 16px center/18px no-repeat;box-shadow:inset 0 0 0 1.5px var(--line);appearance:none;cursor:pointer}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.chip{height:44px;padding:0 18px;border-radius:999px;font-weight:500;font-size:15px;background:var(--panel);box-shadow:inset 0 0 0 1.5px var(--line);transition:background-color .35s var(--ease-out),color .35s var(--ease-out),box-shadow .35s var(--ease-out)}
.chip:hover{box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.chip[aria-selected="true"]{background:var(--plum);color:#fff;box-shadow:none}
.chip .n{font-family:var(--f-mono);font-size:12px;opacity:.7;margin-left:6px}
.shop-count{margin:0 0 18px;font-size:13px;color:var(--text-secondary)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:18px}
.grid .card{animation:cardIn .6s var(--ease-out) both;animation-delay:calc(var(--i,0)*45ms)}
@keyframes cardIn{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.empty{grid-column:1/-1;padding:50px 20px;text-align:center;color:var(--text-secondary)}
.shop-more{margin:30px 0 0;color:var(--text-secondary)}
.shop-more a{color:var(--accent);font-weight:600}

/* Ofertas */
.deals{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px;align-items:start;background:linear-gradient(160deg,rgba(242,184,207,.5),rgba(251,240,244,0) 60%)}
.deals-copy{grid-column:1/-1;margin-bottom:12px}
.deal-cards{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:22px}
.deal{display:grid;grid-template-columns:minmax(150px,44%) 1fr;gap:22px;align-items:center;padding:16px;border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow);opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);transition-delay:calc(var(--i,0)*120ms)}
.deals.in .deal{opacity:1;transform:none}
.deals.in.done .deal{transition-delay:0s!important}
.deal-img{position:relative;aspect-ratio:1;border-radius:22px;overflow:hidden;background:var(--panel-2)}
.deal-img img{width:100%;height:100%;object-fit:cover}
.deal-off{position:absolute;right:10px;bottom:10px;width:66px;height:66px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font:500 18px/1 var(--f-mono)}
.deal-off::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--accent);opacity:0}
.deals.inview .deal-off::before{animation:ping 3.6s var(--ease-out) -1s infinite}
@keyframes ping{0%{opacity:.8;transform:scale(.9)}70%,100%{opacity:0;transform:scale(1.35)}}
.deal .card-brand{margin-bottom:4px}
.deal-price{display:flex;align-items:baseline;gap:10px;margin:12px 0 4px;font-family:var(--f-mono)}
.deal-price strong{font-size:30px;font-weight:500;color:var(--accent)}
.deal-price s{color:var(--text-secondary)}
.deal-save{margin:0 0 16px;font-size:14px;color:var(--text-secondary)}
.loved{grid-column:1/-1;margin-top:26px}
.loved-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:18px 0 0;padding:0;list-style:none;counter-reset:q}
.loved-item{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:20px;background:rgba(255,248,251,.8);box-shadow:inset 0 0 0 1px var(--line);transition:transform .4s var(--ease-out),box-shadow .4s var(--ease-out)}
.loved-item:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 1px var(--line-strong)}
.loved-item img{width:56px;height:56px;border-radius:14px;object-fit:cover;flex:none}
.loved-item .ln{flex:1;min-width:0}
.loved-item .ln b{display:block;font-size:15px;font-weight:600;line-height:1.25}
.loved-item .ln span{font-family:var(--f-mono);font-size:13px;color:var(--text-secondary)}
.loved-item .add{width:40px;height:40px}
.loved-item .add svg{width:18px;height:18px}

/* Caixa misteriosa */
.mystery{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);align-items:center}
.mys-stage{position:relative;display:flex;flex-direction:column;align-items:center;padding:clamp(30px,4vw,50px) 20px 36px;border-radius:40px;background:var(--plum);color:#FBE3EC;overflow:hidden;isolation:isolate;--hp:0}
.mys-stage::before{content:"";position:absolute;left:50%;top:38%;width:420px;height:420px;margin:-210px 0 0 -210px;border-radius:50%;background:radial-gradient(circle,rgba(232,51,127,.5),rgba(232,51,127,0) 65%);z-index:-1;opacity:calc(.35 + .65*var(--hp));transform:scale(calc(.8 + .4*var(--hp)))}
.box{width:min(240px,62vw);overflow:visible}
.mystery.inview .box{animation:bob 4.4s ease-in-out -1.2s infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.box-lid{transform-box:fill-box;transform-origin:50% 100%;transform:translateY(calc(var(--hp)*-16px)) rotate(calc(var(--hp)*-7deg));transition:transform .9s var(--ease-out),opacity .9s var(--ease-out)}
.mys-stage.holding .box-body,.mys-stage.holding .box-lid{animation:shake .16s linear infinite}
.mys-stage.holding .box-lid{transition:none}
@keyframes shake{0%,100%{translate:0 0}25%{translate:-2px 1px}75%{translate:2px -1px}}
.mys-stage.open .box-lid{transform:translateY(-120px) rotate(-28deg);opacity:0}
.mys-stage.open .box{animation:none}
.sparks{position:absolute;left:50%;top:38%;width:0;height:0;pointer-events:none}
.sparks i{position:absolute;left:-6px;top:-8px;width:12px;height:16px;border-radius:50% 50% 50% 50%/60% 60% 40% 40%;background:linear-gradient(#FF8CB8,#C8105F);opacity:0;transform:rotate(var(--a)) translateY(0) scale(.4)}
.mys-stage.open .sparks i{animation:spark 1.3s var(--ease-out) forwards;animation-delay:calc(var(--d,0)*1ms)}
@keyframes spark{0%{opacity:1;transform:rotate(var(--a)) translateY(-10px) scale(.6)}100%{opacity:0;transform:rotate(var(--a)) translateY(-170px) scale(1)}}
.hold{position:relative;width:96px;height:96px;margin-top:20px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:transform .4s var(--ease-out),opacity .5s var(--ease-out)}
.hold svg{position:absolute;inset:-10px;width:116px;height:116px;color:#FBE3EC}
.hold-ring{stroke-dashoffset:calc(176 - 176*var(--hp))}
.hold-label{font-weight:600;font-size:16px}
.mys-stage.holding .hold{transform:scale(.94)}
.hold-hint{margin:18px 0 0;font-size:14px;opacity:.75;text-align:center;transition:opacity .5s}
.mys-stage.open .hold,.mys-stage.open .hold-hint{opacity:0;pointer-events:none;position:absolute}
.mys-reveal{display:flex;flex-direction:column;align-items:center;text-align:center;opacity:0;transform:translateY(20px);visibility:hidden;transition:opacity .8s var(--ease-out) .35s,transform .8s var(--ease-out) .35s,visibility 0s .35s;max-height:0}
.mys-stage.open .mys-reveal{opacity:1;transform:none;visibility:visible;max-height:none}
.mys-tag{margin:6px 0 0;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-muted)}
.mys-price{margin:6px 0 4px;font-family:var(--f-display);font-weight:800;font-size:44px;color:#fff}
.mys-rule{margin:0 0 20px;font-size:14px;opacity:.8;max-width:30ch}

/* Quiz */
.quiz{display:flex;justify-content:center}
.quiz-card{width:min(860px,100%);padding:clamp(28px,5vw,56px);border-radius:40px;background:var(--panel);box-shadow:var(--shadow);position:relative;overflow:hidden}
.quiz-card::after{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(242,184,207,.7),rgba(242,184,207,0) 70%);pointer-events:none}
.quiz-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dots{display:flex;gap:8px}
.dots i{width:28px;height:6px;border-radius:6px;background:#E3BFD0;position:relative;overflow:hidden}
.dots i::after{content:"";position:absolute;inset:0;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-out)}
.dots i.on::after{transform:scaleX(1)}
.q-step{animation:qIn .6s var(--ease-out) both}
@keyframes qIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
.q-title{margin:10px 0 26px;font-family:var(--f-display);font-weight:800;font-size:clamp(28px,3.4vw,44px);line-height:1.05;letter-spacing:-.02em}
.q-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.q-opt{display:flex;align-items:center;gap:14px;min-height:64px;padding:12px 20px;border-radius:20px;text-align:left;font-weight:600;background:var(--canvas);box-shadow:inset 0 0 0 1.5px var(--line);transition:box-shadow .3s var(--ease-out),transform .3s var(--ease-out),background-color .3s var(--ease-out)}
.q-opt:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 2px var(--accent);background:#fff}
.q-opt svg{width:16px;height:22px;flex:none}
.q-opt small{display:block;font-weight:400;font-size:14px;color:var(--text-secondary)}
.q-res{display:grid;gap:12px;margin:0 0 24px;padding:0;list-style:none}
.q-res li{display:flex;align-items:center;gap:14px;padding:10px;border-radius:18px;background:var(--canvas);animation:qIn .6s var(--ease-out) both;animation-delay:calc(var(--i,0)*120ms)}
.q-res img{width:64px;height:64px;border-radius:14px;object-fit:cover}
.q-res .ln{flex:1}
.q-res b{display:block}
.q-res span{font-family:var(--f-mono);font-size:14px;color:var(--text-secondary)}
.q-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.q-total{font-family:var(--f-mono);font-size:20px}
.q-again{font-weight:600;text-decoration:underline;text-underline-offset:4px;padding:10px 4px}

/* Kit presente */
.gift{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(30px,5vw,70px);align-items:start}
.gift-picks{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:30px}
.gp{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:10px;border-radius:20px;background:var(--panel);box-shadow:inset 0 0 0 1.5px var(--line);text-align:left;transition:box-shadow .3s var(--ease-out),transform .3s var(--ease-out)}
.gp:hover{transform:translateY(-2px)}
.gp img{width:100%;aspect-ratio:1;border-radius:14px;object-fit:cover}
.gp b{font-size:14px;font-weight:600;line-height:1.25}
.gp span{font-family:var(--f-mono);font-size:13px;color:var(--text-secondary)}
.gp[aria-pressed="true"]{box-shadow:inset 0 0 0 2.5px var(--accent)}
.gp .tick{position:absolute;right:16px;top:16px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;transform:scale(0);transition:transform .4s var(--ease-out)}
.gp .tick svg{width:16px;height:16px}
.gp[aria-pressed="true"] .tick{transform:scale(1)}
.gp:disabled{opacity:.45;cursor:not-allowed}
.gift-box{position:sticky;top:96px;padding:28px;border-radius:36px;background:var(--plum);color:#FBE3EC;box-shadow:var(--shadow)}
.gift-slots{display:flex;justify-content:center;gap:14px;margin-bottom:24px}
.slot{width:86px;height:86px;border-radius:24px;border:2px dashed rgba(251,227,236,.4);overflow:hidden;position:relative}
.slot img{width:100%;height:100%;object-fit:cover;animation:pop .5s var(--ease-out)}
@keyframes pop{from{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}
.gift-opt{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid rgba(251,227,236,.18);cursor:pointer}
.gift-opt input{width:20px;height:20px;accent-color:var(--accent)}
.gift-opt .mono{margin-left:auto;font-size:14px}
.gift-msg{display:grid;gap:8px;padding:12px 0;border-top:1px solid rgba(251,227,236,.18);font-size:14px}
.gift-msg input{height:48px;padding:0 16px;border-radius:14px;border:0;background:rgba(255,255,255,.1);color:#fff;outline:none;box-shadow:inset 0 0 0 1.5px rgba(251,227,236,.25)}
.gift-msg input::placeholder{color:rgba(251,227,236,.55)}
.gift-msg input:focus{box-shadow:inset 0 0 0 2px var(--accent-muted)}
.gift-total{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0 20px;border-top:1px solid rgba(251,227,236,.18)}
.gift-total strong{font-size:24px;color:#fff;font-weight:500}
.gift-box .btn{width:100%}

/* Como comprar */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0;padding:0;list-style:none;counter-reset:s}
.step{position:relative;padding:30px;border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow)}
.step .draw{width:58px;height:58px;margin-bottom:22px;fill:none;stroke:var(--accent);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.step .draw path,.step .draw circle{stroke-dasharray:220;stroke-dashoffset:220;transition:stroke-dashoffset 1.8s var(--ease-out);transition-delay:calc(var(--i,0)*200ms + 300ms)}
.how.in .step .draw path,.how.in .step .draw circle{stroke-dashoffset:0}
.step-n{position:absolute;right:26px;top:28px;font-size:14px;color:var(--text-secondary)}
.step p{margin:10px 0 0;color:var(--text-secondary)}

/* Atacado */
.bulk{padding-top:0;padding-bottom:0}
.bulk-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;padding:clamp(40px,6vw,80px);border-radius:44px;background:radial-gradient(circle at 85% 20%,rgba(200,16,95,.45),rgba(200,16,95,0) 50%),var(--plum);color:#FBE3EC}
.bulk .eyebrow{color:var(--accent-muted)}
.bulk .lede{color:rgba(251,227,236,.8)}
.bulk .btn{margin-top:30px}
.stats{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.stats li{display:flex;align-items:baseline;gap:14px;padding:18px 22px;border-radius:22px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(251,227,236,.12)}
.stats strong{font-size:clamp(34px,4vw,52px);font-weight:500;color:#fff;min-width:4.4ch;white-space:nowrap}
.stats span{color:rgba(251,227,236,.78)}

/* FAQ */
.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:40px;align-items:start}
.faq-list{display:grid;gap:12px}
.faq details{border-radius:22px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s var(--ease-out)}
.faq details[open]{box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:16px 22px;font-weight:600;font-size:18px;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--canvas) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 6v12M6 12h12' stroke='%23C8105F' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .45s var(--ease-out)}
.faq details[open] summary::after{transform:rotate(135deg)}
.ans{padding:0 22px 20px;color:var(--text-secondary)}
.ans p{margin:0}
.faq details[open] .ans{animation:ansIn .5s var(--ease-out)}
@keyframes ansIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* Fechamento */
.final{text-align:center;padding-bottom:clamp(110px,14vw,180px)}
.final .lede{margin-left:auto;margin-right:auto}
.final .cta-row{margin-top:32px}
.h-final{margin:0 auto;font-family:var(--f-display);font-weight:800;font-size:clamp(46px,7.2vw,112px);line-height:.94;letter-spacing:-.03em;max-width:12ch}
.final-drop{position:relative;width:120px;height:110px;margin:0 auto 18px}
.fd{position:absolute;left:50%;top:0;width:30px;height:40px;margin-left:-15px}
.ripple{position:absolute;left:50%;bottom:6px;width:110px;height:22px;margin-left:-55px;border-radius:50%;border:2px solid var(--accent);opacity:0}
.final.inview .fd{animation:fall 3.2s cubic-bezier(.55,0,.75,.4) -.4s infinite}
.final.inview .ripple{animation:ripple 3.2s var(--ease-out) -.4s infinite}
.final.inview .ripple.r2{animation-delay:.05s}
@keyframes fall{0%{transform:translateY(-6px) scale(.8);opacity:0}15%{opacity:1}62%{transform:translateY(56px) scale(1,1.08);opacity:1}68%,100%{transform:translateY(62px) scale(1.2,.4);opacity:0}}
@keyframes ripple{0%,62%{transform:scale(.2);opacity:0}66%{opacity:.8}100%{transform:scale(1.1);opacity:0}}

/* Rodapé */
.foot{padding:70px var(--pad) 120px;background:var(--plum);color:#FBE3EC}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:34px}
.foot .logo{width:150px;height:44px}
.foot-line{margin:14px 0 0;color:rgba(251,227,236,.75);max-width:30ch}
.foot-h{margin:0 0 12px;font-family:var(--f-mono);font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-muted)}
.foot p{margin:0 0 8px}
.foot a{text-decoration:none;display:inline-flex;align-items:flex-start;gap:8px;transition:color .3s}
.foot a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.foot .ic{width:18px;height:18px;flex:none;margin-top:3px}
.foot-small{margin:50px 0 0;padding-top:24px;border-top:1px solid rgba(251,227,236,.15);font-size:13px;color:rgba(251,227,236,.6)}

/* Sacola */
.overlay{position:fixed;inset:0;z-index:60;background:rgba(43,13,30,.42);opacity:0;transition:opacity .45s var(--ease-out)}
.overlay.on{opacity:1}
.drawer{position:fixed;top:0;right:0;bottom:0;z-index:61;width:min(440px,100vw);display:flex;flex-direction:column;background:var(--panel);box-shadow:-20px 0 60px -20px rgba(43,13,30,.4);transform:translateX(104%);transition:transform .6s var(--ease-out)}
.drawer.open{transform:none}
.dr-head{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 12px 26px}
.dr-min{margin:0 26px;padding:14px 16px;border-radius:16px;background:var(--canvas);font-size:14px}
.dr-min p{margin:0 0 10px}
.dr-min.ok{background:#FDE3EE}
.meter{height:8px;border-radius:8px;background:var(--line);overflow:hidden}
.meter i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#EE4C8E,var(--accent));transform:scaleX(0);transform-origin:left;transition:transform .8s var(--ease-out)}
.dr-list{flex:1;overflow-y:auto;margin:0;padding:12px 26px;list-style:none;overscroll-behavior:contain}
.dr-item{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);animation:qIn .5s var(--ease-out) both}
.dr-item img,.dr-item .ph{width:64px;height:64px;border-radius:14px;object-fit:cover;flex:none;background:var(--panel-2);display:grid;place-items:center}
.dr-item .ph svg{width:22px;height:30px}
.dr-item .ln{flex:1;min-width:0}
.dr-item b{display:block;font-size:15px;line-height:1.3}
.dr-item .mono{font-size:14px;color:var(--text-secondary)}
.dr-item .note{display:block;font-size:13px;color:var(--text-secondary);font-style:italic}
.stepper{display:inline-flex;align-items:center;gap:2px;height:44px;padding:0 4px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--line)}
.stepper button{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;transition:background-color .3s}
.stepper button:hover{background:var(--canvas)}
.stepper svg{width:16px;height:16px}
.stepper output{min-width:22px;text-align:center;font-family:var(--f-mono)}
.dr-item .stepper{height:38px}
.dr-item .stepper button{width:30px;height:30px}
.dr-empty{display:none;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:30px;text-align:center;color:var(--text-secondary)}
.drawer.empty .dr-empty{display:flex}
.drawer.empty .dr-list,.drawer.empty .dr-form,.drawer.empty .dr-min{display:none}
.dr-empty-drop{width:44px;height:58px}
.dr-form{display:grid;gap:12px;padding:16px 26px 22px;border-top:1px solid var(--line);background:var(--panel)}
.dr-form label{display:grid;gap:6px;font-size:14px;color:var(--text-secondary)}
.dr-form [hidden]{display:none}
.dr-form input:not([type=radio]){height:48px;padding:0 16px;border-radius:14px;border:0;background:var(--canvas);box-shadow:inset 0 0 0 1.5px var(--line);outline:none;color:var(--text-primary)}
.dr-form input:not([type=radio]):focus{box-shadow:inset 0 0 0 2px var(--accent)}
.seg{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;border:0}
.seg legend{font-size:14px;color:var(--text-secondary);margin-bottom:6px;padding:0}
.seg label{display:block;cursor:pointer}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg span{display:grid;place-items:center;height:46px;border-radius:14px;font-weight:600;font-size:15px;color:var(--text-primary);box-shadow:inset 0 0 0 1.5px var(--line);transition:background-color .3s,color .3s,box-shadow .3s}
.seg input:checked+span{background:var(--plum);color:#fff;box-shadow:none}
.seg input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}
.dr-total{display:flex;justify-content:space-between;align-items:baseline;padding-top:6px}
.dr-total strong{font-size:24px;font-weight:500}
.dr-fine{margin:0;font-size:12px;color:var(--text-secondary);text-align:center}

/* Produto em detalhe */
.qv{width:min(900px,calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:32px;background:var(--panel);color:var(--text-primary);box-shadow:0 40px 100px -30px rgba(43,13,30,.6);overflow:auto}
.qv[open]{display:grid;grid-template-columns:1fr 1fr;animation:qvIn .55s var(--ease-out);position:fixed;inset:0;margin:auto;z-index:120}
@keyframes qvIn{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
.qv::backdrop{background:rgba(43,13,30,.5);backdrop-filter:blur(4px)}
.qv-close{position:absolute;right:12px;top:12px;z-index:2;background:rgba(255,255,255,.9)}
.qv-img{background:var(--panel-2);aspect-ratio:1}
.qv-img img{width:100%;height:100%;object-fit:cover}
.qv-info{display:flex;flex-direction:column;gap:10px;padding:clamp(26px,4vw,44px)}
.qv-brand{margin:0;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}
.qv-desc{margin:0;color:var(--text-secondary)}
.qv-price{margin:6px 0 0;font-family:var(--f-mono);font-size:26px;display:flex;gap:10px;align-items:baseline}
.qv-price s{font-size:16px;color:var(--text-secondary)}
.qv-buy{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}
.qv-buy .btn{flex:1}
.fav-line{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:10px 0;font-weight:600;color:var(--text-secondary)}
.fav-line svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.fav-line.on{color:var(--accent)}
.fav-line.on svg{fill:currentColor}

/* Toast, WhatsApp flutuante, barra do celular */
.toast{position:fixed;left:50%;bottom:28px;z-index:95;transform:translate(-50%,30px);padding:14px 22px;border-radius:999px;background:var(--plum);color:#fff;font-weight:500;box-shadow:0 18px 40px -14px rgba(43,13,30,.6);opacity:0;pointer-events:none;transition:opacity .4s var(--ease-out),transform .5s var(--ease-out);max-width:calc(100vw - 32px)}
.toast.on{opacity:1;transform:translate(-50%,0)}
.toast button{margin-left:12px;color:var(--accent-muted);font-weight:600;text-decoration:underline;pointer-events:auto}
.wpp-float{position:fixed;right:22px;bottom:22px;z-index:50;width:60px;height:60px;display:grid;place-items:center;border-radius:50%;background:var(--wpp);color:#fff;box-shadow:0 14px 34px -10px rgba(16,110,60,.6);transition:transform .4s var(--ease-out)}
.wpp-float svg{width:30px;height:30px}
.wpp-float:hover{transform:scale(1.08)}
.wpp-float::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--wpp);animation:ping 4s var(--ease-out) -2s infinite}
.mbar{display:none}

/* Telas menores */
@media (max-width:1080px){
  .links{display:none}
  .try,.mystery,.gift,.faq{grid-template-columns:1fr}
  .gift-box{position:relative;top:0}
  .bulk-inner{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .cat-grid{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:200px}
  .cat:first-child{grid-row:auto;grid-column:span 2}
  .deal-cards{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .qv[open]{grid-template-columns:1fr}
  .qv-img{aspect-ratio:4/3}
}
@media (max-width:720px){
  body{font-size:16px}
  .nav{height:64px}
  .logo{width:100px;height:29px}
  .brand-sub{display:none}
  .sec{padding-top:76px;padding-bottom:76px}
  .news-head{flex-direction:column;align-items:flex-start}
  .news-nav{display:none}
  .grid{grid-template-columns:1fr 1fr;gap:10px}
  .card{padding:7px;border-radius:18px}
  .card-body{padding:10px 4px 4px}
  .card-name{font-size:15px}
  .price{font-size:15px}
  .add{width:40px;height:40px}
  .fav{width:36px;height:36px}
  .shop-tools,.search{width:100%}
  .sort{width:100%}
  .sort select{width:100%}
  .deal{grid-template-columns:1fr;padding:12px}
  .try-pick{border-radius:28px}
  .foot-grid{grid-template-columns:1fr}
  .foot{padding-bottom:130px}
  .wpp-float{display:none}
  .toast{bottom:92px}
  .mbar{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;display:flex;gap:10px;padding:8px;border-radius:999px;background:rgba(43,13,30,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 14px 40px -12px rgba(43,13,30,.6);padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .mbar-bag{flex:1;display:flex;align-items:center;gap:10px;height:52px;padding:0 18px;border-radius:999px;background:var(--accent);color:#fff;font-weight:600}
  .mbar-bag svg{width:16px;height:22px}
  .mbar-bag strong{margin-left:auto;font-weight:500}
  .mbar-wpp{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--wpp);color:#fff}
  .mbar-wpp svg{width:26px;height:26px}
  .ticker-list{font-size:17px}
}
@media (pointer:coarse){
  .btn{min-height:48px}
  .chip{min-height:44px}
}

/* ===== Abertura: o logo se desenha, a gotinha pousa e a tela sobe como cortina ===== */
.intro{display:none}
html.abrindo{overflow:hidden}
html.abrindo .intro{display:block;position:fixed;inset:0;z-index:200;background:var(--canvas);cursor:pointer;transition:transform 1.15s cubic-bezier(.7,0,.2,1) .05s;animation:introSeguro 0s 6.5s forwards}
@keyframes introSeguro{to{visibility:hidden}}
.intro::after{content:"";position:absolute;left:-20%;right:-20%;top:100%;height:18vh;margin-top:-9vh;border-radius:50%;background:var(--canvas);box-shadow:0 24px 50px -20px rgba(43,13,30,.25)}
.intro-glow{position:absolute;inset:0;background:radial-gradient(ellipse 55% 45% at 50% 48%,rgba(255,255,255,.95),rgba(255,255,255,0) 72%),radial-gradient(ellipse 90% 60% at 50% 115%,rgba(242,184,207,.75),rgba(242,184,207,0) 70%)}
.intro-mark{--w:min(360px,66vw);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;transition:opacity .7s var(--ease-out) .35s,transform 1.15s cubic-bezier(.7,0,.2,1)}
.intro-logo{position:relative;width:var(--w);aspect-ratio:220/64}
.intro-wipe,.intro-wipe-in{position:absolute;inset:0;overflow:hidden}
.intro-wipe{animation:introWipeO 1.05s cubic-bezier(.65,0,.35,1) .15s both}
.intro-wipe-in{animation:introWipeI 1.05s cubic-bezier(.65,0,.35,1) .15s both}
@keyframes introWipeO{from{transform:translateX(-101%)}to{transform:none}}
@keyframes introWipeI{from{transform:translateX(101%)}to{transform:none}}
.intro-brush{width:100%;height:100%}
.intro-logo::before{content:"";position:absolute;left:-18%;right:-18%;top:-40%;bottom:-60%;background:radial-gradient(ellipse 50% 45% at 50% 50%,rgba(232,51,127,.28),rgba(232,51,127,0) 70%);opacity:0;animation:introLuz 1.4s var(--ease-out) .5s both}
@keyframes introLuz{to{opacity:1}}
.intro-wipe-in::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.6) 50%,transparent 65%);transform:translateX(-120%);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 64'%3E%3Cpath d='M9 37C13 22 40 13 82 13c38 0 70-6 108 1 17 3 25 11 22 21-3 11-18 15-46 16-36 2-70 1-106 4-30 2-55-1-51-18z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 64'%3E%3Cpath d='M9 37C13 22 40 13 82 13c38 0 70-6 108 1 17 3 25 11 22 21-3 11-18 15-46 16-36 2-70 1-106 4-30 2-55-1-51-18z'/%3E%3C/svg%3E") center/100% 100% no-repeat;animation:introBrilho 1.1s var(--ease-io) 1.35s both}
@keyframes introBrilho{from{transform:translateX(-120%)}to{transform:translateX(120%)}}
.intro-word{position:absolute;inset:0;margin:0;display:flex;align-items:center;justify-content:center;padding-top:calc(var(--w) * .035);font-family:var(--f-display);font-weight:800;font-size:calc(var(--w) * .146);line-height:1;letter-spacing:.09em;color:#fff;text-indent:.09em}
.intro-word span{display:inline-block;opacity:0;transform:translateY(45%);animation:introLetra .85s var(--ease-out) both}
.intro-word span:nth-child(1){animation-delay:.72s}
.intro-word span:nth-child(2){animation-delay:.79s}
.intro-word span:nth-child(3){animation-delay:.86s}
.intro-word span:nth-child(4){animation-delay:.93s}
.intro-word span:nth-child(5){animation-delay:1s}
@keyframes introLetra{to{opacity:1;transform:none}}
.intro-sub{margin:22px 0 0;padding-left:.5em;font-family:var(--f-mono);font-weight:500;font-size:13px;letter-spacing:.5em;text-transform:uppercase;color:var(--text-secondary);opacity:0;animation:introSub 1s var(--ease-out) 1.1s both}
@keyframes introSub{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.intro-drop{position:absolute;left:50%;top:calc(var(--w) * .055 - 30px);width:22px;height:30px;margin-left:-11px;z-index:2;opacity:0;animation:introGota .85s cubic-bezier(.5,0,.9,.55) .5s both}
@keyframes introGota{0%{opacity:0;transform:translateY(-52vh) scaleY(1.25)}12%{opacity:1}86%{opacity:1;transform:translateY(0) scaleY(1.12)}100%{opacity:0;transform:translateY(14px) scale(1.45,.35)}}
.intro-ring{position:absolute;left:50%;top:4%;width:46%;height:24%;margin-left:-23%;border-radius:50%;border:2px solid rgba(255,255,255,.9);opacity:0;animation:introOnda 1s var(--ease-out) 1.33s both}
@keyframes introOnda{0%{opacity:.95;transform:scale(.15)}100%{opacity:0;transform:scale(1.35)}}
html.abrindo-curta .intro-mark *,html.abrindo-curta .intro-mark{animation-delay:0s!important;animation-duration:.6s!important}
html.abrindo-curta .intro-drop,html.abrindo-curta .intro-ring{display:none}
/* a saída: a marca recua e a cortina sobe com a borda curva */
html.abrindo-sai .intro{transform:translateY(-122%);pointer-events:none}
html.abrindo-sai .intro-mark{opacity:0;transform:translate(-50%,-110%) scale(.97)}
/* o que a cortina revela entra devagar */
.stage,.hero-static{transition:transform 2s cubic-bezier(.16,1,.3,1)}
html.abrindo .stage,html.abrindo .hero-static{transform:scale(1.12)}
html.abrindo.abrindo-sai .stage,html.abrindo.abrindo-sai .hero-static{transform:none}
html.abrindo .nav{opacity:0;transform:translateY(-18px)}
html.abrindo.abrindo-sai .nav{opacity:1;transform:none;transition:opacity .9s var(--ease-out) .6s,transform 1s var(--ease-out) .6s}
html.abrindo .mbar,html.abrindo .wpp-float{opacity:0;transform:translateY(46px)}
html.abrindo.abrindo-sai .mbar,html.abrindo.abrindo-sai .wpp-float{opacity:1;transform:none;transition:opacity .9s var(--ease-out) .85s,transform 1.1s var(--ease-out) .85s}
html.abrindo .hs-copy>*{opacity:0;transform:translateY(22px)}
html.abrindo.abrindo-sai .hs-copy>*{opacity:1;transform:none;transition:opacity .9s var(--ease-out),transform 1.1s var(--ease-out)}
html.abrindo.abrindo-sai .hs-copy>:nth-child(1){transition-delay:.55s}
html.abrindo.abrindo-sai .hs-copy>:nth-child(2){transition-delay:.65s}
html.abrindo.abrindo-sai .hs-copy>:nth-child(3){transition-delay:.78s}
html.abrindo.abrindo-sai .hs-copy>:nth-child(4){transition-delay:.9s}

/* ===== Leveza no celular: nada de desfoque por cima do vídeo ===== */
.band{will-change:opacity}
body.hero-vis .ambient{visibility:hidden}
@media (max-width:720px){
  .nav::before{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(251,240,244,.95)}
  .mbar{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:rgba(43,13,30,.97)!important}
  html.cel-scrub .band::before{opacity:1}
}

/* ===== PC sofisticado: serifada itálica, enquadramento, cursor, numeração ===== */
.ac{font-style:normal}
.hud,.cursor,.peek,.intro-rule{display:none}
.eyebrow .num{display:none}
@media (min-width:1025px){
  /* tipografia de grife: a palavra-chave em serifada itálica fina */
  .ac,.w.ac{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.01em;font-size:1.12em;line-height:.8}
  .h2{font-size:clamp(44px,5vw,82px);letter-spacing:-.03em;line-height:.98}
  .h-hero{letter-spacing:-.03em}
  .sec{padding-top:clamp(120px,11vw,176px);padding-bottom:clamp(120px,11vw,176px)}
  .lede{font-size:clamp(18px,1.3vw,21px)}
  /* seções numeradas, com um fio fino */
  .eyebrow{display:flex;align-items:center;gap:14px}
  .sec-head.center .eyebrow{justify-content:center}
  .eyebrow .num{display:inline-flex;align-items:center;gap:14px;color:var(--plum-2);opacity:.75}
  .bulk .eyebrow .num{color:#FBE3EC}
  .eyebrow .num::after{content:"";width:44px;height:1px;background:currentColor;opacity:.55}
  /* topo: luz lateral suave no lugar da mancha clara */
  .b1::before,.b3::before{inset:-36vh auto -36vh -14vw;width:calc(100% + 30vw);background:radial-gradient(ellipse 62% 52% at 30% 50%,rgba(253,244,248,.76) 0%,rgba(253,244,248,.5) 42%,rgba(253,244,248,0) 76%)}
  .b2::before{inset:-36vh -14vw -36vh auto;width:calc(100% + 30vw);background:radial-gradient(ellipse 62% 52% at 70% 50%,rgba(253,244,248,.8) 0%,rgba(253,244,248,.54) 42%,rgba(253,244,248,0) 76%)}
  .b4::before{inset:-26vh -18vw;background:radial-gradient(ellipse 56% 50% at 50% 42%,rgba(253,244,248,.74) 0%,rgba(253,244,248,.46) 45%,rgba(253,244,248,0) 78%)}
  /* enquadramento de câmera e marcador de capítulos */
  .hud{display:block;position:absolute;inset:0;pointer-events:none;color:var(--plum-2)}
  .tick{position:absolute;width:22px;height:22px;border:0 solid rgba(43,13,30,.42)}
  .tick.tl{left:28px;top:94px;border-left-width:1px;border-top-width:1px}
  .tick.tr{right:28px;top:94px;border-right-width:1px;border-top-width:1px}
  .tick.bl{left:28px;bottom:28px;border-left-width:1px;border-bottom-width:1px}
  .tick.br{right:28px;bottom:28px;border-right-width:1px;border-bottom-width:1px}
  .hud-rail{position:absolute;left:24px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:16px;width:34px}
  .hud-n{font-size:12px;letter-spacing:.06em;white-space:nowrap}
  .hud-n b{font-weight:500;color:var(--plum)}
  .hud-n span{opacity:.6}
  .hud-line{position:relative;width:1px;height:140px;background:rgba(43,13,30,.16);overflow:hidden}
  .hud-line i{position:absolute;inset:0;background:var(--accent);transform-origin:top;transform:scaleY(0)}
  .hud-lbl{font-size:11px;letter-spacing:.24em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg)}
  .hud-meta{position:absolute;left:62px;bottom:30px;margin:0;font-size:11px;letter-spacing:.24em;text-transform:uppercase;opacity:.75}
  body.hero-vis .wpp-float{opacity:0;transform:scale(.6);pointer-events:none}
  .wpp-float{transition:transform .5s var(--ease-out),opacity .5s var(--ease-out)}
  /* produtos: espiada ao passar o mouse */
  .peek{display:block;position:absolute;left:50%;bottom:12px;z-index:2;padding:9px 16px;border-radius:999px;background:rgba(43,13,30,.82);color:#fff;font-size:13px;font-weight:600;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,14px);transition:opacity .45s var(--ease-out),transform .55s var(--ease-out)}
  .card:hover .peek{opacity:1;transform:translate(-50%,0)}
  /* abertura do PC: logo maior e um fio que se desenha */
  .intro-mark{--w:min(470px,32vw)}
  .intro-sub{font-size:14px}
  .intro-rule{display:block;width:140px;height:1px;margin-top:22px;background:var(--plum-2);opacity:.45;transform:scaleX(0);animation:introFio 1.1s var(--ease-io) 1.25s both}
  @keyframes introFio{to{transform:scaleX(1)}}
}
/* cursor próprio: um anel que segue com atraso suave e um ponto */
@media (min-width:1025px) and (pointer:fine){
  html.cursor-on .cursor{display:block;position:fixed;left:0;top:0;z-index:300;pointer-events:none}
  .c-ring,.c-dot{position:fixed;left:0;top:0;opacity:0;transition:opacity .3s var(--ease-out)}
  .cursor.vis .c-ring,.cursor.vis .c-dot{opacity:1}
  .c-dot{width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--accent)}
  .c-ring::before{content:"";position:absolute;left:-38px;top:-38px;width:76px;height:76px;border-radius:50%;border:1.5px solid rgba(200,16,95,.7);transform:scale(.46);transition:transform .45s var(--ease-out),background-color .45s var(--ease-out),border-color .45s var(--ease-out)}
  .cursor.is-link .c-ring::before{transform:scale(.72);background:rgba(200,16,95,.08)}
  .cursor.is-lbl .c-ring::before{transform:scale(1);background:var(--plum);border-color:var(--plum)}
  .cursor.down .c-ring::before{transform:scale(.38)}
  .cursor.is-lbl.down .c-ring::before{transform:scale(.88)}
  .c-lbl{position:absolute;left:0;top:0;transform:translate(-50%,-50%) scale(.6);font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;color:#fff;white-space:nowrap;opacity:0;transition:opacity .3s var(--ease-out),transform .45s var(--ease-out)}
  .cursor.is-lbl .c-lbl{opacity:1;transform:translate(-50%,-50%) scale(1)}
  .cursor.is-lbl .c-dot{opacity:0}
  /* botões magnéticos */
  html.cursor-on .btn{transition:background-color .35s var(--ease-out),color .35s var(--ease-out),transform .35s var(--ease-out),box-shadow .35s var(--ease-out),translate .55s var(--ease-out)}
  html.cursor-on .round{transition:background-color .3s var(--ease-out),transform .3s var(--ease-out),translate .55s var(--ease-out)}
  html.cursor-on .add{transition:background-color .3s var(--ease-out),transform .4s var(--ease-out),translate .55s var(--ease-out)}
  html.cursor-on .bag{transition:background-color .3s var(--ease-out),translate .55s var(--ease-out)}
  html.cursor-on .hold{transition:transform .4s var(--ease-out),opacity .5s var(--ease-out),translate .6s var(--ease-out)}
}

/* ===== Correções de toque: no topo, só os botões recebem o toque, nunca as palavras ===== */
.band.live{pointer-events:none}
.band.live .btn{pointer-events:auto}
.cta-cel{display:none}
/* cartão inteiro abre o produto */
.card,.deal,.loved-item{cursor:pointer}
/* no toque, nada de hover grudado depois do toque */
@media (hover:none){
  .card:hover{transform:none;box-shadow:var(--shadow)}
  .card:hover .card-img img,.cat:hover img{transform:none}
  .btn-main:hover,.btn-ghost:hover,.round:hover,.add:hover{transform:none}
}
/* ===== Celular com a gota: topo curto, só a primeira e a última frase, botões já no começo ===== */
@media (max-width: 720px) and (orientation: portrait){
  html.cel-scrub .hero{height:380vh}
  html.cel-scrub .b2,html.cel-scrub .b3{display:none}
  html.cel-scrub .cta-cel{display:flex;justify-content:center;gap:10px;margin-top:16px;--kb:clamp(0,(var(--k,0) - .55)*3,1);opacity:var(--kb);transform:translateY(calc((1 - var(--kb))*12px))}
  html.cel-scrub .cta-cel .btn{min-height:46px;padding:0 20px;font-size:15px}
  html.cel-scrub .b1{bottom:calc(98px + env(safe-area-inset-bottom))}
  html.cel-scrub .b1 .sub{margin-top:10px}
}

/* ===== A volta pelo logo: uma cortina de gloss escorre, cobre a tela e desce revelando o topo ===== */
.volta{display:none}
html.voltando .volta{display:block;position:fixed;inset:0;z-index:250;pointer-events:none;overflow:hidden}
.volta-gloss{position:absolute;left:0;top:0;width:100%;height:132vh;transform:translateY(-132vh);filter:drop-shadow(0 18px 30px rgba(43,13,30,.35))}
html.voltando.volta-cobre .volta-gloss{transform:translateY(0);transition:transform .62s cubic-bezier(.7,0,.3,1)}
html.voltando.volta-sai .volta-gloss{transform:translateY(132vh);transition:transform .8s cubic-bezier(.65,0,.25,1)}
.volta-brilho{transform:translateX(0)}
html.voltando.volta-cobre .volta-brilho{transform:translateX(1500px);transition:transform 1.1s var(--ease-io) .1s}
.volta-logo{position:absolute;left:50%;top:50%;width:min(320px,62vw);transform:translate(-50%,-40%) scale(.92);opacity:0}
html.voltando.volta-cobre .volta-logo{opacity:1;transform:translate(-50%,-50%) scale(1);transition:opacity .45s var(--ease-out) .3s,transform .7s var(--ease-out) .25s}
html.voltando.volta-sai .volta-logo{opacity:0;transform:translate(-50%,-30%) scale(.96);transition:opacity .3s var(--ease-out),transform .6s var(--ease-out)}

/* Aba escondida: tudo pausa */
body.paused *,body.paused *::before,body.paused *::after{animation-play-state:paused!important}

/* Movimento reduzido: estados finais, nada anda */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important;transition-delay:0s!important}
  [data-rv] .rv,.cat,.deal{opacity:1!important;transform:none!important}
  .step .draw path,.step .draw circle{stroke-dashoffset:0!important}
  .ticker-track{transform:none}
  .ticker-list{flex-wrap:wrap;white-space:normal;justify-content:center;width:100vw}
  .ticker-list[aria-hidden]{display:none}
  .card:hover,.card:hover .card-img img,.cat:hover img{transform:none}
}
