/* ============================================================
   ITA CASA NOVA — Design system
   Madeira & Acabamentos · Região dos Lagos · desde 1982
   ============================================================ */
:root{
  /* Paleta do Manual de Identidade Visual Ita Casa Nova */
  --brown-900:#3A1E0A;          /* derivado do marrom profundo */
  --brown-800:#522708;          /* marrom escuro (header/hero) */
  --brown-700:#6B3A12;          /* marrom médio */
  --primary:#8B4513;            /* PRIMÁRIA — marrom da marca */
  --amber-600:#E3A008;          /* amarelo CTA (controle de contraste) */
  --amber-500:#FFC107;          /* SECUNDÁRIA — amarelo da marca */
  --amber-400:#FFD54F;          /* amarelo claro */
  --amber-100:#FBE9CE;          /* creme amarelado (apoio) */
  --support:#D2B48C;            /* APOIO — bege */
  --accent:#C41E3A;             /* vermelho "iTa" (uso pontual) */
  --cream:#FAF4E9;
  --white:#FFFFFF;
  --ink:#22150B;
  --muted:#7A6350;
  --line:#E7D9C8;
  --wa:#25D366;
  --wa-ink:#053d1c;
  --ok:#1F7A3D;
  --radius:16px;
  --shadow:0 10px 30px rgba(42,27,18,.10);
  --shadow-sm:0 4px 14px rgba(42,27,18,.08);
  --maxw:1140px;
  --font-head:"Arial","Helvetica Neue",Helvetica,sans-serif;
  --font-body:"Arial","Helvetica Neue",Helvetica,sans-serif;
  --font-ui:"Arial","Helvetica Neue",Helvetica,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font-body);
  color:var(--ink);background:var(--cream);line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}

h1,h2,h3,h4,.serif{font-family:var(--font-head)}
strong,b{font-weight:700}

.btn{
  display:inline-flex;align-items:center;gap:10px;justify-content:center;
  padding:13px 24px;border-radius:999px;font-weight:700;font-size:15.5px;
  border:0;cursor:pointer;transition:transform .12s ease, filter .2s ease, background .2s ease;
  white-space:nowrap;font-family:var(--font-ui);
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-wa{background:var(--wa);color:var(--wa-ink)}
.btn-primary{background:var(--amber-500);color:var(--brown-900)}
.btn-dark{background:var(--brown-800);color:#fff}
.btn-outline{background:transparent;color:var(--brown-700);border:2px solid var(--brown-700)}
.btn-outline:hover{border-color:var(--amber-600);color:var(--amber-600)}
.btn-ghost-white{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.55)}
.btn-ghost-white:hover{border-color:#fff}
.btn-lg{padding:17px 30px;font-size:17px}
.btn-block{width:100%}
.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}

/* ---------- Top bar ---------- */
.topbar{background:var(--brown-900);color:#EADFD1;font-size:13.5px}
.topbar .wrap{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:center;align-items:center;padding:9px 20px}
.topbar a{display:inline-flex;align-items:center;gap:7px;opacity:.92}
.topbar a:hover{opacity:1;text-decoration:underline}
.dot{width:5px;height:5px;border-radius:50%;background:var(--amber-500);display:inline-block}
.topbar .social{display:inline-flex;align-items:center;gap:10px}
.topbar .social a{opacity:.8}
.topbar .social a:hover{opacity:1}

/* ---------- Header ---------- */
header.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;color:var(--brown-800);letter-spacing:.2px}
.brand .mark{position:relative;width:58px;height:58px;flex:0 0 auto}
.brand .svg-mark{
  width:100%;height:100%;
  background:linear-gradient(135deg,var(--amber-500),var(--brown-700));
  display:grid;place-items:center;color:#fff;
}
.brand .svg-mark svg{width:24px;height:24px}
.brand .img-mark{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.brand small{display:block;font-weight:600;font-size:11.5px;color:var(--muted);letter-spacing:.3px;text-transform:uppercase}
.brand b{font-size:17px;line-height:1.1;display:block}
.nav-links{display:flex;gap:4px;font-weight:600;color:var(--brown-700);font-size:15px}
.nav-links a{padding:8px 12px;border-radius:999px}
.nav-links a:hover{color:var(--amber-600);background:var(--amber-100)}
.nav-links a.active{color:#fff;background:var(--brown-800)}
.nav .cta{display:none}
.menu-toggle{display:none;background:transparent;border:1.5px solid var(--line);border-radius:10px;width:46px;height:44px;color:var(--brown-800);cursor:pointer;place-items:center}
.menu-toggle:hover{border-color:var(--amber-500)}
@media(min-width:960px){.nav .cta{display:inline-flex}}
@media(max-width:959px){
  .nav-links{
    display:none;position:absolute;left:0;right:0;top:100%;
    background:var(--white);border-bottom:1px solid var(--line);
    flex-direction:column;gap:0;padding:4px 20px 14px;box-shadow:var(--shadow);
  }
  .nav-links.open{display:flex}
  .nav-links a{padding:14px 4px;border-radius:0;border-bottom:1px solid var(--line)}
  .nav-links a:last-child{border-bottom:0}
  .nav-links a.active{background:transparent;color:var(--amber-600)}
  .menu-toggle{display:grid}
}

/* ---------- Section scaffolding ---------- */
section.block{padding:72px 0}
.alt{background:var(--white)}
.sec-head{max-width:680px;margin-bottom:38px}
.sec-head.center{margin-left:auto;margin-right:auto;text-align:center}
.kicker{color:var(--primary);font-weight:800;font-size:12.5px;letter-spacing:1.6px;text-transform:uppercase}
.sec-head h2{font-size:clamp(24px,3.4vw,36px);color:var(--brown-800);line-height:1.15;margin:10px 0 12px;letter-spacing:-.4px}
.sec-head p{color:var(--muted);font-size:16.5px}

.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .2s ease,border-color .2s ease}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--amber-100)}
.card .ico{width:46px;height:46px;border-radius:12px;background:var(--amber-100);color:var(--brown-700);display:grid;place-items:center;margin-bottom:14px}
.card h3{font-size:18px;color:var(--brown-800);margin-bottom:6px}
.card p{color:var(--muted);font-size:14.5px}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.tag{font-size:12px;background:var(--cream);border:1px solid var(--line);color:var(--brown-700);padding:3px 9px;border-radius:999px;font-weight:600}

/* ---------- Hero (home) ---------- */
.hero{position:relative;color:#fff;overflow:hidden;background:var(--brown-800)}
.hero::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(1200px 500px at 85% -10%, rgba(200,135,62,.45), transparent 60%),
    radial-gradient(900px 500px at -10% 110%, rgba(181,101,29,.35), transparent 55%),
    repeating-linear-gradient(115deg, rgba(255,255,255,.03) 0 2px, transparent 2px 9px);
}
.hero .wrap{position:relative;padding:66px 20px 74px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:7px 15px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.3px}
.hero h1{font-size:clamp(30px,5.2vw,52px);line-height:1.1;margin:18px 0 14px;max-width:16ch;letter-spacing:-.5px}
.hero h1 em{font-style:normal;color:var(--amber-500)}
.hero p.lead{font-size:clamp(16px,2vw,19px);max-width:56ch;color:#EBDDD0}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:44px;max-width:820px}
@media(min-width:640px){.stats{grid-template-columns:repeat(4,1fr)}}
.stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:16px}
.stat b{display:block;font-size:22px;color:#fff;letter-spacing:-.5px}
.stat span{font-size:13px;color:#D8C7B6}

/* ---------- Page hero (inner) ---------- */
.page-hero{position:relative;color:#fff;overflow:hidden;background:var(--brown-800);padding:54px 0 60px}
.page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 400px at 80% -20%, rgba(200,135,62,.4), transparent 60%),repeating-linear-gradient(115deg, rgba(255,255,255,.03) 0 2px, transparent 2px 9px)}
.page-hero .wrap{position:relative}
.page-hero h1{font-size:clamp(28px,4vw,42px);margin:12px 0 10px;letter-spacing:-.4px}
.page-hero p{color:#EBDDD0;max-width:60ch;font-size:17px}
.crumb{font-size:13px;color:#D8C7B6;letter-spacing:.3px}
.crumb a:hover{color:var(--amber-500)}

/* ---------- Diferenciais ---------- */
.feat{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.feat .f{display:flex;gap:14px}
.feat .f .fi{flex:0 0 auto;width:44px;height:44px;border-radius:50%;background:var(--brown-800);color:var(--amber-500);display:grid;place-items:center}
.feat .f h4{color:var(--brown-800);font-size:16.5px;margin-bottom:3px}
.feat .f p{color:var(--muted);font-size:14.5px}

/* ---------- História ---------- */
.hist p{max-width:72ch;color:var(--muted);font-size:16px;margin-bottom:14px}
.hist p strong{color:var(--brown-800)}
.marcos{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:28px}
.marcos .m{background:var(--white);border:1px solid var(--line);border-top:4px solid var(--amber-500);border-radius:14px;padding:22px;box-shadow:var(--shadow-sm)}
.marcos .ano{display:inline-block;font-weight:800;color:var(--primary);font-size:13.5px;letter-spacing:.6px;text-transform:uppercase;background:var(--amber-100);padding:4px 12px;border-radius:999px;margin-bottom:12px}
.marcos .m p{color:var(--muted);font-size:14.5px;margin:0}

/* ---------- Banner de aviso ---------- */
.banner{background:var(--amber-100);border:1px solid var(--amber-500);color:var(--brown-800);border-radius:12px;padding:13px 18px;font-size:14px;display:flex;gap:10px;align-items:flex-start;margin:22px 0}
.banner svg{flex:0 0 auto;margin-top:2px;color:var(--amber-600)}

/* ---------- Catálogo ---------- */
.busca-wrap{position:relative;display:flex;align-items:center;margin:26px 0 0}
.busca-wrap svg{position:absolute;left:16px;color:var(--brown-400,#8a7565);pointer-events:none}
.busca{width:100%;padding:14px 18px 14px 46px;border:1.5px solid var(--line);border-radius:999px;font-family:inherit;font-size:16px;color:var(--brown-800);background:var(--white);transition:border-color .15s,box-shadow .15s}
.busca::placeholder{color:#9C8B79}
.busca:focus{outline:none;border-color:var(--amber-500);box-shadow:0 0 0 4px rgba(255,193,7,.18)}
.filtros{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 30px}
.chip{padding:9px 18px;border-radius:999px;border:1.5px solid var(--line);background:var(--white);color:var(--brown-700);font-weight:600;font-size:14px;cursor:pointer;font-family:inherit;transition:all .15s}
.chip:hover{border-color:var(--amber-500)}
.chip.on{background:var(--brown-800);color:#fff;border-color:var(--brown-800)}
.catalog{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.prod{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .15s,box-shadow .2s,border-color .2s}
.prod:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--amber-100)}
.prod .cat-label{font-size:11.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--primary);margin-bottom:8px}
.prod .prod-img{width:100%;height:150px;object-fit:cover;border-radius:12px;border:1px solid var(--line);margin-bottom:12px;background:var(--cream)}
.prod h3{font-size:17px;color:var(--brown-800);margin-bottom:4px;line-height:1.3}
.prod .un{font-size:12.5px;color:var(--muted)}
.prod .desc{color:var(--muted);font-size:13.5px;margin-top:8px;flex:1}
.prod .foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px dashed var(--line)}
.price{font-size:18px;font-weight:800;color:var(--brown-800)}
.price small{display:block;font-size:11.5px;font-weight:600;color:var(--muted)}
.price.sob{font-size:14px;font-weight:700;color:var(--primary)}
.add{width:42px;height:42px;border-radius:11px;border:0;background:var(--amber-500);color:var(--brown-900);cursor:pointer;display:grid;place-items:center;transition:background .15s,transform .1s}
.add:hover{background:var(--brown-800);color:#fff}
.add:active{transform:scale(.92)}
.add svg{width:20px;height:20px}
.qty{display:inline-flex;align-items:center;gap:2px;background:var(--cream);border:1.5px solid var(--line);border-radius:11px;overflow:hidden}
.qty button{width:34px;height:42px;border:0;background:transparent;color:var(--brown-700);font-size:18px;font-weight:700;cursor:pointer;font-family:inherit}
.qty button:hover{background:var(--amber-100)}
.qty span{min-width:30px;text-align:center;font-weight:700;color:var(--brown-800)}

/* ---------- Carrinho ---------- */
.cart-fab{position:fixed;right:18px;bottom:98px;z-index:70;width:62px;height:62px;border-radius:50%;background:var(--amber-500);display:grid;place-items:center;box-shadow:0 8px 22px rgba(181,101,29,.45);border:0;cursor:pointer;transition:transform .15s}
@media(max-width:520px){.cart-fab{bottom:82px;width:56px;height:56px}}
.cart-fab:hover{transform:scale(1.06)}
.cart-fab svg{width:28px;height:28px;color:var(--brown-900)}
.cart-fab .badge{position:absolute;top:-6px;right:-6px;background:var(--wa);color:var(--wa-ink);font-weight:800;font-size:12px;min-width:22px;height:22px;border-radius:11px;display:grid;place-items:center;padding:0 5px;font-family:sans-serif}
.cart-fab.oculto{display:none}
.modal{position:fixed;inset:0;z-index:80;display:none;align-items:flex-end;justify-content:center}
.modal.aberto{display:flex}
.modal .backdrop{position:absolute;inset:0;background:rgba(42,27,18,.55);backdrop-filter:blur(2px)}
.modal .painel{position:relative;width:100%;max-width:560px;max-height:88vh;overflow:auto;background:var(--cream);border-radius:22px 22px 0 0;padding:26px 24px 28px;box-shadow:0 -14px 40px rgba(0,0,0,.25)}
@media(min-width:640px){.modal{align-items:center;padding:20px}.modal .painel{border-radius:22px}}
.modal h3{font-size:22px;color:var(--brown-800);margin-bottom:2px}
.modal .sub{color:var(--muted);font-size:13.5px;margin-bottom:18px}
.fechar{position:absolute;top:16px;right:16px;width:38px;height:38px;border-radius:50%;border:1.5px solid var(--line);background:var(--white);color:var(--brown-700);cursor:pointer;font-size:18px;display:grid;place-items:center}
.fechar:hover{border-color:var(--amber-500)}
.lista-carrinho{display:grid;gap:12px;margin-bottom:18px}
.cart-item{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.cart-item .ci-nome{font-weight:700;color:var(--brown-800);font-size:14.5px}
.cart-item .ci-un{color:var(--muted);font-size:12px}
.cart-item .ci-px{font-weight:700;color:var(--brown-800);font-size:14px;min-width:74px;text-align:right}
.cart-empty{text-align:center;color:var(--muted);padding:26px 0}
.cart-empty .mini{font-size:34px;margin-bottom:8px}
.total-row{display:flex;justify-content:space-between;font-weight:800;font-size:18px;color:var(--brown-800);border-top:2px solid var(--line);padding-top:16px;margin:16px 0 18px}
.total-row small{font-weight:600;color:var(--muted);font-size:12px;display:block}
.campo{margin-bottom:12px}
.campo select,.campo input{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:11px;font-size:15px;font-family:inherit;background:var(--white);color:var(--ink)}
.campo label{font-weight:700;font-size:13px;color:var(--brown-700);display:block;margin-bottom:6px}

/* ---------- Orçamento (form) ---------- */
.quote{background:linear-gradient(135deg,var(--brown-800),var(--brown-900));color:#fff;border-radius:24px;overflow:hidden}
.quote .wrap2{display:grid;grid-template-columns:1fr}
@media(min-width:940px){.quote .wrap2{grid-template-columns:1.05fr 1fr}}
.quote .side{padding:40px 34px}
.quote .side h2{font-size:clamp(24px,3vw,32px);line-height:1.15;margin-bottom:12px}
.quote .side p{color:#E0D2C4;font-size:16px}
.quote ul{margin-top:22px;display:grid;gap:12px}
.quote ul li{display:flex;gap:11px;align-items:flex-start;color:#EDE2D6;font-size:15px}
.quote ul li svg{flex:0 0 auto;margin-top:3px;color:var(--amber-500)}
form.form{background:var(--white);padding:34px;color:var(--ink)}
form.form h3{color:var(--brown-800);font-size:20px;margin-bottom:4px}
form.form .hint{color:var(--muted);font-size:13.5px;margin-bottom:20px}
.field{margin-bottom:15px}
.field label{display:block;font-weight:700;font-size:13.5px;color:var(--brown-700);margin-bottom:6px}
.field input,.field select,.field textarea{
  width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:11px;
  font-size:15.5px;font-family:inherit;color:var(--ink);background:var(--cream);transition:border-color .15s,box-shadow .15s;
}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--amber-500);box-shadow:0 0 0 3px rgba(200,135,62,.18);background:#fff}
.field textarea{resize:vertical;min-height:92px}
.row2{display:grid;gap:15px;grid-template-columns:1fr}
@media(min-width:520px){.row2{grid-template-columns:1fr 1fr}}
form.form .btn{margin-top:6px}
.privacy{font-size:12px;color:var(--muted);text-align:center;margin-top:12px}

/* ---------- Lojas ---------- */
.lojas{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.loja{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--amber-500);border-radius:12px;padding:20px;box-shadow:var(--shadow-sm)}
.loja h3{color:var(--brown-800);font-size:17px;margin-bottom:6px}
.loja address{font-style:normal;color:var(--muted);font-size:14px;line-height:1.55}
.loja a.tel{display:inline-flex;gap:7px;align-items:center;margin-top:10px;color:var(--primary);font-weight:700;font-size:14px}
.loja .rotas{display:inline-flex;gap:7px;align-items:center;margin-top:8px;color:var(--brown-700);font-weight:600;font-size:13px}
.loja .rotas:hover{color:var(--amber-600)}

/* ---------- Depoimentos ---------- */
.depo{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.depo figure{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:var(--shadow-sm)}
.stars{color:#E8A93C;font-size:16px;letter-spacing:2px;margin-bottom:10px}
.depo blockquote{color:var(--brown-700);font-size:15px;font-style:italic}
.depo figcaption{margin-top:12px;font-weight:700;color:var(--brown-800);font-size:14px}

/* ---------- Vantagens ---------- */
.steps{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));counter-reset:passo}
.step{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:var(--shadow-sm);position:relative}
.step .num{width:42px;height:42px;border-radius:50%;background:var(--amber-500);color:var(--brown-900);font-weight:800;font-size:18px;display:grid;place-items:center;margin-bottom:14px}
.step h3{color:var(--brown-800);font-size:17px;margin-bottom:6px}
.step p{color:var(--muted);font-size:14.5px}
.tiers{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.tier{position:relative;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:28px 24px;box-shadow:var(--shadow-sm)}
.tier.destaque{border:2px solid var(--amber-500);box-shadow:var(--shadow)}
.tier .selo{position:absolute;top:-14px;left:50%;transform:translateX(-50%);font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;background:var(--amber-600);color:#fff;padding:5px 14px;border-radius:999px}
.tier h3{font-size:20px;color:var(--brown-800);margin-bottom:2px}
.tier .cupom{font-size:34px;font-weight:800;color:var(--amber-600);margin-bottom:14px;font-family:Georgia,serif}
.tier ul li{display:flex;gap:10px;color:var(--muted);font-size:14.5px;margin-bottom:10px;align-items:flex-start}
.tier ul li svg{flex:0 0 auto;margin-top:3px;color:var(--ok)}
.tier .regra{font-size:13px;color:var(--muted);border-top:1px dashed var(--line);margin-top:14px;padding-top:14px}

/* ---------- FAQ ---------- */
details.faq{background:var(--white);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}
details.faq summary{cursor:pointer;padding:18px 22px;font-weight:700;color:var(--brown-800);list-style:none;display:flex;justify-content:space-between;gap:14px;align-items:center}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";font-size:22px;color:var(--amber-600);font-weight:400}
details.faq[open] summary::after{content:"–"}
details.faq .ans{padding:0 22px 20px;color:var(--muted);font-size:15px}

/* ---------- Faixa CTA ---------- */
.faixa{background:var(--amber-500);color:var(--brown-900);text-align:center;padding:54px 0}
.faixa h2{font-size:clamp(22px,3vw,30px);margin-bottom:10px}
.faixa p{color:var(--brown-700);margin-bottom:24px;font-size:17px}
.faixa .btn{background:var(--brown-900);color:var(--amber-400)}

/* ---------- Social / Redes ---------- */
.social-icon{display:inline-flex;align-items:center;gap:8px;color:var(--brown-700);font-weight:600;font-size:14.5px}
.social-icon:hover{color:var(--amber-600)}
.redes{display:flex;gap:14px;flex-wrap:wrap}
.redes a{display:inline-flex;gap:9px;align-items:center;padding:12px 20px;border-radius:999px;border:1.5px solid var(--line);background:var(--white);font-weight:700;color:var(--brown-800);font-size:14.5px;transition:all .15s}
.redes a:hover{border-color:var(--amber-500);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.redes a svg{width:20px;height:20px}

/* ---------- Footer ---------- */
footer{background:var(--brown-900);color:#CBBCAC;padding:52px 0 26px;font-size:14.5px}
.foot-logo{width:150px;max-width:70%;border-radius:10px;margin-bottom:14px;box-shadow:0 4px 14px rgba(0,0,0,.25)}
footer .cols{display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:32px}
footer h4{color:#fff;font-size:15px;margin-bottom:12px;letter-spacing:.3px}
footer a:hover{color:var(--amber-500)}
footer ul{display:grid;gap:8px}
footer .bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;text-align:center;font-size:13px;color:#9C8B79}

/* ---------- WhatsApp flutuante ---------- */
.wa-float{position:fixed;right:18px;bottom:18px;z-index:60;width:60px;height:60px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 8px 22px rgba(37,211,102,.45);transition:transform .15s}
.wa-float:hover{transform:scale(1.06)}
.wa-float svg{width:32px;height:32px;color:#fff}
@media(max-width:520px){.wa-float{width:54px;height:54px;right:14px;bottom:14px}}

/* ============================================================
   Reforços multi-página (v2)
   ============================================================ */
.page-head{position:relative;color:#fff;overflow:hidden;background:var(--brown-800)}
.page-head::before{content:"";position:absolute;inset:0;background:radial-gradient(1100px 460px at 85% -10%, rgba(200,135,62,.45), transparent 60%),repeating-linear-gradient(115deg, rgba(255,255,255,.03) 0 2px, transparent 2px 9px)}
.page-head .wrap{position:relative;padding:44px 20px 52px}
.page-head h1{font-size:clamp(27px,4.4vw,42px);line-height:1.12;margin:16px 0 12px;max-width:22ch}
.page-head h1 em{font-style:normal;color:var(--amber-500)}
.page-head p.lead{font-size:17px;max-width:62ch;color:#EBDDD0}

/* ---------- Formulários (labels agrupadas) ---------- */
.form{background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm)}
.form h2{color:var(--brown-800);font-size:22px;margin-bottom:16px}
.form .row{display:grid;gap:15px;grid-template-columns:1fr;margin-bottom:4px}
@media(min-width:520px){.form .row{grid-template-columns:1fr 1fr}}
.form label{display:block;font-weight:700;font-size:13.5px;color:var(--brown-700);margin:0 0 15px}
.form label small{display:block;font-weight:500;font-size:12px;color:var(--muted);margin-top:6px;line-height:1.5}
.form input,.form select,.form textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:11px;font-size:15.5px;font-family:inherit;color:var(--ink);background:var(--cream);transition:border-color .15s,box-shadow .15s}
.form label input{margin-top:6px}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--amber-500);box-shadow:0 0 0 3px rgba(200,135,62,.18);background:#fff}
.form textarea{resize:vertical}
.form .btn{margin-top:2px}
.fine{font-size:12.5px;color:var(--muted);margin-top:12px;line-height:1.55}

/* ---------- Catálogo: notas e avisos ---------- */
.cat-nota{display:flex;gap:10px;align-items:flex-start;background:var(--amber-100);border:1px dashed var(--amber-500);color:var(--brown-800);font-size:13.5px;border-radius:12px;padding:12px 16px;margin:0 0 24px;max-width:860px}
.cat-nota span{color:var(--amber-600);font-weight:800}
.cat-finais{text-align:center;margin-top:36px}
.cat-finais p{color:var(--muted);margin-bottom:16px;font-size:15.5px}

/* ---------- Carrinho modal ---------- */
.backdrop{position:fixed;inset:0;z-index:80;background:rgba(42,27,18,.55);backdrop-filter:blur(2px);display:none;align-items:flex-end;justify-content:center}
.backdrop.aberto{display:flex}
.cart-tela{position:relative;width:100%;max-width:560px;max-height:92vh;overflow:auto;background:var(--cream);border-radius:22px 22px 0 0;padding:26px 24px 28px;box-shadow:0 -14px 40px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:16px}
@media(min-width:640px){.backdrop{align-items:center;padding:20px}.cart-tela{border-radius:22px}}
.cart-top{display:flex;justify-content:space-between;align-items:center}
.cart-top h2{color:var(--brown-800);font-size:20px}
.cart-top button{border:0;background:transparent;color:var(--brown-700);font-size:26px;cursor:pointer;line-height:1;width:38px;height:38px;border-radius:50%;display:grid;place-items:center}
.cart-top button:hover{background:var(--amber-100)}
.cart-lista{display:grid;gap:12px}
.cart-item{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.cart-item .ci-nome{font-weight:700;color:var(--brown-800);font-size:14.5px}
.cart-item .ci-un{color:var(--muted);font-size:12px}
.cart-item .ci-px{font-weight:700;color:var(--brown-800);font-size:14px;min-width:74px;text-align:right}
.cart-item .qty button{height:36px}
.cart-total{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:2px solid var(--line);padding-top:14px;color:var(--muted);font-weight:700;font-size:13.5px}
.cart-total div{text-align:right}
.cart-total b{display:block;color:var(--brown-800);font-size:20px}
.cart-total small{display:block;font-weight:500;font-size:12px;color:var(--muted)}
.cart-dados{display:grid;gap:12px}
.cart-dados input,.cart-dados select{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:11px;font-size:15px;font-family:inherit;background:#fff;color:var(--ink)}
.cart-dados input:focus,.cart-dados select:focus{outline:none;border-color:var(--amber-500);box-shadow:0 0 0 3px rgba(200,135,62,.18)}
.cart-aviso{font-size:12.5px;color:var(--muted)}
.cart-empty{text-align:center;color:var(--muted);padding:26px 0}
.cart-empty .mini{font-size:34px;margin-bottom:8px}
.cart-tela .btn{width:100%}

/* ---------- Vantagens: passos e níveis ---------- */
.steps .s{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:var(--shadow-sm)}
.steps .s b{width:42px;height:42px;border-radius:50%;background:var(--amber-500);color:var(--brown-900);font-weight:800;font-size:18px;display:grid;place-items:center;margin-bottom:14px}
.steps .s h4{color:var(--brown-800);font-size:16.5px;margin-bottom:6px}
.steps .s p{color:var(--muted);font-size:14.5px}
.tier p{color:var(--muted);font-size:14px;margin:6px 0 14px}
.tier .per{font-size:42px;font-weight:800;color:var(--amber-600);line-height:1;font-family:Georgia,serif}
.tier.mid{border:2px solid var(--amber-500);box-shadow:var(--shadow)}
.tier ul li{list-style:disc;list-style-position:inside;color:var(--muted);font-size:14.5px;margin-bottom:9px}

/* ---------- FAQ (cards) ---------- */
.faq .q{background:var(--white);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;padding:18px 22px;box-shadow:var(--shadow-sm)}
.faq .q h4{color:var(--brown-800);font-size:15.5px;margin-bottom:8px}
.faq .q p{color:var(--muted);font-size:14.5px}

/* ---------- Rastreamento ---------- */
.track-form{margin-bottom:26px}
.track-result .ok{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--ok);border-radius:14px;padding:22px;box-shadow:var(--shadow-sm)}
.track-result .ok b{color:var(--brown-800);font-size:17px;display:block;margin-bottom:6px}
.track-result .ok p{color:var(--muted);font-size:14.5px;margin-bottom:16px}
.track-actions{display:flex;flex-wrap:wrap;gap:12px}
.como-entrega{margin-top:48px;padding-top:6px}

/* ---------- Contato ---------- */
.cols-2{display:grid;gap:30px;grid-template-columns:1fr}
@media(min-width:900px){.cols-2{grid-template-columns:1.1fr .9fr;align-items:start}}
.contato-extra{display:grid;gap:22px;align-content:start}
.contato-linha{display:grid;gap:16px;grid-template-columns:1fr 1fr;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow-sm)}
.contato-linha b{color:var(--brown-800);font-size:14px;display:block;margin-bottom:2px}
.contato-linha a{color:var(--amber-600);font-weight:600}
.mini-lojas{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow-sm)}
.mini-lojas h3{color:var(--brown-800);font-size:15px;margin-bottom:4px}
.mini-lojas h3:not(:first-child){margin-top:14px}
.mini-lojas p{color:var(--muted);font-size:14px}

/* ---------- Mapa de entrega (rastreamento) ---------- */
.mapa-lead{color:var(--muted);margin:-18px 0 18px;font-size:15px}
.mapa-sel{display:block;max-width:360px;margin-bottom:14px;font-size:13px;font-weight:700;color:var(--brown-700);letter-spacing:.2px}
.mapa-sel select{width:100%;margin-top:6px;font-family:var(--font-ui);font-size:15px;color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:11px 14px;background:#fff;cursor:pointer}
.mapa-sel select:focus{outline:2px solid var(--amber-400);border-color:var(--amber-500)}
.mapa-box{width:100%;height:380px;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-sm);background:var(--cream)}
.mapa-box .leaflet-control-attribution{font-size:10px}
.mapa-info{margin-top:14px;font-size:15px;color:var(--brown-700);text-align:center}
.mapa-info b{color:var(--brown-800)}
.mapa-nota{font-size:12.5px;color:var(--muted);text-align:center;margin-top:10px;max-width:640px;margin-left:auto;margin-right:auto}
.map-fallback{background:var(--white);border:1px dashed var(--support);border-radius:16px;padding:40px 20px;text-align:center;color:var(--muted);font-size:14.5px}
.map-fallback b{color:var(--brown-800);display:block;margin-bottom:6px}
.ita-pin{background:none;border:0}
.ita-pin-s{width:34px;height:34px;border-radius:50% 50% 50% 5px;display:flex;align-items:center;justify-content:center;font-size:15px;border:2.5px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.35)}
.leaflet-popup-content{font-family:var(--font-ui);font-size:13px;color:var(--ink)}
.leaflet-popup-content b{color:var(--brown-800)}
@media(max-width:600px){.mapa-box{height:300px}}