/* Reparações Ibérico — tema "Ardósia e laranja" (conceito A, variante 2 do Canva)
   Fundo escuro texturado em todo o site, Poppins pesado, laranja único de ação,
   fotos em moldura arredondada com contorno laranja. Tema único, escuro. */

:root{
  color-scheme: dark;
  --ground:#151719;
  --surface:#1D2023;
  --surface-2:#24282C;
  --line:#2E3338;
  --line-soft:#272B2F;
  --ink:#F2F1EE;
  --ink-2:#C3C6C9;
  --ink-3:#8E9398;
  --teal:#E8842A;
  --teal-soft:rgba(232,132,42,.13);
  --amber:#E8842A;
  --amber-soft:rgba(232,132,42,.13);
  --ok:#5CC894;
  --deep:#111315;
  --deep-2:#1A1D20;
  --deep-line:#2E3338;
  --deep-ink:#F2F1EE;
  --deep-ink-2:#A9ADB1;
  --deep-teal:#F0A050;
  --deep-amber:#E8842A;
  --radius:4px;
  --radius-lg:14px;
  --shadow:0 1px 2px rgba(0,0,0,.5), 0 18px 40px -22px rgba(0,0,0,.9);
  --maxw:1140px;
  --font-display:"Poppins","Helvetica Neue",Helvetica,Arial,sans-serif;
  --font-body:"Poppins","Helvetica Neue",Helvetica,Arial,sans-serif;
  --font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --i-bg:#1F2225;
  --i-struct:#33373C;
  --i-line:#2A2E32;
  --i-fig:#0B0D0F;
  --i-fig2:#6C7178;
  --i-fire:#E8842A;
  --i-cyan:#7FA3B6;
  --tex:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .07 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
}

*,*::before,*::after{box-sizing:border-box;}
body{
  margin:0;
  background:var(--ground) var(--tex);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:15.5px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%;}
a{color:inherit;}
h1,h2,h3,h4{font-family:var(--font-display);text-wrap:balance;margin:0;line-height:1.12;letter-spacing:-.01em;}
h1{font-size:clamp(2rem,4.6vw,3.2rem);font-weight:800;}
h2{font-size:clamp(1.45rem,2.8vw,2rem);font-weight:700;}
h3{font-size:1.08rem;font-weight:700;}
p{margin:0;}
ul{margin:0;padding:0;list-style:none;}
:focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:4px;}

.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:22px;}
.eyebrow{
  font-family:var(--font-mono);font-size:.72rem;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);
}

/* ---------- ilustrações ---------- */
.illu{display:block;width:100%;height:auto;border-radius:var(--radius);}

/* ---------- barra superior ---------- */
.topbar{
  background:rgba(17,19,21,.92);backdrop-filter:blur(8px);color:var(--deep-ink);
  border-bottom:1px solid var(--line-soft);
  position:sticky;top:0;z-index:40;
}
.topbar-in{display:flex;align-items:center;gap:16px;flex-wrap:nowrap;padding-block:12px;}
@media (max-width:480px){ .topbar-in{gap:10px;} .brand-sub{white-space:nowrap;display:none;} .brand-name{font-size:1.05rem;} }
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:inherit;margin-right:auto;}
.brand-mark{
  width:34px;height:34px;flex:none;border-radius:4px;
  background:var(--amber);color:#fff;
  display:grid;place-items:center;
  font-family:var(--font-mono);font-weight:600;font-size:.84rem;
}
.brand-name{font-family:var(--font-display);font-weight:800;font-size:1.02rem;line-height:1;text-transform:uppercase;letter-spacing:.01em;color:#fff;}
.brand-name em{font-style:normal;color:var(--amber);}
.brand-sub{white-space:nowrap;font-family:var(--font-mono);font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;color:var(--deep-ink-2);}
.topnav{display:flex;gap:14px;align-items:center;}
.topnav a{white-space:nowrap;font-family:var(--font-display);font-size:.78rem;font-weight:500;text-decoration:none;color:var(--deep-ink-2);padding-block:4px;}
.topnav a:hover,.topnav a.is-on{color:var(--amber);}
.top-call{white-space:nowrap;
  display:inline-flex;align-items:center;gap:9px;text-decoration:none;
  background:var(--teal-soft);color:var(--teal);border:1px solid transparent;
  font-family:var(--font-mono);font-weight:500;font-size:.94rem;
  padding:10px 16px;border-radius:var(--radius);
}
.top-call:hover{border-color:var(--teal);}
@media (max-width:1280px){ .topnav a:nth-child(n+7){display:none;} }
@media (max-width:1180px){ .topnav a:nth-child(n+6){display:none;} }
@media (max-width:1040px){ .topnav a:nth-child(n+5){display:none;} }
@media (max-width:880px){ .topnav{display:none;} }

/* ---------- hero ---------- */
.hero{
  color:var(--deep-ink);padding-block:clamp(48px,7vw,88px) clamp(40px,6vw,64px);
  background:
    radial-gradient(120% 80% at 20% 0%,rgba(255,255,255,.05),transparent 60%),
    radial-gradient(80% 60% at 90% 100%,rgba(232,132,42,.06),transparent 60%),
    var(--deep) var(--tex);
  border-bottom:1px solid var(--amber);
}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,4.5vw,64px);align-items:center;}
.hero-copy{container-type:inline-size;min-width:0;}
.hero h1{color:#fff;font-weight:800;font-size:clamp(2.1rem,3.6vw,3.9rem);font-size:clamp(2.1rem,9.6cqw,3.9rem);line-height:.98;letter-spacing:-.02em;text-transform:uppercase;}
.hero h1 em{font-style:normal;color:var(--amber);display:block;}
.hero-tag{font-family:var(--font-display);font-weight:600;color:var(--amber);font-size:1.05rem;margin-top:22px;}
.hero-lead{color:var(--deep-ink-2);font-size:.92rem;max-width:46ch;margin-top:8px;line-height:1.7;}
.status-line{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;
  border:1px solid var(--deep-line);border-radius:99px;padding:5px 12px;}
.dot{width:8px;height:8px;border-radius:50%;background:#63D3A2;flex:none;}
.status-line span{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#9FDEC3;}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
.btn{
  display:inline-flex;align-items:center;gap:10px;text-decoration:none;
  font-family:var(--font-display);font-weight:600;font-size:1rem;
  padding:13px 26px;border-radius:var(--radius);border:1px solid transparent;text-transform:uppercase;letter-spacing:.03em;font-size:.84rem;font-weight:600;
  transition:filter .15s ease,border-color .15s ease;
}
.btn-fire{background:var(--amber);color:#fff;}
.btn-fire:hover{filter:brightness(1.06);}
.btn-fire .num{font-family:var(--font-mono);font-weight:500;}
.btn-ghost{border-color:var(--amber);color:var(--amber);background:transparent;}
.btn-ghost:hover{border-color:var(--deep-ink-2);}
.hero-note{font-family:var(--font-mono);font-size:.76rem;color:var(--deep-ink-2);margin-top:18px;line-height:1.8;}

.console{background:var(--deep-2);border:1px solid var(--deep-line);border-radius:var(--radius-lg);overflow:hidden;}
.console-head{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:12px 18px;border-bottom:1px solid var(--deep-line);
  font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--deep-ink-2);
}
.cstep{display:grid;grid-template-columns:40px 1fr;gap:14px;padding:17px 18px;border-bottom:1px solid var(--deep-line);}
.cstep:last-child{border-bottom:0;}
.cstep-n{
  font-family:var(--font-mono);font-size:.72rem;color:var(--deep-teal);
  border:1px solid var(--deep-line);border-radius:99px;height:26px;width:32px;display:grid;place-items:center;
}
.cstep h3{font-size:.98rem;color:#fff;font-weight:600;}
.cstep p{font-size:.9rem;color:var(--deep-ink-2);margin-top:5px;line-height:1.6;}
.cstep .eta{font-family:var(--font-mono);font-size:.72rem;color:var(--deep-amber);margin-top:8px;display:block;}
.hero-photo{margin:0;justify-self:end;width:100%;max-width:560px;}
.hero-photo img{width:100%;height:auto;aspect-ratio:4/3;display:block;object-fit:cover;border-radius:var(--radius-lg);border:2px solid var(--amber);box-shadow:0 24px 60px -24px rgba(0,0,0,.9);}
.hero-person{margin:0;display:flex;justify-content:center;align-items:flex-end;}
.hero-person img{
  max-height:min(560px,62vh);width:auto;height:auto;max-width:100%;display:block;
  filter:drop-shadow(0 34px 44px rgba(0,0,0,.42));
}
@media (max-width:820px){ .hero-person img{max-height:380px;} }
@media (max-width:820px){ .hero-grid{grid-template-columns:1fr;} .hero h1{max-width:20ch;} }

/* ---------- ícones de serviço sob o hero ---------- */
.svc-icons{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(18px,4vw,44px);padding-block:26px;border-bottom:1px solid var(--line-soft);}
.svc-icons a{display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:var(--ink-2);font-size:.74rem;text-align:center;max-width:150px;line-height:1.3;}
.svc-icons a span{font-family:var(--font-display);font-weight:500;}
@media (max-width:640px){ .svc-icons{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 8px;} .svc-icons a{max-width:none;} }
.svc-icons a:hover{color:var(--amber);}
.svc-icons .ico{width:34px;height:34px;color:var(--amber);stroke-width:1.4;}

/* ---------- faixa de confiança ---------- */
.trust{background:transparent;border-bottom:1px solid var(--line-soft);}
.trust-in{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;padding-block:26px;}
.trust-item strong{display:block;font-family:var(--font-display);font-size:.98rem;font-weight:700;color:#fff;}
.trust-item span{font-size:.88rem;color:var(--ink-3);line-height:1.55;display:block;margin-top:2px;}
@media (max-width:760px){ .trust-in{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;} }

/* ---------- secções ---------- */
section{padding-block:clamp(50px,6.5vw,82px);}
.sec-head{max-width:62ch;margin-bottom:34px;}
.sec-head p{color:var(--ink-2);margin-top:14px;}
.sec-head .eyebrow{display:block;margin-bottom:12px;color:var(--amber);}
.alt{background:var(--deep);border-block:1px solid var(--line-soft);}

/* grelha de serviços */
.cat{margin-bottom:44px;}
.cat:last-child{margin-bottom:0;}
.cat-head{display:flex;align-items:baseline;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:20px;}
.cat-head h3{font-size:1.16rem;}
.cat-head .count{font-family:var(--font-mono);font-size:.74rem;color:var(--ink-3);margin-left:auto;}
.cat-body{display:grid;grid-template-columns:270px minmax(0,1fr);gap:20px;align-items:start;}
.cat-illu{margin:0;}
.cat-illu img.illu{aspect-ratio:16/10;object-fit:cover;border:2px solid var(--amber);border-radius:var(--radius-lg);}
.cat-illu figcaption{font-size:.85rem;color:var(--ink-3);margin-top:10px;line-height:1.5;}
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;}
.svc{
  display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:18px 19px;transition:border-color .18s ease, box-shadow .18s ease;
}
.svc:hover{border-color:var(--teal);box-shadow:var(--shadow);}
.svc h4{font-family:var(--font-display);font-weight:700;font-size:1rem;margin:0;}
.svc p{font-size:.88rem;color:var(--ink-3);line-height:1.55;}
.svc .go{font-family:var(--font-mono);font-size:.74rem;color:var(--teal);margin-top:auto;padding-top:8px;}
@media (max-width:820px){ .cat-body{grid-template-columns:1fr;} .cat-illu{max-width:420px;} }

/* tarifas */
.rates{display:grid;grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:16px;}
.rate{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;}
.rate .eyebrow{display:block;margin-bottom:10px;}
.rate-main{background:var(--teal-soft);border-color:transparent;}
.rate strong{font-family:var(--font-display);font-size:1.5rem;font-weight:700;display:block;color:var(--teal);}
.rate p{font-size:.88rem;color:var(--ink-2);margin-top:8px;line-height:1.55;}

/* garantias */
.pledges{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;}
.pledge{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;}
.pledge .mk{width:34px;height:34px;border-radius:9px;background:var(--teal-soft);color:var(--teal);
  display:grid;place-items:center;font-family:var(--font-mono);font-size:.8rem;margin-bottom:14px;}
.pledge h3{font-size:1rem;}
.pledge p{font-size:.9rem;color:var(--ink-2);margin-top:8px;line-height:1.6;}

/* cobertura */
.cover-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:38px;align-items:start;}
.zone{border-top:1px solid var(--line);padding-top:16px;margin-top:20px;}
.zone:first-of-type{margin-top:0;border-top:0;padding-top:0;}
.zone h4{font-family:var(--font-display);font-size:.96rem;display:flex;align-items:center;gap:10px;margin-bottom:10px;}
.zone h4 .tag{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--teal);background:var(--teal-soft);border-radius:99px;padding:3px 10px;}
.zone ul{display:flex;flex-wrap:wrap;gap:7px;}
.zone li{font-size:.86rem;color:var(--ink-2);background:var(--surface-2);border-radius:99px;padding:4px 12px;}
@media (max-width:820px){ .cover-grid{grid-template-columns:1fr;} }

/* testemunhos */
.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;}
.quote{background:var(--ground);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin:0;}
.quote blockquote{margin:0;font-family:var(--font-display);font-weight:600;font-size:1.04rem;line-height:1.45;}
.quote p{font-size:.9rem;color:var(--ink-2);margin-top:12px;line-height:1.6;}
.quote cite{display:block;font-style:normal;font-family:var(--font-mono);font-size:.74rem;color:var(--ink-3);margin-top:14px;}

/* faq */
.faq{max-width:76ch;}
.faq details{border-bottom:1px solid var(--line);padding-block:16px;}
.faq summary{cursor:pointer;font-family:var(--font-display);font-weight:600;font-size:1rem;list-style:none;display:flex;gap:14px;align-items:flex-start;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::before{content:"+";font-family:var(--font-mono);color:var(--teal);flex:none;}
.faq details[open] summary::before{content:"–";}
.faq details p{color:var(--ink-2);font-size:.94rem;margin-top:10px;padding-left:28px;}

/* bloco cta */
.cta-block{background:var(--deep) var(--tex);color:var(--deep-ink);border:1px solid var(--amber);border-radius:var(--radius-lg);
  padding:clamp(28px,4vw,44px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;}
.cta-block h2{color:#fff;}
.cta-block p{color:var(--deep-ink-2);margin-top:12px;max-width:50ch;}
.cta-actions{display:flex;flex-direction:column;gap:10px;}
@media (max-width:760px){ .cta-block{grid-template-columns:1fr;} }

/* ---------- páginas de serviço ---------- */
.crumb{padding-block:14px;font-family:var(--font-mono);font-size:.74rem;color:var(--ink-3);border-bottom:1px solid var(--line);}
.crumb a{color:var(--ink-3);text-decoration:none;}
.crumb a:hover{color:var(--teal);}
.svc-hero{padding-block:clamp(34px,4.5vw,56px) clamp(28px,4vw,44px);
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(26px,4vw,48px);align-items:center;}
.svc-hero .eyebrow{display:block;margin-bottom:14px;color:var(--teal);}
.svc-hero h1{font-size:clamp(1.75rem,3.6vw,2.5rem);max-width:24ch;}
.svc-hero .lead{font-size:1.05rem;color:var(--ink-2);max-width:58ch;margin-top:18px;}
.svc-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
.btn-solid{background:var(--amber);color:#fff;}

.btn-solid:hover{filter:brightness(1.06);}
.btn-line{border-color:var(--amber);color:var(--amber);background:transparent;}
.btn-line:hover{background:var(--amber-soft);}
.svc-hero-illu{margin:0;}
.svc-hero-illu .illu{border-radius:var(--radius-lg);aspect-ratio:16/10;object-fit:cover;border:2px solid var(--amber);}
.cover-illu .illu{border-radius:var(--radius-lg);aspect-ratio:16/10;object-fit:cover;border:2px solid var(--amber);}
@media (max-width:860px){ .svc-hero{grid-template-columns:1fr;} }

.svc-body{display:grid;grid-template-columns:minmax(0,1fr) 312px;gap:44px;align-items:start;padding-bottom:clamp(44px,6vw,76px);}
.svc-main > * + *{margin-top:34px;}
.svc-main h2{font-size:1.36rem;}
.svc-main p{color:var(--ink-2);margin-top:14px;max-width:68ch;}
.checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:10px;margin-top:18px;}
.checks li{display:flex;gap:11px;font-size:.94rem;color:var(--ink-2);background:var(--surface);
  border:1px solid var(--line-soft);border-radius:var(--radius);padding:12px 14px;line-height:1.5;}
.checks li::before{content:"✓";color:var(--teal);font-family:var(--font-mono);flex:none;}
.brands{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.brands li{font-family:var(--font-mono);font-size:.78rem;color:var(--ink-2);background:var(--surface);
  border:1px solid var(--line);border-radius:99px;padding:5px 13px;}
.steps-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(208px,1fr));gap:14px;margin-top:18px;}
.step{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;}
.step .n{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;color:var(--teal);display:block;margin-bottom:8px;}
.step h4{font-family:var(--font-display);font-size:.98rem;margin:0 0 6px;}
.step p{font-size:.88rem;margin-top:0;color:var(--ink-3);line-height:1.55;}
.callout{background:var(--amber-soft);border:1px solid rgba(232,132,42,.35);border-radius:var(--radius);padding:20px 22px;}
.callout strong{font-family:var(--font-display);color:var(--ink);}
.callout p{margin-top:8px;color:var(--ink-2);}
.callout-link{border-color:var(--amber);border-width:2px;padding:24px 26px;}
.callout-link .eyebrow{display:block;margin-bottom:8px;}
.callout-link strong{font-size:1.15rem;line-height:1.3;display:block;}
.callout-link .svc-actions{margin-top:16px;}
.gallery.six{grid-template-columns:repeat(3,minmax(0,1fr));}

.aside{position:sticky;top:82px;display:flex;flex-direction:column;gap:16px;}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;}
.card .eyebrow{display:block;margin-bottom:12px;}
.card-phone{display:flex;flex-direction:column;gap:3px;text-decoration:none;color:inherit;
  font-family:var(--font-mono);font-weight:500;font-size:1.32rem;}
.card-phone small{font-family:var(--font-body);font-size:.8rem;color:var(--ink-3);}
.card .btn{width:100%;justify-content:center;margin-top:14px;font-size:.95rem;}
.minilist li{font-size:.9rem;padding-block:8px;border-bottom:1px solid var(--line-soft);line-height:1.5;}
.minilist li:last-child{border-bottom:0;}
.minilist a{text-decoration:none;color:var(--ink-2);}
.minilist a:hover{color:var(--teal);}
@media (max-width:900px){ .svc-body{grid-template-columns:1fr;} .aside{position:static;} }

/* ---------- rodapé ---------- */
footer{background:var(--deep) var(--tex);color:var(--deep-ink-2);padding-block:50px 26px;font-size:.88rem;border-top:1px solid var(--amber);}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr));gap:30px;}
footer h4{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:#fff;margin-bottom:14px;font-weight:500;}
footer a{color:var(--deep-ink-2);text-decoration:none;}
footer a:hover{color:#fff;}
footer li{padding-block:5px;font-size:.87rem;line-height:1.5;}
.foot-brand p{margin-top:12px;max-width:34ch;font-size:.88rem;line-height:1.65;}
.foot-phone{font-family:var(--font-mono);font-size:1.2rem;color:#fff;display:block;margin-top:16px;}
.foot-bottom{border-top:1px solid var(--deep-line);margin-top:36px;padding-top:18px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-family:var(--font-mono);font-size:.72rem;color:#6F8A92;}
@media (max-width:820px){ .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }

/* ---------- barra fixa mobile ---------- */
.callbar{display:none;}
@media (max-width:700px){
  .callbar{
    display:grid;grid-template-columns:1fr 1fr;gap:9px;
    position:fixed;left:0;right:0;bottom:0;z-index:60;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom));
    background:var(--deep);border-top:1px solid var(--amber);
  }
  .callbar a{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;
    font-family:var(--font-display);font-weight:600;font-size:.95rem;padding:13px 8px;border-radius:99px;}
  .callbar .c1{background:var(--amber);color:#fff;}
  .callbar .c2{background:transparent;color:var(--amber);border:1px solid var(--amber);}
  body{padding-bottom:78px;}
}

@media (prefers-reduced-motion: reduce){ *{animation:none !important;transition:none !important;} }

/* ================= interatividade e destaque ================= */

.ico{width:22px;height:22px;flex:none;}

/* filtros de serviço */
.filters{
  display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px;
  padding-bottom:22px;border-bottom:1px solid var(--line);
}
.chip{
  display:inline-flex;align-items:center;gap:9px;cursor:pointer;
  font-family:var(--font-display);font-weight:600;font-size:.94rem;color:var(--ink-2);
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:10px 16px;transition:border-color .16s ease,color .16s ease,background .16s ease,transform .12s ease;
}
.chip:hover{border-color:var(--teal);color:var(--teal);transform:translateY(-1px);}
.chip .chip-ico{width:19px;height:19px;color:var(--teal);}
.chip .n{
  font-family:var(--font-mono);font-size:.72rem;font-weight:500;
  background:var(--surface-2);border-radius:99px;padding:2px 8px;color:var(--ink-3);
}
.chip.is-on{background:var(--amber);border-color:var(--amber);color:#fff;}

.chip.is-on .chip-ico{color:currentColor;}
.chip.is-on .n{background:rgba(255,255,255,.22);color:inherit;}

/* cabeçalho de categoria com ícone */
.cat-head{gap:14px;}
.cat-ico{
  width:40px;height:40px;flex:none;border-radius:11px;
  background:var(--teal-soft);color:var(--teal);
  display:grid;place-items:center;
}
.cat[hidden]{display:none;}

/* cartões de serviço mais destacados */
.svc{position:relative;padding:20px;overflow:hidden;}
.svc::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--teal);transform:scaleY(0);transform-origin:top;
  transition:transform .2s ease;
}
.svc:hover::before,.svc:focus-visible::before{transform:scaleY(1);}
.svc:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--teal);}
.svc-tag{
  font-family:var(--font-mono);font-size:.66rem;letter-spacing:.11em;text-transform:uppercase;
  color:var(--ink-3);
}
.svc .go{display:inline-flex;align-items:center;gap:7px;}
.svc .go i{font-style:normal;transition:transform .2s ease;display:inline-block;}
.svc:hover .go i{transform:translateX(5px);}

/* pesquisa de zona */
.zona-box{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:20px;margin-bottom:24px;
}
.zona-box label{
  display:block;font-family:var(--font-display);font-weight:700;font-size:1rem;margin-bottom:12px;
}
.zona-box input{
  width:100%;font-family:var(--font-body);font-size:1rem;color:var(--ink);
  background:var(--ground);border:1px solid var(--line);border-radius:99px;
  padding:13px 18px;transition:border-color .16s ease;
}
.zona-box input::placeholder{color:var(--ink-3);}
.zona-box input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-soft);}
.zona-msg{margin-top:12px;font-size:.9rem;color:var(--ink-3);line-height:1.5;}
.zona-msg.is-ok{color:var(--ok);font-weight:500;}
.zona-msg.is-warn{color:var(--amber);font-weight:500;}
.zone li{transition:background .16s ease,color .16s ease;}
.zone li.is-hit{background:var(--amber);color:#fff;}


/* faq mais claramente clicável */
.faq details{border-radius:var(--radius);padding:16px 18px;border-bottom:1px solid var(--line);}
.faq details:hover{background:var(--surface);}
.faq summary{align-items:center;}
.faq summary::before{
  width:26px;height:26px;border-radius:50%;background:var(--teal-soft);
  display:grid;place-items:center;font-size:1rem;line-height:1;
}

/* botão de chamada em destaque na barra superior */
.top-call{background:transparent;color:var(--amber);border:1px solid var(--amber);font-weight:500;font-size:.8rem;padding:8px 14px;border-radius:99px;}

.top-call:hover{background:var(--amber);color:#fff;}

/* botão flutuante em ecrãs grandes */
.fab{display:none;}
@media (min-width:701px){
  .fab{
    display:flex;align-items:center;gap:10px;
    position:fixed;right:22px;bottom:22px;z-index:70;
  }
  .fab a{
    display:inline-flex;align-items:center;gap:10px;text-decoration:none;
    border-radius:99px;box-shadow:0 10px 28px -10px rgba(16,42,49,.55);
    transition:transform .16s ease,filter .16s ease;
  }
  .fab a:hover{transform:translateY(-2px);filter:brightness(1.06);}
  .fab svg{width:21px;height:21px;}
  .fab-call{background:var(--amber);color:#fff;padding:13px 20px;
    font-family:var(--font-display);font-weight:600;font-size:.95rem;}
  .fab-wa{background:var(--surface);color:var(--amber);border:1px solid var(--amber);padding:13px;}
}

/* separação de secções mais legível */
.sec-head .eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--teal-soft);border-radius:99px;padding:5px 13px;
}

/* ================= artigos ================= */
.art-hero{padding-block:clamp(30px,4.5vw,50px) clamp(20px,3vw,30px);max-width:76ch;}
.art-hero .eyebrow{display:inline-flex;margin-bottom:14px;color:var(--teal);background:var(--teal-soft);border-radius:99px;padding:5px 13px;}
.art-hero h1{font-size:clamp(1.7rem,3.5vw,2.45rem);max-width:26ch;}
.art-hero .lead{font-size:1.06rem;color:var(--ink-2);margin-top:18px;max-width:62ch;}
.art-img{margin:0 0 clamp(24px,4vw,40px);}
.art-img .illu{border-radius:var(--radius-lg);aspect-ratio:16/7;object-fit:cover;width:100%;border:2px solid var(--amber);}

.causes{display:grid;grid-template-columns:repeat(auto-fit,minmax(252px,1fr));gap:14px;margin-top:18px;}
.cause{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  border-top:3px solid var(--teal);padding:18px 19px;
}
.cause h3{font-size:1rem;}
.cause p{font-size:.92rem;color:var(--ink-2);margin-top:8px;line-height:1.6;}

.steps-num{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px;}
.steps-num li{
  display:grid;grid-template-columns:38px 1fr;gap:15px;align-items:start;
  background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius);padding:16px 18px;
}
.steps-num .sn{
  font-family:var(--font-mono);font-size:.76rem;color:var(--teal);
  background:var(--teal-soft);border-radius:8px;height:30px;display:grid;place-items:center;
}
.steps-num h4{font-family:var(--font-display);font-size:.99rem;margin:0;}
.steps-num p{font-size:.92rem;color:var(--ink-2);margin-top:5px;line-height:1.6;}

.warn{
  margin-top:16px;background:var(--amber-soft);border-left:3px solid var(--amber);
  border-radius:var(--radius);padding:15px 18px;font-size:.93rem;color:var(--ink-2);line-height:1.6;
}
.warn strong{color:var(--amber);font-family:var(--font-display);}

.inline-cta{
  background:var(--deep) var(--tex);color:var(--deep-ink);border:1px solid var(--amber);border-radius:var(--radius-lg);
  padding:24px 26px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;
}
.inline-cta strong{font-family:var(--font-display);font-size:1.1rem;color:#fff;}
.inline-cta p{color:var(--deep-ink-2);margin-top:8px;font-size:.94rem;max-width:48ch;}
.inline-cta-acts{display:flex;flex-direction:column;gap:10px;}
.inline-cta .btn-line{background:transparent;border-color:var(--deep-line);color:var(--deep-ink);}
.inline-cta .btn-line:hover{border-color:var(--deep-ink-2);color:#fff;}
@media (max-width:700px){ .inline-cta{grid-template-columns:1fr;} }

.callout .btn{margin-top:4px;}

/* ================= pesquisa de avarias ================= */
.search-box{max-width:860px;}
.search-label{display:block;font-family:var(--font-display);font-weight:800;font-size:clamp(1.4rem,2.8vw,2rem);line-height:1.1;margin-bottom:16px;}
.search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;}
.search-row input{
  width:100%;font-family:var(--font-body);font-size:1.05rem;color:var(--ink);
  background:var(--surface);border:2px solid var(--line);border-radius:var(--radius);padding:15px 18px;
}
.search-row input:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-soft);}
.search-help{font-size:.9rem;color:var(--ink-3);margin-top:10px;}
.search-results{margin-top:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
.search-results li{border-bottom:1px solid var(--line-soft);}
.search-results li:last-child{border-bottom:0;}
.search-results a{display:flex;align-items:center;gap:12px;padding:13px 16px;text-decoration:none;color:inherit;}
.search-results a:hover{background:var(--teal-soft);}
.search-results .kind{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);background:var(--teal-soft);border-radius:3px;padding:3px 7px;flex:none;}
.search-results strong{font-family:var(--font-display);font-size:.98rem;font-weight:600;}
.search-results .none{padding:13px 16px;font-size:.92rem;color:var(--ink-2);}
.search-results .none a{display:inline;padding:0;color:var(--teal);font-weight:600;}
@media (max-width:640px){ .search-row{grid-template-columns:1fr;} }

/* deteção de fugas em destaque */
.fuga-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(24px,4vw,48px);align-items:center;}
.fuga-img{margin:0;}
.fuga-img .illu{border-radius:var(--radius-lg);aspect-ratio:4/3;object-fit:cover;border:2px solid var(--amber);}
.fuga-grid .eyebrow{display:inline-flex;color:var(--teal);background:var(--teal-soft);border-radius:var(--radius);padding:5px 12px;margin-bottom:12px;}
@media (max-width:820px){ .fuga-grid{grid-template-columns:1fr;} }

/* galeria de serviço (estores) */
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;}
.g-tile{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
.g-tile .illu{border-radius:0;aspect-ratio:var(--ar,16/10);object-fit:cover;width:100%;}
.g-tile figcaption{padding:12px 14px;font-size:.88rem;color:var(--ink-2);line-height:1.5;border-top:3px solid var(--amber);}
@media (max-width:760px){ .gallery{grid-template-columns:1fr;} }
