@font-face{font-family:"Bodoni Moda";src:url(../fonts/bodoni-moda-normal-latin.woff2) format("woff2");font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url(../fonts/bodoni-moda-italic-latin.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(../fonts/instrument-sans-normal-latin.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
:root{
  --noite:#071F22;--noite-2:#0B2D31;--pavao:#0E5A60;--esm:#1F8A72;--ouro:#C8A04A;--ouro-t:#7A5A12;--iris:#4B3C93;--rosa:#E9B8B0;--framb:#B4455E;
  --papel:#F5EFE6;--papel-2:#EBE2D3;--tinta:#10272B;--tinta-2:#3B5156;--claro-2:#B9CFCB;
  --disp:"Bodoni Moda","Didot",Georgia,serif;--txt:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --e:cubic-bezier(.23,1,.32,1);--gut:clamp(20px,5vw,72px);--sec:clamp(88px,12vw,168px)
}
*{box-sizing:border-box;margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:auto}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
body{background:var(--noite);color:var(--papel);font:400 clamp(16px,1.05vw,17.5px)/1.6 var(--txt);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit}
button,input{font:inherit;color:inherit}
em{font-style:italic}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sprite{position:absolute}
.pula{position:fixed;left:12px;top:-60px;z-index:200;background:var(--papel);color:var(--tinta);padding:10px 16px;border-radius:8px;transition:top .2s var(--e)}
.pula:focus{top:12px}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px;border-radius:4px}
.grao{position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.35;background-image:url(../fotos/grao.png);background-size:128px}
.luz{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:0;background:radial-gradient(520px circle at var(--lx,50%) var(--ly,40%),rgba(200,160,74,.14),transparent 60%);transition:opacity .6s}
@media (hover:hover){.has-js .luz{opacity:1}}

/* preloader */
.pre{display:none}
.pre-on .pre{display:grid;position:fixed;inset:0;z-index:300;place-items:center;background:var(--noite);transition:opacity .5s var(--e),visibility .5s}
.pre-in{display:flex;flex-direction:column;align-items:center;gap:14px}
.pre-olho{width:44px;height:62px;animation:respira 1s var(--e) infinite alternate}
.pre-nome{font:italic 500 26px var(--disp);letter-spacing:.02em}
.pre.fim{opacity:0;visibility:hidden}
@keyframes respira{from{transform:scale(.92)}to{transform:scale(1.04)}}

/* topo */
.topo{position:fixed;inset:0 0 auto 0;z-index:80;display:flex;align-items:center;gap:20px;padding:14px var(--gut);transition:background .3s,backdrop-filter .3s,transform .4s var(--e)}
.topo.fundo{background:rgba(7,31,34,.78);backdrop-filter:blur(14px)}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;font:500 22px var(--disp)}
.marca em{color:var(--ouro)}
.marca-olho{width:18px;height:26px}
.menu{margin-left:auto;display:flex;gap:28px}
.menu a{font-size:14px;letter-spacing:.04em;text-decoration:none;padding:8px 2px;position:relative;opacity:.86}
.menu a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--ouro);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--e)}
@media (hover:hover){.menu a:hover{opacity:1}.menu a:hover::after{transform:scaleX(1)}}
.sacola-bt{position:relative;width:46px;height:46px;border-radius:50%;border:1px solid rgba(245,239,230,.28);background:transparent;display:grid;place-items:center;cursor:pointer;transition:transform .2s var(--e),border-color .2s,background .2s}
.sacola-bt svg{width:22px;height:22px}
.sacola-bt b{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;border-radius:10px;background:var(--ouro);color:var(--noite);font:600 12px/20px var(--txt);text-align:center;padding:0 5px;transform:scale(.001);transition:transform .3s var(--e)}
.sacola-bt.tem b{transform:scale(1)}
.sacola-bt:active{transform:scale(.95)}
.sacola-bt.pulo{animation:pulo .4s var(--e)}
@keyframes pulo{40%{transform:scale(1.14)}}
@media (hover:hover){.sacola-bt:hover{border-color:var(--ouro);background:rgba(200,160,74,.1)}}
@media (max-width:820px){.menu{display:none}.sacola-bt{margin-left:auto}}

/* botões */
.btn,.btn-fino{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 26px;border-radius:999px;text-decoration:none;font-weight:500;letter-spacing:.02em;border:1px solid transparent;cursor:pointer;transition:transform .2s var(--e),background .25s,color .25s,border-color .25s,box-shadow .3s;will-change:transform}
.btn{background:var(--ouro);color:var(--noite);box-shadow:0 10px 30px -12px rgba(200,160,74,.55)}
.btn svg,.btn-fino svg{width:20px;height:20px;flex:none}
.btn-fino{border-color:rgba(245,239,230,.35);background:transparent}
.btn:active,.btn-fino:active{transform:scale(.97)}
@media (hover:hover){.btn:hover{background:#DAB45E;box-shadow:0 14px 34px -10px rgba(200,160,74,.7)}.btn-fino:hover{border-color:var(--ouro);color:var(--ouro)}}
.btn[aria-disabled=true]{opacity:.45;pointer-events:none}
.btn-cheio{width:100%;justify-content:center}
.acoes{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

.olho-txt{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro);margin-bottom:18px}
.sec-t{font:500 clamp(34px,5.2vw,76px)/1.04 var(--disp);letter-spacing:-.02em;max-width:16ch}
.sec-t em{color:var(--ouro)}

/* palco */
.palco{position:relative;height:460vh;background:var(--noite)}
.palco-pega{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.fundo-palco{position:absolute;inset:0;background:radial-gradient(900px 700px at 70% 55%,#0E4A50 0%,transparent 62%),radial-gradient(600px 500px at 15% 10%,#1d1f4d 0%,transparent 70%),linear-gradient(180deg,#06191C,#08272B 60%,#06191C)}
.ocelo-fb{position:absolute;right:12%;top:18%;width:min(34vw,300px);aspect-ratio:.7;border-radius:50%;opacity:.0;background:radial-gradient(ellipse at 50% 50%,#4B3C93 0 10%,#0B2F66 10% 22%,#0F6A8F 22% 40%,#1F8A72 40% 62%,#C8A04A 62% 100%);transition:opacity .6s}
.fundo-palco.cena-fb .ocelo-fb{opacity:.9}
.cena{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1s var(--e)}
.cena.ok{opacity:1}
.passos{position:absolute;inset:0;pointer-events:none}
.passo{position:absolute;left:var(--gut);bottom:clamp(64px,13vh,140px);max-width:min(560px,86vw);opacity:0;transform:translateY(22px);transition:opacity .6s var(--e),transform .8s var(--e);pointer-events:none}
.passo.on{opacity:1;transform:none;pointer-events:auto}
.titulo{font:500 clamp(46px,8.2vw,128px)/.96 var(--disp);letter-spacing:-.03em;margin-bottom:24px}
.titulo em{color:var(--ouro)}
.m{display:block;overflow:hidden;padding-bottom:.06em}
.m>span{display:block}
.has-js .m>span{transform:translateY(105%);transition:transform 1.1s var(--e)}
.has-js.pronto .m>span{transform:none}
.has-js.pronto .m:nth-child(2)>span{transition-delay:.12s}
.lead{max-width:44ch;color:var(--claro-2);font-size:clamp(16px,1.25vw,19px)}
.passo .num{font:italic 500 18px var(--disp);color:var(--ouro);margin-bottom:10px}
.passo h2{font:500 clamp(34px,5vw,68px)/1.02 var(--disp);letter-spacing:-.02em;margin-bottom:18px}
.passo p:last-child{color:var(--claro-2);max-width:40ch}
.rola{position:absolute;right:var(--gut);bottom:28px;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--claro-2);display:flex;align-items:center;gap:12px;writing-mode:vertical-rl;transition:opacity .4s}
.rola span{width:1px;height:48px;background:linear-gradient(var(--ouro),transparent);animation:desce 1.8s var(--e) infinite}
@keyframes desce{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media (max-width:820px){
  .passo{bottom:clamp(40px,8vh,80px)}
  .titulo{font-size:clamp(42px,13vw,66px)}
  .rola{display:none}
  .passo.on{background:linear-gradient(0deg,rgba(7,31,34,.88) 60%,transparent);padding:60px var(--gut) 0;left:0;max-width:100%;bottom:0;padding-bottom:max(24px,env(safe-area-inset-bottom))}
}

/* manifesto */
.manifesto{background:var(--papel);color:var(--tinta);padding:var(--sec) var(--gut);position:relative;z-index:2}
.mani{font:500 clamp(28px,4.2vw,62px)/1.18 var(--disp);letter-spacing:-.015em;max-width:24ch;margin:0 auto 0 0}
.mani .w{color:#5b6f73;transition:color .45s}
.mani .w.on{color:var(--tinta)}
.rm .mani .w{color:var(--tinta)}
@media (min-width:900px){.mani{max-width:22ch;margin-left:8vw}}

/* cabeçalhos de seção */
.cab{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:0 var(--gut);margin-bottom:clamp(36px,5vw,64px)}
.cab-d{display:flex;align-items:center;gap:20px}
.semana{font:italic 500 18px var(--disp);color:var(--ouro-t)}
.setas{display:flex;gap:8px}
.setas button{width:48px;height:48px;border-radius:50%;border:1px solid rgba(16,39,43,.3);background:transparent;display:grid;place-items:center;cursor:pointer;transition:transform .2s var(--e),background .2s,color .2s}
.setas button svg{width:22px;height:22px}
.setas button:first-child svg{transform:scaleX(-1)}
.setas button:active{transform:scale(.94)}
@media (hover:hover){.setas button:hover{background:var(--tinta);color:var(--papel)}}

/* novidades */
.novidades{background:var(--papel);color:var(--tinta);padding:0 0 var(--sec);position:relative;z-index:2}
.novidades .olho-txt{color:var(--ouro-t)}
.novidades .sec-t em{color:var(--pavao)}
.trilho{display:flex;gap:clamp(14px,2vw,28px);overflow-x:auto;scroll-snap-type:x mandatory;padding:6px var(--gut) 24px;scroll-padding:0 var(--gut);scrollbar-width:thin;scrollbar-color:var(--pavao) transparent;overscroll-behavior-x:contain}
.trilho .peca{flex:0 0 min(78vw,320px);scroll-snap-align:start}

/* peça */
.peca{position:relative;display:flex;flex-direction:column;gap:14px;border-radius:6px}
.arte{position:relative;aspect-ratio:3/4;border-radius:140px 140px 6px 6px;overflow:hidden;background:var(--cor-fundo,#d8cdb9);isolation:isolate;transition:transform .5s var(--e),box-shadow .5s}
.arte img{width:100%;height:100%;object-fit:cover}
.arte svg.roupa{position:absolute;inset:14% 14% 12%;width:72%;height:74%;filter:drop-shadow(0 18px 18px rgba(7,31,34,.28));transition:transform .6s var(--e)}
.arte .brilho{position:absolute;inset:0;background:radial-gradient(circle at var(--mx,30%) var(--my,20%),rgba(255,255,255,.35),transparent 55%);mix-blend-mode:soft-light;pointer-events:none;opacity:.0;transition:opacity .4s}
.arte::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(16,39,43,.12)}
@media (hover:hover){.peca:hover .arte{transform:translateY(-4px);box-shadow:0 26px 40px -22px rgba(7,31,34,.5)}.peca:hover .roupa{transform:scale(1.05) rotate(-1.5deg)}.peca:hover .brilho{opacity:1}}
.tag{position:absolute;bottom:14px;left:14px;z-index:2;font-size:11px;letter-spacing:.16em;text-transform:uppercase;background:var(--noite);color:var(--papel);padding:5px 10px;border-radius:999px}
.tag.ex{left:auto;right:14px;background:rgba(245,239,230,.92);color:var(--tinta-2)}
.peca h3{font:500 22px/1.15 var(--disp);letter-spacing:-.01em}
.peca .cor{font-size:14px;color:var(--tinta-2)}
.peca .preco{font:italic 500 18px var(--disp);color:var(--ouro-t)}
.peca .linha{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.tams{display:flex;flex-wrap:wrap;gap:6px}
.tm{min-width:44px;height:44px;border-radius:50%;border:1px solid rgba(16,39,43,.28);background:transparent;cursor:pointer;font-weight:500;font-size:14px;transition:background .2s,color .2s,border-color .2s,transform .15s var(--e)}
.tm:active{transform:scale(.93)}
.tm[aria-pressed=true]{background:var(--tinta);color:var(--papel);border-color:var(--tinta)}
.tm.meu{border-color:var(--ouro-t);box-shadow:0 0 0 2px rgba(200,160,74,.35)}
@media (hover:hover){.tm:hover{border-color:var(--tinta)}}
.quero{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:999px;border:1px solid var(--tinta);background:transparent;color:var(--tinta);font-weight:500;cursor:pointer;padding:0 20px;transition:background .25s,color .25s,transform .2s var(--e)}
.quero svg{width:20px;height:20px}
.quero:active{transform:scale(.97)}
@media (hover:hover){.quero:hover{background:var(--tinta);color:var(--papel)}}
.quero.ok{background:var(--esm);border-color:var(--esm);color:#05201a}

/* vitrine */
.vitrine{background:var(--papel-2);color:var(--tinta);padding:var(--sec) 0;position:relative;z-index:2}
.vitrine .olho-txt{color:var(--ouro-t)}
.vitrine .sec-t em{color:var(--pavao)}
.cab-v .sec-t{max-width:20ch}
.filtros{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;padding:0 var(--gut);margin-bottom:22px}
.f-pub,.f-cat{display:flex;flex-wrap:wrap;gap:8px}
.chip{min-height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(16,39,43,.28);background:transparent;cursor:pointer;font-size:15px;transition:background .2s,color .2s,border-color .2s,transform .15s var(--e)}
.chip:active{transform:scale(.96)}
.chip.on,.chip[aria-pressed=true]{background:var(--tinta);color:var(--papel);border-color:var(--tinta)}
@media (hover:hover){.chip:hover{border-color:var(--tinta)}}
.busca{margin-left:auto}
.busca input{height:44px;width:min(100%,260px);border-radius:999px;border:1px solid rgba(16,39,43,.28);background:rgba(255,255,255,.5);padding:0 18px}
.busca input::placeholder{color:#5b6e72}
.aviso-ex{margin:0 var(--gut) 24px;padding:12px 18px;border-left:3px solid var(--ouro);background:rgba(200,160,74,.14);font-size:15px;max-width:70ch}
.grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:clamp(28px,3.4vw,52px) clamp(16px,2vw,28px);padding:0 var(--gut)}
.vazio{padding:20px var(--gut)}
.peca.sai{animation:sai .35s var(--e) forwards}
.peca.entra{animation:entra .6s var(--e) both}
@keyframes entra{from{opacity:0;transform:translateY(22px)}}
@keyframes sai{to{opacity:0;transform:scale(.98)}}

/* tamanhos */
.tamanhos{background:var(--noite-2);padding:var(--sec) var(--gut);position:relative;z-index:2;background-image:radial-gradient(700px 400px at 90% 0%,rgba(75,60,147,.35),transparent 70%)}
.tam-in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);align-items:center;max-width:1280px;margin:0 auto}
.tam-p{color:var(--claro-2);max-width:46ch;margin-top:22px}
.tam-caixa{border:1px solid rgba(245,239,230,.16);border-radius:6px 6px 120px 6px;padding:clamp(24px,3vw,44px);background:rgba(7,31,34,.5);backdrop-filter:blur(4px)}
.tam-r{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro);margin:0 0 12px}
.tam-g{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.tam-g .chip{border-color:rgba(245,239,230,.3);min-width:56px;justify-content:center}
.tam-g .chip.on,.tam-g .chip[aria-pressed=true]{background:var(--ouro);color:var(--noite);border-color:var(--ouro)}
@media (hover:hover){.tam-g .chip:hover{border-color:var(--ouro)}}
.tam-s{font:italic 500 20px var(--disp);margin-bottom:18px}
@media (max-width:820px){.tam-in{grid-template-columns:1fr}}

/* vale */
.presente{background:var(--papel);color:var(--tinta);padding:var(--sec) var(--gut);position:relative;z-index:2}
.presente .olho-txt{color:var(--ouro-t)}
.presente .sec-t em{color:var(--pavao)}
.presente .tam-p{color:var(--tinta-2)}
.pre-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);align-items:center;max-width:1280px;margin:0 auto}
.vale-cena{perspective:1100px;display:grid;place-items:center;padding:24px 0}
.vale{position:relative;width:min(100%,430px);aspect-ratio:1.6;border-radius:18px;padding:clamp(18px,3vw,30px);color:var(--papel);overflow:hidden;background:conic-gradient(from 210deg at 80% 20%,#0E5A60,#1F8A72,#0F6A8F,#4B3C93,#0E5A60);box-shadow:0 40px 60px -30px rgba(7,31,34,.7),inset 0 0 0 1px rgba(255,255,255,.25);transform:rotateY(var(--ry,-12deg)) rotateX(var(--rx,6deg));transition:transform .5s var(--e);transform-style:preserve-3d}
.vale::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--bx,30%) var(--by,0%),rgba(255,255,255,.35),transparent 55%);mix-blend-mode:soft-light}
.vale-olho{position:absolute;right:-6%;top:-20%;width:46%;height:140%;opacity:.55}
.vale-m{font:italic 500 clamp(18px,2.4vw,24px) var(--disp)}
.vale-t{font-size:11px;letter-spacing:.3em;text-transform:uppercase;opacity:.85;margin-top:2px}
.vale-v{position:absolute;left:clamp(18px,3vw,30px);bottom:clamp(34px,5vw,52px);font:500 clamp(40px,6vw,64px)/1 var(--disp);letter-spacing:-.02em}
.vale-para{position:absolute;left:clamp(18px,3vw,30px);bottom:clamp(14px,2vw,20px);font-size:13px;opacity:.92;max-width:80%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.valores{border:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 18px}
.campo{display:block;margin-bottom:14px}
.campo span{display:block;font-size:13px;letter-spacing:.06em;margin-bottom:6px;color:var(--tinta-2)}
.campo input{width:100%;height:50px;border-radius:12px;border:1px solid rgba(16,39,43,.3);background:rgba(255,255,255,.6);padding:0 16px;color:var(--tinta)}
.campo input:focus-visible{outline-offset:1px}
@media (max-width:820px){.pre-grid{grid-template-columns:1fr}}

/* loja */
.loja{background:var(--noite);padding:var(--sec) var(--gut);position:relative;z-index:2;background-image:radial-gradient(800px 500px at 10% 100%,rgba(14,90,96,.55),transparent 70%)}
.loja-in{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(32px,6vw,96px);max-width:1280px;margin:0 auto;align-items:end}
.end{font-style:normal;margin:26px 0 18px;color:var(--claro-2);font-size:18px}
.aberto{display:inline-flex;align-items:center;gap:10px;font-weight:500;margin-bottom:20px}
.aberto i{width:10px;height:10px;border-radius:50%;background:#7a8c90}
.aberto.sim i{background:#47d19a;box-shadow:0 0 0 0 rgba(71,209,154,.6);animation:pisca 2s infinite}
@keyframes pisca{70%{box-shadow:0 0 0 10px rgba(71,209,154,0)}}
.horas{display:grid;gap:6px;max-width:340px}
.horas div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(245,239,230,.14);padding:8px 0}
.horas dt{color:var(--claro-2)}
.horas dd{font-variant-numeric:tabular-nums}
.nota{border:1px solid rgba(245,239,230,.16);border-radius:140px 140px 6px 6px;padding:56px 28px 32px;text-align:center}
.nota-n{font:500 clamp(64px,8vw,104px)/1 var(--disp);color:var(--ouro)}
.nota-t{color:var(--claro-2);margin:6px 0 18px}
.nota-l{color:var(--papel);text-underline-offset:4px;text-decoration-thickness:1px}
@media (max-width:820px){.loja-in{grid-template-columns:1fr}}

.rodape{background:#04161A;padding:48px var(--gut) 110px;color:var(--claro-2);font-size:14px;position:relative;z-index:2;display:grid;gap:6px}
.rodape-m{font:500 28px var(--disp);color:var(--papel)}
.rodape-m em{color:var(--ouro)}
.rodape-s{margin-top:14px;opacity:.85;max-width:60ch}

/* zap fixo (celular) */
.zap-fixo{position:fixed;right:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:70;display:none;align-items:center;gap:8px;height:52px;padding:0 20px;border-radius:999px;background:var(--esm);color:#031a14;font-weight:600;text-decoration:none;box-shadow:0 14px 30px -10px rgba(0,0,0,.6);transition:opacity .3s,transform .4s var(--e)}
.zap-fixo svg{width:22px;height:22px}
.zap-fixo.oculto{opacity:0;transform:translateY(20px);pointer-events:none}
@media (max-width:820px){.zap-fixo{display:inline-flex;width:52px;padding:0;justify-content:center}.zap-fixo span{display:none}}

/* gaveta */
.veu{position:fixed;inset:0;z-index:150;background:rgba(4,22,26,.6);backdrop-filter:blur(3px);opacity:0;transition:opacity .3s}
.veu.on{opacity:1}
.gaveta{position:fixed;top:0;right:0;bottom:0;z-index:160;width:min(440px,100vw);background:var(--papel);color:var(--tinta);display:flex;flex-direction:column;transform:translateX(104%);visibility:hidden;transition:transform .45s var(--e),visibility 0s .45s}
.gaveta.on{transform:none;visibility:visible;transition:transform .45s var(--e)}
.gav-cab{display:flex;justify-content:space-between;align-items:center;padding:22px 24px 14px}
.gav-cab h2{font:500 30px var(--disp)}
.gav-cab button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(16,39,43,.28);background:transparent;cursor:pointer;display:grid;place-items:center}
.gav-cab svg{width:22px;height:22px}
.itens{list-style:none;padding:0 24px;overflow:auto;flex:1;display:grid;align-content:start;gap:10px}
.item{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;padding:10px;border:1px solid rgba(16,39,43,.14);border-radius:10px;background:rgba(255,255,255,.55)}
.item .bola{width:48px;height:48px;border-radius:50%;background:var(--c,#ccc);border:1px solid rgba(16,39,43,.2)}
.item b{display:block;font:500 17px/1.2 var(--disp)}
.item small{color:var(--tinta-2);font-size:13px}
.item button{width:44px;height:44px;border:0;background:transparent;cursor:pointer;border-radius:50%}
.item button svg{width:20px;height:20px;margin:auto}
@media (hover:hover){.item button:hover{background:rgba(16,39,43,.08)}}
.gav-vazio{padding:12px 24px;color:var(--tinta-2)}
.gav-rod{padding:16px 24px max(24px,env(safe-area-inset-bottom));border-top:1px solid rgba(16,39,43,.14);display:grid;gap:4px}
.gav-rod .btn-fino{border-color:rgba(16,39,43,.3);justify-content:center;margin-top:8px}
.toast{position:fixed;left:50%;bottom:90px;z-index:180;transform:translate(-50%,20px);background:var(--noite);color:var(--papel);padding:12px 20px;border-radius:999px;font-size:15px;opacity:0;pointer-events:none;transition:opacity .3s,transform .4s var(--e);max-width:92vw;text-align:center;border:1px solid rgba(200,160,74,.5)}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* reveal */
.rv{opacity:1}
.has-js .rv{opacity:0;transform:translateY(26px);transition:opacity .9s var(--e),transform 1.1s var(--e)}
.has-js .rv.in{opacity:1;transform:none}

/* sem animação */
.rm .palco{height:auto}
.rm .palco-pega{position:relative;height:auto;min-height:100svh;overflow:visible;display:grid}
.rm .fundo-palco,.rm .cena{position:absolute}
.rm .passos{position:relative;display:grid;gap:56px;padding:140px var(--gut) 80px;pointer-events:auto}
.rm .passo{position:relative;left:auto;bottom:auto;opacity:1;transform:none;max-width:560px}
.rm .rola{display:none}
.rm .m>span{transform:none!important;transition:none!important}
.rm .rv{opacity:1;transform:none;transition:none}
.rm .pre{display:none!important}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important}}

/* 404 */
.p404{display:grid;place-items:center;min-height:100vh;text-align:center;padding:24px}
.p404 h1{font:500 clamp(30px,6vw,56px) var(--disp);margin:12px 0 24px}
.p404-n{font:italic 500 90px var(--disp);color:var(--ouro)}

section[id]{scroll-margin-top:40px}
