/* ==========================================================================
   Company Group — estilo do site
   Linguagem: desenho técnico (circunferências, eixo, cotas), como no logo.
   Para trocar o bronze, mude --bronze, --bronze-texto e --bronze-claro.
   ========================================================================== */
:root{
  --preto:#000000;
  --branco:#ffffff;
  --concreto:#dcdbd7;
  --nevoa:#f1f1ef;
  --grafite:#3b3c3d;
  --cinza:#727477;
  --bronze:#9c7a4e;        /* traços e detalhes */
  --bronze-texto:#7a5d36;  /* texto bronze sobre claro (contraste AA) */
  --bronze-claro:#c4a173;  /* bronze sobre preto */
  --traco:#cfcdc8;
  --traco-escuro:rgba(255,255,255,.18);

  --sans:'Jost',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --serif:'Libre Baskerville',Georgia,serif;

  /* escala tipográfica (razão 4:3, base 17px) */
  --t-1:.8125rem; --t0:1.0625rem; --t1:1.4rem; --t2:1.875rem; --t3:2.5rem; --t4:3.33rem; --t5:4.44rem;

  --maxw:1360px; --gut:clamp(20px,4.5vw,64px);
  --head:84px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:var(--t0);line-height:1.6;font-weight:400;color:var(--grafite);background:var(--branco);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit}
p{margin:0 0 1em}
h1,h2,h3{margin:0;font-weight:300;color:var(--preto);line-height:1.1}
h1{font-size:clamp(2.5rem,6.2vw,var(--t5));letter-spacing:-.01em}
h2{font-size:clamp(2rem,4vw,var(--t4));letter-spacing:-.005em}
h3{font-size:clamp(1.25rem,1.8vw,var(--t1));font-weight:400;line-height:1.25}
.escuro{background:var(--preto);color:rgba(255,255,255,.74)}
.escuro h1,.escuro h2,.escuro h3{color:var(--branco)}
.nevoa{background:var(--nevoa)}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--gut)}
.bloco{padding:clamp(88px,13vh,160px) 0}
.texto{max-width:62ch}
.intro{font-size:clamp(1.08rem,1.4vw,1.25rem);line-height:1.55;max-width:46ch}
.assinatura{font-family:var(--serif);font-size:1rem;line-height:1.7;letter-spacing:.01em}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:8px;z-index:200;background:#fff;color:#000;padding:10px 16px}
.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--bronze);outline-offset:3px}

/* Botões e links ------------------------------------------------------- */
.botao{display:inline-flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:1rem;font-weight:500;padding:17px 30px;border:1px solid var(--preto);background:var(--preto);color:var(--branco);text-decoration:none;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.botao:hover{background:var(--branco);color:var(--preto)}
.escuro .botao{background:var(--branco);color:var(--preto);border-color:var(--branco)}
.escuro .botao:hover{background:transparent;color:var(--branco)}
.botao[disabled]{opacity:.55;cursor:wait}
.link{font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;text-decoration-color:var(--bronze)}
.link:hover{text-decoration-thickness:2px}
.escuro .link{text-decoration-color:var(--bronze-claro)}

/* Cabeçalho -------------------------------------------------------------- */
.topo{position:absolute;inset:0 0 auto 0;z-index:50;height:var(--head);color:var(--branco)}
.topo.claro{position:relative;color:var(--preto);border-bottom:1px solid var(--traco)}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;height:100%;gap:24px}
.marca{display:flex;align-items:center;gap:14px;text-decoration:none}
.marca img{height:36px;width:auto}
.marca .m-escura{display:none}
.topo.claro .m-clara{display:none}
.topo.claro .m-escura{display:block}
.marca span{font-size:.82rem;letter-spacing:.42em;text-transform:uppercase;white-space:nowrap}
.menu{display:flex;align-items:center;gap:clamp(22px,2.6vw,40px)}
.menu a{font-size:.95rem;text-decoration:none;padding:6px 0;border-bottom:1px solid transparent}
.menu a:hover{border-bottom-color:currentColor}
.menu a[aria-current=page]{border-bottom-color:var(--bronze)}
.menu .botao{padding:12px 20px;font-size:.92rem;background:transparent;color:inherit;border-color:currentColor}
.menu .botao:hover{background:var(--branco);color:var(--preto);border-color:var(--branco)}
.topo.claro .menu .botao:hover{background:var(--preto);color:var(--branco);border-color:var(--preto)}
.hamb{display:none;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;padding:10px;margin-right:-10px;background:none;border:0;color:inherit;cursor:pointer}
.hamb span{height:1.5px;background:currentColor;transition:transform .25s,opacity .25s}
@media(max-width:960px){
  .hamb{display:flex}
  .menu{position:fixed;inset:var(--head) 0 auto 0;flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gut) 28px;background:var(--branco);color:var(--preto);border-bottom:1px solid var(--traco);visibility:hidden;opacity:0;transition:opacity .2s}
  .menu a{padding:16px 0;border-bottom:1px solid var(--traco);font-size:1.05rem}
  .menu a[aria-current=page]{color:var(--bronze-texto);border-bottom-color:var(--traco)}
  .menu .botao{margin-top:22px;border-color:var(--preto)}
  body.menu-aberto .menu{visibility:visible;opacity:1}
  body.menu-aberto .topo{position:fixed;background:var(--branco);color:var(--preto);border-bottom:1px solid var(--traco)}
  body.menu-aberto .m-clara{display:none} body.menu-aberto .m-escura{display:block}
  body.menu-aberto .hamb span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  body.menu-aberto .hamb span:nth-child(2){opacity:0}
  body.menu-aberto .hamb span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
}
@media(max-width:420px){ .marca span{letter-spacing:.28em;font-size:.74rem} .marca img{height:30px} }

/* Fotos: sem arquivo, fica o tom da superfície ----------------------------- */
.foto{position:relative;overflow:hidden;background:#2b2b2a}
.foto.clara{background:var(--concreto)}
.foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.foto[data-falta]::after{content:attr(data-falta);position:absolute;left:16px;right:16px;bottom:14px;font-size:.75rem;color:rgba(255,255,255,.45)}
.foto.clara[data-falta]::after{color:rgba(0,0,0,.45)}
html:not(.rotulos) .foto[data-falta]::after,.foto:has(img)::after{display:none}

/* Abertura: o desenho do logo ------------------------------------------------ */
.abertura{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;padding:calc(var(--head) + 40px) 0 64px}
.abertura .desenho{position:absolute;top:50%;right:-12vw;width:min(88vw,1080px);transform:translateY(-50%);pointer-events:none}
.abertura .desenho .c{fill:none;stroke:rgba(255,255,255,.24);stroke-width:1.1}
.abertura .desenho .eixo{stroke:var(--bronze-claro);stroke-width:1.1}
.abertura .wrap{position:relative;z-index:1}
.abertura h1{max-width:14.5ch;margin-bottom:.45em}
.abertura .intro{color:rgba(255,255,255,.76);margin-bottom:2.4rem}
.abertura .acoes{display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px}
.abertura .assinatura{position:absolute;left:var(--gut);bottom:-34px;margin:0;color:rgba(255,255,255,.5)}
@media(max-width:760px){
  .abertura{align-items:flex-end}
  .abertura .desenho{top:24%;right:-40vw;width:150vw}
  .abertura .assinatura{position:static;margin-top:3rem}
}
/* o único movimento automático do site: o traço se desenha uma vez */
@media(prefers-reduced-motion:no-preference){
  .abertura .desenho .c,.abertura .desenho .eixo{stroke-dasharray:1;stroke-dashoffset:1;animation:traco 2.2s cubic-bezier(.6,.05,.3,1) forwards}
  .abertura .desenho .c2{animation-delay:.35s}
  .abertura .desenho .eixo{animation-duration:1.2s;animation-delay:1.3s}
  .abertura .wrap{animation:surge 1s ease .9s both}
}
@keyframes traco{to{stroke-dashoffset:0}}
@keyframes surge{from{opacity:0}to{opacity:1}}

/* Objetivos: lista que abre ao clicar ------------------------------------- */
.objetivos-grade{display:grid;gap:40px}
@media(min-width:1000px){ .objetivos-grade{grid-template-columns:4fr 8fr;gap:64px} }
.objetivos-grade>header h2{margin-bottom:.5em}
.objetivo{border-top:1px solid var(--traco)}
.objetivo:last-child{border-bottom:1px solid var(--traco)}
.objetivo>button{all:unset;box-sizing:border-box;width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 24px;padding:26px 0;cursor:pointer}
.objetivo>button:focus-visible{outline:2px solid var(--bronze);outline-offset:4px}
.objetivo .nome{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:300;color:var(--preto);line-height:1.05}
.objetivo .quem{grid-column:1;font-size:.98rem;color:var(--cinza)}
.objetivo .sinal{grid-row:1/3;grid-column:2;width:28px;height:28px;position:relative}
.objetivo .sinal::before,.objetivo .sinal::after{content:"";position:absolute;left:50%;top:50%;width:22px;height:1.5px;background:var(--preto);transform:translate(-50%,-50%);transition:transform .3s}
.objetivo .sinal::after{transform:translate(-50%,-50%) rotate(90deg)}
.objetivo>button[aria-expanded=true] .sinal::after{transform:translate(-50%,-50%) rotate(0)}
.objetivo>button[aria-expanded=true] .nome{color:var(--bronze-texto)}
.objetivo .painel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s ease}
.objetivo .painel>div{overflow:hidden}
.objetivo.aberto .painel{grid-template-rows:1fr}
.painel-conteudo{display:grid;gap:28px;padding:4px 0 40px}
@media(min-width:720px){ .painel-conteudo{grid-template-columns:5fr 7fr;gap:40px} }
.painel-conteudo .foto{aspect-ratio:4/5}
.painel-conteudo h3{margin-bottom:.8em;color:var(--preto)}
.lista{margin:0 0 28px;padding:0;list-style:none}
.lista li{position:relative;padding:10px 0 10px 26px;border-bottom:1px solid var(--traco)}
.lista li::before{content:"";position:absolute;left:0;top:1.15em;width:12px;height:1px;background:var(--bronze)}
@media(prefers-reduced-motion:reduce){ .objetivo .painel,.objetivo .sinal::before,.objetivo .sinal::after{transition:none} }

/* Especialidades do grupo (sem nomes) --------------------------------------- */
.especialidades{border-top:1px solid var(--traco)}
.especialidade{display:grid;gap:8px;padding:28px 0;border-bottom:1px solid var(--traco)}
.especialidade h3{font-size:clamp(1.35rem,2.2vw,1.75rem);font-weight:300;color:var(--preto)}
.especialidade p{margin:0;max-width:60ch;color:var(--grafite)}
@media(min-width:760px){ .especialidade{grid-template-columns:5fr 7fr;gap:32px;align-items:baseline} }

/* Declaração com foto ----------------------------------------------------- */
.declaracao{display:grid;gap:40px;align-items:center}
.declaracao .foto{aspect-ratio:3/2}
.declaracao blockquote{margin:0;font-family:var(--serif);font-size:clamp(1.45rem,2.6vw,2.15rem);line-height:1.45;color:var(--preto);max-width:24ch}
@media(min-width:960px){ .declaracao{grid-template-columns:7fr 5fr;gap:72px} }

/* Etapas: uma sequência real, sobre um eixo -------------------------------- */
.etapas-topo{display:grid;gap:24px;margin-bottom:64px}
@media(min-width:960px){ .etapas-topo{grid-template-columns:5fr 7fr;align-items:end} }
.etapas{list-style:none;margin:0;padding:0;display:grid;gap:0;position:relative}
.etapas li{position:relative;padding:0 0 36px 44px}
.etapas li::before{content:"";position:absolute;left:6px;top:8px;width:9px;height:9px;border-radius:50%;border:1px solid var(--bronze-claro);background:var(--preto)}
.etapas::before{content:"";position:absolute;left:10.5px;top:12px;bottom:40px;width:1px;background:var(--traco-escuro)}
.etapas .n{display:block;font-family:var(--serif);font-size:.95rem;color:var(--bronze-claro);margin-bottom:6px}
.etapas h3{margin-bottom:6px}
.etapas p{margin:0;font-size:.98rem;color:rgba(255,255,255,.62)}
@media(min-width:960px){
  .etapas{grid-template-columns:repeat(6,1fr);gap:28px}
  .etapas::before{left:0;right:0;top:4.5px;bottom:auto;width:auto;height:1px}
  .etapas li{padding:40px 0 0}
  .etapas li::before{left:0;top:0}
}

@media(min-width:960px){ .etapas.etapas-4{grid-template-columns:repeat(4,1fr);gap:40px} }

/* Tamanhos de contratação: diagramas de circunferências ------------------ */
.escopos{display:grid;gap:56px;margin-top:64px}
@media(min-width:900px){ .escopos{grid-template-columns:repeat(3,1fr);gap:48px} }
.escopo svg{width:150px;height:96px;margin-bottom:26px}
.escopo svg circle{fill:none;stroke:var(--preto);stroke-width:1}
.escopo svg .destaque{stroke:var(--bronze);stroke-width:1.4}
.escopo h3{margin-bottom:8px;color:var(--preto)}
.escopo p{margin:0;color:var(--cinza);max-width:34ch}
.frase-final{margin-top:72px;font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.55rem);color:var(--preto);max-width:36ch}

/* Cotas: medidas como em planta ------------------------------------------- */
.cotas{display:grid;gap:44px;margin-top:56px}
@media(min-width:900px){ .cotas{grid-template-columns:repeat(3,1fr);gap:40px} }
.cota .linha{position:relative;height:14px;margin-bottom:18px}
.cota .linha::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--bronze)}
.cota .linha::after{content:"";position:absolute;inset:0;border-left:1px solid var(--bronze);border-right:1px solid var(--bronze)}
.cota b{display:block;font-weight:300;font-size:clamp(1.9rem,3.2vw,2.6rem);color:var(--preto);line-height:1.1}
.cota span{display:block;margin-top:6px;color:var(--cinza)}
.escuro .cota b{color:var(--branco)}
.escuro .cota span{color:rgba(255,255,255,.6)}
.escuro .cota .linha::before{background:var(--bronze-claro)}
.escuro .cota .linha::after{border-color:var(--bronze-claro)}

/* Chamada final --------------------------------------------------------------- */
.chamada{display:grid;gap:36px;align-items:end}
.chamada h2{max-width:16ch}
@media(min-width:900px){ .chamada{grid-template-columns:8fr 4fr} .chamada .acoes{justify-self:end} }

/* Página interna: abertura ----------------------------------------------------- */
.pagina-topo{padding:clamp(72px,12vh,140px) 0 clamp(56px,9vh,104px)}
.pagina-topo h1{font-size:clamp(2.3rem,5.4vw,4.2rem);max-width:16ch;margin-bottom:.5em}
.pagina-topo.com-foto .grade{display:grid;gap:44px;align-items:end}
.pagina-topo.com-foto .foto{aspect-ratio:4/5}
@media(min-width:960px){ .pagina-topo.com-foto .grade{grid-template-columns:7fr 5fr;gap:72px} }

/* Duas colunas ------------------------------------------------------------------ */
.duas{display:grid;gap:44px;align-items:center}
.duas .foto{aspect-ratio:4/5}
.duas .foto.larga{aspect-ratio:3/2}
@media(min-width:960px){ .duas{grid-template-columns:1fr 1fr;gap:80px} .duas.inverte>:first-child{order:2} }

.fotos-par{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fotos-par .foto{aspect-ratio:4/5}
.fotos-par .foto:last-child{margin-top:clamp(32px,6vw,80px)}

/* Comparação --------------------------------------------------------------------- */
.comparacao{width:100%;border-collapse:collapse;margin-top:48px}
.comparacao th{text-align:left;font-weight:500;font-size:1rem;color:var(--cinza);padding:0 24px 16px 0}
.comparacao th:last-child{color:var(--bronze-texto)}
.comparacao td{width:50%;padding:20px 24px 20px 0;border-top:1px solid var(--traco);vertical-align:top}
.comparacao td:first-child{color:var(--cinza)}
.comparacao td:last-child{color:var(--preto)}
.nota{margin-top:18px;font-size:.92rem;color:var(--cinza)}
@media(max-width:620px){
  .comparacao thead{display:none}
  .comparacao tr{display:block;padding:18px 0;border-top:1px solid var(--traco)}
  .comparacao td{display:block;width:auto;border:0;padding:2px 0}
  .comparacao td:first-child{text-decoration:line-through;text-decoration-color:var(--traco)}
}

/* Soluções ------------------------------------------------------------------------ */
.atalhos{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:30px}
.atalhos a{text-decoration:none;border-bottom:1px solid var(--traco);padding-bottom:4px}
.atalhos a:hover{border-bottom-color:var(--bronze)}
.solucao{scroll-margin-top:24px}
.solucao .quem{color:var(--cinza);margin-bottom:1.4rem}
.escuro .solucao .quem,.solucao.escuro .quem{color:rgba(255,255,255,.6)}
.escuro .lista li{border-bottom-color:var(--traco-escuro)}
.escuro .lista li::before{background:var(--bronze-claro)}
.aplicacoes{margin:-8px 0 28px;color:var(--cinza)}

/* Estrutura ------------------------------------------------------------------------- */
.equipamentos{list-style:none;margin:0;padding:0}
.equipamentos li{display:flex;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid var(--traco-escuro)}
.equipamentos b{font-weight:400;color:var(--branco)}
.locais{display:grid;gap:0;margin-top:48px}
.local{display:grid;grid-template-columns:1fr auto;gap:4px 24px;padding:24px 0;border-top:1px solid var(--traco)}
.local:last-child{border-bottom:1px solid var(--traco)}
.local h3{font-weight:300;font-size:clamp(1.4rem,2.4vw,1.9rem);color:var(--preto)}
.local .qtd{align-self:center;color:var(--bronze-texto)}
.local p{grid-column:1/-1;margin:0;color:var(--cinza)}

/* Formulário ------------------------------------------------------------------------- */
.form-grade{display:grid;gap:56px}
@media(min-width:1000px){ .form-grade{grid-template-columns:4fr 7fr;gap:96px} }
form{max-width:660px}
.campo{margin-bottom:28px;border:0;padding:0}
.campo>label,.campo>legend{display:block;font-size:.95rem;font-weight:500;color:var(--preto);margin-bottom:8px;padding:0}
.campo .opc{font-weight:400;color:var(--cinza)}
.duplo{display:grid;gap:0 28px}
@media(min-width:620px){ .duplo{grid-template-columns:1fr 1fr} }
input[type=text],input[type=tel],input[type=email],select,textarea{width:100%;font:inherit;font-size:1.05rem;color:var(--preto);background:transparent;border:0;border-bottom:1px solid var(--traco);border-radius:0;padding:10px 0}
textarea{min-height:120px;resize:vertical;line-height:1.5}
select{appearance:none;-webkit-appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23727477' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right 4px center;padding-right:26px}
input:focus,select:focus,textarea:focus{outline:none;border-bottom-color:var(--preto)}
::placeholder{color:#a3a4a6}
.opcoes{display:flex;flex-wrap:wrap;gap:10px}
.opcoes input{position:absolute;opacity:0;pointer-events:none}
.opcoes label{padding:11px 18px;border:1px solid var(--traco);cursor:pointer;transition:border-color .15s,background .15s}
.opcoes label:hover{border-color:var(--cinza)}
.opcoes input:checked+label{background:var(--preto);color:var(--branco);border-color:var(--preto)}
.opcoes input:focus-visible+label{outline:2px solid var(--bronze);outline-offset:2px}
.campo .erro{display:none;margin-top:8px;font-size:.88rem;color:#a2381c}
.campo.invalido .erro{display:block}
.campo.invalido input,.campo.invalido select{border-bottom-color:#a2381c}
.aceite{display:flex;gap:12px;align-items:flex-start;font-size:.92rem;line-height:1.5;color:var(--cinza);margin:4px 0 28px}
.aceite input{margin-top:4px;accent-color:var(--preto)}
.aceite.invalido{color:#a2381c}
.isca{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.aviso-erro{display:none;margin-top:16px;color:#a2381c}
.aviso-erro.mostra{display:block}
.enviado{display:none;padding:36px 0;border-top:1px solid var(--traco)}
.enviado.mostra{display:block}
.enviado h2{font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:.5em}
.canais{list-style:none;margin:36px 0 0;padding:0}
.canais li{padding:14px 0;border-top:1px solid var(--traco)}
.canais small{display:block;color:var(--cinza)}
.canal-principal{margin-top:40px;padding:28px 0 32px;border-top:1px solid var(--traco);border-bottom:1px solid var(--traco)}
.canal-principal small{display:block;color:var(--cinza)}
.canal-principal .numero{font-weight:300;font-size:clamp(1.8rem,3vw,2.4rem);color:var(--preto);margin:4px 0 18px;font-variant-numeric:tabular-nums}
.sub-canal{font-size:var(--t1);font-weight:500;margin-top:44px}
.canais .desc{display:block;margin-top:4px;font-size:.92rem;color:var(--cinza)}
.depois{list-style:none;margin:24px 0 0;padding:0;counter-reset:d}
.depois li{counter-increment:d;position:relative;padding:0 0 18px 34px}
.depois li::before{content:counter(d);position:absolute;left:0;top:0;font-family:var(--serif);color:var(--bronze-texto)}
[hidden]{display:none!important}

/* Texto longo (privacidade) ------------------------------------------------------------- */
.longo{max-width:68ch}
.longo h2{font-size:var(--t1);font-weight:500;margin:2.2em 0 .5em}
.longo ul{padding-left:1.2em}

/* Rodapé ---------------------------------------------------------------------------------- */
.rodape{padding:clamp(72px,11vh,120px) 0 32px}
.rodape .grade{display:grid;gap:48px;padding-bottom:56px}
@media(min-width:900px){ .rodape .grade{grid-template-columns:6fr 3fr 3fr} }
.rodape img{width:220px;height:auto}
.rodape .assinatura{margin-top:22px;color:rgba(255,255,255,.7)}
.rodape h2{font-size:1rem;font-weight:500;letter-spacing:0;margin-bottom:14px}
.rodape ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.rodape a{text-decoration:none}
.rodape a:hover{text-decoration:underline;text-underline-offset:4px}
.rodape .fim{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-top:24px;border-top:1px solid var(--traco-escuro);font-size:.88rem;color:rgba(255,255,255,.5)}

/* Contato: escolha do assunto -------------------------------------------------------------- */
.assuntos{margin-top:56px;border-top:1px solid var(--traco)}
.assunto{display:grid;gap:18px;padding:32px 0;border-bottom:1px solid var(--traco)}
.assunto h2{font-size:clamp(1.4rem,2.4vw,1.9rem);font-weight:300;margin-bottom:.35em}
.assunto p{margin:0;color:var(--cinza);max-width:52ch}
.assunto-acao{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
.assunto-acao .numero{font-size:1.1rem;color:var(--preto);font-variant-numeric:tabular-nums;min-width:9.5em}
.assunto-acao .botao{width:15.5em}
@media(max-width:420px){ .assunto-acao .botao{width:100%} }
.botao.vazado{background:transparent;color:var(--preto)}
.botao.vazado:hover{background:var(--preto);color:var(--branco)}
@media(min-width:900px){ .assunto{grid-template-columns:7fr 5fr;align-items:center;gap:40px} .assunto-acao{justify-content:flex-end} }

/* Botão flutuante do WhatsApp (abre um menu de assuntos) ------------------------------------ */
.flutuante{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:85;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.flutuante-botao{width:58px;height:58px;border-radius:50%;border:0;background:var(--preto);color:var(--branco);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 0 0 1px rgba(255,255,255,.45),0 6px 20px rgba(0,0,0,.22);transition:transform .2s}
.flutuante-botao:hover{transform:scale(1.05)}
.flutuante-botao svg{width:28px;height:28px}
.flutuante.aberto .flutuante-botao{background:var(--bronze-texto)}
.flutuante-menu{width:min(320px,calc(100vw - 32px));background:var(--branco);border:1px solid var(--traco);box-shadow:0 14px 40px rgba(0,0,0,.16);padding:8px 0}
.flutuante-titulo{margin:0;padding:12px 18px 8px;font-size:.92rem;color:var(--cinza)}
.flutuante-menu a{display:block;padding:12px 18px;text-decoration:none;border-top:1px solid var(--traco)}
.flutuante-menu a:hover,.flutuante-menu a:focus-visible{background:var(--nevoa)}
.flutuante-menu b{display:block;font-weight:500;color:var(--preto)}
.flutuante-menu span{display:block;font-size:.88rem;color:var(--cinza)}
@media(min-width:700px){ .flutuante{right:24px;bottom:24px} }

/* Aviso de cookies (LGPD) ------------------------------------------------------------------ */
.cookies{position:fixed;left:12px;right:12px;bottom:12px;z-index:90;display:none;flex-wrap:wrap;align-items:center;gap:12px 18px;padding:16px 18px;background:var(--preto);color:rgba(255,255,255,.8);font-size:.92rem;line-height:1.5;border:1px solid rgba(255,255,255,.16)}
.cookies.mostra{display:flex}
.cookies p{margin:0;flex:1 1 260px}
.cookies .b{display:flex;gap:10px}
.cookies button{font:inherit;font-size:.92rem;padding:10px 16px;cursor:pointer;border:1px solid rgba(255,255,255,.5);background:transparent;color:#fff}
.cookies button.ok{background:#fff;color:#000;border-color:#fff}
@media(min-width:700px){ .cookies{left:20px;right:auto;bottom:20px;max-width:520px} }
