/* Layout: marca de rua de bairro. Fundo creme do cartão, blocos laranja e verde-floresta,
   etiquetas de gôndola e cupom fiscal como elementos próprios do varejo. Tema único, claro. */
:root{
  --cream:#F4EBDD;        /* fundo do cartão de visita */
  --paper:#FFFAF2;
  --ink:#1E1B16;
  --muted:#675E52;
  --line:#E2D5C1;
  --orange:#EE7A1C;       /* sacola do logo */
  --orange-ink:#B85508;
  --leaf:#4B9B2C;         /* folha do logo */
  --forest:#16301E;
  --forest-2:#21452C;
  --tag:#FFE07A;          /* etiqueta de preço */
  --f-display:"Bricolage Grotesque", "Arial Narrow", system-ui, sans-serif;
  --f-brand:"Fraunces", Georgia, "Times New Roman", serif;
  --f-body:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
  --f-mono:"JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;
  --gut-l:max(16px, env(safe-area-inset-left, 0px));
  --gut-r:max(16px, env(safe-area-inset-right, 0px));
  --wrap:1200px;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{background:var(--cream);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--cream)}
h1,h2,h3{font-family:var(--f-display);line-height:1.02;letter-spacing:-.025em;margin:0;text-wrap:balance}
p{margin:0}
a{color:inherit}
img{max-width:100%;display:block}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:6px}
.band{padding-left:var(--gut-l);padding-right:var(--gut-r)}
.wrap{max-width:var(--wrap);margin-inline:auto}
.eyebrow{font-family:var(--f-mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange-ink);font-weight:600}
.serif-i{font-family:var(--f-brand);font-style:italic;font-weight:700;letter-spacing:-.02em}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-body);font-weight:700;font-size:16px;padding:15px 24px;border-radius:999px;border:2px solid transparent;text-decoration:none;cursor:pointer;transition:transform .2s ease, background .2s ease, box-shadow .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 6px 0 var(--orange-ink)}
.btn-primary:hover{box-shadow:0 8px 0 var(--orange-ink)}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-ghost:hover{background:var(--ink);color:var(--paper)}
.btn svg{width:18px;height:18px}

/* ---------- Header ---------- */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb, var(--cream) 88%, transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .2s}
.top.scrolled{border-bottom-color:var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:74px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand svg{width:38px;height:auto;flex:none}
.brand-name{font-family:var(--f-brand);font-weight:800;font-size:25px;letter-spacing:-.02em;line-height:1}
.brand-sub{display:block;font-family:var(--f-body);font-size:11.5px;color:var(--muted);font-weight:500;letter-spacing:.01em;margin-top:3px}
.nav{display:flex;align-items:center;gap:26px}
.nav a{text-decoration:none;font-weight:600;font-size:15px;color:var(--ink);position:relative}
.nav a:not(.btn)::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .2s}
.nav a:not(.btn):hover::after{transform:scaleX(1)}
.nav .btn{padding:11px 18px;font-size:14.5px;box-shadow:0 4px 0 var(--orange-ink)}
.menu-btn{display:none;background:none;border:2px solid var(--ink);border-radius:999px;padding:8px 14px;font:700 14px var(--f-body);color:var(--ink);cursor:pointer}
@media (max-width:420px){.brand-sub{display:none}}
@media (max-width:960px){
  .menu-btn{display:inline-flex}
  .nav{position:absolute;top:74px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);border-bottom:1px solid var(--line);padding:8px var(--gut-r) 18px var(--gut-l);display:none}
  .nav.open{display:flex}
  .nav a{padding:13px 0;border-bottom:1px solid var(--line)}
  .nav a.btn{margin-top:14px;justify-content:center;border-bottom:0}
}

/* ---------- Hero ---------- */
.hero{padding-block:48px 72px;position:relative}
.hero .wrap{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}
.hero h1{font-size:clamp(46px,7.4vw,98px);font-weight:800;margin-top:18px}
.hero h1 .serif-i{color:var(--orange);font-size:1.02em}
.hero .lead{font-size:clamp(18px,1.6vw,21px);color:var(--muted);max-width:33ch;margin-top:24px}
.hero .ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.facts{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:0;margin-top:44px;border-top:2px solid var(--ink);max-width:560px}
.fact{padding:16px 22px 0 0;min-width:0}
.fact + .fact{border-left:1px solid var(--line);padding-left:22px}
@media (max-width:520px){.facts{grid-template-columns:1fr 1fr}.fact:nth-child(3){grid-column:1/-1;border-left:0;padding-left:0;border-top:1px solid var(--line);margin-top:14px}.fact b{font-size:28px}}
.fact b{display:block;font-family:var(--f-display);font-size:34px;font-weight:800;letter-spacing:-.03em;line-height:1}
.fact span{font-size:14px;color:var(--muted)}
.hero-art{position:relative;min-width:0}
.photo-main{border-radius:28px 28px 28px 120px;overflow:hidden;aspect-ratio:4/5;max-width:100%;box-shadow:0 30px 60px -30px rgba(30,27,22,.5)}
.photo-main img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.pricetag{position:absolute;left:-34px;top:16%;background:var(--tag);padding:14px 18px 14px 26px;border-radius:6px 14px 14px 6px;transform:rotate(-6deg);box-shadow:0 12px 24px -12px rgba(0,0,0,.4);font-family:var(--f-mono)}
.pricetag::before{content:"";position:absolute;left:9px;top:50%;width:8px;height:8px;border-radius:50%;background:var(--cream);transform:translateY(-50%);box-shadow:inset 0 0 0 1.5px rgba(0,0,0,.25)}
.pricetag small{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.pricetag strong{font-family:var(--f-display);font-size:30px;letter-spacing:-.02em;line-height:1.1}
.paid{position:absolute;right:-18px;bottom:9%;background:var(--paper);border-radius:20px;padding:16px 18px;display:flex;gap:12px;align-items:center;box-shadow:0 22px 40px -18px rgba(0,0,0,.45);max-width:250px}
.paid .ok{width:42px;height:42px;border-radius:50%;background:var(--leaf);display:grid;place-items:center;flex:none}
.paid .ok svg{width:22px;height:22px}
.paid b{display:block;font-size:15px;line-height:1.25}
.paid span{font-size:13px;color:var(--muted)}
.clock{position:absolute;right:22px;top:-22px;width:104px;height:104px;border-radius:50%;background:var(--forest);color:var(--paper);display:grid;place-items:center;text-align:center;line-height:1;transform:rotate(8deg)}
.clock b{font-family:var(--f-display);font-size:38px;font-weight:800;display:block}
.clock span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-family:var(--f-mono)}
@media (max-width:900px){
  .hero .wrap{grid-template-columns:1fr;gap:44px}
  .hero-art{max-width:480px;margin-inline:auto;width:100%}
  .pricetag{left:-6px}
  .paid{right:-6px}
}

/* ---------- Faixa de produtos ---------- */
.ticker{background:var(--orange);color:#fff;overflow:hidden;padding-block:16px;border-block:2px solid var(--ink)}
.ticker-track{display:flex;width:max-content;gap:0;animation:roll 38s linear infinite}
.ticker span{font-family:var(--f-display);font-weight:700;font-size:24px;letter-spacing:-.01em;white-space:nowrap;display:flex;align-items:center}
.ticker span::after{content:"";width:12px;height:12px;background:var(--forest);margin:0 26px;transform:rotate(45deg)}
@keyframes roll{to{transform:translateX(-50%)}}

/* ---------- Seções ---------- */
.section{padding-block:104px}
.sec-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:56px}
.sec-head h2{font-size:clamp(38px,5vw,66px);font-weight:800;margin-top:14px}
.sec-head p{color:var(--muted);font-size:18px;max-width:46ch}
@media (max-width:800px){.sec-head{grid-template-columns:1fr;gap:18px;margin-bottom:40px}.section{padding-block:76px}}

/* Como funciona */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--ink)}
.step{padding:30px 30px 10px 0;min-width:0}
.step + .step{padding-left:30px;border-left:1px solid var(--line)}
.step .n{font-family:var(--f-mono);font-size:13px;color:var(--orange-ink);font-weight:600}
.step h3{font-family:var(--f-brand);font-weight:800;font-size:clamp(40px,4.6vw,62px);letter-spacing:-.03em;margin:14px 0 14px}
.step p{color:var(--muted);max-width:30ch}
.pay{display:grid;gap:14px;margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}
.pay-row{display:grid;grid-template-columns:270px 1fr;gap:10px 18px;align-items:center}
.pay-lbl{font-weight:700}
.pay-chips{display:flex;flex-wrap:wrap;gap:10px;min-width:0}
.chip.vale i{background:var(--orange)}
@media (max-width:700px){.pay-row{grid-template-columns:1fr}}
.chip{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-weight:600;font-size:14.5px}
.chip i{width:8px;height:8px;border-radius:50%;background:var(--leaf);display:block}
@media (max-width:760px){.steps{grid-template-columns:1fr}.step,.step + .step{padding:26px 0 18px;border-left:0;border-top:1px solid var(--line)}.step:first-child{border-top:0}}

/* App */
.app{background:var(--forest);color:var(--paper);position:relative;overflow:hidden}
.app .eyebrow{color:var(--tag)}
.app .sec-head p{color:#C9D6C9}
.app-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.phone-wrap{display:flex;flex-direction:column;align-items:center;gap:22px;min-width:0}
.phone{width:300px;max-width:100%;aspect-ratio:9/18.5;background:#0d0d0c;border-radius:46px;padding:12px;box-shadow:0 0 0 2px #3a5a42, 0 40px 80px -30px rgba(0,0,0,.7)}
.screen{width:100%;height:100%;background:var(--paper);color:var(--ink);border-radius:36px;overflow:hidden;position:relative;display:flex;flex-direction:column}
.notch{width:96px;height:26px;background:#0d0d0c;border-radius:0 0 16px 16px;margin:0 auto;flex:none}
.scr-head{display:flex;align-items:center;justify-content:space-between;padding:12px 18px 8px}
.scr-head .mini{display:flex;align-items:center;gap:7px;font-family:var(--f-brand);font-weight:800;font-size:15px}
.scr-head .mini svg{width:20px}
.scr-head small{font-size:11px;color:var(--muted)}
.view{position:absolute;inset:70px 0 0;padding:6px 18px 18px;display:flex;flex-direction:column;gap:10px;opacity:0;transform:translateY(8px);transition:opacity .35s, transform .35s;pointer-events:none}
.view.on{opacity:1;transform:none;pointer-events:auto}
.view h4{margin:0;font-family:var(--f-display);font-size:21px;letter-spacing:-.02em;line-height:1.1}
.cam{flex:1;max-height:230px;border-radius:20px;background:linear-gradient(160deg,#2b2a27,#121211);position:relative;display:grid;place-items:center;overflow:hidden}
.cam .frame{width:72%;height:44%;border:3px solid var(--orange);border-radius:14px;position:relative;display:grid;place-items:center}
.barcode{width:80%;height:56%;background:repeating-linear-gradient(90deg,#fff 0 2px,transparent 2px 4px,#fff 4px 5px,transparent 5px 8px,#fff 8px 11px,transparent 11px 12px)}
.laser{position:absolute;left:6%;right:6%;height:2px;background:#ff3b2f;box-shadow:0 0 10px #ff3b2f;top:50%;animation:scan 1.8s ease-in-out infinite}
@keyframes scan{0%,100%{top:22%}50%{top:78%}}
.item-pop{background:var(--cream);border-radius:14px;padding:10px 12px;display:flex;justify-content:space-between;gap:8px;font-size:13px;align-items:center}
.item-pop b{font-family:var(--f-mono);font-size:13px;white-space:nowrap}
.cart-row{display:flex;justify-content:space-between;gap:8px;font-size:13px;padding:9px 0;border-bottom:1px dashed var(--line)}
.cart-row span:last-child{font-family:var(--f-mono)}
.total{display:flex;justify-content:space-between;font-weight:700;font-size:15px;padding-top:6px}
.total span:last-child{font-family:var(--f-mono)}
.scr-btn{margin-top:auto;background:var(--orange);color:#fff;border-radius:14px;padding:12px;text-align:center;font-weight:700;font-size:14px}
.qr{width:150px;height:150px;margin:6px auto 2px;display:grid;grid-template-columns:repeat(21,1fr);gap:0;padding:8px;background:#fff;border:1px solid var(--line);border-radius:12px}
.qr i{display:block;aspect-ratio:1}
.qr i.b{background:var(--ink)}
.center{text-align:center;font-size:12.5px;color:var(--muted)}
.done{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}
.done .big{width:84px;height:84px;border-radius:50%;background:var(--leaf);display:grid;place-items:center}
.done .big svg{width:42px}
.cashback{background:var(--tag);border-radius:14px;padding:12px 14px;font-size:13px;width:100%}
.cashback b{font-family:var(--f-mono)}
.tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.tabs button{font:600 14px var(--f-body);color:var(--paper);background:transparent;border:1.5px solid #4c6b53;border-radius:999px;padding:8px 14px;cursor:pointer}
.tabs button[aria-selected="true"]{background:var(--tag);color:var(--ink);border-color:var(--tag)}
.feat-list{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #3a5a42}
.feat{padding:22px 22px 22px 0;border-bottom:1px solid #3a5a42;min-width:0}
.feat:nth-child(even){padding-left:22px;border-left:1px solid #3a5a42}
.feat h3{font-family:var(--f-display);font-size:21px;font-weight:700;letter-spacing:-.015em;display:flex;align-items:center;gap:10px}
.feat h3 svg{width:22px;height:22px;flex:none;color:var(--orange)}
.feat p{color:#C9D6C9;font-size:15.5px;margin-top:6px}
@media (max-width:900px){.app-grid{grid-template-columns:1fr;gap:48px}}
@media (max-width:560px){.feat-list{grid-template-columns:1fr}.feat:nth-child(even){padding-left:0;border-left:0}}

/* Produtos */
.shelf{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:auto auto;gap:18px}
.tile{position:relative;border-radius:22px;overflow:hidden;min-height:260px;background:var(--forest)}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.tile:hover img{transform:scale(1.04)}
.tile.big{grid-row:span 2;min-height:540px}
.tile .lbl{position:absolute;left:16px;bottom:16px;right:16px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
.gtag{background:var(--tag);color:var(--ink);font-family:var(--f-display);font-weight:800;font-size:20px;padding:8px 14px 9px;border-radius:4px 12px 12px 4px;line-height:1.1;box-shadow:0 10px 20px -10px rgba(0,0,0,.5)}
.gtag small{display:block;font-family:var(--f-mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px}
.tile.flat{background:var(--orange);color:#fff;padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.tile.flat h3{font-size:30px;font-weight:800}
.tile.flat p{font-size:15.5px;opacity:.95}
.cats{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.cats .chip i{background:var(--orange)}
@media (max-width:900px){.shelf{grid-template-columns:1fr 1fr}.tile.big{grid-row:auto;grid-column:span 2;min-height:360px}}
@media (max-width:560px){.shelf{grid-template-columns:1fr}.tile.big{grid-column:auto}}

/* Sugestões */
.suggest{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;margin-top:72px;padding-top:56px;border-top:2px solid var(--ink)}
.suggest h3{font-size:clamp(30px,3.4vw,44px);font-weight:800}
.suggest > div > p{color:var(--muted);margin-top:14px;max-width:44ch}
.sug-form{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.sug-form input{flex:1;min-width:0;font:500 16px var(--f-body);padding:14px 18px;border-radius:999px;border:2px solid var(--ink);background:var(--paper);color:var(--ink)}
.sug-form .btn{padding:13px 20px;box-shadow:0 4px 0 var(--orange-ink)}
.votes{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:8px 22px}
.vote{display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:center;padding:14px 0;border-bottom:1px dashed var(--line)}
.vote:last-of-type{border-bottom:0}
.vote .nm{font-weight:600;min-width:0}
.vote .bar{grid-column:1/2;height:8px;border-radius:99px;background:var(--cream);overflow:hidden}
.vote .bar i{display:block;height:100%;background:var(--leaf);border-radius:99px;transition:width .4s}
.vote button{grid-row:1/3;grid-column:2;font:700 14px var(--f-mono);border:1.5px solid var(--ink);background:transparent;color:var(--ink);border-radius:12px;padding:8px 12px;cursor:pointer;min-width:74px}
.vote button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.votes .note{font-size:12.5px;color:var(--muted);padding:10px 0 12px}
@media (max-width:860px){.suggest{grid-template-columns:1fr}}

/* Condomínio */
.condo{background:var(--paper)}
.zero{display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:center;margin-bottom:80px}
.zero .num{font-family:var(--f-display);font-weight:800;font-size:clamp(110px,17vw,230px);line-height:.82;letter-spacing:-.06em;color:var(--orange)}
.zero .num small{display:block;font-family:var(--f-body);font-size:16px;letter-spacing:0;color:var(--muted);font-weight:600;margin-top:14px}
.gains{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:2px solid var(--ink)}
.gain{padding:22px 24px 22px 0;border-bottom:1px solid var(--line);min-width:0}
.gain:nth-child(even){padding-left:24px;border-left:1px solid var(--line)}
.gain h3{font-size:22px;font-weight:700;letter-spacing:-.015em}
.gain p{color:var(--muted);font-size:15.5px;margin-top:4px}
@media (max-width:860px){.zero{grid-template-columns:1fr;gap:28px}}
@media (max-width:560px){.gains{grid-template-columns:1fr}.gain:nth-child(even){padding-left:0;border-left:0}}


/* Segurança */
.safe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.safe{background:var(--paper);border-radius:22px;padding:26px 22px;border:1px solid var(--line);min-width:0}
.safe .ic{width:52px;height:52px;border-radius:16px;background:var(--forest);color:var(--tag);display:grid;place-items:center;margin-bottom:18px}
.safe .ic svg{width:26px;height:26px}
.safe h3{font-size:21px;font-weight:700;letter-spacing:-.015em}
.safe p{color:var(--muted);font-size:15.5px;margin-top:8px}
.owner{margin-top:18px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;background:var(--forest);color:var(--paper);border-radius:28px;padding:34px 38px}
.owner h3{font-size:clamp(26px,3vw,38px);font-weight:800}
.owner ul{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:8px 22px;color:#C9D6C9;font-size:15.5px}
.owner li{display:flex;gap:8px;align-items:center}
.owner li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--orange)}
.card-person{background:var(--paper);color:var(--ink);border-radius:20px;padding:20px 24px;min-width:0}
.card-person small{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.card-person b{display:block;font-family:var(--f-brand);font-size:24px;font-weight:800;margin:4px 0 2px}
.card-person .tel{font-family:var(--f-mono);font-size:16px;user-select:all}
@media (max-width:1000px){.safe-grid{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.owner{grid-template-columns:1fr;padding:28px 22px}}
@media (max-width:520px){.safe-grid{grid-template-columns:1fr}}

/* Implantação */
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.tl{padding:0 24px 0 0;position:relative;min-width:0}
.tl .dot{width:54px;height:54px;border-radius:50%;background:var(--paper);border:2px solid var(--ink);display:grid;place-items:center;font-family:var(--f-display);font-weight:800;font-size:22px;position:relative;z-index:1}
.tl:last-child .dot{background:var(--orange);border-color:var(--orange);color:#fff}
.tl::before{content:"";position:absolute;left:54px;right:0;top:26px;height:2px;background:repeating-linear-gradient(90deg,var(--ink) 0 8px,transparent 8px 14px)}
.tl:last-child::before{display:none}
.tl h3{font-size:24px;font-weight:800;margin-top:20px}
.tl p{color:var(--muted);font-size:15.5px;margin-top:6px;max-width:24ch}
.trial{margin-top:64px;display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center;border:2px solid var(--ink);border-radius:30px;padding:34px 40px;background:var(--paper)}
.trial .d{font-family:var(--f-display);font-size:clamp(80px,10vw,128px);font-weight:800;line-height:.85;letter-spacing:-.05em;color:var(--leaf)}
.trial .d small{display:block;font-size:15px;letter-spacing:0;color:var(--ink);font-family:var(--f-body);font-weight:700;margin-top:8px}
.trial-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.trial-list h3{font-size:20px;font-weight:700}
.trial-list p{color:var(--muted);font-size:15px;margin-top:4px}
@media (max-width:860px){.timeline{grid-template-columns:1fr 1fr;row-gap:36px}.tl:nth-child(2)::before{display:none}.trial{grid-template-columns:1fr;padding:28px 22px}.trial-list{grid-template-columns:1fr}}
@media (max-width:480px){.timeline{grid-template-columns:1fr}.tl::before{display:none}}

/* FAQ */
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.faq h2{font-size:clamp(38px,5vw,62px);font-weight:800;margin-top:14px}
.faq-side p{color:var(--muted);margin-top:16px;max-width:34ch}
.qs{border-top:2px solid var(--ink)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 0;font-family:var(--f-display);font-weight:700;font-size:21px;letter-spacing:-.015em}
summary::-webkit-details-marker{display:none}
summary .pm{width:32px;height:32px;border-radius:50%;border:2px solid var(--ink);flex:none;position:relative;transition:transform .25s, background .25s}
summary .pm::before,summary .pm::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;background:var(--ink);transform:translate(-50%,-50%)}
summary .pm::after{transform:translate(-50%,-50%) rotate(90deg)}
details[open] summary .pm{transform:rotate(45deg);background:var(--tag)}
details p{color:var(--muted);padding:0 50px 24px 0;max-width:62ch}
@media (max-width:860px){.faq{grid-template-columns:1fr;gap:32px}}

/* Contato */
.contact{background:var(--orange);color:var(--ink);position:relative;overflow:hidden}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.contact h2{font-size:clamp(42px,6vw,84px);font-weight:800;color:#fff}
.contact h2 .serif-i{color:var(--forest)}
.contact .lead{font-size:19px;color:#3b1e05;margin-top:20px;max-width:38ch}
.direct{margin-top:34px;display:grid;gap:12px}
.direct .row{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.18);border-radius:16px;padding:14px 18px;min-width:0}
.direct .row svg{width:22px;height:22px;flex:none}
.direct .row div{min-width:0;overflow-wrap:anywhere}
.direct small{display:block;font-size:12px;font-family:var(--f-mono);letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.direct b{font-size:17px;user-select:all}
.form{background:var(--paper);border-radius:28px;padding:34px;box-shadow:0 30px 60px -30px rgba(0,0,0,.45);min-width:0}
.form h3{font-size:28px;font-weight:800}
.form .sub{color:var(--muted);font-size:15px;margin-top:4px}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field.full{grid-column:1/-1}
.field label{font-size:13.5px;font-weight:700}
.field input,.field select{font:500 16px var(--f-body);padding:13px 14px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--ink);width:100%}
.field input:focus,.field select:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px color-mix(in srgb, var(--orange) 25%, transparent)}
.roles{display:flex;flex-wrap:wrap;gap:8px}
.roles input{position:absolute;opacity:0;pointer-events:none}
.roles label{font-weight:600;font-size:14.5px;padding:9px 15px;border-radius:999px;border:1.5px solid var(--line);cursor:pointer;background:#fff}
.roles input:checked + label{background:var(--forest);color:var(--paper);border-color:var(--forest)}
.roles input:focus-visible + label{outline:3px solid var(--orange);outline-offset:2px}
.form .btn{width:100%;justify-content:center;margin-top:22px}
.err{color:#B3261E;font-size:14px;margin-top:12px;font-weight:600}
.sent{margin-top:20px;background:var(--cream);border-radius:18px;padding:18px}
.sent b{display:block;margin-bottom:8px}
.sent pre{white-space:pre-wrap;font:13.5px/1.5 var(--f-mono);margin:0 0 14px;color:var(--ink);overflow-wrap:anywhere}
.sent .acts{display:flex;flex-wrap:wrap;gap:10px}
.sent .acts .btn{width:auto;margin:0;padding:11px 18px;font-size:14.5px}
.wa{background:#1F8A4C;color:#fff;box-shadow:0 4px 0 #13603a}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}
@media (max-width:520px){.fields{grid-template-columns:1fr}.form{padding:26px 18px}}

/* Rodapé */
footer{background:var(--forest);color:#C9D6C9;padding-block:56px 40px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
footer .brand-name{color:var(--paper)}
footer .brand-sub{color:#9fb3a3}
footer h4{font-family:var(--f-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tag);margin:0 0 14px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px}
footer a{text-decoration:none}
footer a:hover{color:var(--paper)}
.legal{margin-top:44px;padding-top:22px;border-top:1px solid #33553c;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:#9fb3a3}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr}}

.float-wa{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:40;width:60px;height:60px;border-radius:50%;background:#1F8A4C;display:grid;place-items:center;box-shadow:0 14px 30px -10px rgba(0,0,0,.5);transition:transform .2s}
.float-wa:hover{transform:scale(1.07)}
.float-wa svg{width:30px;height:30px}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}

/* ---------- Público: residencial x comercial ---------- */
:root:not([data-aud="com"]) .v-com{display:none!important}
:root[data-aud="com"] .v-res{display:none!important}
.aud-switch{display:inline-flex;gap:4px;padding:5px;border-radius:999px;background:var(--paper);border:2px solid var(--ink);max-width:100%}
.aud-switch button{font:700 14.5px var(--f-body);color:var(--ink);background:transparent;border:0;border-radius:999px;padding:10px 18px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:background .2s,color .2s}
.aud-switch button svg{width:18px;height:18px;flex:none}
.aud-switch button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.hero .aud-switch{margin-bottom:26px}
.nav .aud-switch{border-width:1.5px;padding:3px}
.nav .aud-switch button{font-size:13px;padding:7px 12px}
@media (max-width:960px){.nav .aud-switch{margin:12px 0 4px;align-self:flex-start}}
@media (max-width:460px){.hero .aud-switch{display:flex;width:100%}.hero .aud-switch button{flex:1;justify-content:center;padding:10px 8px;font-size:13.5px}}
.rule{display:inline-flex;align-items:center;gap:10px;margin-top:22px;background:var(--tag);color:var(--ink);font-weight:700;font-size:15px;padding:9px 16px 9px 12px;border-radius:6px 14px 14px 6px}
.rule svg{width:20px;height:20px;flex:none}
.rule-band{display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:center;background:var(--forest);color:var(--paper);border-radius:28px;padding:30px 36px;margin-bottom:64px}
.rule-band .big{font-family:var(--f-display);font-weight:800;font-size:clamp(64px,8vw,104px);line-height:.85;letter-spacing:-.05em;color:var(--tag)}
.rule-band .big small{display:block;font-family:var(--f-body);font-size:15px;letter-spacing:0;color:var(--paper);font-weight:700;margin-top:8px}
.rule-band h3{font-size:clamp(24px,2.6vw,32px);font-weight:800}
.rule-band p{color:#C9D6C9;margin-top:8px;max-width:58ch}
@media (max-width:700px){.rule-band{grid-template-columns:1fr;padding:26px 22px}}
.where{margin-top:72px}
.where h3.t{font-size:clamp(28px,3.2vw,40px);font-weight:800;margin:12px 0 26px}
.where-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.spot{background:var(--cream);border-radius:22px;padding:26px 24px;min-width:0}
.spot .ic{width:52px;height:52px;border-radius:16px;background:var(--orange);color:#fff;display:grid;place-items:center;margin-bottom:16px}
.spot .ic svg{width:26px;height:26px}
.spot h4{margin:0;font-family:var(--f-display);font-size:22px;font-weight:700;letter-spacing:-.015em}
.spot p{color:var(--muted);font-size:15.5px;margin-top:6px}
@media (max-width:800px){.where-grid{grid-template-columns:1fr}}
.card-person{display:flex;align-items:center;gap:16px}
.card-person img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:center 20%;flex:none}
.field .hint{font-size:12.5px;color:var(--muted)}
.field .hint.warn{color:#9A4A00;font-weight:600}
.roles{position:relative}
:root[data-aud="com"] .hero .photo-main{aspect-ratio:1300/948;border-radius:28px 28px 28px 90px}
:root[data-aud="com"] .hero .paid{bottom:-34px}
.tile.flat.has-img{padding:0;gap:0;justify-content:flex-start}
.tile.flat.has-img img{position:static;height:auto;aspect-ratio:16/10;width:100%;flex:none}
.tile.flat.has-img .tx{padding:22px 28px 26px;display:flex;flex-direction:column;gap:14px;flex:1;justify-content:space-between}
.tile.flat.has-img:hover img{transform:none}
.tile.flat.has-img img.prod{aspect-ratio:4/3;object-position:center 45%}

.roles input{left:0;top:0;width:1px;height:1px}
@media (max-width:900px){.paid{right:0}}

/* ---------- Acréscimos do site publicado (27/10/2026) ---------- */
.isca{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form .priv{font-size:13px;color:var(--muted);margin-top:12px;text-align:center}
.form .priv a{color:var(--orange-ink);font-weight:600}
.legal a{text-decoration:underline}

/* Política de privacidade */
.doc{padding-block:64px 104px}
.doc .wrap{max-width:820px}
.doc h1{font-size:clamp(38px,5vw,62px);font-weight:800;margin-top:14px}
.doc .upd{color:var(--muted);margin-top:14px;font-size:15px}
.doc h2{font-size:clamp(24px,2.6vw,30px);font-weight:800;margin-top:48px;padding-top:24px;border-top:2px solid var(--ink)}
.doc p,.doc li{color:var(--muted);margin-top:14px;max-width:68ch}
.doc ul{padding-left:20px;margin:0}
.doc strong{color:var(--ink)}
.doc a{color:var(--orange-ink);font-weight:600}

/* ---------- Acréscimos do protótipo v5 (02/11/2026): atributos style do protótipo como classes (CSP) ---------- */
.sprite{position:absolute}
.nw{white-space:nowrap}
.laranja{color:var(--orange)}
.tile.flat.folha{background:var(--leaf)}
.mt14{margin-top:14px}
.sr{position:absolute;left:-9999px}
.zero-t{font-size:clamp(36px,4.6vw,60px);font-weight:800;margin:14px 0 30px}
.mt26{margin-top:26px}
.eyebrow.floresta{color:var(--forest)}
.foot-txt{margin-top:18px;max-width:40ch;font-size:15px}
.float-wa{color:#fff}
