/* Guia Menu, landing. Mundo: cozinha em movimento, verde-floresta, creme e laranja da bússola. */
:root{
  --canvas:#072417; --panel:#0B3120; --panel-2:#10402A; --line:rgba(251,246,232,.16);
  --accent:#EE7C05; --accent-hover:#FF9227; --accent-muted:rgba(238,124,5,.38); --accent-ink:#A84B00;
  --text:#FBF6E8; --text-2:#B9CDBF;
  --paper:#FBF6E8; --paper-2:#F1E8D0; --ink:#083A1E; --ink-2:#47604F; --ink-line:rgba(8,58,30,.16);
  --ease:cubic-bezier(.22,.8,.24,1); --ease-soft:cubic-bezier(.4,0,.2,1);
  --f-display:'Fredoka',system-ui,sans-serif; --f-text:'DM Sans',system-ui,sans-serif; --f-mono:'DM Mono',ui-monospace,monospace;
  --tshadow:0 1px 2px rgba(3,20,12,.95),0 3px 12px rgba(3,20,12,.75),0 10px 44px rgba(3,20,12,.8);
  --gut:clamp(20px,4vw,40px); --w:min(1180px,100% - 2*var(--gut));
  --nav-h:68px;
}
*{box-sizing:border-box;margin:0}
html{overflow-x:hidden;overflow-x:clip;scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--canvas)}
body{overflow-x:hidden;overflow-x:clip;background:var(--canvas);color:var(--text);font-family:var(--f-text);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
img,video,svg{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:12px;top:-60px;z-index:100;background:var(--accent);color:var(--canvas);padding:10px 16px;border-radius:10px;font-weight:700;text-decoration:none;transition:top .25s var(--ease)}
.skip:focus{top:12px}
main:focus{outline:none}

/* ambiente: brilho e grão que atravessam a página */
.ambient{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.ambient i{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55;will-change:transform}
.ambient .a1{width:60vw;height:60vw;left:-20vw;top:-10vw;background:radial-gradient(closest-side,rgba(16,64,42,.9),transparent);animation:drift1 70s ease-in-out infinite alternate}
.ambient .a2{width:46vw;height:46vw;right:-14vw;bottom:-12vw;background:radial-gradient(closest-side,rgba(238,124,5,.16),transparent);animation:drift2 90s ease-in-out infinite alternate}
@keyframes drift1{to{transform:translate3d(18vw,22vh,0)}}
@keyframes drift2{to{transform:translate3d(-20vw,-18vh,0)}}
.grain{position:fixed;inset:-50%;z-index:60;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='.9'/></svg>")}

/* navegação */
.nav{position:fixed;z-index:50;inset:0 0 auto 0;height:var(--nav-h);display:flex;align-items:center;transition:background .4s var(--ease-soft),box-shadow .4s var(--ease-soft),backdrop-filter .4s}
.nav.solid{background:rgba(7,36,23,.95);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
.nav-in{width:var(--w);margin:0 auto;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand img.iso{width:40px;height:40px;border-radius:11px}
.brand img.word{height:34px;width:auto}
.nav ul{display:flex;gap:26px;list-style:none;padding:0;margin:0 0 0 auto}
.nav a.l{font-size:15px;font-weight:500;text-decoration:none;color:var(--text-2);transition:color .25s}
.nav a.l:hover{color:var(--text)}
.nav .btn{margin-left:8px}
@media(max-width:860px){.nav ul{display:none}.nav .btn{margin-left:auto}.brand img.word{height:30px}}

/* botões */
.btn{--bg:var(--accent);display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border-radius:999px;border:2px solid transparent;font:700 16px/1 var(--f-text);text-decoration:none;cursor:pointer;background:var(--bg);color:var(--canvas);text-shadow:none;transition:transform .3s var(--ease),background .25s,border-color .25s,box-shadow .3s}
.btn:hover{transform:translateY(-2px);background:var(--accent-hover);box-shadow:0 10px 30px -8px rgba(238,124,5,.6)}
.btn:active{transform:translateY(0)}
.btn.sm{min-height:40px;padding:0 18px;font-size:14px}
.btn.ghost{background:transparent;color:var(--text);border-color:rgba(251,246,232,.4)}
.btn.ghost:hover{background:rgba(251,246,232,.1);border-color:var(--text);box-shadow:none}
.btn svg{width:18px;height:18px}
@media(pointer:coarse){.btn{min-height:48px}.btn.sm{min-height:44px}}

/* ========== HERO DE SCROLL ========== */
.hero{position:relative;z-index:1;height:820vh}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:var(--canvas)}
.poster,.static-bg{position:absolute;inset:0;background:var(--canvas) center/cover no-repeat}
#hv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s var(--ease-soft);will-change:transform;transform:translateZ(0)}
.stage.video-ready #hv{opacity:1}
.stage.video-failed #hv{display:none}
.tint{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(7,36,23,.46) 0%,rgba(8,58,30,.22) 45%,rgba(7,36,23,.62) 100%)}
.scrim{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(5,26,16,.78) 0%,rgba(5,26,16,.5) 38%,rgba(5,26,16,0) 66%),radial-gradient(ellipse 120% 90% at 55% 45%,rgba(5,26,16,0) 40%,rgba(5,26,16,.55) 100%)}
.ring{position:absolute;right:28px;bottom:28px;width:44px;height:44px;color:var(--accent);transform:rotate(-90deg);transition:opacity .6s;opacity:.95}
.ring circle{transition:stroke-dashoffset .15s linear}
.ring.track{position:absolute;inset:0;color:rgba(251,246,232,.18)}
.ringwrap{position:absolute;right:28px;bottom:28px;width:44px;height:44px;transition:opacity .6s}
.ringwrap .ring{inset:0;right:auto;bottom:auto;position:absolute}
.stage.video-ready .ringwrap,.stage.video-failed .ringwrap{opacity:0;pointer-events:none}
.stage.video-failed .chev{display:block}
.chev{display:none;position:absolute;right:32px;bottom:30px;width:28px;height:28px;color:var(--text-2);animation:bob 2.4s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(7px)}}

.bands{position:absolute;inset:0;pointer-events:none}
.band{position:absolute;left:var(--gut);top:50%;width:min(620px,46vw);transform:translateY(-50%);opacity:0;text-shadow:var(--tshadow);will-change:opacity}
.band[inert]{visibility:hidden}
.band::before{content:"";position:absolute;inset:-18% -14% -18% -30%;z-index:-1;pointer-events:none;opacity:calc(.3 + .7*var(--k,1));background:radial-gradient(ellipse 74% 62% at 40% 50%,rgba(4,22,13,.62) 0%,rgba(4,22,13,.4) 46%,rgba(4,22,13,0) 76%)}
.band .btn{text-shadow:none}
.band.final{pointer-events:auto}
.band.final a{pointer-events:auto}
@media (min-width:1500px){.band{left:max(var(--gut),calc((100vw - 1320px)/2))}}
.kick{font:500 13px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;display:flex;align-items:center;gap:10px}
.kick::before{content:"";width:26px;height:2px;background:var(--accent);border-radius:2px}
.band h2,.static-copy h2{font:600 clamp(40px,5.4vw,84px)/1.02 var(--f-display);letter-spacing:-.01em;color:var(--text)}
.band .vis,.static-copy .vis{display:block}
.w{display:inline-block;white-space:nowrap}
.c{display:inline-block}
.em{color:var(--accent)}
.band .sub{margin-top:22px;font-size:clamp(17px,1.5vw,21px);color:#E4ECE4;max-width:34ch;line-height:1.5}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

/* efeitos de entrada: só transform e opacity, comandados por --k da faixa */
.fx-rise .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*2.8,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*46px))}
.fx-scatter .c{--kc:clamp(0,(var(--k,0) - var(--th,0))*2.6,1);opacity:var(--kc);transform:translate(calc((1 - var(--kc))*var(--jx,0px)),calc((1 - var(--kc))*var(--jy,0px))) rotate(calc((1 - var(--kc))*var(--jr,0deg)))}
.fx-punch .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)))}
.fx-punch .w.em{--ov:.26;--sd:.16;--ss:2.6}
.fx-grid .c{--kc:clamp(0,(var(--k,0) - var(--th,0))*2.8,1);opacity:var(--kc);transform:translateX(calc((1 - var(--kc))*var(--jx,0px)))}
.fx-step .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*3,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*40px))}
.fx-step .sub{--ks:clamp(0,(var(--k,0) - .62)*4,1);opacity:var(--ks);transform:translateY(calc((1 - var(--ks))*18px))}
.fx-step .cta-row{--kb:clamp(0,(var(--k,0) - .8)*5,1);opacity:var(--kb);transform:translateY(calc((1 - var(--kb))*18px))}
.fx-rise .kick,.fx-scatter .kick,.fx-punch .kick,.fx-grid .kick,.fx-step .kick{opacity:clamp(0,var(--k,0)*4,1)}
.band .kick{opacity:min(1,calc(var(--k,0)*5))}

.cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;font:500 12px/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-2);transition:opacity .5s;pointer-events:none}
.cue span.m{width:22px;height:36px;border:2px solid var(--text-2);border-radius:12px;position:relative}
.cue span.m::after{content:"";position:absolute;left:50%;top:6px;width:4px;height:8px;margin-left:-2px;border-radius:3px;background:var(--accent);animation:wheel 2s ease-in-out infinite}
@keyframes wheel{0%{transform:translateY(0);opacity:1}70%{transform:translateY(12px);opacity:0}100%{opacity:0}}
.cue.hide{opacity:0}

/* hero estático (celulares, tablets em retrato, movimento reduzido) */
.static-copy{display:none}
.static-bg{display:none}
@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){
  .hero{height:auto}
  .stage{position:relative;height:auto;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end}
  .scrub-only{display:none!important}
  .static-bg{display:block;background-image:url(hero-static.jpg);background-position:72% center}
  .static-copy{display:block;position:relative;z-index:2;width:var(--w);margin:0 auto;padding:calc(var(--nav-h) + 40px) 0 72px;text-shadow:var(--tshadow)}
  .static-copy .kick,.static-copy h2,.static-copy .sub,.static-copy .cta-row{animation:rise .9s var(--ease) both}
  .static-copy h2{animation-delay:.08s}.static-copy .sub{animation-delay:.18s}.static-copy .cta-row{animation-delay:.28s}
  .static-copy .sub{margin-top:20px;font-size:18px;color:#E4ECE4;max-width:36ch}
  .stage .tint{background:linear-gradient(180deg,rgba(7,36,23,.5) 0%,rgba(7,36,23,.3) 30%,rgba(7,36,23,.88) 100%)}
  .stage .scrim{background:linear-gradient(180deg,rgba(5,26,16,0) 30%,rgba(5,26,16,.7) 100%)}
}
@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media (max-width:720px){.static-copy h2{font-size:clamp(40px,12vw,56px)}.cta-row .btn{flex:1 1 100%}}
@media (max-height:560px){.cue{display:none}}

/* ========== SEÇÕES ========== */
section{position:relative;z-index:1}
.sec{padding:clamp(76px,11vw,140px) 0}
.wrap{width:var(--w);margin:0 auto}
.paper{background:var(--paper);color:var(--ink)}
.paper .lede{color:var(--ink-2)}
.green{background:var(--canvas)}
.eyebrow{font:500 13px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:10px;margin-bottom:20px}
.paper .eyebrow{color:var(--accent-ink)}
.eyebrow::before{content:"";width:26px;height:2px;background:currentColor;border-radius:2px}
.h2{font:600 clamp(34px,4.6vw,64px)/1.04 var(--f-display);letter-spacing:-.01em;max-width:18ch}
.h2 em{font-style:normal;color:var(--accent)}
.paper .h2 em{color:var(--accent-ink)}
.lede{font-size:clamp(17px,1.4vw,20px);color:var(--text-2);max-width:52ch;margin-top:22px}

/* entrada por seção */
.rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv-st>*{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv-st.in>*{opacity:1;transform:none}
.rv-st.in>*:nth-child(2){transition-delay:.1s}.rv-st.in>*:nth-child(3){transition-delay:.2s}.rv-st.in>*:nth-child(4){transition-delay:.3s}.rv-st.in>*:nth-child(5){transition-delay:.4s}.rv-st.in>*:nth-child(6){transition-delay:.5s}
.rv-st.done>*{transition-delay:0s!important}

/* faixa de segmentos */
.strip{background:var(--accent);color:var(--canvas);overflow:hidden;position:relative;z-index:2;border-block:2px solid var(--canvas)}
.strip-t{display:flex;width:max-content;animation:tick 60s linear infinite;padding:16px 0}
.strip-t span{font:600 22px/1 var(--f-display);white-space:nowrap;padding:0 28px;display:inline-flex;align-items:center;gap:56px}
.strip-t span::after{content:"";width:12px;height:12px;background:var(--canvas);clip-path:polygon(50% 0,100% 100%,50% 78%,0 100%);transform:rotate(45deg);flex:none}
@keyframes tick{to{transform:translateX(-50%)}}

/* como funciona */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.4vw,32px);margin-top:clamp(40px,6vw,72px)}
.step{display:flex;flex-direction:column}
.step .ph{position:relative;aspect-ratio:4/5;border-radius:28px;overflow:hidden;background:var(--ink)}
.step .ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.step:hover .ph img{transform:scale(1.06)}
.step .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(8,58,30,.55))}
.chip{position:absolute;z-index:2;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:10px;padding:10px 14px 10px 10px;border-radius:16px;background:rgba(251,246,232,.94);color:var(--ink);font:600 14px/1 var(--f-text);box-shadow:0 8px 24px -8px rgba(0,0,0,.5)}
.chip b{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--ink);color:var(--paper);font:600 14px/1 var(--f-display)}
.chip i{width:9px;height:9px;border-radius:50%;background:#2DBE60;animation:pulse 2.6s ease-in-out infinite;margin-left:4px}
@keyframes pulse{50%{opacity:.35}}
.step h3{font:600 28px/1.1 var(--f-display);margin-top:24px}
.step h3 span{color:var(--accent-ink);margin-right:8px}
.step p{margin-top:10px;color:var(--ink-2);max-width:34ch}
@media(max-width:820px){.steps{grid-template-columns:1fr;max-width:460px}.step .ph{aspect-ratio:16/11}}

/* interativo: escanear */
.scan-sec{overflow:hidden}
.scan-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(30px,6vw,90px)}
.hold-wrap{margin-top:36px;display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.hold{--p:0;position:relative;display:inline-flex;align-items:center;gap:14px;min-height:64px;padding:0 30px 0 12px;border-radius:999px;border:2px solid rgba(251,246,232,.35);background:rgba(251,246,232,.06);color:var(--text);font:600 18px/1 var(--f-text);cursor:pointer;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;transition:border-color .3s,transform .3s var(--ease)}
.hold::before{content:"";position:absolute;inset:0;background:var(--accent);transform-origin:left;transform:scaleX(var(--p));opacity:.95}
.hold>*{position:relative}
.hold .ico{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--accent);color:var(--canvas)}
.hold .ico svg{width:22px;height:22px}
.hold:hover{border-color:var(--accent)}
.hold.on{transform:scale(.98)}
.hold.on .lbl,.hold[data-done] .lbl{color:var(--canvas)}
.hold[data-done]{border-color:var(--accent)}
.hold-note{font-size:15px;color:var(--text-2);max-width:30ch}
.phone-stage{position:relative;display:grid;place-items:center;min-height:640px}
.phone-stage::before{content:"";position:absolute;width:86%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(238,124,5,.28),transparent);animation:glow 7s ease-in-out infinite}
@keyframes glow{50%{transform:scale(1.12);opacity:.7}}
.phone{--scan:0;position:relative;width:min(300px,78vw);aspect-ratio:300/620;border-radius:46px;background:#02100A;padding:11px;box-shadow:0 0 0 2px #1A3A2A,0 40px 90px -20px rgba(0,0,0,.8),0 0 0 8px #0A2A1B;transform:rotate(3deg);transition:transform .8s var(--ease)}
.phone.live{transform:rotate(0)}
.phone .notch{position:absolute;z-index:5;left:50%;top:18px;width:84px;height:24px;margin-left:-42px;border-radius:14px;background:#02100A}
.screen{position:relative;width:100%;height:100%;border-radius:36px;overflow:hidden;background:#0B3120}
.qrbox{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:30px;background:linear-gradient(180deg,#0B3120,#072417);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.qrcard{position:relative;width:78%;aspect-ratio:1;background:var(--paper);border-radius:22px;padding:16px;overflow:hidden;box-shadow:0 20px 50px -18px rgba(0,0,0,.7)}
.qrcard svg{width:100%;height:100%}
.qrcard .line{position:absolute;left:0;right:0;top:calc(var(--scan)*100%);height:3px;background:var(--accent);box-shadow:0 0 22px 6px rgba(238,124,5,.7);opacity:calc(var(--scan)*8)}
.qrcard .br{position:absolute;width:30px;height:30px;border:4px solid var(--accent);transition:inset .4s var(--ease)}
.qrcard .br.a{left:7px;top:7px;border-right:0;border-bottom:0;border-top-left-radius:12px}
.qrcard .br.b{right:7px;top:7px;border-left:0;border-bottom:0;border-top-right-radius:12px}
.qrcard .br.c{left:7px;bottom:7px;border-right:0;border-top:0;border-bottom-left-radius:12px}
.qrcard .br.d{right:7px;bottom:7px;border-left:0;border-top:0;border-bottom-right-radius:12px}
.phone.on .qrcard .br{filter:drop-shadow(0 0 6px var(--accent))}
.qrbox p{font:500 12px/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);text-align:center}
.demo-frame{--sc:.7;position:absolute;left:0;top:0;width:390px;height:calc(100% / var(--sc));border:0;background:#14100C;opacity:0;transform:scale(var(--sc));transform-origin:0 0;transition:opacity .8s var(--ease) .15s;pointer-events:none}
.phone.live .qrbox{opacity:0;transform:scale(.94);pointer-events:none}
.phone.live .demo-frame{opacity:1;pointer-events:auto}
.open-full{margin-top:18px;display:none}
.open-full.show{display:inline-flex}
@media(max-width:900px){.scan-grid{grid-template-columns:1fr}.phone-stage{min-height:600px}}

/* recursos (bento) */
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:clamp(40px,6vw,72px)}
.bx{position:relative;border-radius:28px;padding:30px;background:#fff;border:1px solid var(--ink-line);overflow:hidden;min-height:250px;display:flex;flex-direction:column;justify-content:flex-end;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.bx:hover{transform:translateY(-4px);box-shadow:0 24px 50px -24px rgba(8,58,30,.4)}
.bx h3{font:600 26px/1.1 var(--f-display);position:relative}
.bx p{margin-top:8px;color:var(--ink-2);font-size:16px;position:relative;max-width:36ch}
.bx.dk{background:var(--ink);color:var(--paper);border-color:transparent}
.bx.dk p{color:#B9CDBF}
.bx.or{background:var(--accent);color:var(--canvas);border-color:transparent}
.bx.or p{color:rgba(7,36,23,.86)}
.b1{grid-column:span 3}.b2{grid-column:span 3}.b3{grid-column:span 2}.b4{grid-column:span 2}.b5{grid-column:span 2}.b6{grid-column:span 6;min-height:210px;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:24px}
.viz{margin-bottom:auto;padding-bottom:26px}
.v-search{display:flex;align-items:center;gap:10px;background:var(--paper);border-radius:14px;padding:12px 16px;font:500 16px/1 var(--f-text);color:var(--ink);border:1px solid var(--ink-line)}
.v-search svg{width:18px;height:18px;flex:none;color:var(--ink-2)}
.v-search .t{overflow:hidden;white-space:nowrap;border-right:2px solid var(--accent);animation:typing 7s steps(8) infinite;width:8ch}
@keyframes typing{0%,8%{width:0}40%,85%{width:8ch}100%{width:0}}
.v-res{margin-top:10px;display:grid;gap:6px}
.v-res i{display:block;height:34px;border-radius:10px;background:var(--paper-2);position:relative;overflow:hidden}
.v-res i::after{content:"";position:absolute;left:12px;top:12px;width:46%;height:10px;border-radius:5px;background:rgba(8,58,30,.22)}
.v-res i:nth-child(2)::after{width:34%}
.v-sw{display:flex;align-items:center;justify-content:space-between;background:rgba(251,246,232,.08);border-radius:14px;padding:12px 14px;font:600 15px/1 var(--f-text)}
.v-sw s{text-decoration:none;position:relative;width:46px;height:26px;border-radius:999px;background:rgba(251,246,232,.25);animation:swbg 6s ease-in-out infinite}
.v-sw s::after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:var(--paper);animation:swk 6s ease-in-out infinite}
@keyframes swbg{0%,40%{background:rgba(251,246,232,.25)}50%,90%{background:var(--accent)}100%{background:rgba(251,246,232,.25)}}
@keyframes swk{0%,40%{transform:none}50%,90%{transform:translateX(20px)}100%{transform:none}}
.v-wa{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.v-wa span{background:#fff;border-radius:14px 14px 14px 4px;padding:10px 14px;font:500 13px/1.35 var(--f-text);color:var(--ink);box-shadow:0 4px 14px -6px rgba(0,0,0,.35)}
.v-wa span:nth-child(2){animation:pop 6s ease-in-out infinite}
@keyframes pop{0%,20%{opacity:0;transform:translateY(8px)}30%,90%{opacity:1;transform:none}100%{opacity:0}}
.v-qr{width:96px;height:96px;background:var(--paper);border-radius:14px;padding:8px;flex:none}
.v-qr svg{width:100%;height:100%}
.v-brand{display:flex;gap:8px}
.v-brand i{width:42px;height:42px;border-radius:50%;border:3px solid var(--paper);animation:hue 8s ease-in-out infinite}
.v-brand i:nth-child(1){background:#F27D0C}.v-brand i:nth-child(2){background:#7A1F2B;animation-delay:-2s}.v-brand i:nth-child(3){background:#1F5D8A;animation-delay:-4s}
@keyframes hue{50%{transform:translateY(-8px)}}
.b6 .txt{max-width:48ch}
.b6 .link{display:flex;align-items:center;gap:12px;background:var(--paper);border-radius:999px;padding:12px 20px;font:500 15px/1 var(--f-mono);color:var(--ink);white-space:nowrap}
.b6 .link i{width:10px;height:10px;border-radius:50%;background:var(--accent);animation:pulse 2.4s ease-in-out infinite}
@media(max-width:980px){.bento{grid-template-columns:repeat(2,1fr)}.b1,.b2{grid-column:span 2}.b3,.b4,.b5{grid-column:span 1}.b5{grid-column:span 2}.b6{grid-column:span 2;flex-direction:column;align-items:flex-start}.bx{min-height:230px}}
@media(max-width:560px){.bento{grid-template-columns:1fr}.b1,.b2,.b3,.b4,.b5,.b6{grid-column:span 1}}

/* painel */
.pn-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,6vw,84px);align-items:center}
.pn-vis{position:relative;display:grid;grid-template-columns:1.25fr 1fr;gap:18px;align-items:start}
.pn-card{background:var(--paper);color:var(--ink);border-radius:26px;padding:20px;box-shadow:0 30px 70px -30px rgba(0,0,0,.7)}
.pn-card h4{font:500 12px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);margin-bottom:14px;display:flex;justify-content:space-between}
.pn-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px 0;border-top:1px solid var(--ink-line);align-items:center}
.pn-row .nm{font:600 15px/1.2 var(--f-text)}
.pn-row .ct{display:flex;align-items:center;gap:12px;margin-top:8px}
.pn-row label.pr{display:inline-flex;align-items:center;gap:4px;font:600 14px/1 var(--f-text);background:var(--paper-2);border-radius:10px;padding:8px 10px}
.pn-row input.pv{width:6ch;border:0;background:transparent;font:600 14px/1 var(--f-text);color:var(--ink);outline:none}
.pn-row label.pr:focus-within{outline:3px solid var(--accent)}
.sw{position:relative;display:inline-flex;align-items:center;gap:8px;font:500 13px/1 var(--f-text);color:var(--ink-2);cursor:pointer}
.sw input{position:absolute;opacity:0;inset:0;cursor:pointer}
.sw s{width:42px;height:24px;border-radius:999px;background:#C9CFC2;position:relative;transition:background .3s;flex:none}
.sw s::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .35s var(--ease)}
.sw input:checked+s{background:var(--ink)}
.sw input:checked+s::after{transform:translateX(18px)}
.sw input:focus-visible+s{outline:3px solid var(--accent);outline-offset:2px}
.mini{background:#14100C;border-radius:30px;padding:10px;box-shadow:0 0 0 2px #1A3A2A,0 30px 70px -26px rgba(0,0,0,.8);transform:rotate(2.5deg)}
.mini-in{background:#1F1812;border-radius:22px;padding:16px 12px;color:#F6EBDA}
.mini-in h5{font:700 16px/1 var(--f-display);margin-bottom:12px;letter-spacing:.01em;color:#F6EBDA}
.mi{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-top:1px solid rgba(246,235,218,.12);transition:opacity .4s}
.mi b{font:600 13.5px/1.25 var(--f-text);display:block}
.mi span{font:500 12px/1 var(--f-text);color:#E8A84A}
.mi em{font:600 10px/1 var(--f-mono);font-style:normal;letter-spacing:.08em;text-transform:uppercase;display:none;margin-top:6px;color:#F6EBDA;background:#7A2A1A;padding:4px 7px;border-radius:5px;width:max-content}
.mi.off{opacity:.45}.mi.off em{display:block}.mi.off span{text-decoration:line-through}
.pn-list{list-style:none;padding:0;margin-top:30px;display:grid;gap:14px}
.pn-list li{display:flex;gap:14px;align-items:flex-start;color:var(--text);font-weight:500}
.pn-list li svg{flex:none;width:26px;height:26px;color:var(--accent);margin-top:1px}
@media(max-width:900px){.pn-grid{grid-template-columns:1fr}.pn-vis{order:2}}
@media(max-width:560px){.pn-vis{grid-template-columns:1fr}.mini{transform:none}}

/* modo mesa */
.mesa{background:var(--accent);color:var(--canvas);overflow:hidden}
.mesa .eyebrow{color:var(--canvas)}
.mesa .lede{color:rgba(7,36,23,.88)}
.mesa-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,6vw,84px);align-items:center}
.mesa-list{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px}
.mesa-list li{display:flex;gap:14px;align-items:flex-start;font-weight:500}
.mesa-list li svg{flex:none;width:26px;height:26px;margin-top:1px}
.btn.dark{background:var(--canvas);color:var(--text)}
.btn.dark:hover{background:#0B3120;box-shadow:0 10px 30px -8px rgba(7,36,23,.6)}
.mesa .fine{margin-top:16px;font-size:14px;color:rgba(7,36,23,.8);max-width:52ch}
.ticket-wrap{display:grid;place-items:center;padding:20px 0}
.ticket{position:relative;width:min(300px,100%);padding:22px 20px 30px;background:#fff;color:#111;font:700 15px/1.3 var(--f-mono);transform:rotate(-3deg);box-shadow:0 30px 60px -24px rgba(7,36,23,.7);animation:tfloat 8s ease-in-out infinite;-webkit-mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/14px 100%;mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/14px 100%}
@keyframes tfloat{50%{transform:rotate(-1.5deg) translateY(-8px)}}
.ticket p{margin:3px 0}
.ticket .t-c{text-align:center;font-size:13px}
.ticket .t-big{text-align:center;font:600 44px/1 var(--f-display);margin:6px 0}
.ticket hr{border:0;border-top:2px dashed #111;margin:10px 0}
.ticket .t-l b{display:inline-block;min-width:30px}
.ticket .t-s{margin-left:30px;font-weight:500;font-size:13px}
.ticket .t-o{margin-left:30px;font-size:13px}
@media(max-width:900px){.mesa-grid{grid-template-columns:1fr}.ticket-wrap{order:-1}}

/* para quem */
.who{overflow:hidden}
.who-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap}
/* celular e tablet: faixa que se arrasta. Telas largas (1000px+): grade 3x2, sem rolagem lateral. */
.who-row{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x proximity;scroll-padding-inline:var(--gut);padding:40px var(--gut) 20px;margin-top:10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.who-row::-webkit-scrollbar{display:none}
.wc{flex:0 0 clamp(230px,62vw,290px);scroll-snap-align:start;position:relative;aspect-ratio:3/4.2;border-radius:30px;overflow:hidden;background:var(--ink);color:var(--paper)}
.wc:nth-child(even){margin-top:28px}
@media(min-width:1000px){
  .who-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;width:var(--w);margin:10px auto 0;padding:40px 0 0;overflow:visible}
  .wc{flex:none;aspect-ratio:16/11}
  .wc:nth-child(even){margin-top:0}
  .who-hint{display:none}
}
.wc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.wc:hover img{transform:scale(1.08)}
.wc::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(5,30,17,.9))}
.wc h3{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;font:600 26px/1.05 var(--f-display)}
.wc h3 small{display:block;font:500 12px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.who-hint{font:500 13px/1 var(--f-mono);letter-spacing:.08em;color:var(--ink-2);text-transform:uppercase}

/* faq */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,90px);align-items:start}
.faq-grid .h2{position:sticky;top:110px}
details{border-bottom:1px solid var(--line)}
details:first-child{border-top:1px solid var(--line)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font:600 21px/1.25 var(--f-display)}
summary::-webkit-details-marker{display:none}
summary::after{content:"";flex:none;width:34px;height:34px;border-radius:50%;border:2px solid var(--line);background:linear-gradient(var(--text),var(--text)) center/12px 2px no-repeat,linear-gradient(var(--text),var(--text)) center/2px 12px no-repeat;transition:transform .4s var(--ease),background-color .3s,border-color .3s}
details[open] summary::after{transform:rotate(45deg);border-color:var(--accent);background-color:var(--accent-muted)}
summary:hover::after{border-color:var(--accent)}
details p{padding:0 54px 26px 0;color:var(--text-2);max-width:60ch}
@media(max-width:900px){.faq-grid{grid-template-columns:1fr}.faq-grid .h2{position:static}}

/* contato */
.cta{overflow:hidden;text-align:center}
.cta::before{content:"";position:absolute;left:50%;top:-30%;width:90vw;max-width:1100px;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(238,124,5,.22),transparent);animation:glow 9s ease-in-out infinite}
.cta .wrap{position:relative}
.cta .h2{margin:0 auto;max-width:16ch}
.cta .lede{margin:22px auto 0}
.form{margin:44px auto 0;max-width:640px;text-align:left;background:rgba(251,246,232,.06);border:1px solid var(--line);border-radius:30px;padding:clamp(22px,4vw,38px);display:grid;grid-template-columns:1fr 1fr;gap:16px;backdrop-filter:blur(8px)}
.form .f{display:grid;gap:8px}
.form .f.full{grid-column:1/-1}
.form label{font:500 12px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2)}
.form input,.form select{width:100%;min-height:52px;padding:0 16px;border-radius:14px;border:1.5px solid rgba(251,246,232,.28);background:rgba(7,36,23,.7);color:var(--text);font:500 17px/1 var(--f-text);transition:border-color .25s,box-shadow .25s}
.form input::placeholder{color:#8EA697}
.form input:focus,.form select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-muted)}
.form .btn{grid-column:1/-1;min-height:58px;font-size:18px}
.form small{grid-column:1/-1;color:var(--text-2);font-size:14px;text-align:center}
@media(max-width:600px){.form{grid-template-columns:1fr}}

footer{position:relative;z-index:1;background:#041A10;border-top:1px solid var(--line);padding:56px 0 40px}
.ft{display:flex;flex-wrap:wrap;justify-content:space-between;gap:36px}
.ft p{color:var(--text-2);font-size:15px;max-width:34ch;margin-top:14px}
.ft h4{font:500 12px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.ft ul{list-style:none;padding:0;display:grid;gap:10px}
.ft a{color:var(--text-2);text-decoration:none;font-size:15px;transition:color .2s}
.ft a:hover{color:var(--text)}
.copy{margin-top:44px;padding-top:24px;border-top:1px solid var(--line);color:#8EA697;font-size:14px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}

/* trilha: a seta que guia a rolagem (assinatura) */
.below{position:relative}
.trail{position:absolute;left:0;top:0;bottom:0;width:140px;z-index:3;pointer-events:none;display:none}
.trail svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.trail .base{fill:none;stroke:rgba(8,58,30,.14);stroke-width:2;stroke-dasharray:3 9;stroke-linecap:round}
.trail .run{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round}
.trail .pin{fill:var(--paper);stroke:var(--accent);stroke-width:3}
.trail .arrow{position:absolute;left:0;top:0;width:34px;height:34px;margin:-17px 0 0 -17px;color:var(--accent);filter:drop-shadow(0 4px 8px rgba(0,0,0,.35));will-change:transform}
@media(min-width:1380px){.trail{display:block;left:max(8px,calc((100vw - 1180px)/2 - 160px))}}

/* movimento reduzido */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .rv,.rv-st>*{opacity:1!important;transform:none!important}
  .strip-t{transform:none}
  .trail{display:none!important}
  .fx-rise .w,.fx-scatter .c,.fx-punch .w,.fx-grid .c,.fx-step .w{opacity:1;transform:none}
}
body.paused *,body.paused *::before,body.paused *::after{animation-play-state:paused!important}
@media(pointer:coarse){summary{min-height:44px}.sw{min-height:44px}}
