/* ══════════════════════════════════════════════════════════════
   LUMUA DECOR · Sálvia Ateliê — design system do site novo
   Paleta: sálvia (calma, natureza, lar renovado) + madeira/latão
   (ofício, aconchego) + verde-mata (solidez) + esmeralda (ação)
   ══════════════════════════════════════════════════════════════ */
:root{
  --salvia:#EAF0E3; --salvia-2:#E1EAD6; --salvia-3:#CFDEC2; --papel:#F8FBF3;
  --tinta:#243522; --tinta-2:#55654F;
  --mata:#16281D; --mata-2:#1E3527; --linho:#EFF5E9;
  --esmeralda:#1F7A4D; --esm-escuro:#175C3A;
  --latao:#A8834E; --latao-2:#8F6F3E; --latao-hi:#C9A76B;
  --linha:rgba(36,53,34,.13); --sombra:0 18px 50px rgba(22,40,29,.14);
  --r:18px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font:16px/1.65 'Albert Sans',system-ui,sans-serif;color:var(--tinta);background:var(--salvia);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
:focus-visible{outline:2px solid var(--latao);outline-offset:3px;border-radius:6px}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
section{padding:clamp(52px,7vw,88px) 0}

/* ── tipografia ── */
h1,h2,h3,.disp{font-family:'Fraunces',Georgia,serif;font-weight:560;letter-spacing:-.015em;line-height:1.12;color:var(--tinta)}
h2{font-size:clamp(30px,4vw,46px);margin-bottom:14px}
h3{font-size:clamp(19px,2.2vw,23px);font-weight:600}
.eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--latao-2);display:inline-flex;align-items:center;gap:12px;margin-bottom:18px}
.eyebrow::before{content:'';width:30px;height:1.5px;background:var(--latao)}
.sub{font-size:clamp(16px,1.6vw,18.5px);color:var(--tinta-2);max-width:640px}
.it{font-style:italic;color:var(--latao-2)}

/* ── o VEIO (assinatura): linha de veio de madeira ── */
.veio{display:block;margin:18px 0 6px;width:min(300px,60%);height:14px}
.veio path{fill:none;stroke:var(--latao);stroke-width:2;stroke-linecap:round;opacity:.85}
.veio.anima path{stroke-dasharray:340;stroke-dashoffset:340;animation:veio 1.6s .5s cubic-bezier(.4,0,.2,1) forwards}
@keyframes veio{to{stroke-dashoffset:0}}
.divisor{border:0;height:14px;margin:0 auto;width:min(360px,70%);opacity:.5;display:block}

/* ── header ── */
.hd{position:fixed;inset:0 0 auto;z-index:60;background:rgba(234,240,227,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--linha);transition:box-shadow .3s}
.hd.rolou{box-shadow:0 6px 24px rgba(22,40,29,.08)}
.hd .bar{display:flex;align-items:center;gap:26px;height:88px;max-width:1180px;margin:0 auto;padding:0 22px}
.hd .logo img{height:73px;width:auto}
.hd nav{display:flex;gap:22px;margin-left:auto;align-items:center}
.hd nav a{font-size:14px;font-weight:600;color:var(--tinta-2);position:relative;padding:4px 0}
.hd nav a::after{content:'';position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--latao);transition:right .28s}
.hd nav a:hover{color:var(--tinta)} .hd nav a:hover::after{right:0}
.hd nav a[aria-current="page"]{color:var(--tinta)} .hd nav a[aria-current="page"]::after{right:0}
.cta,.cta-g{display:inline-flex;align-items:center;gap:9px;border-radius:999px;font-weight:700;font-size:15px;padding:13px 26px;transition:transform .2s,box-shadow .2s,background .2s;cursor:pointer;border:0}
.cta{background:var(--esmeralda);color:#fff;box-shadow:0 8px 22px rgba(31,122,77,.32)}
.cta:hover{background:var(--esm-escuro);transform:translateY(-2px)}
.cta-g{background:transparent;color:var(--tinta);border:1.5px solid rgba(36,53,34,.25)}
.cta-g:hover{border-color:var(--latao);color:var(--latao-2);transform:translateY(-2px)}
.hd .cta{padding:10px 20px;font-size:13.5px}
.burger{display:none;margin-left:auto;background:none;border:0;width:44px;height:44px;cursor:pointer}
.burger span{display:block;width:24px;height:2px;background:var(--tinta);margin:5px auto;transition:.3s}
.menu-aberto .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-aberto .burger span:nth-child(2){opacity:0}
.menu-aberto .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ── hero home ── */
.hero{position:relative;min-height:min(92vh,860px);display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(30px,5vw,70px);align-items:center;padding:130px max(22px,calc((100% - 1180px)/2)) 44px;background:linear-gradient(100deg,rgba(248,251,243,.95) 0%,rgba(248,251,243,.88) 30%,rgba(248,251,243,.60) 56%,rgba(248,251,243,.22) 100%),url('img/hero-inicio.webp') center 52%/cover no-repeat}
.hero h1{font-size:clamp(42px,6.4vw,84px);font-weight:500}
.hero h1 em{font-style:italic;color:var(--esmeralda)}
.hero .sub{margin:18px 0 30px}
.hero .ctas{display:flex;gap:14px;flex-wrap:wrap}
.vitrine{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/4.6;box-shadow:var(--sombra)}
.vitrine::after{content:'';position:absolute;inset:14px;border:1px solid rgba(201,167,107,.55);border-radius:10px;pointer-events:none}
.vitrine img{width:100%;height:100%;object-fit:cover;animation:kb 22s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.09)}}
.chip{position:absolute;background:rgba(248,251,243,.94);backdrop-filter:blur(6px);border-radius:12px;padding:10px 16px;font-size:13px;font-weight:700;box-shadow:0 10px 26px rgba(22,40,29,.22);display:flex;align-items:center;gap:8px}
.chip .estrela{color:var(--latao)}
.chip.c1{left:18px;bottom:18px}
.chip.c2{right:18px;top:18px;background:rgba(22,40,29,.88);color:var(--linho)}
.confia{border-top:1px solid var(--linha);margin-top:clamp(30px,4vw,54px);padding-bottom:clamp(46px,6vw,70px)}
.confia .linha-c{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:18px 22px;padding:26px 0 0}
.confia .item{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;font-weight:600;color:var(--tinta-2);line-height:1.4}
.confia .item svg{flex-shrink:0;width:26px;height:26px;stroke:var(--latao);fill:none;stroke-width:1.6}
.confia .item b{display:block;color:var(--tinta);font-size:14.5px}

/* ── cards de ofícios (bento) ── */
.oficios{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
#oficios{background:var(--papel);border-top:1px solid var(--linha)}
.oficios .of{border:1px solid rgba(36,53,34,.08)}
#projetos{background:var(--salvia-2)}
.sec-sobre{background:var(--papel);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
main>section+section{position:relative}
/* ── avaliações Google ── */
.reviews-band{background:var(--salvia);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.reviews-band h2,.reviews-band h3{color:var(--tinta)}
.reviews-band .eyebrow{color:var(--latao-2)}
.rev-head{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:6px 0 30px}
.rev-score{display:flex;align-items:center;gap:16px}
.rev-num{font-family:'Fraunces',Georgia,serif;font-size:clamp(44px,6vw,60px);line-height:1;color:var(--latao);font-weight:600}
.rev-score-col{display:flex;flex-direction:column;gap:4px}
.rev-stars{color:var(--latao);font-size:20px;letter-spacing:3px}
.rev-total{color:var(--tinta-2);font-size:14.5px;font-weight:600}
.rev-gbadge{display:flex;align-items:center;gap:14px;margin-left:auto;background:#fff;border:1px solid rgba(36,53,34,.12);border-radius:999px;padding:8px 10px 8px 18px;box-shadow:0 4px 16px rgba(22,40,29,.06)}
.rev-gwm{font-family:'Albert Sans',sans-serif;font-weight:700;font-size:18px;letter-spacing:-.5px}
.rev-gwm i{font-style:normal}
.rev-gbtn{background:var(--esmeralda);color:#fff;font-weight:700;font-size:13.5px;text-decoration:none;padding:9px 17px;border-radius:999px;box-shadow:0 6px 16px rgba(31,122,77,.24);transition:background .2s,transform .2s}
.rev-gbtn:hover{background:var(--esm-escuro);transform:translateY(-1px)}
.rev-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rev-card{background:#fff;color:var(--tinta);border-radius:16px;padding:22px 24px;display:flex;flex-direction:column;gap:11px;border:1px solid rgba(36,53,34,.09);box-shadow:0 10px 26px rgba(22,40,29,.07)}
.rev-card.feat{grid-column:span 2;background:linear-gradient(150deg,#fff,#F1F6EA)}
.rev-card.feat p{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:16px;color:var(--tinta);line-height:1.5}
.rev-top{display:flex;align-items:center;gap:12px}
.rev-av{width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:var(--salvia-3);color:var(--tinta);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:19px;font-family:'Fraunces',serif}
.rev-id b{display:block;font-size:15px;color:var(--tinta)}
.rev-id span{font-size:12.5px;color:var(--tinta-2)}
.rev-st{color:var(--latao);font-size:15px;letter-spacing:2px}
.rev-card p{font-size:14.5px;color:var(--tinta-2);line-height:1.55}
.of{position:relative;border-radius:var(--r);overflow:hidden;background:var(--papel);box-shadow:0 6px 24px rgba(22,40,29,.08);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.of:hover{transform:translateY(-5px);box-shadow:var(--sombra)}
.of .foto{aspect-ratio:16/10;overflow:hidden}
.of .foto img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.of:hover .foto img{transform:scale(1.05)}
.of .txt{padding:22px 24px 24px;display:flex;flex-direction:column;gap:8px;flex:1}
.of p{font-size:14.5px;color:var(--tinta-2);flex:1}
.of .link{font-weight:700;font-size:14px;color:var(--esmeralda);display:inline-flex;gap:7px;align-items:center}
.of .link::after{content:'→';transition:transform .2s}
.of:hover .link::after{transform:translateX(4px)}
.of.grande{grid-column:span 4;display:grid;grid-template-columns:1fr 1.06fr}
.of.svc{grid-column:span 1}
.of.grande .foto{aspect-ratio:auto;height:100%;min-height:280px;position:relative}
.of.grande .foto::after{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 55%,rgba(22,40,29,.10));pointer-events:none}
.of.grande .txt{padding:clamp(22px,3vw,38px);justify-content:center;gap:12px}
.of.grande h3{font-size:clamp(24px,3vw,34px)}
.of.meio{grid-column:span 3}
.of.terco{grid-column:span 2}
.of .tag-destaque{position:absolute;top:16px;left:16px;background:var(--latao);color:#fff;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;border-radius:999px;z-index:2}
/* ── V3: vitrine editorial do destaque (Móveis Planejados) ── */
.of.grande .veio{margin:2px 0 8px;width:118px;height:12px}
.mini-gal{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:2px 0 6px}
.mini{position:relative;display:block;border-radius:11px;overflow:hidden;aspect-ratio:1/1;box-shadow:0 4px 14px rgba(22,40,29,.12)}
.mini img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.mini:hover img{transform:scale(1.06)}
.mini span{position:absolute;left:0;right:0;bottom:0;padding:14px 6px 6px;text-align:center;font-size:11px;font-weight:600;color:#fff;background:linear-gradient(transparent,rgba(22,40,29,.82))}
.of-btn{align-self:flex-start;margin-top:4px;background:var(--esmeralda);color:#fff;font-weight:700;font-size:14px;text-decoration:none;padding:12px 22px;border-radius:12px;box-shadow:0 8px 22px rgba(31,122,77,.30);transition:background .2s,transform .2s}
.of-btn:hover{background:var(--esm-escuro);transform:translateY(-2px)}

/* ── banda escura (diferenciais / cta) ── */
.banda{background:linear-gradient(160deg,var(--mata),var(--mata-2));color:var(--linho)}
.banda h2,.banda h3{color:var(--linho)}
.banda .eyebrow{color:var(--latao-hi)}
.banda .sub{color:rgba(239,245,233,.75)}
.difs{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:44px}
.dif{border-top:1.5px solid rgba(201,167,107,.4);padding-top:20px}
.dif h3{font-size:19px;margin-bottom:8px;color:var(--latao-hi)}
.dif p{font-size:14.5px;color:rgba(239,245,233,.78)}

/* ── galeria projetos (scroll horizontal) ── */
.galeria{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 4px 22px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--latao) transparent}
.galeria figure{flex:0 0 min(320px,74vw);scroll-snap-align:start;border-radius:var(--r);overflow:hidden;position:relative;box-shadow:0 8px 26px rgba(22,40,29,.12)}
.galeria img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .5s}
.galeria figure:hover img{transform:scale(1.04)}
.galeria figcaption{position:absolute;left:12px;bottom:12px;background:rgba(22,40,29,.82);color:var(--linho);font-size:12.5px;font-weight:600;padding:7px 14px;border-radius:999px;backdrop-filter:blur(4px)}
.gal-nav{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}
.gal-nav button{width:44px;height:44px;border-radius:50%;border:1.5px solid rgba(36,53,34,.25);background:var(--papel);font-size:18px;cursor:pointer;color:var(--tinta);transition:.2s}
.gal-nav button:hover{border-color:var(--latao);color:var(--latao-2)}

/* ── grids genéricos de serviço (persianas, cortinas, vidros) ── */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.card{background:var(--papel);border-radius:var(--r);overflow:hidden;box-shadow:0 6px 22px rgba(22,40,29,.08);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.card:hover{transform:translateY(-5px);box-shadow:var(--sombra)}
.card .foto{aspect-ratio:4/3;overflow:hidden}
.card .foto img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.card:hover .foto img{transform:scale(1.06)}
.card .txt{padding:18px 20px 20px;flex:1;display:flex;flex-direction:column;gap:7px}
.card p{font-size:14px;color:var(--tinta-2);flex:1}
.card .link{font-weight:700;font-size:13.5px;color:var(--esmeralda)}

/* alternado (cortinas/planejados ambientes) */
.alt{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,5vw,64px);align-items:center;padding:clamp(28px,4vw,44px) 0;border-bottom:1px solid var(--linha)}
.alt:last-of-type{border-bottom:0}
.alt .foto{border-radius:var(--r);overflow:hidden;box-shadow:var(--sombra);position:relative}
.alt .foto::after{content:'';position:absolute;inset:12px;border:1px solid rgba(201,167,107,.4);border-radius:9px;pointer-events:none}
.alt .foto img{width:100%;aspect-ratio:4/3.4;object-fit:cover}
.alt:nth-of-type(even) .foto{order:2}
.alt h3{font-size:clamp(22px,2.6vw,30px);margin-bottom:10px}
.alt p{color:var(--tinta-2);font-size:15.5px;margin-bottom:18px}
.alt .selos{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 18px}
.alt .selos li{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--latao-2);border:1px solid rgba(168,131,78,.45);border-radius:999px;padding:6px 13px}

/* checklist características */
.checks{display:grid;gap:12px;margin:18px 0 24px}
.checks li{position:relative;padding-left:32px;font-size:15px;color:var(--tinta-2)}
.checks li::before{content:'';position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:var(--salvia-2);border:1.5px solid var(--latao);box-shadow:inset 0 0 0 3px var(--salvia)}
.checks li::after{content:'✓';position:absolute;left:5px;top:0;font-size:12px;font-weight:800;color:var(--latao-2)}
.checks li b{color:var(--tinta)}

/* ── hero interno ── */
.hero-int{position:relative;min-height:clamp(340px,46vh,480px);display:flex;align-items:flex-end;background:var(--mata);color:var(--linho);overflow:hidden;padding:0}
.hero-int .bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.hero-int::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,40,29,.28),rgba(22,40,29,.82) 78%)}
.hero-int .wrap{position:relative;z-index:2;padding-bottom:46px;padding-top:150px;width:100%}
.hero-int h1{color:var(--linho);font-size:clamp(34px,4.8vw,58px);font-weight:520;max-width:800px}
.hero-int .eyebrow{color:var(--latao-hi)}
.hero-int .mig{font-size:13px;color:rgba(239,245,233,.66);margin-top:14px}
.hero-int .mig a:hover{color:var(--latao-hi)}

/* ── formulário WhatsApp ── */
.form-wa{background:var(--papel);border-radius:var(--r);padding:clamp(24px,3.4vw,40px);box-shadow:var(--sombra);max-width:560px}
.form-wa label{display:block;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tinta-2);margin:16px 0 6px}
.form-wa input,.form-wa select,.form-wa textarea{width:100%;border:1.5px solid rgba(36,53,34,.18);border-radius:11px;padding:13px 15px;font:15px 'Albert Sans',sans-serif;color:var(--tinta);background:#fff;transition:border .2s}
.form-wa input:focus,.form-wa select:focus,.form-wa textarea:focus{border-color:var(--esmeralda);outline:none}
.form-wa .cta{width:100%;justify-content:center;margin-top:22px}
.form-wa .nota{font-size:12.5px;color:var(--tinta-2);margin-top:12px;text-align:center}

/* ── contato ── */
.contato-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,60px);align-items:start}
.vias{display:grid;gap:14px;margin-top:26px}
.via{display:flex;gap:15px;align-items:center;background:var(--papel);border-radius:14px;padding:16px 20px;box-shadow:0 5px 18px rgba(22,40,29,.07);transition:transform .2s}
.via:hover{transform:translateX(5px)}
.via svg{width:26px;height:26px;stroke:var(--esmeralda);fill:none;stroke-width:1.7;flex-shrink:0}
.via b{display:block;font-size:15px}
.via span{font-size:13px;color:var(--tinta-2)}

/* ── CTA final ── */
.cta-final{text-align:center}
.cta-final h2{font-size:clamp(32px,4.6vw,54px);max-width:760px;margin:0 auto 14px}
.cta-final .sub{margin:0 auto 32px}
.cta-final .divisor{margin-bottom:26px}

/* ── footer ── */
footer{background:var(--mata);color:rgba(239,245,233,.78);padding:clamp(24px,3vw,36px) 0 16px;font-size:13.5px}
footer .cols{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:20px 28px;margin-bottom:18px}
footer img.logo-f{height:40px;width:auto;margin-bottom:10px}
footer h4{color:var(--latao-hi);font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin-bottom:8px}
footer ul{display:grid;gap:6px}
footer ul.foot-nav{grid-template-columns:1fr 1fr;grid-auto-flow:column;grid-template-rows:repeat(5,auto);column-gap:14px;row-gap:6px}
footer a:hover{color:var(--latao-hi)}
footer .legal{border-top:1px solid rgba(239,245,233,.14);padding-top:12px;font-size:12.5px;color:rgba(239,245,233,.5);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}

/* ── FAB WhatsApp ── */
.fab-wa{position:fixed;right:20px;bottom:20px;z-index:70;width:58px;height:58px;border-radius:50%;background:var(--esmeralda);display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(23,92,58,.45);transition:transform .2s}
.fab-wa:hover{transform:scale(1.08)}
.fab-wa svg{width:30px;height:30px;fill:#fff}
.fab-wa::before{content:'';position:absolute;inset:-5px;border-radius:50%;border:2px solid rgba(31,122,77,.4);animation:fabp 2.4s infinite}
@keyframes fabp{0%{transform:scale(.9);opacity:1}70%{transform:scale(1.22);opacity:0}100%{opacity:0}}

/* ── bio (linktree) ── */
.bio-page{max-width:480px;margin:0 auto;padding:46px 22px 60px;text-align:center}
.bio-page .logo-b{height:56px;width:auto;margin:0 auto 18px}
.bio-page p.desc{font-size:14.5px;color:var(--tinta-2);margin:14px 0 28px}
.bio-links{display:grid;gap:13px}
.bio-links a{display:flex;align-items:center;gap:13px;background:var(--papel);border-radius:14px;padding:16px 20px;font-weight:700;font-size:15px;box-shadow:0 6px 18px rgba(22,40,29,.09);transition:transform .2s,box-shadow .2s;text-align:left}
.bio-links a:hover{transform:translateY(-3px);box-shadow:var(--sombra)}
.bio-links svg{width:24px;height:24px;stroke:var(--esmeralda);fill:none;stroke-width:1.8;flex-shrink:0}
.bio-end{font-size:13px;color:var(--tinta-2);margin-top:26px}

/* ── reveal ── */
.rv{opacity:0;transform:translateY(16px);transition:opacity .7s cubic-bezier(.2,.6,.2,1),transform .7s cubic-bezier(.2,.6,.2,1)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}.rv.d4{transition-delay:.32s}

/* ── menu mobile ── */
.menu-mob{position:fixed;inset:0;z-index:55;background:rgba(234,240,227,.98);backdrop-filter:blur(10px);display:none;flex-direction:column;justify-content:center;padding:80px 34px}
.menu-aberto .menu-mob{display:flex}
.menu-mob a{font-family:'Fraunces',serif;font-size:27px;font-weight:520;padding:12px 0;border-bottom:1px solid var(--linha);color:var(--tinta)}
.menu-mob a:last-of-type{border-bottom:0}
.menu-mob .cta{margin-top:26px;justify-content:center}

/* ── responsivo ── */
@media(max-width:960px){
  .hero{grid-template-columns:1fr;min-height:0;padding-top:108px}
  .vitrine{aspect-ratio:4/3.4;max-width:640px}
  .confia .linha-c{grid-template-columns:repeat(2,1fr)}
  .of.grande{grid-template-columns:1fr}
  .of.grande .foto{aspect-ratio:16/9;min-height:0}
  .of.meio{grid-column:span 6}.of.terco{grid-column:span 3}.of.svc{grid-column:span 2}
  .rev-cards{grid-template-columns:1fr 1fr}
  .difs{grid-template-columns:repeat(2,1fr)}
  .contato-grid{grid-template-columns:1fr}
  footer .cols{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .hd nav,.hd .cta{display:none}
  .hd .bar{height:74px}
  .hd .logo img{height:57px}
  .burger{display:block}
  .alt,.alt:nth-of-type(even){grid-template-columns:1fr}
  .alt:nth-of-type(even) .foto{order:0}
  .of.terco{grid-column:span 6}.of.svc{grid-column:span 4}
  .rev-cards{grid-template-columns:1fr}.rev-card.feat{grid-column:auto}.rev-gbadge{margin-left:0}
  .difs{grid-template-columns:1fr;gap:18px}
  footer .cols{grid-template-columns:1fr}
  .hero h1{font-size:clamp(38px,11vw,54px)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .rv{opacity:1;transform:none}
  html{scroll-behavior:auto}
}

/* ══════════ Cartão de cotação no hero (form 2 passos · Opção A) ══════════ */
.hero-selos{font-size:13.5px;font-weight:600;color:var(--tinta-2);margin:18px 0 16px;display:flex;align-items:center;gap:7px}
.hero-selos .estrela{color:var(--latao)}
.hero-cota{align-self:center}
.hero-cota .form-wa{max-width:none;margin:0;padding:clamp(22px,2.6vw,30px)}
.cotacard .topo{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:2px}
.cotacard .topo h3{font-size:21px;margin:0}
.cotacard .desc{font-size:13.5px;color:var(--tinta-2);margin:2px 0 4px}
.cotacard label:first-of-type{margin-top:14px}
.opt-hint{font-weight:500;text-transform:none;letter-spacing:0;color:var(--tinta-2)}
.stepbar{display:flex;gap:8px;align-items:center;margin:0 0 10px}
.stepnum{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--latao-2);white-space:nowrap}
.dot{height:5px;border-radius:999px;background:var(--salvia-3);flex:1}
.dot.on{background:var(--esmeralda)}
.cotacard .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.chip-sel{border:1.5px solid rgba(36,53,34,.2);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;color:var(--tinta-2);cursor:pointer;transition:.15s;font-family:'Albert Sans',sans-serif}
.chip-sel[aria-pressed="true"]{background:var(--salvia-3);border-color:var(--esmeralda);color:var(--tinta)}
.chip-sel:hover{border-color:var(--latao)}
.outro-inp{margin-top:10px}
.cotacard .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cotacard .grid2 label{margin-top:14px}
.back{background:none;border:0;color:var(--tinta-2);font-size:13px;font-weight:600;cursor:pointer;padding:0;font-family:'Albert Sans',sans-serif}
.back:hover{color:var(--latao-2)}
@media(max-width:900px){
  .hero-cota{width:100%;max-width:560px}
  .cotacard .grid2{grid-template-columns:1fr}
}

/* ══════════ Catálogo de espelhos + modal de orçamento ══════════ */
.esp-card .txt{gap:6px}
.esp-meta{font-size:13.5px;color:var(--tinta-2);flex:1}
.esp-preco-wrap{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 4px}
.esp-preco{font-family:'Fraunces',serif;font-size:16px;font-weight:560;color:var(--tinta)}
.esp-preco.sob{font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--latao-2);background:var(--salvia-2);border-radius:999px;padding:6px 12px;font-family:'Albert Sans',sans-serif}
.esp-prazo{font-size:12px;font-weight:700;color:var(--esmeralda);align-self:center}
.esp-card .cta{margin-top:6px;justify-content:center}
.esp-obs{font-size:13.5px;color:var(--tinta-2);margin-top:22px;padding-left:14px;border-left:3px solid var(--latao);max-width:640px}
.banda .esp-obs{color:var(--linho)}
.esp-proj{border-radius:var(--r);overflow:hidden;box-shadow:var(--sombra);aspect-ratio:4/3;margin:0}
.esp-proj img{width:100%;height:100%;object-fit:cover}
/* modal */
.esp-modal{position:fixed;inset:0;z-index:120;background:rgba(22,40,29,.55);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px}
.esp-modal[hidden]{display:none}
.esp-box{position:relative;background:var(--papel);border-radius:var(--r);box-shadow:var(--sombra);width:min(460px,100%);max-height:92vh;overflow:auto;padding:clamp(24px,3.4vw,36px)}
.esp-box .form-wa{max-width:none;margin:0;padding:0;box-shadow:none;background:transparent}
.esp-box h3{font-size:22px;margin:2px 0 2px}
.esp-x{position:absolute;top:12px;right:14px;background:none;border:0;font-size:26px;line-height:1;color:var(--tinta-2);cursor:pointer}
.esp-x:hover{color:var(--latao-2)}
.esp-box .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.esp-box .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:520px){.esp-box .grid2{grid-template-columns:1fr}}

/* ── Barra de contato fixa no mobile (WhatsApp · E-mail · Ligar) — add 09/07 ── */
.mbar{display:none}
@media (max-width:767px){
  body{padding-bottom:calc(60px + env(safe-area-inset-bottom))}
  .fab-wa{display:none!important}
  html.menu-aberto .mbar{display:none}
  .mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;
    background:#16281D;border-top:1px solid rgba(168,131,78,.45);
    box-shadow:0 -6px 18px rgba(0,0,0,.16);padding-bottom:env(safe-area-inset-bottom)}
  .mbar-b{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:3px;padding:8px 4px 7px;min-height:54px;color:#EAF0E3;text-decoration:none;
    font-family:'Albert Sans',system-ui,sans-serif;font-weight:600;font-size:11px;letter-spacing:.02em;
    -webkit-tap-highlight-color:transparent}
  .mbar-b+.mbar-b{border-left:1px solid rgba(255,255,255,.10)}
  .mbar-b svg{width:23px;height:23px;fill:#EAF0E3;display:block}
  .mbar-b:active{background:rgba(255,255,255,.09)}
}
