/* Reparos Celular · padrão 2B (site de cliente) · v1
   Paleta trocável em 2 variáveis (--brand / --ink) quando a marca for definida (G12). */
*,*::before,*::after{box-sizing:border-box}
:root{
  --ink:#0E1726; --ink-2:#16243A;
  --brand:#1461D2; --brand-d:#0B3E8F; --brand-l:#E8F1FE;
  --wpp:#25D366; --wpp-d:#128C7E;
  --bg:#fff; --soft:#F4F7FB; --line:#E3E9F2;
  --txt:#1B2536; --mut:#5C6B82;
  --alert:#D93025;
  --r:14px; --maxw:1120px;
  --sh:0 1px 2px rgba(14,23,38,.06),0 8px 24px rgba(14,23,38,.06);
  --sh-l:0 2px 6px rgba(14,23,38,.08),0 18px 48px rgba(14,23,38,.10);
  font-synthesis-weight:none;
}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--txt);
  font-family:Inter,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:17px;line-height:1.6;overflow-x:hidden}
img,video{max-width:100%;height:auto;display:block}
a{color:var(--brand-d);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{line-height:1.15;letter-spacing:-.02em;margin:0 0 .5em;color:var(--ink)}
h1{font-size:clamp(28px,5.4vw,46px);font-weight:800}
h2{font-size:clamp(23px,3.6vw,34px);font-weight:800}
h3{font-size:19px;font-weight:700}
p{margin:0 0 1em}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 20px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* header */
.hd{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}
.hd-in{display:flex;align-items:center;gap:18px;height:64px}
.logo{display:flex;align-items:center;gap:9px;font-weight:800;color:var(--ink);
  font-size:19px;letter-spacing:-.03em;white-space:nowrap}
.logo:hover{text-decoration:none}
.logo-m{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--brand),var(--brand-d));
  display:grid;place-items:center;color:#fff;font-size:15px;font-weight:800}
.nav{display:none;margin-left:auto;gap:22px;font-size:15px;font-weight:600}
.nav a{color:var(--mut)}
.nav a:hover,.nav a[aria-current]{color:var(--ink);text-decoration:none}
.hd .btn{margin-left:auto;padding:9px 16px;font-size:15px}
@media(min-width:900px){.nav{display:flex}.hd .btn{margin-left:0}}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:15px 24px;border-radius:12px;font-weight:700;font-size:16px;
  background:var(--brand);color:#fff;border:0;cursor:pointer;
  transition:transform .12s ease,box-shadow .12s ease,background .12s ease}
.btn:hover{background:var(--brand-d);text-decoration:none;transform:translateY(-1px);box-shadow:var(--sh)}
.btn-w{background:var(--wpp)}.btn-w:hover{background:var(--wpp-d)}
.btn-g{background:#fff;color:var(--ink);border:1.5px solid var(--line)}
.btn-g:hover{background:var(--soft);border-color:#cfd9e8}
.btn-lg{padding:17px 30px;font-size:17px;width:100%}
@media(min-width:600px){.btn-lg{width:auto}}
.ico{width:19px;height:19px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round}
.ico-f{fill:currentColor;stroke:none}

/* hero */
.hero{border-bottom:1px solid var(--line);padding:38px 0 44px;
  background-image:url(/assets/img/pcb-light.svg),linear-gradient(180deg,var(--soft),#fff);
  background-size:300px 300px,auto;background-position:center top,center}
.hero-g{display:grid;gap:28px;align-items:center}
@media(min-width:900px){.hero{padding:60px 0 64px}.hero-g{grid-template-columns:1.05fr .95fr;gap:44px}}
.kick{display:inline-flex;align-items:center;gap:8px;background:var(--brand-l);color:var(--brand-d);
  font-size:13.5px;font-weight:700;padding:7px 13px;border-radius:999px;margin-bottom:16px;
  letter-spacing:.01em}
.kick.warn{background:#FEECEB;color:var(--alert)}
.lead{font-size:clamp(17px,2.2vw,19.5px);color:var(--mut);max-width:36em}
.cta-row{display:flex;flex-direction:column;gap:11px;margin-top:26px}
@media(min-width:600px){.cta-row{flex-direction:row;flex-wrap:wrap;align-items:center}}
.micro{font-size:14px;color:var(--mut);margin:14px 0 0}
.hero-img{border-radius:18px;overflow:hidden;box-shadow:var(--sh-l);background:var(--ink)}
.hero-img img,.hero-img video{width:100%;aspect-ratio:4/3;object-fit:cover}

/* selos */
.trust{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:28px}
@media(min-width:700px){.trust{grid-template-columns:repeat(4,1fr)}}
.trust div{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--ink-2);
  background:#fff;border:1px solid var(--line);border-radius:11px;padding:11px 12px}
.trust .ico{width:17px;height:17px;color:var(--brand)}

/* seções */
section{padding:48px 0}
@media(min-width:900px){section{padding:68px 0}}
/* faixa clara com malha técnica (papel milimetrado discreto, CSS puro) */
.sec-soft{background-color:var(--soft);
  background-image:radial-gradient(rgba(20,97,210,.11) 1px,transparent 1px);
  background-size:22px 22px;background-position:center;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sec-h{max-width:44em;margin-bottom:32px}
.sec-h p{color:var(--mut);margin:0}

/* grid de cards */
.cards{display:grid;gap:14px}
@media(min-width:640px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:980px){.cards-3{grid-template-columns:repeat(3,1fr)}}
/* "canto de circuito": a trilha ancorada no canto do card, não wash uniforme.
   Atenção: quem usa isto NÃO pode declarar o shorthand `background:` depois (reseta a imagem). */
.card,.steps li,.loc-card,.faq details{
  background-image:url(/assets/img/pcb-light.svg);
  background-repeat:no-repeat;
  background-position:right -78px bottom -78px;background-size:300px 300px}
.faq details{background-position:right -90px center}
.card{background-color:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;
  box-shadow:var(--sh);transition:transform .12s ease,box-shadow .12s ease}
a.card:hover{text-decoration:none;transform:translateY(-2px);box-shadow:var(--sh-l);border-color:#cfd9e8}
.card h3{margin-bottom:6px}
.card p{color:var(--mut);font-size:15.5px;margin:0}
.card .ci{width:38px;height:38px;border-radius:10px;background:var(--brand-l);color:var(--brand-d);
  display:grid;place-items:center;margin-bottom:14px}
.card .ci .ico{width:20px;height:20px}
.card .more{display:inline-flex;align-items:center;gap:6px;margin-top:13px;font-weight:700;
  font-size:15px;color:var(--brand-d)}

/* lista de sintomas */
.chips{display:flex;flex-wrap:wrap;gap:9px;margin:0;padding:0;list-style:none}
.chips li{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 15px;
  font-size:15px;font-weight:600;color:var(--ink-2)}

/* passos */
.steps{counter-reset:s;display:grid;gap:16px;margin:0;padding:0;list-style:none}
@media(min-width:900px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps li{counter-increment:s;background-color:#fff;border:1px solid var(--line);border-radius:var(--r);
  padding:22px;position:relative}
.steps li::before{content:counter(s);display:grid;place-items:center;width:32px;height:32px;
  border-radius:9px;background:var(--ink);color:#fff;font-weight:800;font-size:15px;margin-bottom:13px}
.steps b{display:block;margin-bottom:5px;color:var(--ink)}
.steps span{color:var(--mut);font-size:15.5px}

/* prova */
.proof{display:grid;gap:18px}
@media(min-width:900px){.proof{grid-template-columns:repeat(3,1fr)}}
.pf{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh)}
.pf img,.pf video{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--ink)}
.pf .cap{padding:15px 17px;font-size:14.5px;color:var(--mut)}
.pf .cap b{display:block;color:var(--ink);font-size:15.5px;margin-bottom:3px}
.pf-tall img,.pf-tall video{aspect-ratio:9/16}

/* textura de trilha de placa (SVG tileável, ~1KB, sem foto de banco)
   A opacidade é controlada pelo véu navy POR CIMA do padrão, então é só mexer no alpha. */
.tex-pcb{background-color:var(--ink);
  background-image:linear-gradient(rgba(14,23,38,.955),rgba(14,23,38,.955)),url(/assets/img/pcb.svg);
  background-size:auto,300px 300px;background-position:center,center}

/* destaque */
.pull{color:#fff;border-radius:18px;padding:32px 26px;
  background-color:var(--ink);
  background-image:linear-gradient(rgba(14,23,38,.94),rgba(14,23,38,.94)),url(/assets/img/pcb.svg);
  background-size:auto,300px 300px}
.pull h2{color:#fff;margin-bottom:12px}
.pull p{color:#C7D3E5;margin:0;font-size:17px}
@media(min-width:900px){.pull{padding:46px 42px}}

/* onde estamos (padrão do site 2B: card à esquerda, mapa à direita) */
.eyebrow{display:block;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--mut);margin-bottom:10px}
.loc-g{display:grid;gap:18px;align-items:stretch}
@media(min-width:900px){.loc-g{grid-template-columns:1fr 1.25fr;gap:24px}}
.loc-g.loc-nomap{grid-template-columns:1fr;max-width:34em}
.loc-card{background-color:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;
  box-shadow:var(--sh);display:flex;flex-direction:column;gap:20px;justify-content:center}
.loc-row{display:flex;gap:14px;align-items:flex-start}
.loc-i{flex:0 0 auto;width:40px;height:40px;border-radius:11px;background:var(--soft);
  border:1px solid var(--line);display:grid;place-items:center;color:var(--brand-d)}
.loc-i .ico{width:19px;height:19px}
.loc-row b{display:block;color:var(--ink);font-size:16px;margin-bottom:2px}
.loc-row span{color:var(--mut);font-size:15.5px;line-height:1.45}
.loc-card .btn{align-self:stretch}
@media(min-width:600px){.loc-card .btn{align-self:flex-start}}
.loc-map{position:relative;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);
  box-shadow:var(--sh);min-height:300px;background:var(--soft)}
.loc-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.map-chip{position:absolute;top:14px;left:14px;z-index:2;background:#fff;color:var(--ink);
  font-size:14px;font-weight:700;padding:9px 13px;border-radius:10px;box-shadow:var(--sh);
  display:inline-flex;align-items:center;gap:7px}
.map-chip:hover{text-decoration:none;background:var(--soft)}
.map-chip .ico{width:15px;height:15px;color:var(--brand-d)}

/* faq */
.faq{max-width:52em}
.faq details{border:1px solid var(--line);border-radius:12px;background-color:#fff;margin-bottom:10px;
  overflow:hidden}
.faq summary{cursor:pointer;padding:17px 20px;font-weight:700;color:var(--ink);font-size:16.5px;
  list-style:none;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;font-weight:700;color:var(--brand);line-height:1;flex:0 0 auto}
.faq details[open] summary::after{content:"−"}
.faq .a{padding:0 20px 18px;color:var(--mut);font-size:16px}
.faq .a p:last-child{margin:0}

/* cta final */
.end{color:#fff;text-align:center;background-color:var(--ink);
  background-image:linear-gradient(135deg,rgba(11,62,143,.93),rgba(14,23,38,.96)),url(/assets/img/pcb.svg);
  background-size:auto,300px 300px}
.end h2{color:#fff}
.end p{color:#C7D3E5;max-width:34em;margin:0 auto 26px}
.end .cta-row{justify-content:center}

/* footer */
footer{color:#9FB0C7;font-size:15px;padding:42px 0 32px;background-color:var(--ink);
  background-image:linear-gradient(rgba(14,23,38,.955),rgba(14,23,38,.955)),url(/assets/img/pcb.svg);
  background-size:auto,300px 300px}
footer a{color:#D7E1F0}
.ft-g{display:grid;gap:26px}
@media(min-width:800px){.ft-g{grid-template-columns:1.4fr 1fr 1fr}}
footer h4{color:#fff;font-size:15px;margin:0 0 12px;letter-spacing:.02em}
footer ul{list-style:none;margin:0;padding:0}
footer li{margin-bottom:8px}
.ft-b{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:20px;font-size:13.5px;
  display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;align-items:center}
.ft-by{width:100%;order:3;color:#8FA1B9}
.ft-by a{color:#fff;font-weight:600;border-bottom:1px solid rgba(255,255,255,.35)}
.ft-by a:hover{text-decoration:none;border-bottom-color:#fff}
@media(min-width:800px){.ft-by{width:auto;order:0}}

/* floats (injetados por reparos-widgets.js) */
.wpp-float,.chat-float{position:fixed;right:18px;z-index:60;width:56px;height:56px;border-radius:50%;
  display:grid;place-items:center;box-shadow:0 6px 22px rgba(14,23,38,.28);border:0;cursor:pointer;
  color:#fff;transition:transform .14s ease}
.wpp-float{bottom:20px;background:var(--wpp)}
.chat-float{bottom:86px;background:var(--brand)}
.wpp-float:hover,.chat-float:hover{transform:scale(1.06)}
.wpp-float svg,.chat-float svg{width:29px;height:29px}
.tip{position:fixed;right:84px;z-index:60;background:var(--ink);color:#fff;font-size:14px;
  font-weight:600;padding:9px 13px;border-radius:10px;white-space:nowrap;opacity:0;
  transform:translateX(6px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;
  box-shadow:var(--sh)}
.tip.on{opacity:1;transform:none}
.tip-w{bottom:33px}.tip-c{bottom:99px}
@media(max-width:520px){.tip{display:none}}

/* lp de oferta (sem nav) */
body.lp .hero{padding-top:30px}
