/* MP Uniformes v2 — estilo.css (gerado por gerar2.py) */
:root{
  --marinho:#0D2B4E; --marinho-2:#0A2240; --aco:#3D6C9C; --aco-claro:#A9C2DC;
  --gelo:#EEF3F8; --gelo-2:#E2EAF3; --linha:#D3DDE8; --branco:#fff;
  --texto:#1E2A38; --texto-2:#4A5868;
  --sinal:#D63A27;            /* vermelho dos selos (texto branco passa AA) */
  --zap:#1FAF5A;              /* verde WhatsApp (ícones, anel) */
  --zap-btn:#14843F;          /* verde dos botões: texto branco passa AA */
  --zap-btn-h:#0F6F34;
  --f-txt:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --f-disp:"Barlow Condensed","Arial Narrow","Roboto Condensed","Helvetica Neue",Arial,sans-serif;
  --r-s:10px; --r-m:16px; --r-l:24px;
  --sombra:0 18px 40px -22px rgba(13,43,78,.45);
  --ponto:repeating-linear-gradient(90deg,currentColor 0 10px,transparent 10px 17px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--branco);color:var(--texto);font:400 1.0625rem/1.55 var(--f-txt);overflow-x:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--f-disp);color:var(--marinho);margin:0;line-height:1;letter-spacing:-.005em;text-wrap:balance}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
figure{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--aco);outline-offset:3px;border-radius:6px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pular{position:absolute;left:12px;top:-60px;z-index:100;background:var(--marinho);color:#fff;padding:12px 16px;border-radius:8px;font-weight:600}
.pular:focus{top:12px}
.wrap{width:min(1200px,100% - 40px);margin-inline:auto}
@media (max-width:420px){.wrap{width:calc(100% - 32px)}}
.ico{width:24px;height:24px;flex:none}
.i-zap{width:20px;height:20px;flex:none}

/* ---------- Botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:999px;border:2px solid transparent;
  font:600 1rem/1.1 var(--f-txt);text-decoration:none;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s,transform .15s;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-grande{min-height:56px;padding:14px 28px;font-size:1.0625rem}
.btn-zap{background:var(--zap-btn);color:#fff}
.btn-zap:hover{background:var(--zap-btn-h)}
.btn-marinho{background:var(--marinho);color:#fff}
.btn-marinho:hover{background:var(--aco)}
.btn-contorno{border-color:var(--marinho);color:var(--marinho);background:transparent}
.btn-contorno:hover{background:var(--marinho);color:#fff}
.btn-contorno-claro{border-color:rgba(255,255,255,.7);color:#fff}
.btn-contorno-claro:hover{background:#fff;color:var(--marinho)}
.btn-largo{width:100%}
.link-btn{background:none;border:0;padding:10px 0;min-height:44px;color:var(--texto-2);text-decoration:underline;cursor:pointer}
.link-zap{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--zap-btn);font-weight:700;text-decoration:none}
.link-zap .i-zap{width:22px;height:22px;color:var(--zap)}
.link-zap:hover{text-decoration:underline;text-underline-offset:3px}

/* ---------- Topo ---------- */
.topo{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid transparent;transition:border-color .2s}
.topo.rolou{border-bottom-color:var(--linha)}
.topo-in{display:flex;align-items:center;gap:24px;min-height:76px}
.marca{display:inline-flex;align-items:center;min-height:44px;color:var(--marinho);text-decoration:none;border-radius:10px}
.logo{height:44px;width:auto}
.logo-claro{color:#fff;--logo-selo:#fff;--logo-ponto:var(--marinho);--logo-letra:var(--marinho)}
.nav{margin-left:auto;display:flex;align-items:center;gap:8px}
.nav ul{display:flex;gap:2px}
.nav ul a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:8px;text-decoration:none;font-weight:500;color:var(--texto)}
.nav ul a:hover{color:var(--aco);background:var(--gelo)}
.nav-insta{display:inline-flex;align-items:center;gap:8px;min-height:44px;min-width:44px;justify-content:center;border-radius:999px;color:var(--marinho);text-decoration:none}
.nav-insta svg{width:22px;height:22px}
.nav-insta span{display:none}
.btn-topo{min-height:46px}
/* "Orçamento rápido" só entra no menu do desktop quando há espaço (sempre aparece no menu do celular) */
@media (min-width:981px) and (max-width:1239px){.nav-ck{display:none}}
.menu-btn{display:none}
@media (max-width:980px){
  .topo-in{min-height:66px;gap:10px}
  .logo{height:38px}
  .nav{position:fixed;inset:66px 0 auto 0;margin:0;flex-direction:column;align-items:stretch;gap:4px;background:#fff;padding:12px 20px 24px;border-bottom:1px solid var(--linha);
    box-shadow:0 24px 40px -24px rgba(13,43,78,.4);transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility 0s .18s}
  .nav.aberto{opacity:1;visibility:visible;transform:none;transition:opacity .18s,transform .18s}
  .nav ul{flex-direction:column}
  .nav ul a{min-height:52px;font-size:1.125rem;font-family:var(--f-disp);font-weight:700;color:var(--marinho);border-bottom:1px solid var(--gelo-2);border-radius:0;padding:0 4px}
  .nav-insta{justify-content:flex-start;padding:0 4px}
  .nav-insta span{display:inline}
  .btn-topo{margin-left:auto;padding:10px 16px;min-height:44px}
  .menu-btn{display:inline-grid;place-items:center;width:46px;height:46px;border:1px solid var(--linha);border-radius:12px;background:#fff;cursor:pointer;padding:0}
  .menu-risco,.menu-risco::before,.menu-risco::after{display:block;width:20px;height:2px;background:var(--marinho);border-radius:2px;transition:transform .2s}
  .menu-risco{position:relative}
  .menu-risco::before,.menu-risco::after{content:"";position:absolute;left:0}
  .menu-risco::before{top:-6px}.menu-risco::after{top:6px}
  .menu-btn[aria-expanded="true"] .menu-risco{background:transparent}
  .menu-btn[aria-expanded="true"] .menu-risco::before{transform:translateY(6px) rotate(45deg)}
  .menu-btn[aria-expanded="true"] .menu-risco::after{transform:translateY(-6px) rotate(-45deg)}
}
@media (max-width:400px){.btn-topo span{display:none}.btn-topo{width:46px;padding:0}.btn-topo .i-zap{width:22px;height:22px}}

/* ---------- Pesponto (assinatura) ---------- */
.patch{display:grid;place-items:center;text-align:center;border-radius:50%;color:#fff;font:700 1rem/1.02 var(--f-disp);
  background:var(--aco) repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 2px,transparent 2px 5px);
  box-shadow:0 0 0 4px var(--aco),0 14px 26px -12px rgba(13,43,78,.7);position:relative}
.patch::after{content:"";position:absolute;inset:7px;border-radius:50%;border:2px dashed rgba(255,255,255,.85)}
.sticker{position:absolute;margin:0;font:700 1rem/1.05 var(--f-disp);padding:12px 20px;border-radius:999px;text-align:center;box-shadow:0 14px 24px -14px rgba(13,43,78,.7)}
.sticker b{font-weight:800;font-size:1.35em;display:block;line-height:1}
.sticker::after{content:"";position:absolute;inset:5px;border-radius:inherit;border:1.6px dashed currentColor;opacity:.75;pointer-events:none}
.sticker-verm{background:var(--sinal);color:#fff}
.sticker-branco{background:#fff;color:var(--marinho)}
.sticker-branco::after{border-color:var(--sinal);opacity:1}
.sec-h{font-size:clamp(2.1rem,1.4rem + 2.6vw,3.4rem);font-weight:800}
.sec-h::before{content:"";display:block;width:56px;height:4px;margin-bottom:18px;color:var(--sinal);background:var(--ponto);border-radius:2px}

/* ---------- Hero ---------- */
.hero{background:linear-gradient(180deg,#fff 0,var(--gelo) 100%);padding:clamp(28px,5vw,64px) 0 clamp(36px,5vw,72px);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(24px,4vw,64px);align-items:center}
.hero h1{font-size:clamp(2.9rem,1.6rem + 5.4vw,5.6rem);font-weight:800;line-height:.92;letter-spacing:-.012em;max-width:12.5ch}
.hero-sub{margin-top:22px;font-size:clamp(1.0625rem,1rem + .4vw,1.3rem);color:var(--texto-2);max-width:40ch}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero-nota{margin-top:18px;color:var(--texto-2);font-size:.95rem}
.hero-arte{position:relative;width:100%;max-width:600px;min-height:0;justify-self:end;aspect-ratio:1/1;container-type:inline-size}
.circulo{position:absolute;inset:4%;border-radius:50%;background:var(--marinho)}
.circulo::after{content:"";position:absolute;inset:16px;border-radius:50%;border:2px dashed rgba(169,194,220,.45)}
.hero-arte .hf{position:absolute;overflow:hidden;background:var(--gelo-2);box-shadow:var(--sombra)}
.hf img{width:100%;height:100%;object-fit:cover}
.hf-1{left:27%;top:5%;width:46%;aspect-ratio:4/5.2;border-radius:999px 999px 20px 20px;border:6px solid #fff}
.hf-2{right:1%;bottom:13%;width:33%;aspect-ratio:1;border-radius:20px;border:5px solid #fff;transform:rotate(4deg)}
.hf-3{left:4%;bottom:7%;width:29%;aspect-ratio:1;border-radius:50%;border:5px solid #fff}
.patch-hero{position:absolute;left:5%;top:17%;width:23%;aspect-ratio:1;font-size:clamp(.8rem,3.4cqw,1.15rem);transform:rotate(-8deg);margin:0}
.hero-arte .sticker{font-size:clamp(.82rem,3.1cqw,1.1rem)}
.hero-arte .sticker-verm{right:0;top:8%;transform:rotate(9deg)}
.hero-arte .sticker-branco{left:31%;bottom:1%;transform:rotate(-5deg);white-space:nowrap}
.hero-arte .sticker-branco b{display:inline;font-size:1.2em}
@media (max-width:860px){
  .hero-grid{grid-template-columns:1fr}
  .hero h1{max-width:12ch}
  .hero-arte{justify-self:center;max-width:460px;margin-top:0}
  .hero-ctas{margin-top:24px;gap:10px}
  .hero-ctas .btn{flex:1 1 150px;padding-inline:14px;min-height:54px}
  .hero-ctas .btn-contorno{flex:0 1 140px}
  .hero-nota{display:none}
}

/* ---------- Fatos + faixa ---------- */
.fatos{background:#fff;border-bottom:1px solid var(--linha)}
.fatos-lista{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));}
.fatos-lista li{display:flex;align-items:center;gap:12px;padding:22px 16px}
.fatos-lista li+li{border-left:1px solid var(--linha)}
.fatos-lista .ico{color:var(--aco);width:30px;height:30px}
.fatos-lista strong{display:block;font:700 1.15rem/1.1 var(--f-disp);color:var(--marinho)}
.fatos-lista span{display:block;font-size:.9rem;color:var(--texto-2);line-height:1.3}
@media (max-width:980px){
  .fatos-lista{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
  .fatos-lista li{padding:16px 8px}
  .fatos-lista li+li{border-left:0}
  .fatos-lista li:nth-child(even){border-left:1px solid var(--linha);padding-left:16px}
  .fatos-lista li:nth-child(n+3){border-top:1px solid var(--linha)}
  .fatos-lista li:last-child{grid-column:1/-1;border-left:0;padding-left:8px}
}
.faixa{background:var(--marinho);color:#fff;overflow:hidden;position:relative;padding:20px 0}
.faixa::before,.faixa::after{content:"";position:absolute;left:0;right:0;height:3px;color:var(--sinal);background:var(--ponto)}
.faixa::before{top:7px}.faixa::after{bottom:7px;color:var(--aco-claro)}
.faixa-trilho{display:flex;width:max-content;animation:rola 48s linear infinite}
.faixa:hover .faixa-trilho{animation-play-state:paused}
.faixa-lista{display:flex;flex:none}
.faixa-lista li{display:flex;align-items:center;font:700 clamp(1.3rem,1rem + 1vw,1.75rem)/1 var(--f-disp);padding:6px 0;white-space:nowrap}
.faixa-lista li::after{content:"";width:9px;height:9px;margin:0 28px;border-radius:2px;background:var(--sinal);transform:rotate(45deg);box-shadow:0 0 0 3px var(--marinho),0 0 0 4.5px rgba(169,194,220,.6)}
@keyframes rola{to{transform:translateX(-50%)}}

/* ---------- Seções ---------- */
.secao{padding:clamp(56px,7vw,104px) 0}
.secao-gelo{background:var(--gelo)}
.sec-topo{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:clamp(24px,3vw,40px);flex-wrap:wrap}
.sec-sub{margin-top:14px;color:var(--texto-2);font-size:1.125rem;max-width:52ch}

/* ---------- Monte seu pedido ---------- */
.filtros{display:flex;flex-wrap:wrap;gap:8px;margin:-8px 0 28px}
.filtro{min-height:44px;padding:8px 18px;border-radius:999px;border:1.5px solid var(--linha);background:#fff;color:var(--marinho);font-weight:600;cursor:pointer}
.filtro:hover{border-color:var(--aco)}
.filtro[aria-pressed="true"]{background:var(--marinho);border-color:var(--marinho);color:#fff}
.pecas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px}
.peca{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linha);border-radius:var(--r-m);overflow:hidden}
.peca[hidden]{display:none}
.peca-foto{position:relative;aspect-ratio:4/5;background:var(--gelo-2)}
.peca-foto img{width:100%;height:100%;object-fit:cover}
.peca-linha{position:absolute;left:12px;top:12px;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:rgba(255,255,255,.94);color:var(--marinho);font-size:.8rem;font-weight:600;padding:5px 10px;border-radius:999px}
.peca-corpo{display:flex;flex-direction:column;flex:1;padding:16px 16px 18px}
.peca h3{font-size:1.5rem;font-weight:700;overflow-wrap:anywhere}
.peca p{margin-top:6px;color:var(--texto-2);font-size:.95rem;line-height:1.4}
.peca-add{margin-top:auto;padding-top:16px;display:grid;gap:10px}
.peca-botoes{display:flex;gap:8px}
.btn-add{flex:1;min-width:0;padding-inline:14px}
.btn-add.ok{background:var(--zap-btn)}
.zap-redondo{display:inline-grid;place-items:center;width:48px;height:48px;flex:none;border-radius:50%;background:#E6F6EC;color:var(--zap-btn);border:1.5px solid #BFE6CD}
.zap-redondo .i-zap{width:24px;height:24px}
.zap-redondo:hover{background:var(--zap-btn);color:#fff}
.stepper{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;border:1.5px solid var(--linha);border-radius:12px;background:#fff;height:48px;overflow:hidden}
.stepper button{height:100%;border:0;background:var(--gelo);color:var(--marinho);cursor:pointer;display:grid;place-items:center}
.stepper button:hover{background:var(--gelo-2)}
.stepper .ico-st{width:18px;height:18px;stroke-width:2.4}
.stepper input{width:100%;height:100%;border:0;text-align:center;font-weight:700;font-size:1.0625rem;background:transparent;-moz-appearance:textfield;appearance:textfield;min-width:0}
.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.stepper:focus-within{border-color:var(--aco)}
.pecas-nota{margin-top:28px;color:var(--texto-2)}
.pecas-nota a{color:var(--zap-btn);font-weight:700}
@media (max-width:1100px){.pecas{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){
  .pecas{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
  .peca-corpo{padding:12px 12px 14px}
  .peca h3{font-size:1.3rem}
  .peca p{font-size:.88rem}
  .peca-linha{font-size:.72rem;left:8px;top:8px;padding:4px 8px;max-width:calc(100% - 16px)}
  .filtros{gap:6px}
  .filtro{padding:8px 14px}
  .btn-add{font-size:.95rem;padding-inline:8px}
  .peca-botoes{gap:6px}
  .zap-redondo{width:46px;height:46px}
}

/* ---------- Técnicas ---------- */
.tecs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.tec{background:#fff;border-radius:var(--r-l);overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--linha)}
.tec-foto{position:relative;aspect-ratio:4/3;background:var(--gelo-2)}
.tec-foto img{width:100%;height:100%;object-fit:cover}
.selo-canto{position:absolute;right:12px;top:12px;background:var(--sinal);color:#fff;font:700 .95rem/1 var(--f-disp);padding:9px 14px;border-radius:999px;transform:rotate(4deg);box-shadow:0 8px 16px -10px rgba(0,0,0,.6)}
.selo-canto::after{content:"";position:absolute;inset:3px;border-radius:inherit;border:1.3px dashed rgba(255,255,255,.8)}
.tec-corpo{padding:18px 20px 16px;display:flex;flex-direction:column;flex:1}
.tec h3{display:flex;align-items:center;gap:10px;font-size:1.65rem;font-weight:700}
.tec h3 .ico{color:var(--aco);width:26px;height:26px}
.tec p{margin:8px 0 10px;color:var(--texto-2);font-size:.98rem;line-height:1.45}
.tec .link-zap{margin-top:auto}
@media (max-width:1100px){.tecs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .tecs{grid-template-columns:1fr;gap:14px}
  .tec{display:grid;grid-template-columns:40% 1fr;border-radius:var(--r-m)}
  .tec-foto{aspect-ratio:auto;min-height:100%}
  .selo-canto{left:8px;right:auto;top:8px;font-size:.78rem;padding:7px 10px;transform:rotate(-4deg)}
  .tec-corpo{padding:14px 14px 8px}
  .tec h3{font-size:1.4rem}
  .tec h3 .ico{display:none}
  .tec p{font-size:.92rem;margin:6px 0 4px}
  .tec .link-zap{font-size:.95rem;line-height:1.2}
}

/* ---------- Promo ---------- */
.promo{background:var(--marinho);color:#fff;position:relative;overflow:hidden;padding:clamp(48px,6vw,80px) 0}
.promo::before{content:"";position:absolute;inset:auto 0 12px;height:3px;color:var(--sinal);background:var(--ponto)}
.promo::after{content:"";position:absolute;right:-140px;top:-140px;width:420px;height:420px;border-radius:50%;border:2px dashed rgba(169,194,220,.25)}
.promo-in{display:grid;grid-template-columns:auto 1fr;gap:clamp(28px,5vw,72px);align-items:center;position:relative;z-index:1}
.selo{width:clamp(180px,22vw,270px);height:auto;transform:rotate(-10deg);filter:drop-shadow(0 18px 24px rgba(0,0,0,.35))}
.promo h2{color:#fff;font-size:clamp(2rem,1.3rem + 2.6vw,3.4rem);font-weight:800;max-width:18ch}
.promo p{margin-top:14px;color:var(--aco-claro);font-size:1.15rem}
.promo-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
@media (max-width:760px){
  .promo-in{grid-template-columns:1fr;justify-items:start}
  .selo{width:176px;margin:4px 0 0 4px}
  .promo-ctas .btn{flex:1 1 220px}
}

/* ---------- Segmentos ---------- */
.segs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}
.seg{position:relative;display:flex;flex-direction:column}
.seg-foto{aspect-ratio:7/5;border-radius:var(--r-m);overflow:hidden;background:var(--gelo-2)}
.seg-foto img{width:100%;height:100%;object-fit:cover}
.seg-chip{position:relative;z-index:1;margin:-28px 0 0 16px;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--marinho);box-shadow:0 0 0 4px #fff,0 10px 20px -10px rgba(13,43,78,.6)}
.seg-chip::after{content:"";position:absolute;inset:4px;border-radius:50%;border:1.6px dashed var(--aco-claro)}
.seg-chip .ico{width:26px;height:26px}
.seg-corpo{padding:10px 4px 0;display:flex;flex-direction:column;flex:1}
.seg h3{font-size:1.55rem;font-weight:700}
.seg p{margin-top:6px;color:var(--texto-2);font-size:.98rem}
.seg .link-zap{margin-top:6px}
@media (max-width:1000px){.segs{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.seg:first-child{grid-column:1/-1}.seg:first-child .seg-foto{aspect-ratio:16/8}}
@media (max-width:560px){
  .seg-chip{width:46px;height:46px;margin:-23px 0 0 10px}
  .seg-chip .ico{width:22px;height:22px}
  .seg h3{font-size:1.25rem}
  .seg p{display:none}
  .seg .link-zap{font-size:.9rem;line-height:1.2;gap:6px;align-items:center}
  .seg .link-zap .i-zap{width:18px;height:18px}
}

/* ---------- Como funciona ---------- */
.passos{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px;counter-reset:p;position:relative}
.passos::before{content:"";position:absolute;left:24px;right:calc((100% - 98px) / 8 - 24px);top:23px;height:2px;color:var(--aco);background:var(--ponto);opacity:.6}
.passos li{position:relative}
.passo-n{position:relative;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--marinho);color:#fff;font:800 1.35rem/1 var(--f-disp);box-shadow:0 0 0 6px var(--gelo)}
.passos li:last-child .passo-n{background:var(--sinal)}
.passos h3{margin-top:16px;font-size:1.3rem;font-weight:700}
.passos p{margin-top:6px;font-size:.92rem;color:var(--texto-2);line-height:1.4}
@media (max-width:1000px){
  .passos{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
  .passos::before{display:none}
  .passos li{display:grid;grid-template-columns:44px 1fr;column-gap:12px;align-items:start}
  .passo-n{width:44px;height:44px;font-size:1.2rem;grid-row:span 2;box-shadow:none}
  .passos h3{margin-top:2px;font-size:1.2rem}
  .passos p{margin-top:2px;grid-column:2}
}
@media (max-width:520px){
  .passos{grid-template-columns:1fr;gap:0}
  .passos li{padding-bottom:18px}
  .passos li:not(:last-child)::after{content:"";position:absolute;left:21px;top:48px;bottom:2px;width:2px;
    background:repeating-linear-gradient(180deg,var(--aco) 0 7px,transparent 7px 12px);opacity:.55}
}

/* ---------- FAQ ---------- */
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:start}
.faq-lado .btn{margin-top:26px}
.faq details{border-bottom:1px solid var(--linha)}
.faq details:first-child{border-top:1px solid var(--linha)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:14px 0;cursor:pointer;list-style:none;font:700 1.3rem/1.15 var(--f-disp);color:var(--marinho)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:30px;height:30px;border-radius:50%;background:var(--gelo) no-repeat center/14px
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M1 7h12M7 1v12' stroke='%230D2B4E' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 44px 20px 0;color:var(--texto-2)}
@media (max-width:860px){.faq-grid{grid-template-columns:1fr}.faq details p{padding-right:0}}

/* ---------- CTA final ---------- */
.cta-final{background:var(--gelo);padding:clamp(56px,7vw,96px) 0}
.cta-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center}
.cta-txt h2{font-size:clamp(2.4rem,1.5rem + 3.4vw,4.2rem);font-weight:800}
.cta-txt>p{margin-top:14px;color:var(--texto-2);font-size:1.15rem}
.mini-form{display:flex;gap:10px;margin-top:26px;background:#fff;padding:8px;border-radius:999px;border:1.5px solid var(--linha);max-width:520px}
.mini-form input{flex:1;min-width:0;border:0;background:transparent;padding:0 16px;min-height:48px;font-size:1.0625rem}
.mini-form input:focus{outline:none}
.mini-form:focus-within{border-color:var(--aco);box-shadow:0 0 0 3px rgba(61,108,156,.25)}
.cta-insta{display:inline-flex;align-items:center;gap:10px;margin-top:20px;min-height:44px;color:var(--marinho);font-weight:600}
.cta-insta svg{width:22px;height:22px}
.cta-foto{position:relative}
.cta-foto img{width:100%;aspect-ratio:9/7;object-fit:cover;border-radius:260px 260px var(--r-l) var(--r-l);background:var(--gelo-2)}
.sticker-cta{left:-14px;bottom:28px;transform:rotate(-7deg);font-size:1.1rem}
@media (max-width:860px){.cta-in{grid-template-columns:1fr}.cta-foto{max-width:520px}}
@media (max-width:480px){
  .mini-form{flex-direction:column;border-radius:20px;padding:8px}
  .mini-form input{min-height:52px}
  .sticker-cta{left:8px;bottom:12px;font-size:.95rem}
}

/* ---------- Rodapé ---------- */
.rodape{background:var(--marinho-2);color:#C9D6E5;padding:56px 0 calc(110px + env(safe-area-inset-bottom))}
.rod-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}
.rod-marca p{margin-top:16px;max-width:36ch}
.rodape h2{font-size:1.25rem;color:#fff;margin-bottom:12px}
.rodape ul a{display:inline-block;padding:11px 0;min-height:44px;text-decoration:none;color:#E3EBF4}
.rodape ul a:hover{color:#fff;text-decoration:underline}
.rod-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:40px;padding-top:22px;border-top:1px dashed rgba(169,194,220,.35);font-size:.95rem}
.rod-base a{color:#fff;font-weight:600;display:inline-block;padding:10px 0}
@media (max-width:760px){.rod-grid{grid-template-columns:1fr 1fr}.rod-marca{grid-column:1/-1}}

/* ---------- Flutuantes ---------- */
.flutua{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:50;display:flex;align-items:center;gap:10px;pointer-events:none}
.flutua>*{pointer-events:auto}
.zap-flut{display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 22px 0 16px;border-radius:999px;background:var(--zap-btn);color:#fff;text-decoration:none;font-weight:700;
  box-shadow:0 0 0 4px rgba(31,175,90,.25),0 16px 30px -12px rgba(13,43,78,.6)}
.zap-flut .i-zap{width:26px;height:26px}
.zap-flut:hover{background:var(--zap-btn-h)}
.pedido-barra{display:flex;align-items:center;gap:12px;min-height:60px;padding:6px 6px 6px 14px;border-radius:999px;border:0;background:var(--marinho);color:#fff;cursor:pointer;text-align:left;
  box-shadow:0 16px 30px -12px rgba(13,43,78,.7)}
.pedido-barra[hidden]{display:none}
.pb-ico{position:relative;display:grid;place-items:center}
.pb-ico b{position:absolute;right:-8px;top:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--sinal);font:700 .72rem/20px var(--f-txt);text-align:center}
.pb-txt small{display:block;font-size:.78rem;color:var(--aco-claro)}
.pb-txt strong{font:700 1.15rem/1 var(--f-disp)}
.pb-acao{display:inline-flex;align-items:center;gap:8px;background:var(--zap-btn);border-radius:999px;padding:0 16px;min-height:48px;font-weight:700;white-space:nowrap}
.pedido-barra.pulsa{animation:pulsa .5s ease}
@keyframes pulsa{50%{transform:scale(1.04)}}
.tem-pedido .zap-flut span{display:none}
.tem-pedido .zap-flut{width:56px;padding:0;justify-content:center}
@media (max-width:640px){
  .flutua{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));justify-content:flex-end}
  .tem-pedido .flutua .pedido-barra,.flutua .pedido-barra{flex:1;min-width:0}
  .pb-acao{padding:0 12px;font-size:.92rem}
  .pb-acao .i-zap{display:none}
}
@media (max-width:370px){.pb-txt small{display:none}}

/* ---------- Gaveta do pedido ---------- */
.gaveta{border:0;padding:0;margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:min(460px,100%);max-width:100%;background:#fff;color:var(--texto)}
.gaveta::backdrop{background:rgba(10,34,64,.55)}
.gaveta[open]{animation:entra .25s ease}
@keyframes entra{from{transform:translateX(30px);opacity:.4}}
.gav-in{display:flex;flex-direction:column;gap:16px;padding:22px 22px calc(22px + env(safe-area-inset-bottom));min-height:100%}
.gav-topo{display:flex;align-items:center;justify-content:space-between}
.gav-topo h2{font-size:2rem;font-weight:800}
.gav-fechar{width:46px;height:46px;border-radius:50%;border:1px solid var(--linha);background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--marinho)}
.cart-lista{display:grid;gap:10px}
.cart-lista li{display:grid;grid-template-columns:52px minmax(0,1fr) auto;grid-template-areas:"f n x" "f s s";gap:6px 12px;align-items:center;padding:10px;border:1px solid var(--linha);border-radius:14px}
.cart-lista .cl-foto{grid-area:f;width:52px;height:64px;border-radius:8px;object-fit:cover;background:var(--gelo-2);align-self:start}
.cart-lista .cl-nome{grid-area:n;font:700 1.15rem/1.1 var(--f-disp);color:var(--marinho)}
.cart-lista .stepper{grid-area:s;height:44px;max-width:180px}
.cart-lista .cl-rem{grid-area:x;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--texto-2);cursor:pointer;display:grid;place-items:center}
.cart-lista .cl-rem:hover{background:var(--gelo)}
.cart-lista .cl-vazio{display:block;padding:18px;text-align:center;color:var(--texto-2);border-style:dashed}
.gav-total{display:flex;justify-content:space-between;align-items:baseline;font-size:1.05rem;padding-top:4px;border-top:1px dashed var(--linha)}
.gav-total strong{font:800 1.6rem/1 var(--f-disp);color:var(--marinho)}
.aviso-min{color:#B42318;font-weight:600;font-size:.95rem}
.aviso-min:empty{display:none}
.gav-campo{border:0;padding:0;margin:0;display:grid;gap:8px}
.gav-campo legend,.gav-campo label{font-weight:600;padding:0;margin-bottom:8px}
.gav-campo input[type=text],.campo input,.campo select,.campo textarea{width:100%;min-height:50px;padding:12px 14px;border:1.5px solid var(--linha);border-radius:12px;background:#fff}
.gav-campo input:focus,.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--aco);box-shadow:0 0 0 3px rgba(61,108,156,.25)}
.gav-acoes{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px 12px}
.gav-acoes a{color:var(--aco);font-weight:600;min-height:44px;display:inline-flex;align-items:center}
.gaveta .btn-grande{width:100%}
.gaveta .btn:disabled{background:#9AA8B6;cursor:not-allowed}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;cursor:pointer}
.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip span{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border-radius:999px;border:1.5px solid var(--linha);background:#fff;font-weight:500;font-size:.95rem}
.chip input:checked+span{background:var(--marinho);border-color:var(--marinho);color:#fff}
.chip input:focus-visible+span{outline:3px solid var(--aco);outline-offset:2px}
@media (max-width:640px){
  .gaveta{margin:auto 0 0;width:100%;height:auto;max-height:92dvh;border-radius:22px 22px 0 0}
  .gaveta[open]{animation:sobe .25s ease}
  .gav-in{min-height:0}
  .gav-topo h2{font-size:1.7rem}
  @keyframes sobe{from{transform:translateY(40px);opacity:.4}}
}

/* ---------- Orçamento ---------- */
.orc-topo{background:linear-gradient(180deg,#fff,var(--gelo));padding:28px 0 36px}
.orc-topo h1{font-size:clamp(2.6rem,1.6rem + 4vw,4.4rem);font-weight:800;margin-top:14px}
.orc-topo .hero-sub{margin-top:12px}
.migalhas ol{display:flex;gap:8px;font-size:.95rem;color:var(--texto-2)}
.migalhas li+li::before{content:"/";margin-right:8px;color:var(--aco-claro)}
.migalhas a{color:var(--aco);display:inline-block;padding:10px 0}
.migalhas [aria-current]{padding:10px 0}
.orc{padding:24px 0 72px;background:var(--gelo)}
.orc-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:32px;align-items:start}
.form{display:grid;gap:20px}
.etapa{border:1px solid var(--linha);border-radius:var(--r-l);background:#fff;padding:22px 24px 24px;margin:0;display:grid;gap:16px;min-width:0}
.etapa>legend{float:left;width:100%;display:flex;align-items:center;gap:12px;font:800 1.6rem/1 var(--f-disp);color:var(--marinho);padding:0;margin-bottom:4px}
.etapa-n{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--marinho);color:#fff;font-size:1.15rem;position:relative}
.etapa-n::after{content:"";position:absolute;inset:3px;border-radius:50%;border:1.3px dashed rgba(255,255,255,.7)}
.campo{display:grid;gap:8px;border:0;padding:0;margin:0;min-width:0}
.campo label,.campo legend,.rotulo{font-weight:600;padding:0}
.campo legend{margin-bottom:8px}
.campo em{font-style:normal;font-weight:500;font-size:.82rem;color:var(--texto-2)}
.campo-duplo{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.campo select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%230D2B4E' stroke-width='2' fill='none'/%3E%3C/svg%3E") no-repeat right 14px center/12px;padding-right:38px}
.add-peca{display:grid;grid-template-columns:minmax(0,1fr) 160px auto;gap:12px;align-items:end;padding:14px;border-radius:14px;background:var(--gelo)}
.add-peca .stepper{height:50px}
.add-peca .btn{min-height:50px}
.form-erro{color:#B42318;font-weight:600}
.form-erro:empty{display:none}
.campo [aria-invalid="true"]{border-color:#B42318}
.ajuda{color:var(--texto-2);font-size:.95rem}
.ajuda a{color:var(--zap-btn);font-weight:700}
.orc-lado{position:sticky;top:96px}
.orc-card{background:var(--marinho);color:#fff;border-radius:var(--r-l);padding:28px 24px 24px;position:relative;margin-top:24px}
.patch-orc{position:absolute;right:-14px;top:-40px;width:104px;height:104px;font-size:.92rem;transform:rotate(-8deg);margin:0}
.orc-card .orc-fatos{padding-right:70px}
.orc-card .orc-fatos li:nth-child(n+3){margin-right:-70px}
.orc-fatos{display:grid;gap:4px}
.orc-fatos li{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px dashed rgba(169,194,220,.3)}
.orc-fatos .ico{color:var(--aco-claro)}
.orc-fatos strong{display:block;font:700 1.1rem/1.1 var(--f-disp)}
.orc-fatos span{font-size:.9rem;color:#C9D6E5}
.orc-card .ajuda{color:#C9D6E5;margin-top:16px}
.orc-card .ajuda a{color:#7FE0A6}
@media (max-width:900px){
  .orc-grid{grid-template-columns:1fr}
  .orc-lado{position:static}
  .patch-orc{display:none}
}
@media (max-width:600px){
  .etapa{padding:18px 16px 20px}
  .etapa>legend{font-size:1.4rem}
  .campo-duplo{grid-template-columns:1fr}
  .add-peca{grid-template-columns:1fr 1fr}
  .add-peca .campo:first-child{grid-column:1/-1}
}

/* ---------- Orçamento em 30 segundos (checklist) ---------- */
.ck-sec{background:var(--gelo);padding:clamp(40px,5vw,72px) 0}
.ck-sec .sec-topo{align-items:center}
.ck-selo{position:relative;transform:rotate(-4deg);font-size:1rem;padding:12px 22px;margin-right:6px}
.ck-selo b{font-size:1.3em}
.ck-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.q{margin:0;min-width:0;background:#fff;border:1.5px solid var(--linha);border-radius:var(--r-m);padding:16px 18px 18px;transition:border-color .15s,box-shadow .15s}
.q>legend{float:left;width:100%;display:flex;align-items:center;gap:10px;padding:0;margin-bottom:12px;font:700 1.35rem/1.1 var(--f-disp);color:var(--marinho)}
.q>legend+*{clear:both}
.q-n{position:relative;flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--marinho);color:#fff;font:800 1.05rem/1 var(--f-disp)}
.q-n::after{content:"";position:absolute;inset:3px;border-radius:50%;border:1.2px dashed rgba(255,255,255,.7)}
.q-n .ico{display:none;width:18px;height:18px;stroke-width:2.6}
.q.ok .q-n{background:var(--zap-btn)}
.q.ok .q-n>span{display:none}
.q.ok .q-n .ico{display:block}
.q.falta{border-color:#B42318;box-shadow:0 0 0 3px rgba(180,35,24,.14)}
.q-ops{display:grid;grid-template-columns:repeat(var(--n,2),minmax(0,1fr));gap:8px}
.op{position:relative;display:flex;cursor:pointer}
.op input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.op span{flex:1;display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:58px;padding:10px 14px;border:1.5px solid var(--linha);border-radius:12px;background:#fff;
  color:var(--marinho);transition:background-color .15s,border-color .15s,color .15s}
.op b{font:700 1.15rem/1.1 var(--f-disp)}
.op small{font-size:.86rem;line-height:1.25;color:var(--texto-2)}
.op:hover span{border-color:var(--aco)}
.op input:checked+span{background:var(--marinho);border-color:var(--marinho);color:#fff}
.op input:checked+span small{color:var(--aco-claro)}
.op input:focus-visible+span{outline:3px solid var(--aco);outline-offset:2px}
.ck-rodape{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px 24px;align-items:end;margin-top:14px;background:#fff;border:1.5px solid var(--linha);border-radius:var(--r-m);padding:16px 18px}
.ck-empresa input{min-height:56px}
.ck-prog{display:grid;gap:8px;justify-items:start;padding-bottom:6px;font-size:.95rem;color:var(--texto-2);white-space:nowrap}
.ck-prog b{font:800 1.2rem/1 var(--f-disp);color:var(--marinho)}
.ck-barra{display:grid;grid-template-columns:repeat(4,28px);gap:5px}
.ck-barra i{height:6px;border-radius:3px;background:var(--gelo-2);transition:background-color .2s}
.ck-barra i.on{background:var(--zap-btn)}
.ck-enviar[aria-disabled="true"]{background:#9AA8B6}
.ck-enviar[aria-disabled="true"]:hover{background:#8796A5}
.ck-erro{margin-top:12px}
.etapa-ck .ck-prog{padding:0}
.etapa .q{background:var(--gelo);border-color:transparent}
.etapa .q.falta{border-color:#B42318}
.etapa-ck .ck-grid{grid-template-columns:1fr;gap:10px}   /* coluna do formulário é estreita: uma pergunta por linha */
@media (max-width:860px){
  .ck-grid{grid-template-columns:1fr;gap:10px}
  .ck-rodape{grid-template-columns:minmax(0,1fr) auto}
  .ck-empresa{grid-column:1/-1}
  .ck-rodape .ck-enviar{justify-self:end}
}
@media (max-width:560px){
  .ck-sec .sec-topo{margin-bottom:18px}
  .ck-selo{display:none}
  .q{padding:14px}
  .q>legend{font-size:1.25rem;margin-bottom:10px}
  .op span{min-height:54px;padding:9px 12px}
  .op b{font-size:1.08rem}
  .op small{font-size:.82rem}
  .ck-rodape{grid-template-columns:1fr;padding:14px}
  .ck-prog{grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:0}
  .ck-rodape .ck-enviar{width:100%}
  .etapa .q{padding:12px}
  .etapa .q-ops{gap:6px}
  .etapa .op span{padding:9px 9px}
}

/* imagem que falhar: mantém o fundo e mostra a marca */
.ph{position:relative}
.ph img[data-falhou]{opacity:0}
.img-vazia{position:absolute;inset:0;display:grid;place-items:center;font:800 2.4rem/1 var(--f-disp);color:var(--aco-claro)}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .faixa-trilho{animation:none!important;flex-wrap:wrap;width:auto}
  .faixa-lista[aria-hidden]{display:none}
  .faixa-lista{flex-wrap:wrap;justify-content:center;padding:0 16px}
}

/* fotos sempre preenchem a moldura (corrige alturas desiguais) */
.peca-foto,.tec-foto,.seg-foto{position:relative;overflow:hidden}
.peca-foto>img,.tec-foto>img,.seg-foto>img,.peca-foto picture img,.tec-foto picture img,.seg-foto picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:640px){.tec-foto{min-height:150px}}
