/* =========================================================
   Ortobom Setor Oeste | site branco, destaques em azul
   ========================================================= */
:root{
  --fundo:#ffffff;
  --gelo:#f4f7fb;
  --tinta:#e9f0fa;
  --linha:#dde5ef;
  --azul:#0b3d91;
  --azul-forte:#082b69;
  --azul-medio:#2563c9;
  --texto:#18222f;
  --cinza:#556174;
  --zap:#1d9a52;
  --zap-forte:#167f43;
  --aberto:#1d8a4a;
  --fechado:#b42318;
  --raio:14px;
  --sombra:0 10px 30px rgba(8,43,105,.08);
  --titulo:'Montserrat',system-ui,-apple-system,'Segoe UI',sans-serif;
  --corpo:'Source Sans 3',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:var(--corpo);font-size:17px;line-height:1.55;color:var(--texto);background:var(--fundo);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
h1,h2,h3,h4{font-family:var(--titulo);color:var(--azul-forte);text-wrap:balance;line-height:1.15}
.container{width:min(1160px,92%);margin:0 auto}
:focus-visible{outline:3px solid var(--azul-medio);outline-offset:3px;border-radius:6px}
.sobretitulo{font-family:var(--titulo);font-size:.78rem;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--azul-medio);margin-bottom:8px}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:10px;font-family:var(--titulo);font-weight:700;font-size:.95rem;border:2px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px)}
.btn-g{min-height:56px;padding:14px 26px;font-size:1rem}
.btn-p{min-height:44px;padding:9px 18px;font-size:.9rem}
.btn-cheio{width:100%}
.btn-azul{background:var(--azul);color:#fff}
.btn-azul:hover{background:var(--azul-forte);box-shadow:0 10px 24px rgba(11,61,145,.25)}
.btn-contorno{background:#fff;color:var(--azul);border-color:var(--azul)}
.btn-contorno:hover{background:var(--tinta)}
.btn-zap{background:var(--zap);color:#fff}
.btn-zap:hover{background:var(--zap-forte);box-shadow:0 10px 24px rgba(29,154,82,.28)}
.btn.desativado{opacity:.45;pointer-events:none}
.zap-ico{width:20px;height:20px;flex:none;background:currentColor;-webkit-mask:var(--zapsvg) center/contain no-repeat;mask:var(--zapsvg) center/contain no-repeat}
.zap-ico.grande{width:30px;height:30px}
:root{--zapsvg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.47 14.38c-.3-.15-1.75-.86-2.02-.96-.27-.1-.47-.15-.67.15s-.77.96-.94 1.16c-.17.2-.35.22-.64.07-.3-.15-1.25-.46-2.38-1.47-.88-.79-1.47-1.75-1.65-2.05-.17-.3-.02-.46.13-.6.13-.13.3-.35.45-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.02-.52-.08-.15-.67-1.6-.92-2.2-.24-.58-.48-.5-.67-.51h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.01-1.04 2.47s1.07 2.86 1.22 3.06c.15.2 2.1 3.2 5.08 4.49.71.3 1.26.49 1.69.63.71.22 1.36.19 1.87.12.57-.09 1.75-.72 2-1.41.25-.69.25-1.28.17-1.41-.07-.13-.27-.2-.57-.35zM12 2C6.48 2 2 6.48 2 12c0 1.77.46 3.43 1.27 4.87L2 22l5.25-1.24A9.95 9.95 0 0 0 12 22c5.52 0 10-4.48 10-10S17.52 2 12 2z'/%3E%3C/svg%3E")}

/* ---------- faixa de informações ---------- */
.info-topo{background:var(--gelo);border-bottom:1px solid var(--linha);font-size:.9rem;color:var(--cinza)}
.info-topo-in{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px 26px;padding:8px 0}
.info-item{display:inline-flex;align-items:center;gap:8px}
.info-item+.info-item::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--azul-medio);margin-right:18px;opacity:.6}
#infoTel{font-weight:700;color:var(--azul)}
#infoTel:hover{text-decoration:underline}

/* ---------- cabeçalho ---------- */
.topo{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--linha);transition:box-shadow .25s}
.topo.rolou{box-shadow:0 6px 20px rgba(8,43,105,.08)}
.topo-in{display:flex;align-items:center;gap:32px;padding:12px 0}
.logo{display:flex;flex-direction:column;line-height:1}
.logo-marca{font-family:var(--titulo);font-weight:800;font-size:1.9rem;letter-spacing:-1.2px;color:var(--azul)}
.logo-sub{font-family:var(--titulo);font-size:.66rem;font-weight:700;letter-spacing:3.2px;text-transform:uppercase;color:var(--cinza);margin-top:4px;padding-left:2px}
.menu{display:flex;gap:28px;margin-left:auto;font-weight:600;font-size:1rem}
.menu a{color:var(--texto);padding:6px 0;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.menu a:hover{color:var(--azul);border-color:var(--azul)}
.topo-btns{display:flex;gap:10px}

/* ---------- faixa que corre ---------- */
.faixa-corre{background:var(--azul);overflow:hidden;padding:10px 0}
.faixa-trilho{display:flex;gap:44px;width:max-content;animation:corre 32s linear infinite;color:#fff;font-weight:600;font-size:.95rem;white-space:nowrap}
.faixa-trilho span{display:inline-flex;align-items:center;gap:44px}
.faixa-trilho span::after{content:"";width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.55)}
@keyframes corre{to{transform:translateX(-50%)}}

/* ---------- abertura: a loja ---------- */
.abertura{padding:52px 0 60px;border-bottom:1px solid var(--linha)}
.abertura-in{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:center}
.abertura-txt>*{animation:sobe .6s both}
.abertura-txt>*:nth-child(2){animation-delay:.06s}
.abertura-txt>*:nth-child(3){animation-delay:.12s}
.abertura-txt>*:nth-child(4){animation-delay:.18s}
.abertura-txt>*:nth-child(5){animation-delay:.24s}
.abertura-txt>*:nth-child(6){animation-delay:.3s}
@keyframes sobe{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.abertura h1{font-size:clamp(2.1rem,4.6vw,3.35rem);font-weight:800;letter-spacing:-1.4px;max-width:17ch}
.abertura-end{margin-top:14px;font-size:1.15rem;color:var(--texto)}
.abertura-end b{color:var(--azul-forte)}
.nota-google{display:inline-flex;align-items:center;gap:10px;margin-top:18px;padding:8px 14px;border:1px solid var(--linha);border-radius:10px;font-size:.98rem;color:var(--cinza);transition:border-color .2s}
.nota-google:hover{border-color:var(--azul)}
.nota-google strong{font-family:var(--titulo);color:var(--azul-forte);font-size:1.05rem}
.estrelas{display:inline-flex;gap:2px}
.estrelas i{width:16px;height:16px;background:var(--azul);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
.servicos{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:20px}
.servicos li{display:inline-flex;align-items:center;gap:9px;font-weight:600}
.servicos li::before{content:"";width:18px;height:18px;border-radius:50%;background:var(--tinta) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b3d91' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat}
.abertura-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

.cartao-loja{background:#fff;border:1px solid var(--linha);border-radius:18px;padding:26px;box-shadow:var(--sombra);animation:sobe .6s .15s both}
.status{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:.95rem;padding:6px 12px;border-radius:100px;background:#e8f5ed;color:var(--aberto)}
.status.fechado{background:#fdecea;color:var(--fechado)}
.status-ponto{width:9px;height:9px;border-radius:50%;background:currentColor;box-shadow:0 0 0 0 currentColor;animation:pulsa 2s infinite}
.status.fechado .status-ponto{animation:none}
@keyframes pulsa{0%{box-shadow:0 0 0 0 rgba(29,138,74,.45)}70%{box-shadow:0 0 0 8px rgba(29,138,74,0)}100%{box-shadow:0 0 0 0 rgba(29,138,74,0)}}
.cartao-loja h2{font-size:1.2rem;margin:16px 0 10px}
.horas{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.horas td{padding:7px 10px;border-bottom:1px solid var(--linha);font-size:1rem}
.horas td:last-child{text-align:right;font-weight:600}
.horas tr.hoje td{background:var(--tinta);color:var(--azul-forte);font-weight:700;border-bottom-color:transparent}
.horas tr.hoje td:first-child{border-radius:8px 0 0 8px}
.horas tr.hoje td:last-child{border-radius:0 8px 8px 0}
.horas .fechado-dia{color:var(--cinza);font-weight:400}
.cartao-end{display:flex;flex-direction:column;margin:18px 0 16px;font-size:1rem}
.cartao-end span{color:var(--cinza)}

/* ---------- seções ---------- */
.secao{padding:72px 0}
.secao-curta{padding:52px 0}
.secao-gelo{background:var(--gelo);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.cabeca{margin-bottom:30px;max-width:640px}
.cabeca h2,.outros-in h2,.painel-txt h2{font-size:clamp(1.7rem,3.2vw,2.35rem);font-weight:800;letter-spacing:-.8px}
.cabeca-txt{margin-top:10px;color:var(--cinza);font-size:1.05rem}
.cabeca-linha{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;max-width:none}

/* ---------- promoções ---------- */
.setas{display:flex;gap:10px}
.seta{width:48px;height:48px;border-radius:50%;border:2px solid var(--linha);background:#fff;cursor:pointer;display:grid;place-items:center;transition:border-color .2s,background .2s}
.seta:hover{border-color:var(--azul);background:var(--tinta)}
.seta-ico{width:11px;height:11px;border-top:2.5px solid var(--azul);border-right:2.5px solid var(--azul);transform:rotate(45deg);margin-right:4px}
.seta-ico.esq{transform:rotate(-135deg);margin:0 0 0 4px}
.carrossel{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3*20px)/4);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 18px}
.carrossel::-webkit-scrollbar{display:none}
.promo{scroll-snap-align:start;background:#fff;border:1px solid var(--linha);border-radius:var(--raio);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.promo:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.promo-img{position:relative;aspect-ratio:4/5;background:var(--gelo);overflow:hidden}
.promo-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.promo:hover .promo-img img{transform:scale(1.04)}
.promo-vazio{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;color:var(--cinza);font-size:.9rem}
.promo-vazio b{color:var(--azul);font-family:var(--titulo)}
.etiqueta{align-self:flex-start;background:var(--tinta);color:var(--azul);font-family:var(--titulo);font-size:.72rem;font-weight:800;letter-spacing:.6px;text-transform:uppercase;padding:5px 10px;border-radius:6px;margin-bottom:4px}
.promo-corpo{padding:16px 16px 18px;display:flex;flex-direction:column;gap:4px;flex:1}
.promo-corpo h3{font-size:1.08rem;font-weight:700}
.promo-corpo .desc{color:var(--cinza);font-size:.95rem}
.precos{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin-top:8px;font-variant-numeric:tabular-nums}
.preco-de{color:var(--cinza);text-decoration:line-through;font-size:.95rem;white-space:nowrap}
.preco-por{font-family:var(--titulo);font-size:1.45rem;font-weight:800;color:var(--azul-forte);letter-spacing:-.5px;white-space:nowrap}
.condicao{font-size:.92rem;color:var(--cinza)}
.cupom{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 14px;border:2px dashed var(--azul);border-radius:10px;background:var(--tinta)}
.cupom span{font-size:.85rem;color:var(--cinza);line-height:1.2}
.cupom strong{font-family:var(--titulo);font-size:1.15rem;font-weight:800;color:var(--azul-forte);letter-spacing:.5px}
.validade{display:block;margin:10px 0 14px;font-size:.85rem;color:var(--cinza)}
.promo .btn{margin-top:auto;width:100%}
.pontos{display:flex;justify-content:center;gap:8px;margin-top:6px}
.ponto{width:9px;height:9px;border-radius:50%;border:0;background:var(--linha);cursor:pointer;transition:width .25s,background .25s}
.ponto.on{width:26px;border-radius:10px;background:var(--azul)}

/* ---------- colchões ---------- */
.filtros{display:flex;gap:8px;flex-wrap:wrap}
.filtro{min-height:46px;padding:10px 20px;border-radius:10px;border:2px solid var(--linha);background:#fff;color:var(--texto);font-weight:700;font-size:.98rem;cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.filtro:hover{border-color:var(--azul)}
.filtro.on{background:var(--azul);border-color:var(--azul);color:#fff}
.linha-grupo{margin-bottom:46px}
.linha-grupo:last-child{margin-bottom:0}
.linha-grupo.escondido{display:none}
.linha-cabeca{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.linha-cabeca p{color:var(--cinza);font-size:1rem}
.linha-selo{flex:none;font-family:var(--titulo);font-size:.85rem;font-weight:800;letter-spacing:.8px;text-transform:uppercase;padding:8px 16px;border-radius:8px;background:var(--azul);color:#fff}
.linha-grupo[data-linha="master"] .linha-selo{background:#fff;color:var(--azul);box-shadow:inset 0 0 0 2px var(--azul)}
.linha-grupo[data-linha="standard"] .linha-selo,.linha-grupo[data-linha="outros"] .linha-selo{background:var(--tinta);color:var(--azul)}
.linha-grade{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.colchao-card{background:#fff;border:1px solid var(--linha);border-radius:var(--raio);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.colchao-card:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.colchao-card.escondido{display:none}
.colchao-foto{position:relative;aspect-ratio:1/1;background:var(--gelo);overflow:hidden}
.colchao-foto img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.colchao-card:hover .colchao-foto img{transform:scale(1.04)}
.colchao-tipo{position:absolute;top:10px;left:10px;background:#fff;color:var(--azul);font-family:var(--titulo);font-size:.7rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:5px 10px;border-radius:6px;box-shadow:0 2px 8px rgba(8,43,105,.12)}
.colchao-embreve{display:none}
.colchao-foto.sem-foto{display:grid;place-items:center;background:repeating-linear-gradient(135deg,var(--gelo) 0 12px,#fff 12px 24px)}
.colchao-foto.sem-foto .colchao-embreve{display:block;font-family:var(--titulo);font-weight:700;color:var(--azul);font-size:.95rem;background:#fff;padding:8px 14px;border-radius:8px;border:1px solid var(--linha)}
.colchao-corpo{padding:14px 14px 16px;display:flex;flex-direction:column;gap:3px;flex:1}
.colchao-corpo h3{font-size:1.1rem;font-weight:700}
.colchao-tec{color:var(--azul-medio);font-weight:700;font-size:.95rem}
.colchao-medida{color:var(--cinza);font-size:.92rem;font-variant-numeric:tabular-nums;margin-bottom:12px}
.colchao-corpo .btn{margin-top:auto;width:100%;min-height:48px}
.nota-medida{margin-top:34px;color:var(--cinza);font-size:1rem}

/* ---------- outros produtos ---------- */
.outros-in{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;align-items:center}
.outros{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.outro{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:12px 16px;border:2px solid var(--linha);border-radius:10px;font-weight:700;color:var(--azul-forte);transition:border-color .2s,background .2s}
.outro::after{content:"";width:8px;height:8px;flex:none;border-top:2.5px solid var(--azul);border-right:2.5px solid var(--azul);transform:rotate(45deg);transition:transform .2s}
.outro:hover{border-color:var(--azul);background:var(--tinta)}
.outro:hover::after{transform:translateX(3px) rotate(45deg)}

/* ---------- montador ---------- */
.montador{display:grid;grid-template-columns:1.4fr .6fr;gap:28px;align-items:start}
.montador-form{background:#fff;border:1px solid var(--linha);border-radius:18px;padding:28px}
.passo+.passo{margin-top:26px;padding-top:24px;border-top:1px solid var(--linha)}
.passo h3{display:flex;align-items:center;gap:12px;font-size:1.08rem;font-weight:700;margin-bottom:14px}
.passo h3 i{width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--tinta);color:var(--azul);font-style:normal;font-size:.9rem;font-weight:800}
.opcoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.op{display:flex;gap:11px;align-items:flex-start;text-align:left;background:#fff;border:2px solid var(--linha);border-radius:10px;padding:12px 14px;cursor:pointer;color:var(--texto);transition:border-color .2s,background .2s}
.op:hover{border-color:var(--azul)}
.op b{display:block;font-size:1rem}
.op small{display:block;font-size:.88rem;color:var(--cinza);margin-top:1px}
.op .marca{width:20px;height:20px;flex:none;margin-top:1px;border-radius:50%;border:2px solid var(--linha);position:relative;transition:.2s}
.op.on{border-color:var(--azul);background:var(--tinta)}
.op.on .marca{border-color:var(--azul);background:var(--azul)}
.op.on .marca::after{content:"";position:absolute;left:5.5px;top:2.5px;width:5px;height:9px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.linha-final{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.qtd{display:flex;align-items:center;border:2px solid var(--linha);border-radius:10px;overflow:hidden}
.qtd button{width:48px;height:48px;border:0;background:#fff;color:var(--azul);font-size:1.4rem;font-weight:700;cursor:pointer}
.qtd button:hover{background:var(--tinta)}
.qtd span{min-width:40px;text-align:center;font-family:var(--titulo);font-weight:800;font-size:1.1rem}
#obs{flex:1;min-width:220px;min-height:52px;padding:12px 16px;border:2px solid var(--linha);border-radius:10px;font:inherit;color:var(--texto)}
#obs:focus{outline:0;border-color:var(--azul)}
.resumo{position:sticky;top:96px;background:#fff;border:2px solid var(--azul);border-radius:18px;padding:22px}
.resumo h4{font-size:1.15rem;margin-bottom:12px}
.progresso{height:6px;background:var(--tinta);border-radius:10px;overflow:hidden;margin-bottom:12px}
.progresso-barra{height:100%;width:0;background:var(--azul);transition:width .4s}
.resumo ul{list-style:none;margin-bottom:16px}
.resumo li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed var(--linha);font-size:.98rem}
.resumo li span:first-child{color:var(--cinza)}
.resumo li span:last-child{font-weight:700;text-align:right;color:var(--azul-forte)}
.resumo li.vazio{justify-content:center;color:var(--cinza);border:0}
.resumo small{display:block;text-align:center;margin-top:10px;color:var(--cinza);font-size:.9rem}
.previa{margin-top:14px;border-top:1px solid var(--linha);padding-top:12px}
.previa summary{cursor:pointer;color:var(--azul);font-weight:600;font-size:.92rem}
.previa pre{margin-top:10px;white-space:pre-wrap;font:inherit;font-size:.9rem;background:var(--gelo);border-radius:10px;padding:12px;color:var(--texto)}

/* ---------- venha na loja ---------- */
.painel-loja{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;border:1px solid var(--linha);border-radius:22px;padding:44px;box-shadow:var(--sombra)}
.painel-lead{margin-top:12px;font-size:1.1rem;color:var(--cinza);max-width:46ch}
.painel-end{font-style:normal;display:flex;flex-direction:column;gap:2px;margin:22px 0 26px;padding-left:16px;border-left:3px solid var(--azul);font-size:1.08rem}
.painel-end strong{font-family:var(--titulo);color:var(--azul-forte);font-size:1.2rem}
.painel-end span{color:var(--cinza)}
.painel-btns{display:flex;flex-wrap:wrap;gap:10px}
.vantagens{list-style:none;display:grid;gap:12px}
.vantagens li{display:grid;grid-template-columns:28px 1fr;column-gap:12px;padding:16px;border-radius:12px;background:var(--gelo)}
.vantagens li::before{content:"";grid-row:span 2;width:28px;height:28px;border-radius:50%;background:var(--azul) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/15px no-repeat}
.vantagens b{font-family:var(--titulo);color:var(--azul-forte)}
.vantagens span{color:var(--cinza);font-size:.97rem}

/* ---------- rodapé ---------- */
.rodape{background:var(--gelo);border-top:1px solid var(--linha);padding:36px 0 40px}
.rodape-in{display:flex;flex-direction:column;gap:8px}
.logo-rodape .logo-marca{font-size:1.5rem}
.rodape p{color:var(--cinza);font-size:.95rem}
.rodape-miudo{font-size:.85rem!important}

/* ---------- WhatsApp flutuante e barra do celular ---------- */
.flutuante{position:fixed;right:22px;bottom:22px;z-index:60;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:var(--zap);color:#fff;box-shadow:0 10px 26px rgba(29,154,82,.4);transition:transform .2s}
.flutuante:hover{transform:scale(1.07)}
.flutuante::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--zap);animation:onda 2.4s ease-out infinite}
@keyframes onda{from{transform:scale(1);opacity:.7}to{transform:scale(1.55);opacity:0}}
.barra-acao{display:none}
.ico-tel,.ico-pin{width:20px;height:20px;background:currentColor}
.ico-tel{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z'/%3E%3C/svg%3E") center/contain no-repeat}
.ico-pin{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") center/contain no-repeat}

/* ---------- telas menores ---------- */
@media(max-width:1020px){
  .abertura-in,.painel-loja,.outros-in{grid-template-columns:1fr}
  .abertura-in{gap:32px}
  .montador{grid-template-columns:1fr}
  .resumo{position:static}
  .linha-grade{grid-template-columns:repeat(3,1fr)}
  .carrossel{grid-auto-columns:calc((100% - 2*20px)/3)}
  .menu{display:none}
  .topo-btns{margin-left:auto}
}
@media(max-width:760px){
  body{padding-bottom:70px}
  .info-topo-in{justify-content:center}
  .info-hora{display:none}
  .topo-btns{display:none}
  .logo-marca{font-size:1.6rem}
  .abertura{padding:32px 0 40px}
  .abertura-btns .btn{width:100%}
  .cartao-loja{padding:20px}
  .secao{padding:52px 0}
  .linha-grade{grid-template-columns:1fr 1fr;gap:12px}
  .linha-cabeca{flex-direction:column;align-items:flex-start;gap:8px}
  .carrossel{grid-auto-columns:78%;gap:14px}
  .setas{display:none}
  .outros{grid-template-columns:1fr 1fr}
  .colchao-corpo h3{font-size:1rem}
  .colchao-tec,.colchao-medida{font-size:.86rem}
  .colchao-corpo .btn{font-size:.85rem;padding:10px}
  .montador-form{padding:18px}
  .painel-loja{padding:24px}
  .painel-btns .btn{width:100%}
  .flutuante{display:none}
  .barra-acao{display:grid;grid-template-columns:1fr 1fr 1.2fr;position:fixed;left:0;right:0;bottom:0;z-index:70;background:#fff;border-top:1px solid var(--linha);box-shadow:0 -6px 20px rgba(8,43,105,.08)}
  .barra-acao a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:64px;font-weight:700;font-size:.85rem;color:var(--azul)}
  .barra-acao a+a{border-left:1px solid var(--linha)}
  .barra-acao .barra-zap{background:var(--zap);color:#fff;border-left:0}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}
