@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(../fontes/inter-400.woff) format("woff")}
@font-face{font-family:Inter;font-weight:500;font-display:swap;src:url(../fontes/inter-500.woff) format("woff")}
@font-face{font-family:Inter;font-weight:600;font-display:swap;src:url(../fontes/inter-600.woff) format("woff")}
@font-face{font-family:"Inter Display";font-weight:600;font-display:swap;src:url(../fontes/inter-display-600.woff) format("woff")}
@font-face{font-family:"Inter Display";font-weight:700;font-display:swap;src:url(../fontes/inter-display-700.woff) format("woff")}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--fundo);color:var(--texto-suave);font:400 var(--tam-texto,1.0625rem)/1.65 Inter,"Segoe UI",Arial,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:-1;background:url(../img/rede.svg) center/cover no-repeat;opacity:.9;pointer-events:none}
body::after{content:"";position:fixed;inset:0;z-index:-2;background:radial-gradient(60rem 40rem at 50% -10%,rgba(var(--destaque-rgb),.10),transparent 70%),linear-gradient(180deg,var(--fundo),var(--fundo-2));pointer-events:none}
.particulas{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;display:block}
html.com-particulas body::before,html.fundo-nenhum body::before{display:none}
img{max-width:100%;height:auto;display:block}
h1,h2,h3{font-family:"Inter Display",Inter,"Segoe UI",Arial,sans-serif;color:var(--texto);font-weight:700;line-height:1.08;letter-spacing:-.025em;margin:0 0 .5em;text-wrap:balance}
h1{font-size:calc(clamp(2.4rem,6vw,4.3rem) * var(--escala-titulos,1))}
h2{font-size:calc(clamp(1.9rem,4vw,3rem) * var(--escala-titulos,1))}
h3{font-size:1.2rem;letter-spacing:-.01em;line-height:1.25}
p{margin:0 0 1em}
strong{color:var(--texto);font-weight:600}
a{color:var(--destaque-claro);text-underline-offset:.18em}
a:hover{color:var(--texto)}
:focus-visible{outline:2px solid var(--destaque);outline-offset:3px;border-radius:6px}
ul{list-style:none;margin:0;padding:0}
.caixa{width:min(1200px,100%);margin-inline:auto;padding-inline:clamp(16px,3vw,32px)}
.estreita{max-width:880px}
.sr,.pular:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.pular:focus{position:fixed;z-index:100;top:8px;left:8px;background:var(--superficie);color:var(--texto);padding:.6rem 1rem}
.ico{width:22px;height:22px;flex:none}
.ico-seta{width:18px;height:18px;flex:none;transition:transform .2s}
.ico-caixa{width:46px;height:46px;padding:11px;flex:none;border-radius:12px;color:var(--destaque);background:rgba(var(--destaque-rgb),.10);border:1px solid rgba(var(--destaque-rgb),.22)}
.ico-caixa.grande{width:60px;height:60px;padding:15px;border-radius:14px}
.grad{background:linear-gradient(90deg,var(--destaque-claro),var(--destaque) 70%);-webkit-background-clip:text;background-clip:text;color:transparent}
.tarja-previa{background:#FFE7A3;color:#3F2C00;text-align:center;font-weight:600;padding:.4rem 1rem;font-size:.9rem;position:relative;z-index:60}
.prov{display:inline-block;margin:0 0 .8rem;padding:.1rem .6rem;background:#FFE7A3;color:#3F2C00;border:1.5px dashed #8A6100;border-radius:5px;font-size:.8rem;font-weight:600;letter-spacing:0}
/* cabeçalho */
.topo{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--fundo) 72%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .2s,background .2s}
.topo.rolou{border-color:var(--borda);background:color-mix(in srgb,var(--fundo) 88%,transparent)}
.topo-in{display:flex;align-items:center;gap:1.5rem;min-height:76px}
.logo img{height:42px;width:auto}
.menu{display:flex;align-items:center;gap:2rem;margin-left:auto}
.menu ul{display:flex;gap:.3rem}
.menu ul a{display:block;color:var(--texto-suave);text-decoration:none;font-size:.97rem;font-weight:500;padding:.5rem .7rem;border-radius:8px}
.menu ul a:hover,.menu ul a[aria-current]{color:var(--texto)}
.abre-menu{display:none;align-items:center;gap:.45rem;margin-left:auto;background:var(--superficie);border:1px solid var(--borda);border-radius:10px;color:var(--texto);font:500 .95rem Inter,Arial,sans-serif;padding:.5rem .8rem;min-height:44px;cursor:pointer}
/* botões */
.bt{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:50px;padding:.7rem 1.5rem;border-radius:999px;border:1px solid transparent;font:600 1rem/1.2 Inter,Arial,sans-serif;text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}
.bt-pri{background:linear-gradient(135deg,var(--destaque-forte),var(--destaque));color:var(--on-destaque);box-shadow:0 8px 28px rgba(var(--destaque-rgb),.32)}
.bt-pri:hover{color:var(--on-destaque);transform:translateY(-1px);box-shadow:0 10px 34px rgba(var(--destaque-rgb),.45)}
.bt-pri:hover .ico-seta{transform:translateX(3px)}
.bt-sec{background:rgba(255,255,255,.04);border-color:var(--borda);color:var(--texto)}
.bt-sec:hover{border-color:rgba(var(--destaque-rgb),.6);color:var(--texto)}
.bt-cab{min-height:44px;padding:.5rem 1.15rem;font-size:.95rem;white-space:nowrap}
.bts{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}
.bts.centro{justify-content:center}
/* selos */
.selo{display:inline-flex;align-items:center;gap:.55rem;margin:0 0 1.2rem;padding:.35rem .95rem;border-radius:999px;border:1px solid rgba(var(--destaque-rgb),.35);background:rgba(var(--destaque-rgb),.08);color:var(--destaque);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.selo-vivo::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--destaque);box-shadow:0 0 0 4px rgba(var(--destaque-rgb),.18)}
/* hero */
.hero{padding-block:clamp(4rem,10vw,7.5rem) clamp(3rem,6vw,5rem);text-align:center}
.hero-in{display:flex;flex-direction:column;align-items:center}
.hero h1{max-width:15em}
.hero h1 .grad{display:block}
.hero-txt{font-size:clamp(1.08rem,1.7vw,1.25rem);max-width:40em;margin:.4rem auto 0}
.numeros{display:grid;grid-template-columns:repeat(4,1fr);width:min(1000px,100%);margin-top:clamp(3rem,6vw,4.5rem);padding:1.8rem 1rem;border-radius:20px;background:color-mix(in srgb,var(--superficie) 80%,transparent);border:1px solid var(--borda)}
.numeros>div{padding:.2rem 1rem;border-left:1px solid var(--borda)}
.numeros>div:first-child{border-left:0}
.numeros strong{display:block;font:700 calc(clamp(1.8rem,3.4vw,2.6rem) * var(--escala-numeros,1))/1.1 "Inter Display",Inter,Arial,sans-serif;letter-spacing:-.02em;color:var(--destaque);font-variant-numeric:tabular-nums}
.numeros>div>span{font-size:.95rem}
@media (prefers-reduced-motion:no-preference){
 html:not(.sem-entrada) .hero-in>*{animation:sobe .7s cubic-bezier(.2,.7,.2,1) both}
 .hero-in>:nth-child(2){animation-delay:.08s}.hero-in>:nth-child(3){animation-delay:.16s}.hero-in>:nth-child(4){animation-delay:.24s}.hero-in>:nth-child(5){animation-delay:.34s}
}
@keyframes sobe{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* seções */
.sec{padding-block:clamp(4rem,8vw,6.5rem)}
.sec-cab{margin-bottom:clamp(2.2rem,4vw,3.4rem)}
.sec-cab.centro{text-align:center;max-width:760px;margin-inline:auto}
.sec-intro{font-size:1.1rem;max-width:38em}
.sec-cab.centro .sec-intro{margin-inline:auto}
.duas{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.prosa p{font-size:1.06rem}
.prosa ul{list-style:disc;padding-left:1.3rem;margin-bottom:1em}
.prosa li{margin-bottom:.35rem}
.prosa h2{font-size:1.6rem;margin-top:1.6em}
.prosa img{border-radius:12px;margin-block:1rem}
.cartao,.seg{background:color-mix(in srgb,var(--superficie) 86%,transparent);border:1px solid var(--borda);border-radius:18px;padding:1.6rem;transition:border-color .2s,transform .2s}
.cartao:hover,.seg:hover{border-color:rgba(var(--destaque-rgb),.45)}
.cartao h3,.seg h3{margin:1.1rem 0 .4rem}
.cartao p,.seg p{margin:0;font-size:.97rem}
.grade2{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
.grade3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
/* serviços em abas */
.servicos{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:1.5rem;align-items:start}
.abas{display:flex;flex-direction:column;gap:.65rem}
.abas button{display:flex;align-items:center;gap:.8rem;width:100%;text-align:left;padding:.95rem 1.1rem;border-radius:14px;border:1px solid var(--borda);background:color-mix(in srgb,var(--superficie) 80%,transparent);color:var(--texto-suave);font:600 .97rem/1.3 Inter,Arial,sans-serif;cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.abas button:hover{color:var(--texto);border-color:rgba(var(--destaque-rgb),.35)}
.abas button[aria-selected=true]{color:var(--texto);background:rgba(var(--destaque-rgb),.12);border-color:var(--destaque);box-shadow:0 0 0 1px rgba(var(--destaque-rgb),.25),0 10px 30px rgba(var(--destaque-rgb),.12)}
.abas button[aria-selected=true] .ico{color:var(--destaque)}
.painel-serv{background:color-mix(in srgb,var(--superficie) 88%,transparent);border:1px solid var(--borda);border-radius:22px;padding:clamp(1.5rem,3.5vw,2.6rem)}
.painel-serv[hidden]{display:none}
.ps-cab{display:flex;align-items:center;gap:1.1rem;margin-bottom:1.3rem}
.ps-cab h3{font-size:clamp(1.5rem,2.6vw,2rem);margin:0 0 .2rem}
.ps-sub{margin:0;color:var(--destaque);font-weight:600;font-size:.95rem}
.ps-txt{font-size:1.08rem;max-width:44em}
.checks{margin:1.4rem 0 2rem;display:grid;gap:.85rem}
.checks li{position:relative;padding-left:2.2rem;color:var(--texto)}
.checks li::before{content:"";position:absolute;left:0;top:.15em;width:1.35rem;height:1.35rem;border-radius:50%;background:rgba(var(--destaque-rgb),.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233FB4A4' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center/62% no-repeat}
.js .abas+.paineis .painel-serv:not([hidden]){animation:troca .25s ease both}
@keyframes troca{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
html:not(.js) .abas{display:none}
html:not(.js) .servicos{grid-template-columns:1fr}
html:not(.js) .paineis{display:grid;gap:1.2rem}
/* segmentos e fabricantes */
.segs{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.fabricantes{margin-top:clamp(2.5rem,5vw,3.5rem);text-align:center}
.fabricantes h3{font-size:1rem;color:var(--texto-suave);font-family:Inter,Arial,sans-serif;font-weight:500;letter-spacing:0;margin-bottom:1.1rem}
.fabricantes ul{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem}
.fabricantes li{padding:.55rem 1.15rem;border-radius:999px;border:1px solid var(--borda);background:rgba(255,255,255,.03);color:var(--texto);font-weight:600;font-size:.98rem}
/* faq */
.faq{display:grid;gap:.8rem}
.faq details{border:1px solid var(--borda);border-radius:16px;background:color-mix(in srgb,var(--superficie) 86%,transparent);transition:border-color .2s}
.faq details[open]{border-color:rgba(var(--destaque-rgb),.45)}
.faq summary{cursor:pointer;list-style:none;padding:1.2rem 3.4rem 1.2rem 1.5rem;color:var(--texto);font-weight:600;font-size:1.05rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:1.5rem;top:50%;width:10px;height:10px;margin-top:-7px;border-right:2px solid var(--destaque);border-bottom:2px solid var(--destaque);transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg);margin-top:-2px}
.faq details>div{padding:0 1.5rem 1.2rem}
.faq details>div p:last-child{margin:0}
/* contato */
.cta{align-items:start;padding:clamp(1.6rem,4vw,3.2rem);border-radius:26px;border:1px solid rgba(var(--destaque-rgb),.3);background:radial-gradient(40rem 22rem at 0% 0%,rgba(var(--destaque-rgb),.14),transparent 70%),color-mix(in srgb,var(--superficie) 90%,transparent)}
.cta h2{font-size:calc(clamp(1.8rem,3.4vw,2.6rem) * var(--escala-titulos,1))}
.canais{display:grid;gap:.8rem;margin-top:1.6rem}
.canais li{display:flex;align-items:center;gap:.75rem}
.canais .ico{color:var(--destaque)}
.canais a{color:var(--texto);font-weight:600;text-decoration:none}
.canais a:hover{color:var(--destaque-claro)}
.form-contato{display:grid;gap:1rem}
.campos2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-contato label{display:grid;gap:.35rem;color:var(--texto);font-weight:500;font-size:.95rem}
.form-contato input:not([type=checkbox]),.form-contato select,.form-contato textarea{font:inherit;font-size:1rem;color:var(--texto);background:var(--fundo);border:1px solid var(--borda);border-radius:12px;padding:.75rem .9rem;min-height:50px;width:100%}
.form-contato textarea{resize:vertical;min-height:110px}
.form-contato input:focus,.form-contato select:focus,.form-contato textarea:focus{outline:none;border-color:var(--destaque);box-shadow:0 0 0 3px rgba(var(--destaque-rgb),.2)}
.form-contato .check{display:flex;grid-template-columns:none;align-items:flex-start;gap:.65rem;font-weight:400;color:var(--texto-suave)}
.check input{width:20px;height:20px;margin:.15rem 0 0;flex:none;accent-color:var(--destaque)}
.form-contato .bt{justify-self:start}
.nota{font-size:.88rem;margin:0}
.sem-canal{padding:1.6rem;border:1px dashed var(--borda);border-radius:16px}
.sem-canal p{margin:0}
/* páginas internas */
.cab-pag{padding-bottom:1rem}
.cab-pag h1{font-size:calc(clamp(2.2rem,5vw,3.4rem) * var(--escala-titulos,1))}
.sec-pag{padding-top:1rem}
/* rodapé */
.rodape{border-top:1px solid var(--borda);background:color-mix(in srgb,var(--fundo-2) 85%,transparent);font-size:.97rem}
.rod-grade{display:grid;grid-template-columns:1.6fr 1fr 1.1fr 1.1fr;gap:2.4rem;padding-block:3.5rem 2.5rem}
.rod-marca img{height:84px;width:auto;margin-bottom:1rem}
.rod-marca p{max-width:26em}
.rodape h2{font-size:1rem;letter-spacing:0;margin-bottom:1rem}
.rodape li{margin-bottom:.55rem}
.rodape a{color:var(--texto-suave);text-decoration:none}
.rodape a:hover{color:var(--texto)}
.rod-dest{color:var(--destaque);font-weight:600}
.rod-redes{display:flex;flex-wrap:wrap;gap:.2rem 1rem;margin-top:.9rem}
.rod-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 2rem;padding-block:1.3rem;border-top:1px solid var(--borda);font-size:.88rem}
/* responsivo */
@media (max-width:1080px){
 .abre-menu{display:inline-flex}
 .menu{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:1rem;padding:1rem 16px 1.4rem;background:var(--fundo);border-bottom:1px solid var(--borda);box-shadow:0 20px 30px rgba(0,0,0,.35)}
 .menu.aberto{display:flex}
 .menu ul{flex-direction:column}
 .menu ul a{padding:.8rem .5rem;font-size:1.05rem}
 .segs{grid-template-columns:1fr 1fr}
 .rod-grade{grid-template-columns:1fr 1fr}
 .rod-marca{grid-column:1/-1}
}
@media (max-width:860px){
 .duas{grid-template-columns:1fr}
 .grade3{grid-template-columns:1fr 1fr}
 .servicos{grid-template-columns:1fr}
 .abas{flex-direction:row;overflow-x:auto;padding-bottom:.4rem;scroll-snap-type:x mandatory;scrollbar-width:thin}
 .abas button{width:auto;flex:none;scroll-snap-align:start}
 .numeros{grid-template-columns:1fr 1fr;row-gap:1.6rem}
 .numeros>div:nth-child(3){border-left:0}
}
@media (max-width:560px){
 .logo img{height:36px}
 .topo-in{min-height:66px}
 .grade2,.grade3,.segs,.campos2{grid-template-columns:1fr}
 .bts .bt{flex:1 1 100%}
 .form-contato .bt{justify-self:stretch}
 .rod-grade{grid-template-columns:1fr}
 .numeros>div{padding-inline:.5rem}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
