/* Estilo compartilhado. As cores de cada site ficam em .tema-nc e .tema-lab */
:root{
  --pri:#D7262E;--pri-esc:#A3141A;--pri-claro:#FDEDEE;--pri-brilho:#FF4B52;
  --tinta:#13161C;--texto:#3B414B;--mudo:#6A717D;--linha:#E6E8EC;--linha2:#F0F1F4;
  --fundo:#fff;--fundo2:#F6F7F9;--escuro:#101318;--escuro2:#181C23;
  --raio:18px;--raio-s:12px;
  --sombra:0 1px 2px rgba(16,19,24,.04),0 12px 32px -8px rgba(16,19,24,.12);
  --sombra-g:0 30px 60px -20px rgba(16,19,24,.35);
  --fonte-t:"Plus Jakarta Sans",Inter,system-ui,sans-serif;
}
.tema-lab{--pri:#E3151C;--pri-esc:#A8141B;--pri-claro:#FDECEC;--pri-brilho:#FF4A50;--escuro:#0A111B;--escuro2:#111B28;--fundo2:#F3F6F9;--tinta:#0E1722;--acento:#16B3E6}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.7 Inter,system-ui,sans-serif;color:var(--texto);background:var(--fundo);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--pri)}
h1,h2,h3{font-family:var(--fonte-t);color:var(--tinta);line-height:1.12;margin:0 0 .5em;letter-spacing:-.025em}
h1{font-size:clamp(2.2rem,5vw,3.75rem);font-weight:800}
h2{font-size:clamp(1.6rem,3.2vw,2.5rem);font-weight:800}
h3{font-size:1.12rem;font-weight:700;letter-spacing:-.01em}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.estreito{max-width:820px}
.pular{position:absolute;left:-999px}.pular:focus{left:10px;top:10px;z-index:99;background:#fff;padding:8px}
.ic{flex:none}
::selection{background:var(--pri);color:#fff}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--pri);color:#fff;border:1.5px solid var(--pri);padding:13px 24px;border-radius:999px;font-weight:600;text-decoration:none;cursor:pointer;font-size:1rem;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;box-shadow:0 8px 20px -8px color-mix(in srgb,var(--pri) 70%,transparent)}
.btn:hover{background:var(--pri-esc);border-color:var(--pri-esc);transform:translateY(-1px)}
.btn .ic{transition:transform .2s}
.btn:hover .ic{transform:translateX(2px)}
.btn-sm{padding:9px 18px;font-size:.93rem}
.btn-full{width:100%}
.btn-linha{background:transparent;color:var(--tinta);border-color:color-mix(in srgb,currentColor 30%,transparent);box-shadow:none}
.btn-linha:hover{background:var(--tinta);color:#fff;border-color:var(--tinta)}
.btn-claro{background:#fff;color:var(--pri-esc);border-color:#fff;box-shadow:none}
.btn-claro:hover{background:var(--pri-claro);border-color:var(--pri-claro)}
.link-seta{display:inline-flex;align-items:center;gap:6px;font-weight:600;text-decoration:none}
.link-seta .ic{transition:transform .2s}
.link-seta:hover .ic{transform:translateX(4px)}

/* topo */
.topo{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.82);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid transparent;transition:border-color .25s,box-shadow .25s}
.topo.rolou{border-bottom-color:var(--linha);box-shadow:0 8px 30px -18px rgba(16,19,24,.25)}
.topo-row{display:flex;align-items:center;justify-content:space-between;height:78px;gap:20px}
.marca img{height:58px;width:auto}
.menu{display:flex;align-items:center;gap:6px}
.menu a{color:var(--tinta);text-decoration:none;font-weight:500;font-size:.96rem;padding:8px 14px;border-radius:999px;transition:background .2s,color .2s}
.menu a:not(.btn):hover{background:var(--fundo2)}
.menu a[aria-current]{color:var(--pri);background:var(--pri-claro)}
.menu .btn{color:#fff;margin-left:10px;padding:10px 20px}
.menu-bt{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;flex-direction:column;justify-content:center;gap:5px;align-items:center}
.menu-bt span{display:block;width:24px;height:2px;background:var(--tinta);transition:.25s}
.menu-bt[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-bt[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-bt[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:900px){
  .menu-bt{display:flex}
  .menu{position:fixed;inset:78px 0 auto 0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 22px;border-bottom:1px solid var(--linha);box-shadow:var(--sombra);display:none}
  .menu.aberto{display:flex}
  .menu a{padding:14px 4px;border-bottom:1px solid var(--linha);border-radius:0}
  .menu a[aria-current]{background:none}
  .menu .btn{margin:16px 0 0;border-bottom:0;border-radius:999px}
  .marca img{height:50px}
}

/* fundo escuro com grade e brilho (hero, topo das páginas, cta) */
.escuro-fx{position:relative;isolation:isolate;background:var(--escuro);color:#fff;overflow:hidden}
.escuro-fx::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 80% 70% at 30% 40%,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 30% 40%,#000 30%,transparent 75%)}
.escuro-fx::after{content:"";position:absolute;z-index:-1;width:720px;height:720px;left:-220px;top:-320px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--pri) 38%,transparent),transparent 65%);filter:blur(10px);pointer-events:none}
.tema-lab .escuro-fx::after{background:radial-gradient(circle,color-mix(in srgb,var(--pri) 30%,transparent),transparent 62%)}
.escuro-fx h1,.escuro-fx h2,.escuro-fx h3{color:#fff}

/* hero */
.hero{padding:84px 0 150px}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}
.hero h1 em{font-style:normal;background-image:linear-gradient(100deg,var(--pri-brilho),#FF8A6B);-webkit-background-clip:text;background-clip:text;color:transparent}
.tema-lab .hero h1 em{background-image:linear-gradient(100deg,var(--pri-brilho),#FF7A7F)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.8rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#E9ECF1;margin:0 0 22px;padding:7px 14px 7px 10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.04)}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--pri-brilho);box-shadow:0 0 0 4px color-mix(in srgb,var(--pri-brilho) 25%,transparent)}
.lead{font-size:1.15rem;line-height:1.65;color:inherit;margin:0 0 30px}
.hero .lead{color:#C9CFD8;max-width:580px}
.hero-bts{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:30px}
.hero .btn-linha,.cta .btn-linha,.pg-topo .btn-linha{color:#fff;border-color:rgba(255,255,255,.3)}
.hero .btn-linha:hover,.cta .btn-linha:hover{background:#fff;color:var(--tinta);border-color:#fff}
.hero-tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px 22px;color:#B9C0CB;font-size:.93rem}
.hero-tags li{display:flex;align-items:center;gap:7px}
.hero-tags .ic{color:var(--pri-brilho)}
.hero-visual{position:relative}
.hero-foto{position:relative;border-radius:28px;overflow:hidden;aspect-ratio:4/4.6;box-shadow:var(--sombra-g);border:1px solid rgba(255,255,255,.1)}
.hero-foto img{width:100%;height:100%;object-fit:cover}
.hero-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.45))}
.hero-card{position:absolute;display:flex;gap:12px;align-items:center;padding:14px 18px 14px 14px;border-radius:16px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 20px 40px -14px rgba(0,0,0,.45);color:var(--tinta);max-width:270px;animation:flutua 6s ease-in-out infinite}
.hero-card .hc-ic{display:inline-flex;width:42px;height:42px;border-radius:12px;align-items:center;justify-content:center;background:var(--pri);color:#fff;flex:none}
.hero-card b{display:block;font:700 .95rem/1.25 var(--fonte-t)}
.hero-card span{font-size:.8rem;color:var(--mudo);line-height:1.3;display:block}
.hc-1{left:-38px;bottom:56px}
.hc-2{right:-22px;top:34px;animation-delay:-3s}
@keyframes flutua{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media (max-width:960px){
  .hero{padding:56px 0 130px}
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .hero-foto{aspect-ratio:4/3}
  .hc-1{left:12px;bottom:-22px}.hc-2{right:12px;top:-18px}
}
@media (max-width:520px){.hero-card{max-width:220px;padding:10px 14px 10px 10px}.hero-card .hc-ic{width:36px;height:36px}.hc-2{display:none}}

/* números (sobem sobre o hero) */
.numeros{position:relative;z-index:3;margin-top:-82px}
.numeros-row{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:22px;box-shadow:var(--sombra-g);border:1px solid var(--linha)}
.numeros-row div{padding:28px 30px;border-left:1px solid var(--linha)}
.numeros-row div:first-child{border-left:0}
.numeros b{display:block;font:800 clamp(1.6rem,2.6vw,2.2rem)/1.1 var(--fonte-t);color:var(--tinta);letter-spacing:-.03em;margin-bottom:4px}
.numeros b i{font-style:normal;color:var(--pri)}
.numeros span{font-size:.92rem;color:var(--mudo)}
@media (max-width:820px){.numeros-row{grid-template-columns:1fr 1fr}.numeros-row div:nth-child(3){border-left:0}.numeros-row div:nth-child(n+3){border-top:1px solid var(--linha)}.numeros-row div{padding:22px}}

/* faixa de normas */
.selos{padding:46px 0 10px;overflow:hidden}
.selos-tit{text-align:center;font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--mudo);margin:0 0 18px}
.selos-mascara{mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.selos-trilho{display:flex;gap:12px;width:max-content;animation:desliza 45s linear infinite}
.selos-mascara:hover .selos-trilho{animation-play-state:paused}
.selo{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:10px 18px;border:1px solid var(--linha);border-radius:999px;font-weight:600;font-size:.92rem;color:var(--tinta);background:#fff}
.selo .ic{color:var(--pri)}
@keyframes desliza{to{transform:translateX(-50%)}}

/* seções */
.sec{padding:96px 0}
.sec-clara{background:var(--fundo2)}
.kicker{display:inline-flex;align-items:center;gap:10px;color:var(--pri);font-weight:700;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;margin:0 0 14px}
.kicker::before{content:"";width:22px;height:2px;background:currentColor;border-radius:2px}
.sec-tit{margin-bottom:14px;max-width:760px}
.sec-sub{max-width:680px;color:var(--mudo);margin:0 0 44px;font-size:1.06rem}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:6px}
.cards{display:grid;gap:20px}
.cards-2{grid-template-columns:repeat(2,1fr)}
.cards-3{grid-template-columns:repeat(3,1fr)}
.cards-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1060px){.cards-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.cards-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.cards-2,.cards-3,.cards-4{grid-template-columns:1fr}.sec{padding:64px 0}}

/* cartões de serviço */
.serv-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:28px 26px 26px;border:1px solid var(--linha);border-radius:var(--raio);background:#fff;text-decoration:none;color:var(--texto);overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s}
.serv-card::before{content:"";position:absolute;inset:auto 0 0 0;height:3px;background:linear-gradient(90deg,var(--pri),var(--pri-brilho));transform:scaleX(0);transform-origin:left;transition:transform .35s}
.serv-card:hover{transform:translateY(-6px);box-shadow:var(--sombra-g);border-color:transparent}
.serv-card:hover::before{transform:scaleX(1)}
.serv-card h3{margin:6px 0 0;font-size:1.1rem}
.serv-card p{margin:0;flex:1;font-size:.94rem;line-height:1.6}
.serv-card .link-seta{margin-top:8px;font-size:.92rem}
.serv-card:hover .link-seta .ic{transform:translateX(4px)}
.serv-n{position:absolute;top:22px;right:24px;font:800 .85rem var(--fonte-t);color:#C3C8D0;letter-spacing:.05em}
.serv-foto{display:block;margin:-28px -26px 14px;aspect-ratio:16/10;overflow:hidden;background:var(--fundo2)}
.serv-foto img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.serv-card:hover .serv-foto img{transform:scale(1.06)}
.tem-foto .serv-n{top:14px;right:14px;color:#fff;background:rgba(0,0,0,.45);padding:3px 9px;border-radius:999px;backdrop-filter:blur(6px)}
.tem-foto .serv-ic{margin-top:-46px;position:relative;box-shadow:0 0 0 5px #fff}
.serv-ic{display:inline-flex;width:54px;height:54px;align-items:center;justify-content:center;border-radius:15px;background:var(--pri-claro);color:var(--pri);transition:background .3s,color .3s}
.serv-card:hover .serv-ic{background:var(--pri);color:#fff}
.serv-ic-g{width:66px;height:66px;margin-bottom:18px;border-radius:18px;background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.15)}
.tem-foto .serv-ic{background:var(--pri);color:#fff}

/* cartões do blog */
.post-card{display:flex;flex-direction:column;gap:10px;padding:26px;border:1px solid var(--linha);border-radius:var(--raio);background:#fff;text-decoration:none;color:var(--texto);transition:transform .3s,box-shadow .3s,border-color .3s}
.post-card:hover{transform:translateY(-5px);box-shadow:var(--sombra-g);border-color:transparent}
.post-card h3{font-size:1.14rem;line-height:1.3}
.post-card p{margin:0;flex:1;font-size:.95rem}
.pill{display:inline-block;align-self:flex-start;background:var(--pri-claro);color:var(--pri-esc);font-size:.76rem;font-weight:600;padding:5px 11px;border-radius:999px;letter-spacing:.01em}
.post-meta{display:flex;align-items:center;gap:6px;font-size:.84rem;color:var(--mudo);padding-top:14px;margin-top:4px;border-top:1px solid var(--linha2)}

/* destaque */
.destaque{color:#C9CFD8}
.destaque-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center}
.destaque p{font-size:1.04rem}
.destaque-img{position:relative}
.destaque-img::before{content:"";position:absolute;inset:22px -22px -22px 22px;border:1.5px solid color-mix(in srgb,var(--pri-brilho) 55%,transparent);border-radius:24px}
.destaque-img img{position:relative;width:100%;aspect-ratio:4/3.2;object-fit:cover;border-radius:24px;box-shadow:var(--sombra-g)}
.destaque ul{list-style:none;padding:0;margin:22px 0 32px;display:grid;gap:12px}
.destaque li{display:flex;gap:12px;align-items:flex-start;padding:12px 16px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.destaque li b{color:#fff}
.destaque li .ic{color:var(--pri-brilho);margin-top:4px}
.destaque .kicker{color:var(--pri-brilho)}
@media (max-width:960px){.destaque-grid{grid-template-columns:1fr;gap:50px}.destaque-img::before{inset:14px -10px -14px 14px}}

/* passos */
.passos{list-style:none;padding:0;margin:44px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative}
.passos::before{content:"";position:absolute;top:27px;left:28px;right:12%;height:2px;background:repeating-linear-gradient(90deg,var(--linha) 0 8px,transparent 8px 14px)}
.passos li{position:relative}
.passo-n{position:relative;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#fff;border:2px solid var(--pri);color:var(--pri);font:800 1.15rem var(--fonte-t);margin-bottom:20px;box-shadow:0 0 0 8px var(--fundo)}
.sec-clara .passo-n{box-shadow:0 0 0 8px var(--fundo2)}
.passos .ic{display:none}
.passos h3{margin-bottom:6px}
.passos p{margin:0;font-size:.95rem;color:var(--mudo)}
@media (max-width:900px){.passos{grid-template-columns:1fr 1fr;gap:34px 24px}.passos::before{display:none}}
@media (max-width:560px){.passos{grid-template-columns:1fr}}

/* galeria */
.galeria{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:14px;margin-top:40px}
.galeria figure{margin:0;position:relative;border-radius:18px;overflow:hidden;background:var(--linha)}
.galeria figure:first-child{grid-column:span 2;grid-row:span 2}
.galeria figure:nth-child(4):last-child{grid-column:span 2}
.galeria img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.galeria figure:hover img{transform:scale(1.05)}
.galeria figcaption{position:absolute;left:12px;right:12px;bottom:12px;padding:8px 12px;border-radius:10px;background:rgba(10,12,16,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:.82rem;line-height:1.35}
.estados{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--mudo);margin-top:26px;font-size:.95rem}
.uf{display:inline-block;padding:3px 9px;border-radius:7px;background:#fff;border:1px solid var(--linha);font-weight:600;font-size:.8rem;color:var(--tinta)}
@media (max-width:760px){.galeria{grid-template-columns:1fr 1fr;grid-auto-rows:160px}}

/* empresa parceira */
.irmao-sec{padding:0 0 96px}
.irmao-row{display:grid;grid-template-columns:220px 1fr auto;gap:40px;align-items:center;padding:36px 40px;border-radius:24px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(120deg,var(--pri),color-mix(in srgb,var(--pri) 10%,#fff) 40%,var(--linha)) border-box;border:1.5px solid transparent;box-shadow:var(--sombra)}
.irmao-row img{max-height:84px;width:auto}
.irmao-row h2{font-size:1.4rem;margin-bottom:6px}
.irmao-row p{margin:0;color:var(--mudo)}
@media (max-width:860px){.irmao-row{grid-template-columns:1fr;gap:18px;padding:28px}}

/* páginas internas */
.pg-topo{padding:64px 0 60px}
.pg-topo .lead{color:#C9CFD8;max-width:760px;margin-bottom:0}
.pg-topo .pill{background:rgba(255,255,255,.1);color:#fff}
.pg-topo-foto{display:grid;grid-template-columns:1fr 400px;gap:50px;align-items:center}
.pg-topo-foto img{border-radius:22px;aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:var(--sombra-g);border:1px solid rgba(255,255,255,.1)}
@media (max-width:900px){.pg-topo-foto{grid-template-columns:1fr;gap:30px}}
.crumbs{font-size:.86rem;color:#9AA2AE;margin-bottom:22px}
.crumbs a{color:#9AA2AE;text-decoration:none}.crumbs a:hover{color:#fff}
.crumbs span{margin:0 4px}
.crumbs [aria-current]{color:#E3E6EB}
.serv-grid{display:grid;grid-template-columns:1fr 370px;gap:56px;align-items:start}
.lateral{position:sticky;top:100px}
@media (max-width:960px){.serv-grid{grid-template-columns:1fr}.lateral{position:static}}
.conteudo h2{margin-top:1.9em;font-size:clamp(1.4rem,2.4vw,1.8rem)}
.conteudo h3{margin-top:1.4em}
.conteudo p,.conteudo li{font-size:1.04rem}
.conteudo table{width:100%;border-collapse:separate;border-spacing:0;margin:20px 0;font-size:.95rem;border:1px solid var(--linha);border-radius:12px;overflow:hidden}
.conteudo th,.conteudo td{border-bottom:1px solid var(--linha);padding:11px 14px;text-align:left;vertical-align:top}
.conteudo tr:last-child th,.conteudo tr:last-child td{border-bottom:0}
.conteudo thead th{background:var(--fundo2);color:var(--tinta)}
.tabela{overflow-x:auto}
.resumo-box{position:relative;background:linear-gradient(135deg,var(--pri-claro),#fff);border:1px solid color-mix(in srgb,var(--pri) 18%,transparent);border-radius:16px;padding:22px 26px;margin:0 0 30px}
.resumo-box b{display:inline-flex;align-items:center;gap:8px;color:var(--pri-esc);font-family:var(--fonte-t);text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}
.resumo-box ul{margin:10px 0 0;padding-left:20px}
.resumo-box li{margin:5px 0}
.resumo-box li::marker{color:var(--pri)}
.itens{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:700px){.itens{grid-template-columns:1fr}}
.item{display:flex;gap:12px;padding:18px;border:1px solid var(--linha);border-radius:14px;background:#fff;transition:border-color .2s,box-shadow .2s}
.item:hover{border-color:color-mix(in srgb,var(--pri) 35%,transparent);box-shadow:var(--sombra)}
.item>.ic{color:#fff;background:var(--pri);border-radius:50%;padding:3px;width:22px;height:22px;margin-top:2px}
.item h3{margin:0 0 4px;font-size:1rem}
.item p{margin:0;font-size:.94rem;color:var(--mudo)}
.normas{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.normas li{display:inline-flex;gap:8px;align-items:center;padding:8px 14px;border-radius:999px;background:var(--fundo2);font-size:.95rem!important}
.normas .ic{color:var(--pri)}
.aviso{background:#FFF8E8;border:1px solid #F2DFA8;border-radius:14px;padding:18px 22px;margin:28px 0;font-size:.98rem}
.serv-linha{display:grid;grid-template-columns:auto 1fr;gap:28px;padding:36px;border:1px solid var(--linha);border-radius:var(--raio);margin-bottom:18px;background:#fff;transition:box-shadow .3s,border-color .3s}
.serv-linha:hover{box-shadow:var(--sombra);border-color:transparent}
.serv-linha h2{font-size:1.45rem;margin:0 0 6px}
.serv-linha h2 a{color:var(--tinta);text-decoration:none}
.serv-linha h2 a:hover{color:var(--pri)}
.serv-linha-foto{width:220px;border-radius:14px;aspect-ratio:4/3;object-fit:cover}
.lista-check{list-style:none;padding:0;margin:16px 0}
.lista-check li{display:flex;gap:8px;align-items:flex-start;margin:6px 0;font-size:.96rem}
.lista-check .ic{color:var(--pri);margin-top:4px}
.cols-2{columns:2;column-gap:30px}.cols-2 li{break-inside:avoid}
@media (max-width:760px){.cols-2{columns:1}.serv-linha{grid-template-columns:1fr;padding:26px}.serv-linha-foto{width:100%}}
.assinatura{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:40px;padding:18px 20px;border-radius:14px;background:var(--fundo2);font-size:.95rem}

/* formulário */
.form{background:#fff;border:1px solid var(--linha);border-radius:22px;padding:28px;box-shadow:var(--sombra-g)}
.form h3{margin:0;font-size:1.25rem}
.form-sub{margin:4px 0 18px;color:var(--mudo);font-size:.93rem}
.form label{display:block;font-size:.86rem;font-weight:600;color:var(--tinta);margin-bottom:13px}
.form input,.form select,.form textarea{display:block;width:100%;margin-top:6px;padding:12px 14px;border:1px solid #D5D9DF;border-radius:11px;font:inherit;font-weight:400;background:var(--fundo2);transition:border-color .2s,background .2s,box-shadow .2s}
.form input:focus,.form select:focus,.form textarea:focus{outline:0;border-color:var(--pri);background:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--pri) 14%,transparent)}
.form-nota{font-size:.8rem;color:var(--mudo);margin:12px 0 0;text-align:center}

/* faq */
.faq{display:grid;gap:12px}
.faq details{border:1px solid var(--linha);border-radius:14px;padding:0 22px;background:#fff;transition:box-shadow .2s,border-color .2s}
.faq details[open]{box-shadow:var(--sombra);border-color:transparent}
.faq summary{cursor:pointer;font-weight:600;color:var(--tinta);padding:18px 40px 18px 0;list-style:none;position:relative;font-size:1.02rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:var(--pri-claro);color:var(--pri);display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq p{margin:0 0 20px;color:var(--texto)}

/* cta */
.cta{padding:0 0 96px}
.cta-caixa{padding:56px 60px;border-radius:28px}
.cta-row{display:flex;justify-content:space-between;align-items:center;gap:34px;flex-wrap:wrap}
.cta h2{margin-bottom:8px;max-width:620px}
.cta p{margin:0;color:#C9CFD8;max-width:560px}
.cta-bts{display:flex;gap:12px;flex-wrap:wrap}
.cta .btn-claro{color:var(--tinta)}
@media (max-width:620px){.cta-caixa{padding:38px 26px;border-radius:22px}}

/* blog */
.autoria{display:flex;gap:12px;align-items:center;font-size:.93rem;margin-top:26px;color:#C9CFD8}
.autoria a{color:#fff}
.autoria span{color:#9AA2AE}
.avatar{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--pri),var(--pri-esc));color:#fff;font:700 .9rem var(--fonte-t);flex:none}
.avatar-g{width:64px;height:64px;font-size:1.15rem}
.autor-box{display:flex;gap:18px;background:var(--fundo2);border-radius:18px;padding:24px;margin-top:44px}
.autor-box p{margin:6px 0 0;font-size:.95rem}
.autor-topo{display:flex;gap:20px;align-items:center}
.autor-topo h1{margin:0}
.autor-topo .lead{margin:6px 0 0}
.post-serv{display:flex;flex-direction:column;gap:10px;align-items:flex-start;border:1px solid var(--linha);border-radius:18px;padding:24px;margin-top:28px;box-shadow:var(--sombra)}
.fontes{font-size:.93rem}
.tags .pill{margin:0 4px 6px 0}

/* sobre */
.mvv{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:34px 0}
.mvv div{background:var(--fundo2);border-radius:16px;padding:24px;border-top:3px solid var(--pri)}
.mvv p{margin:0;font-size:.95rem}
@media (max-width:700px){.mvv{grid-template-columns:1fr}}
.ficha th{width:200px;background:var(--fundo2);color:var(--tinta)}
.equipe{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.pessoa{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid var(--linha);border-radius:14px;text-decoration:none;color:var(--texto);transition:box-shadow .2s,border-color .2s}
a.pessoa:hover{box-shadow:var(--sombra);border-color:transparent}
.pessoa b{display:block;color:var(--tinta)}
.pessoa span{font-size:.88rem;color:var(--mudo)}
.pessoa .avatar-g{width:48px;height:48px;font-size:.95rem}
@media (max-width:620px){.equipe{grid-template-columns:1fr}}
.marcas{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:26px 0}
.marcas figure{margin:0;background:#fff;border:1px solid var(--linha);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center}
.marcas img{height:80px;width:auto;max-width:100%;object-fit:contain}
.marcas figcaption{font-size:.92rem;color:var(--mudo)}
.marca-box{display:grid;grid-template-columns:200px 1fr;gap:26px;align-items:center;background:var(--fundo2);border-radius:18px;padding:26px;margin:30px 0}
.marca-box img{width:100%;height:auto}
.marca-box h2{margin-top:0}
.marca-box p:last-child{margin-bottom:0}
@media (max-width:640px){.marca-box{grid-template-columns:1fr}.marca-box img{max-width:200px}}

/* glossário e contato */
.glossario div{padding:18px 0;border-bottom:1px solid var(--linha);scroll-margin-top:100px}
.glossario dt{font:700 1.1rem var(--fonte-t);color:var(--tinta)}
.glossario dd{margin:4px 0 0}
.contato-lista{list-style:none;padding:0;margin:0 0 26px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contato-lista li{display:flex;gap:14px;padding:18px;border:1px solid var(--linha);border-radius:16px}
.contato-lista li>svg{color:var(--pri);flex:none;margin-top:3px}
.contato-lista b{display:block;color:var(--tinta)}
.mapa{width:100%;height:320px;border:0;border-radius:var(--raio)}
@media (max-width:620px){.contato-lista{grid-template-columns:1fr}}

/* rodapé */
.rodape{background:var(--escuro);color:#9EA6B2;padding:72px 0 0;font-size:.93rem}
.rodape h3{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}
.rodape a{color:#D0D5DC;text-decoration:none;transition:color .2s}.rodape a:hover{color:#fff}
.rod-grid{display:grid;grid-template-columns:1.3fr 1fr 1.25fr 1.05fr;gap:40px}
.rod-logo{height:58px;width:auto;margin-bottom:18px}
.rod-legal{font-size:.82rem;color:#7D8693}
.rodape ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.rod-contato li{display:flex;gap:9px}
.rod-contato .ic{color:var(--pri-brilho);margin-top:2px}
.irmao-card{display:flex;flex-direction:column;gap:10px;background:#fff;border-radius:16px;padding:18px;color:var(--texto)!important;transition:transform .25s}
.irmao-card:hover{transform:translateY(-3px)}
.irmao-card img{height:46px;width:auto;align-self:flex-start}
.irmao-card span{font-size:.88rem;color:var(--texto)}
.irmao-card b{color:var(--pri);font-size:.88rem}
.rod-base{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.08);margin-top:56px;padding:22px 24px;font-size:.84rem}
@media (max-width:900px){.rod-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.rod-grid{grid-template-columns:1fr}}

.wa-flutuante{position:fixed;right:20px;bottom:20px;z-index:60;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px -6px rgba(37,211,102,.6);transition:transform .2s}
.wa-flutuante::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25D366;animation:pulso 2.4s ease-out infinite}
.wa-flutuante:hover{transform:scale(1.07)}
@keyframes pulso{from{transform:scale(1);opacity:.8}to{transform:scale(1.55);opacity:0}}

/* animação ao rolar (só com JS ligado) */
.js .rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js .rv{opacity:1;transform:none}
}

/* segunda logo (LABCIN) */
.marca{display:flex;align-items:center;gap:14px;text-decoration:none}
.marca-sep{width:1px;height:38px;background:var(--linha)}
.rod-logos{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.rod-logos .rod-logo{margin-bottom:0}
@media (max-width:420px){.marca{gap:8px}.marca img{height:40px}.marca-sep{height:28px}}

/* instagram no rodapé */
.rod-sociais{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.rod-sociais a{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid rgba(255,255,255,.14);border-radius:999px;font-size:.88rem;transition:background .2s,border-color .2s}
.rod-sociais a:hover{background:var(--pri);border-color:var(--pri)}
.rod-sociais .ic{color:#fff}
.contato-lista span{color:var(--mudo);font-size:.88rem}
