:root{
  --canvas:#E9D9BA; --panel:#F3E8D2; --accent:#EDA91E; --accent-hover:#F6BE45; --accent-muted:rgba(237,169,30,.28);
  --green:#156540; --deep:#0D3B2A; --deeper:#0A2E20; --line-dark:#3F6B58;
  --ink:#1D2A21; --ink-2:#394035; --cream:#F4EAD6; --cream-2:#C9D0BC; --urucum:#B8431F;
  --display:"Caprasimo",Georgia,serif; --body:"Hanken Grotesk",system-ui,sans-serif; --mono:"DM Mono",ui-monospace,monospace;
  --e-out:cubic-bezier(.2,.75,.2,1); --e-soft:cubic-bezier(.45,.05,.2,1);
  --pad:clamp(20px,5vw,72px);
}
*{box-sizing:border-box}
html{overflow-x:hidden;overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:68px;-webkit-text-size-adjust:100%}
body{overflow-x:hidden;overflow-x:clip;margin:0;background:var(--canvas);color:var(--ink);font:400 clamp(17px,1.2vw,19px)/1.55 var(--body);-webkit-font-smoothing:antialiased}
img,svg,canvas{display:block;max-width:100%}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.06;margin:0;letter-spacing:-.005em}
h2{font-size:clamp(34px,4.6vw,64px)}
p{margin:0}
ul,ol{list-style:none;margin:0;padding:0}
a{color:inherit}
button{font:inherit;color:inherit}
main:focus{outline:none}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}
.mono{font-family:var(--mono);font-size:1rem;letter-spacing:.04em;text-transform:uppercase}
.skip{position:fixed;left:12px;top:-60px;z-index:100;background:var(--accent);color:var(--deeper);padding:10px 16px;border-radius:8px;transition:top .25s var(--e-out)}
.skip:focus{top:12px}
.noscript{padding:0 var(--pad)}

/* ambiente: grão de papel fixo */
.ambient{position:fixed;inset:-10%;z-index:0;pointer-events:none;opacity:.5;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .25 0 0 0 0 .12 0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:drift 90s linear infinite alternate}
@keyframes drift{to{transform:translate3d(5%,4%,0)}}
main,.footer{position:relative;z-index:1}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:var(--deeper);border:0;border-radius:999px;padding:15px 28px;font-weight:700;text-decoration:none;cursor:pointer;text-shadow:none;transition:background-color .25s var(--e-out),transform .25s var(--e-out),opacity .25s var(--e-out)}
.btn:hover{background:var(--accent-hover);transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;background:var(--accent)}
.btn-sm{padding:10px 18px;font-size:1rem}
.btn-ghost{background:transparent;color:var(--cream);box-shadow:inset 0 0 0 2px var(--cream-2)}
.btn-ghost:hover{background:rgba(244,234,214,.1)}
.btn-ghost:disabled{background:transparent}
@media (pointer:coarse){.btn,.quick button,.cats button,.item{min-height:44px}}

/* navegação */
.nav{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;align-items:center;gap:28px;padding:12px var(--pad);transition:background-color .35s var(--e-out),box-shadow .35s var(--e-out)}
.nav.solid{background:var(--deep);box-shadow:0 1px 0 rgba(244,234,214,.14)}
.nav-logo img{height:46px;width:auto;filter:brightness(0) invert(.94) sepia(.18)}
.nav-links{display:flex;gap:26px;margin-left:auto;color:var(--cream)}
.nav-links a{text-decoration:none;font-weight:500;font-size:1rem;padding:6px 0;background:linear-gradient(var(--accent),var(--accent)) left bottom/0 2px no-repeat;transition:background-size .3s var(--e-out)}
.nav-links a:hover{background-size:100% 2px}
@media (max-width:860px){.nav-links{display:none}.nav .btn{margin-left:auto}.nav-logo img{height:40px}}

/* HERO */
.hero{position:relative;height:400vh;height:400svh;background:var(--deep)}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;color:var(--cream);background:var(--deep)}
.wall,.wall>*{position:absolute;inset:0}
.glow{background:radial-gradient(ellipse 52% 62% at 72% 58%,rgba(237,169,30,.2),rgba(237,169,30,0) 70%),linear-gradient(180deg,#0B3325,#114634 70%)}
.back-shelf{inset:auto 0 auto 0;top:17%;height:150px;display:flex;align-items:flex-end;justify-content:flex-end;gap:clamp(18px,3vw,44px);padding:0 3vw;border-bottom:10px solid #0B3124;opacity:.9}
.back-shelf svg{height:clamp(84px,12vh,132px);width:auto;flex:none}
.counter{inset:auto 0 0 0;height:15%;background:linear-gradient(180deg,#6B4322 0 7px,#4F3118 7px 100%)}
.motes i{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--accent);opacity:.25;animation:mote 16s ease-in-out infinite alternate}
.motes i:nth-child(1){left:52%;top:30%;animation-delay:-2s}.motes i:nth-child(2){left:60%;top:62%;animation-delay:-7s}
.motes i:nth-child(3){left:84%;top:40%;animation-delay:-4s}.motes i:nth-child(4){left:92%;top:66%;animation-delay:-11s}
.motes i:nth-child(5){left:47%;top:72%;animation-delay:-9s}.motes i:nth-child(6){left:70%;top:24%;animation-delay:-1s}
.motes i:nth-child(7){left:78%;top:78%;animation-delay:-13s}.motes i:nth-child(8){left:12%;top:80%;animation-delay:-5s}
.motes i:nth-child(9){left:30%;top:18%;animation-delay:-8s}.motes i:nth-child(10){left:96%;top:22%;animation-delay:-3s}
@keyframes mote{to{transform:translate3d(26px,-60px,0);opacity:.08}}

.scene{position:absolute;right:max(3vw,calc(50% - 760px));bottom:5.5%;height:min(90%,62vw);aspect-ratio:800/1000}
.rig{position:absolute;inset:0;will-change:transform}
.layer{position:absolute;inset:0;width:100%;height:100%}
.pouches{position:absolute;inset:0}
.pouch{position:absolute;left:31.25%;top:0;width:37.5%;height:38%;will-change:transform;transform:translateY(-120%);transform-origin:50% 30%}
.bag-back,.flap{transform-origin:50% 34%}
.flyer{transform-origin:50% 36%;will-change:transform,opacity}
.flyer-logo{filter:brightness(0) invert(.96) sepia(.12)}
html.js .flyer,html.js .flap{opacity:0}
.readout{position:absolute;left:50%;bottom:-1%;transform:translateX(-50%);font-family:var(--mono);font-size:clamp(12px,1.05vw,15px);white-space:nowrap}
.chip{background:rgba(8,30,22,.72);border:1px solid rgba(244,234,214,.22);border-radius:10px;padding:3px 10px;color:var(--cream)}
#needle{transform-origin:400px 910px;transform-box:view-box}

.bands{position:absolute;inset:0;pointer-events:none}
.band{position:absolute;left:var(--pad);top:50%;width:min(46vw,640px);transform:translateY(-50%);opacity:0;visibility:hidden}
.band.on{visibility:visible}
.band a{pointer-events:auto}
.band h1,.band h2{font-size:clamp(44px,5.8vw,92px)}
.band-3 h2{font-size:clamp(36px,4.4vw,70px)}
.band .sub{margin-top:18px;font-size:clamp(17px,1.5vw,22px);color:var(--cream);max-width:34ch}
.kicker{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;font-size:1rem;color:var(--accent);margin-bottom:14px}
.stage-3{margin-top:26px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.w{display:inline-block;white-space:nowrap}
.c{display:inline-block}
/* entradas */
[data-split=rise] .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*3,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*26px))}
[data-split=drift] .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*2.8,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*-30px))}
[data-split=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)))}
.band-4 .stage-2{--ks:clamp(0,(var(--k,0) - .62)*4,1);opacity:var(--ks);transform:translateY(calc((1 - var(--ks))*14px))}
.band-4 .stage-3{--kb:clamp(0,(var(--k,0) - .78)*5,1);opacity:var(--kb);transform:translateY(calc((1 - var(--kb))*14px))}
.cue{position:absolute;left:var(--pad);bottom:calc(15% + 16px);display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:1rem;color:var(--cream);transition:opacity .4s var(--e-out)}
.cue svg{animation:nudge 2.4s var(--e-soft) infinite}
.cue.off{opacity:0}
@keyframes nudge{50%{transform:translateY(5px)}}
@media (max-height:560px){.cue{display:none}}

/* mobile: texto em cima, cena embaixo */
@media (max-width:860px),(orientation:portrait){
  .scene{left:50%;right:auto;bottom:74px;height:min(50%,112vw);transform:translateX(-50%)}
  .band{left:var(--pad);right:var(--pad);width:auto;top:84px;transform:none}
  .band h1,.band h2{font-size:clamp(34px,10vw,64px)}
  .band-3 h2{font-size:clamp(28px,8vw,52px)}
  .band .sub{margin-top:10px;font-size:16px;max-width:none}
  .kicker{margin-bottom:8px}
  .stage-3{margin-top:14px}
  .back-shelf{display:none}
  .glow{background:radial-gradient(ellipse 80% 40% at 50% 74%,rgba(237,169,30,.2),rgba(237,169,30,0) 70%),linear-gradient(180deg,#0B3325,#114634 70%)}
  .counter{height:9%}
  .cue{left:50%;bottom:auto;top:46%;transform:translateX(-50%);display:none}
}

/* MANIFESTO */
.manifesto{padding:clamp(90px,14vw,190px) var(--pad) clamp(70px,9vw,120px)}
.big{font-family:var(--display);font-size:clamp(32px,5.2vw,78px);line-height:1.12;max-width:21ch;color:var(--green)}
.big .bw{opacity:.22}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,4vw,60px);margin-top:clamp(50px,7vw,90px);align-items:baseline}
.facts li{border-top:2px solid var(--ink);padding-top:12px}
.facts .mono{display:block;color:var(--ink-2);margin-bottom:6px}
.facts strong{font-size:clamp(19px,1.8vw,25px);font-weight:500;line-height:1.25;display:block}
@media (max-width:720px){.facts{grid-template-columns:1fr}}

/* PRATELEIRA */
.shelves{background:var(--panel);padding:clamp(70px,9vw,120px) 0}
.shelves-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;padding:0 var(--pad);margin-bottom:clamp(34px,5vw,60px)}
.shelves-head p{color:var(--ink-2)}
.shelf{padding:0 var(--pad);margin-bottom:clamp(30px,4vw,50px)}
.shelf-title{font-size:1rem;font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);margin-bottom:12px}
.jars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(8px,1.6vw,24px);align-items:end;border-bottom:12px solid #8A5A2E;box-shadow:0 10px 0 -4px rgba(75,50,28,.2)}
.jar{appearance:none;background:none;border:0;padding:0 0 10px;cursor:pointer;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;transition:transform .35s var(--e-out)}
.jar:hover{transform:translateY(-8px)}
.jar svg{width:min(100%,104px);height:auto}
.jar span{font-size:1rem;font-weight:500;line-height:1.2;min-height:2.4em;display:flex;align-items:flex-end}
@media (max-width:720px){.jars{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:16px}}

/* SEMANA */
.week{background:var(--green);color:var(--cream);padding:clamp(70px,9vw,120px) var(--pad) clamp(80px,10vw,130px);position:relative;overflow:hidden}
.week-head{max-width:760px}
.week-head p{margin-top:14px;color:var(--cream)}
.string{width:calc(100% + 2*var(--pad));margin:clamp(24px,3vw,40px) calc(-1*var(--pad)) -46px;height:110px;overflow:visible}
.string path{fill:none;stroke:#E9D9BA;stroke-width:2;stroke-dasharray:1;stroke-dashoffset:var(--draw,1);vector-effect:non-scaling-stroke}
html:not(.js) .string path{stroke-dashoffset:0}
.tags{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,26px);position:relative}
.tag{--r:0deg;position:relative;background:var(--canvas);color:var(--ink);padding:44px 20px 20px;border-radius:14px 14px 10px 10px;display:flex;flex-direction:column;gap:10px;transform-origin:50% 14px;transform:rotate(var(--r));animation:sway 7s ease-in-out infinite alternate}
.tag:nth-child(1){--r:-1.6deg;animation-delay:-2s}.tag:nth-child(2){--r:1.2deg;animation-delay:-5s}.tag:nth-child(3){--r:-.9deg;animation-delay:-1s}.tag:nth-child(4){--r:1.7deg;animation-delay:-3.5s}
@keyframes sway{to{transform:rotate(calc(var(--r)*-.5))}}
.tag::before{content:"";position:absolute;left:50%;top:14px;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #B98F5C}
.tag h3{font-size:clamp(22px,2vw,28px)}
.tag p{color:var(--ink-2);font-size:1rem}
.tag ul{font-family:var(--mono);font-size:1rem;border-top:1px dashed #8A7A5C;padding-top:10px;flex:1}
.tag li{display:flex;justify-content:space-between;gap:8px;padding:2px 0}
.tag button{appearance:none;border:0;border-radius:999px;background:var(--deep);color:var(--cream);font-weight:700;padding:11px 14px;cursor:pointer;transition:background-color .25s var(--e-out)}
.tag button:hover{background:var(--green)}
@media (max-width:1040px){.tags{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.tags{grid-template-columns:1fr;margin-top:28px}.string{display:none}}

/* ETIQUETA */
.label-sec{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(36px,7vw,110px);align-items:center;padding:clamp(80px,10vw,140px) var(--pad)}
.label-card{position:relative;background:var(--panel);border-radius:18px;padding:30px clamp(22px,3vw,38px) 38px;box-shadow:0 22px 50px -24px rgba(60,40,15,.5);transform:rotate(-2.4deg);max-width:440px;justify-self:center;width:100%}
.label-card .hole{display:block;width:20px;height:20px;border-radius:50%;background:var(--canvas);box-shadow:inset 0 2px 3px rgba(60,40,15,.4);margin:0 auto 14px}
.label-card img{width:62%;height:auto;margin:0 auto 18px}
.label-card dl{margin:0;font-family:var(--mono);font-size:1rem}
.label-card dl div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;border-top:1px dashed #A8987A}
.label-card dt{color:var(--ink-2)}
.label-card dd{margin:0;font-weight:500}
.seal{position:absolute;right:-14px;bottom:-18px;background:var(--urucum);color:#FFF6E6;font-family:var(--mono);font-size:1rem;padding:9px 13px;border-radius:8px;transform:rotate(5deg)}
.label-copy>p{margin-top:18px;max-width:52ch;color:var(--ink-2)}
.label-copy ul{margin-top:26px}
.label-copy li{padding:13px 0;border-top:1px solid rgba(29,42,33,.28);color:var(--ink-2)}
.label-copy strong{color:var(--ink)}
@media (max-width:860px){.label-sec{grid-template-columns:1fr}}

/* BALANÇA */
.scale-sec{background:var(--deep);color:var(--cream);padding:clamp(70px,9vw,120px) var(--pad)}
.scale-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px 40px;flex-wrap:wrap;margin-bottom:clamp(30px,4vw,50px)}
.steps{display:flex;gap:clamp(14px,2.4vw,32px);flex-wrap:wrap;font-size:1rem}
.steps b{font-family:var(--mono);font-weight:500;color:var(--accent);margin-right:4px}
.bench{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:start}
.picker .mono{color:var(--cream-2);display:block;margin-bottom:10px}
.cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.cats button{appearance:none;background:transparent;border:1.5px solid var(--line-dark);color:var(--cream);border-radius:999px;padding:7px 13px;font-size:1rem;cursor:pointer;transition:background-color .25s var(--e-out),color .25s var(--e-out),border-color .25s var(--e-out)}
.cats button:hover{border-color:var(--cream-2)}
.cats button[aria-selected=true]{background:var(--cream);color:var(--deeper);border-color:var(--cream)}
.items{display:grid;gap:4px}
.item{appearance:none;display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:0;border-bottom:1px solid rgba(244,234,214,.14);color:var(--cream);padding:10px 8px;text-align:left;cursor:pointer;border-radius:6px;transition:background-color .25s var(--e-out)}
.item:hover{background:rgba(244,234,214,.07)}
.item[aria-pressed=true]{background:rgba(244,234,214,.14)}
.item i{width:14px;height:14px;border-radius:50%;flex:none}
.weigher{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px}
#pour{position:absolute;left:0;top:0;width:100%;height:120px;pointer-events:none;z-index:1}
.dial{width:100%;max-width:340px;height:auto}
#bigNeedle{transform-origin:200px 248px;transform-box:view-box;transition:transform .4s var(--e-out)}
#bigNeedle.live{transition:none}
#pile{transition:ry .3s var(--e-out)}
.now{display:flex;justify-content:space-between;align-items:baseline;gap:14px;width:100%;margin-top:-4px}
.now span:first-child{color:var(--cream-2)}
.now strong{font-family:var(--display);font-weight:400;font-size:clamp(30px,3vw,42px);white-space:nowrap}
.hold{--p:0;position:relative;overflow:hidden;width:100%;appearance:none;border:1.5px solid var(--line-dark);border-radius:10px;background:transparent;color:var(--cream);font-weight:500;font-size:1rem;padding:13px;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none;transition:transform .2s var(--e-out),opacity .25s var(--e-out)}
.hold::before{content:"";position:absolute;inset:0;background:rgba(237,169,30,.32);transform:scaleX(var(--p));transform-origin:left}
.hold span{position:relative}
.hold.on{transform:scale(.98)}
.hold:disabled{opacity:.4;cursor:not-allowed}
.quick{display:flex;gap:6px;width:100%}
.quick button{flex:1;appearance:none;background:transparent;border:1.5px solid var(--line-dark);color:var(--cream);border-radius:10px;padding:8px 4px;font-family:var(--mono);font-size:1rem;cursor:pointer;transition:border-color .25s var(--e-out)}
.quick button:hover{border-color:var(--cream-2)}
#addBtn{width:100%}
.bag{background:var(--canvas);color:var(--ink);border-radius:18px;padding:22px}
.bag h3{font-size:1.6rem;margin-bottom:12px}
#bagList li{display:flex;align-items:baseline;gap:8px;padding:8px 0;border-bottom:1px dashed #8A7A5C}
#bagList li span{flex:1}
#bagList li b{font-family:var(--mono);font-weight:500;font-size:1rem;white-space:nowrap}
#bagList button{appearance:none;background:none;border:0;cursor:pointer;color:var(--ink-2);font-size:1.15rem;line-height:1;padding:4px 6px;min-width:30px;min-height:30px}
.bag-empty{color:var(--ink-2)}
.bag-total{margin-top:10px;text-align:right;text-transform:none}
.btn-send{width:100%;margin-top:14px;background:var(--green);color:#fff}
.btn-send:hover{background:#0F5535}
.btn-send:disabled{background:var(--green)}
.btn-send.ready{animation:pop .5s var(--e-out)}
@keyframes pop{40%{transform:scale(1.03)}}
.fine{margin-top:10px;font-size:1rem;color:var(--ink-2)}
.preview{margin-top:14px;background:var(--panel);border-radius:12px;padding:12px;font-size:1rem}
.preview pre{white-space:pre-wrap;font-family:var(--mono);font-size:1rem;margin:8px 0 0}
@media (max-width:1040px){.bench{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.bag{grid-column:1/-1}}
@media (max-width:640px){.bench{grid-template-columns:minmax(0,1fr)}}

/* DÚVIDAS */
.faq{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(30px,6vw,90px);padding:clamp(80px,10vw,130px) var(--pad);align-items:start}
.faq h2{position:sticky;top:96px;font-size:clamp(32px,3.8vw,54px)}
details{border-top:1.5px solid var(--ink)}
details:last-child{border-bottom:1.5px solid var(--ink)}
summary{cursor:pointer;list-style:none;padding:18px 34px 18px 0;font-weight:700;font-size:1.1rem;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:4px;top:12px;font-family:var(--display);font-size:1.6rem;transition:transform .3s var(--e-out)}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 34px 20px 0;color:var(--ink-2);max-width:62ch}
@media (max-width:860px){.faq{grid-template-columns:1fr}.faq h2{position:static}}

/* VISITA */
.visit{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(30px,6vw,90px);align-items:center;background:var(--panel);padding:clamp(70px,9vw,120px) var(--pad)}
.visit-logo{width:min(100%,340px);height:auto;justify-self:center}
.visit-copy p{margin-top:14px;color:var(--ink-2)}
.visit-data{margin:24px 0 28px;max-width:560px}
.visit-data div{display:grid;grid-template-columns:110px 1fr;gap:10px;align-items:baseline;padding:10px 0;border-top:1px solid rgba(29,42,33,.28)}
.visit-data dt{font-family:var(--mono);font-size:1rem;text-transform:uppercase;color:var(--ink-2)}
.visit-data dd{margin:0}
.visit-data a{color:var(--green);font-weight:500;text-underline-offset:3px}
@media (max-width:720px){.visit{grid-template-columns:1fr}.visit-logo{width:220px}}

.footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;background:var(--deeper);color:var(--cream);padding:26px var(--pad) 96px}
.footer p:first-child{font-family:var(--display);font-size:1.3rem}

.toast{position:fixed;z-index:60;left:50%;bottom:88px;transform:translate(-50%,20px);background:var(--deeper);color:var(--cream);padding:11px 18px;border-radius:999px;opacity:0;pointer-events:none;transition:opacity .3s var(--e-out),transform .3s var(--e-out);box-shadow:0 8px 24px rgba(0,0,0,.3);max-width:calc(100vw - 32px)}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* entradas de seção */
/* catálogo */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.catalog{padding:clamp(40px,6vw,80px) var(--pad) 0}
.catalog-head p{margin-top:10px;color:var(--ink-2)}
.cat-search{display:block;margin-top:22px;max-width:460px}
.cat-search input{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:#FBF5E8;border:1.5px solid #A8987A;border-radius:999px;padding:12px 18px;min-height:46px}
.cat-search input:focus{outline:2px solid var(--green);outline-offset:1px;border-color:var(--green)}
.cat-rail{display:flex;align-items:center;gap:8px;margin-top:16px}
.cat-chips{display:flex;gap:8px;flex:1;min-width:0;position:relative;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:2px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
.cat-chips::-webkit-scrollbar{display:none}
.cat-chips button{flex:none;scroll-snap-align:start;appearance:none;background:transparent;border:1.5px solid var(--green);color:var(--green);border-radius:999px;padding:9px 15px;min-height:42px;font:inherit;font-size:1rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background-color .25s var(--e-out),color .25s var(--e-out)}
.cat-chips button[aria-pressed=true]{background:var(--green);color:var(--cream)}
.rail-arrow{flex:none;appearance:none;width:42px;height:42px;border-radius:50%;border:0;background:var(--deep);color:var(--cream);font-size:1.3rem;line-height:1;cursor:pointer}
@media (pointer:coarse){.rail-arrow{display:none}}
.cat-count{margin-top:18px;color:var(--ink-2);font-size:1rem}
.cat-grid{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(18px,3vw,40px)}
.cat-item{appearance:none;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:none;border:0;border-top:1px solid rgba(29,42,33,.22);padding:12px 2px;min-height:50px;font:inherit;color:var(--ink);text-align:left;cursor:pointer}
.cat-item i{flex:none;position:relative;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--green);transition:background-color .25s var(--e-out)}
.cat-item i::before,.cat-item i::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:2px;margin:-1px 0 0 -5.5px;background:var(--green);transition:transform .25s var(--e-out),background-color .25s var(--e-out)}
.cat-item i::after{transform:rotate(90deg)}
.cat-item:hover span{color:var(--green)}
.cat-item.on{font-weight:700}
.cat-item.on i{background:var(--green)}
.cat-item.on i::before{width:6px;margin:0;transform:translate(-5px,1px) rotate(45deg);background:var(--cream)}
.cat-item.on i::after{width:11px;margin:0;transform:translate(-3px,-1px) rotate(-50deg);background:var(--cream)}
.cat-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.btn-more{background:transparent;color:var(--green);border:1.5px solid var(--green);box-shadow:none;cursor:pointer}
.btn-more:hover{background:var(--green);color:var(--cream)}
.cat-note{margin-top:18px;color:var(--ink-2)}
.cat-note a{color:var(--green);font-weight:700;text-underline-offset:3px}
@media (max-width:1000px){.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.cat-grid{grid-template-columns:1fr}}
/* gramas escritas */
.type-g{display:block;width:100%;color:var(--cream-2);font-size:1rem}
.gbox{display:flex;align-items:center;gap:8px;margin-top:6px;border:1.5px solid var(--line-dark);border-radius:10px;padding:0 14px;color:var(--cream)}
.gbox:focus-within{border-color:var(--accent)}
.gbox input{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--cream);font-family:var(--mono);font-size:16px;padding:11px 0;min-height:44px}
.gbox input::placeholder{color:var(--cream-2);opacity:1}
.gbox b{font-family:var(--mono);font-weight:500}
input[type=number]{-moz-appearance:textfield;appearance:textfield}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.bag-g{display:inline-flex;align-items:center;gap:4px;flex:none}
.bag-g input{width:68px;text-align:right;font-family:var(--mono);font-size:16px;color:var(--ink);background:#FBF5E8;border:1px solid #A8987A;border-radius:8px;padding:5px 7px;min-height:36px}
.bag-g input:focus{outline:2px solid var(--green);outline-offset:1px}
#bagList li{align-items:center}
.cat-item.open i::after{transform:rotate(0)}
.cat-weigh{display:flex;flex-wrap:wrap;gap:8px;padding:2px 2px 14px}
.cat-quick{display:flex;gap:6px;flex:1 1 100%}
.cat-quick button{flex:1;appearance:none;background:var(--green);color:var(--cream);border:0;border-radius:10px;min-height:42px;font-family:var(--mono);font-size:1rem;cursor:pointer}
.cat-type{flex:1;min-width:0;display:flex;align-items:center;gap:6px;background:#FBF5E8;border:1.5px solid #A8987A;border-radius:10px;padding:0 12px}
.cat-type:focus-within{border-color:var(--green)}
.cat-type input{flex:1;min-width:0;width:100%;background:none;border:0;outline:0;font-family:var(--mono);font-size:16px;color:var(--ink);min-height:40px}
.cat-type b{font-family:var(--mono);font-weight:500}
.cat-put{appearance:none;background:var(--accent);color:var(--deeper);border:0;border-radius:10px;padding:0 16px;min-height:42px;font:inherit;font-weight:700;cursor:pointer}
/* cupom */
.coupon{margin:14px 0}
.coupon label{display:block;font-weight:500;margin-bottom:6px}
.coupon-row{display:flex;gap:8px}
.coupon-row input{flex:1;min-width:0;font-family:var(--mono);font-size:16px;text-transform:uppercase;color:var(--ink);background:#FBF5E8;border:1.5px solid #A8987A;border-radius:10px;padding:0 12px;min-height:44px}
.coupon-row input::placeholder{text-transform:none}
.coupon-row input:focus{outline:2px solid var(--green);outline-offset:1px}
.coupon-row button{flex:none;appearance:none;background:transparent;color:var(--green);border:1.5px solid var(--green);border-radius:10px;padding:0 16px;min-height:44px;font:inherit;font-weight:700;cursor:pointer}
.coupon-msg{margin-top:8px;font-size:1rem;color:var(--urucum)}
.coupon-msg.ok{color:var(--green);font-weight:500}
/* dados do pedido */
.order{display:grid;gap:14px;margin:18px 0 14px;padding-top:16px;border-top:1px solid rgba(29,42,33,.28)}
.order[hidden],.order [hidden],.order-err[hidden]{display:none}
.order h4{font-family:var(--display);font-weight:400;font-size:1.25rem}
.order fieldset{border:0;margin:0;padding:0;min-width:0}
.order legend{padding:0;font-weight:500;margin-bottom:6px}
.field{display:block}
.field span{display:block;font-weight:500;margin-bottom:6px}
.field input{width:100%;font:inherit;font-size:16px;color:var(--ink);background:#FBF5E8;border:1.5px solid #A8987A;border-radius:10px;padding:0 12px;min-height:44px}
.field input:focus{outline:2px solid var(--green);outline-offset:1px}
.picks{display:flex;flex-wrap:wrap;gap:8px}
.pick{position:relative;cursor:pointer}
.pick input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.pick span{display:flex;align-items:center;min-height:46px;padding:0 14px;border:1.5px solid var(--green);border-radius:999px;color:var(--green);font-size:1rem;font-weight:500;transition:background-color .2s var(--e-out),color .2s var(--e-out)}
.pick input:checked+span{background:var(--green);color:var(--cream)}
.pick input:focus-visible+span{outline:2px solid var(--green);outline-offset:2px}
.order-sub{display:grid;gap:12px}
.order-err{margin:0 0 10px;color:var(--urucum);font-weight:500}
/* facilitar */
@media (max-width:860px) and (max-height:720px){.scene{height:min(40%,112vw)}}
.band-cta{margin-top:16px}
.band-cta .btn{min-height:52px}
#addBtn{width:100%}
.send-tip{margin-top:12px;font-weight:700}
.quickbar{position:fixed;z-index:55;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:9px 12px calc(9px + env(safe-area-inset-bottom));background:var(--deeper);box-shadow:0 -1px 0 rgba(244,234,214,.16);transition:transform .25s var(--e-out)}
.quickbar.away{transform:translateY(110%)}
.quickbar .btn{padding:0 8px;min-height:48px;font-size:1rem;white-space:nowrap}
.btn-talk{background:var(--green);color:#fff}
.btn-talk:hover{background:#0F5535}
@media (min-width:861px){.quickbar{left:auto;right:22px;bottom:22px;display:flex;padding:0;background:none;box-shadow:none}.quickbar .btn{padding:0 22px;box-shadow:0 8px 24px rgba(0,0,0,.28)}.toast{bottom:88px}}
/* sacolas prontas compactas */
.tags{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tag{padding:30px 16px 14px;gap:6px}
.tag h3{font-size:1.25rem}
.tag p{font-size:1rem;line-height:1.35}
.tag ul{padding-top:6px}
.tag li{padding:2px 0}
.tag li span:last-child{flex:none;white-space:nowrap}
@media (max-width:1040px){.tags{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.tags{display:flex;align-items:flex-start;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:24px calc(-1*var(--pad)) 0;padding:12px var(--pad) 18px;scroll-padding-left:var(--pad);scrollbar-width:none;-webkit-overflow-scrolling:touch}.tags::-webkit-scrollbar{display:none}.tag{flex:0 0 min(76vw,300px);scroll-snap-align:start;animation:none}.string{display:none}}
/* mapas das lojas */
.visit-maps{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,26px)}
.visit-maps figure{margin:0}
.visit-maps figcaption{font-family:var(--display);font-size:1.25rem;margin-bottom:8px}
.visit-maps iframe{display:block;width:100%;height:clamp(260px,28vw,380px);border:0;border-radius:14px;background:var(--canvas)}
@media (max-width:640px){.visit-maps{grid-template-columns:1fr}}
html.js .rv{opacity:0;transform:translateY(22px);transition:opacity .8s var(--e-out),transform .8s var(--e-out)}
html.js .rv.in{opacity:1;transform:none}
html.js .label-card.rv.in{transform:rotate(-2.4deg)}
html.js .facts li.rv:nth-child(2),html.js .faq-list .rv:nth-child(2){transition-delay:.09s}
html.js .facts li.rv:nth-child(3),html.js .faq-list .rv:nth-child(3){transition-delay:.18s}

body.paused *,body.paused *::before,body.paused *::after{animation-play-state:paused!important}

/* movimento reduzido e sem JS: hero parado, já assentado */
html.rm{scroll-behavior:auto}
html.rm .hero,html:not(.js) .hero{height:auto}
html.rm .stage,html:not(.js) .stage{position:relative;min-height:100vh}
html.rm .band:not(.band-4),html:not(.js) .band:not(.band-1){display:none}
html.rm .band-4{opacity:1;visibility:visible;--k:1}
html:not(.js) .band-1{opacity:1;visibility:visible}
html.rm .cue,html:not(.js) .cue{display:none}
html.rm .flyer,html.rm .flap{opacity:1!important}
html.rm .rv{opacity:1!important;transform:none;transition:none!important}
html.rm .label-card.rv{transform:rotate(-2.4deg)}
html.rm .big .bw{opacity:1!important}
html.rm .string path{stroke-dashoffset:0}
html.rm *,html.rm *::before,html.rm *::after{animation:none!important;transition:none!important}
