/* Identidade por área e formatos de página — Paschoaleto & Sedrez, protótipo de 21/10/2026
 * Só cores da marca (ps-design): --brand #00ABAD, --deep #02665C (no escuro, #4FC9C0), --light #00B398,
 * --blue #2E98B8 (no escuro). O site é escuro, então os acentos são os do tema escuro. Texto sobre acento = #12191A.
 * Cada área ganha: tokens (--acc), motivo de fundo no topo, estilo de numeração e de cartão.
 * Cinco formatos reutilizáveis: .fmt-ferramenta, .fmt-passos, .fmt-comparador, .fmt-perguntas, .fmt-nota.
 * Movimento só com função; tudo vai a zero com prefers-reduced-motion e com ?estatico=1 (classe .estatico no <html>).
 * Escopo por atributo data-area (no <body> ou em qualquer bloco). Não altera texto, só apresentação. */

/* ---------- fontes de reserva com as medidas da Poppins e da Open Sans: o texto não salta quando a fonte chega (CLS) ---------- */
@font-face{font-family:"Poppins Fallback";src:local("Arial"),local("Helvetica"),local("Liberation Sans");size-adjust:112.5%;ascent-override:93.3%;descent-override:31.1%;line-gap-override:8.9%}
@font-face{font-family:"Open Sans Fallback";src:local("Arial"),local("Helvetica"),local("Liberation Sans");size-adjust:105.2%;ascent-override:101.2%;descent-override:27.7%;line-gap-override:0%}
[data-area] h1,[data-area] h2,[data-area] h3{font-family:'Poppins','Poppins Fallback',sans-serif}
body[data-area]{font-family:'Open Sans','Open Sans Fallback',system-ui,sans-serif}

/* ---------- tokens por área ---------- */
[data-area="tributario"],[data-area="empresas"]{--acc:#00ABAD;--acc-rgb:0,171,173;--acc2:#8fdbdb;--r:10px}
[data-area="empresarial"]{--acc:#4FC9C0;--acc-rgb:79,201,192;--acc2:#8fdbdb;--r:3px}
[data-area="familia"]{--acc:#00B398;--acc-rgb:0,179,152;--acc2:#8fdbdb;--r:22px}
[data-area="bancario"]{--acc:#2E98B8;--acc-rgb:46,152,184;--acc2:#8fdbdb;--r:4px}
[data-area="saude"]{--acc:#2E98B8;--acc-rgb:46,152,184;--acc2:#00B398;--r:14px}
[data-area]{--on-acc:#12191A}

/* ---------- acento nos títulos, botões e destaques ---------- */
[data-area] .eyebrow{color:var(--acc)}
[data-area] section h2:not(.tf-h){color:var(--acc)}
[data-area] section.cta h2:not(.tf-h){color:#F4F6F6}
[data-area] .txt a:not(.btn),[data-area] .leia a,[data-area] .fontes a{color:var(--acc)}
[data-area] .lei{border-left-color:var(--acc);background:rgba(var(--acc-rgb),.08);border-radius:0 var(--r) var(--r) 0}
[data-area] .aviso{border-left-color:var(--acc)}
[data-area] .num{color:var(--acc)}
[data-area] .tf{border-radius:var(--r);background:radial-gradient(120% 90% at 100% 0%,rgba(var(--acc-rgb),.26),transparent 55%),linear-gradient(165deg,#0A4A40,#03231F)}
[data-area] .tf-btn{background:var(--acc);border-color:var(--acc);color:var(--on-acc)}
[data-area] .tf-btn:hover{background:transparent;color:var(--acc)}
[data-area] .tf-num,[data-area] .ind-n{color:var(--acc)}
[data-area] .ind-c{border-radius:var(--r)}
[data-area] .ind-c::before{background:var(--acc)}
[data-area] .tf-barra:not([data-f="perto"]):not([data-f="fora"]) i{background:var(--acc)}
[data-area] .tf-op:hover span{border-color:var(--acc)}
[data-area] :focus-visible{outline-color:var(--acc)}

/* ---------- motivo de fundo no topo (só CSS e SVG leve) ---------- */
[data-area] main{position:relative;isolation:isolate}
[data-area] main::before{content:"";position:absolute;left:0;right:0;top:0;height:min(760px,100vh);z-index:-1;pointer-events:none;
  -webkit-mask-image:linear-gradient(#000 35%,transparent);mask-image:linear-gradient(#000 35%,transparent)}
[data-area] .hero{position:relative;z-index:1}

/* tributário e para empresas: grade fina de painel */
[data-area="tributario"] main::before,[data-area="empresas"] main::before{
  background:linear-gradient(rgba(0,171,173,.13) 1px,transparent 1px) 0 0/36px 36px,linear-gradient(90deg,rgba(0,171,173,.13) 1px,transparent 1px) 0 0/36px 36px,
  linear-gradient(rgba(0,171,173,.07) 1px,transparent 1px) 0 0/9px 9px}
/* empresarial: folha de contrato, linhas pautadas e margem em filete duplo */
[data-area="empresarial"] main::before{
  background:linear-gradient(90deg,transparent 71px,rgba(79,201,192,.42) 71px,rgba(79,201,192,.42) 72px,transparent 72px,transparent 76px,rgba(79,201,192,.2) 76px,rgba(79,201,192,.2) 77px,transparent 77px),
  repeating-linear-gradient(transparent 0 33px,rgba(79,201,192,.11) 33px 34px)}
/* família: ondas suaves */
[data-area="familia"] main::before{height:min(620px,92vh);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='640' height='140' viewBox='0 0 640 140'%3E%3Cpath d='M0 70Q80 24 160 70T320 70T480 70T640 70' fill='none' stroke='%2300B398' stroke-opacity='.34' stroke-width='2'/%3E%3Cpath d='M0 96Q80 50 160 96T320 96T480 96T640 96' fill='none' stroke='%2300B398' stroke-opacity='.2' stroke-width='2'/%3E%3Cpath d='M0 44Q80 -2 160 44T320 44T480 44T640 44' fill='none' stroke='%238fdbdb' stroke-opacity='.14' stroke-width='2'/%3E%3C/svg%3E") 0 22%/640px 140px repeat-x,
  radial-gradient(60% 50% at 82% 8%,rgba(0,179,152,.2),transparent 70%)}
/* bancário: só a faixa fina de acento no topo (o relógio, anéis e ponteiro, saiu em 21/10/2026) */
[data-area="bancario"] main::before{
  background:linear-gradient(#2E98B8,#2E98B8) 0 0/100% 3px no-repeat}
/* saúde: cruz pequena repetida, bem discreta */
[data-area="saude"] main::before{
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cpath d='M28 22v12M22 28h12' stroke='%232E98B8' stroke-opacity='.3' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E") 0 0/56px 56px,
  radial-gradient(60% 50% at 20% 0%,rgba(0,179,152,.16),transparent 70%)}

/* ---------- cartões, numeração e ícones por área ---------- */
[data-area] .grade .item{padding:22px 22px 24px;border:1px solid rgba(244,246,246,.14);border-radius:var(--r);background:rgba(10,74,64,.28)}
@property --p{syntax:"<percentage>";inherits:false;initial-value:0%}
@keyframes psid-enche{from{--p:0%}}
@keyframes psid-cresce{from{transform:scaleY(0)}}

/* tributário: painel de dados, número em mono, régua de posição */
[data-area="tributario"] .grade .item,[data-area="empresas"] .grade .item{border-top:2px solid var(--acc);background:linear-gradient(rgba(0,171,173,.07),transparent 60%)}
[data-area="tributario"] .num,[data-area="empresas"] .num{display:flex;align-items:center;gap:12px;font-family:'IBM Plex Mono',ui-monospace,Consolas,monospace;font-weight:500;font-variant-numeric:tabular-nums;font-size:.85rem;letter-spacing:.04em}
[data-area="tributario"] .num::after,[data-area="empresas"] .num::after{content:"";flex:1;max-width:140px;height:3px;border-radius:2px;
  background:linear-gradient(var(--acc),var(--acc)) 0 0/var(--p,0%) 100% no-repeat,rgba(244,246,246,.14);animation:psid-enche 1.1s cubic-bezier(.22,.9,.2,1) both;animation-timeline:view();animation-range:entry 0% cover 45%}
.grade>.item:nth-child(1){--p:17%}.grade>.item:nth-child(2){--p:33%}.grade>.item:nth-child(3){--p:50%}.grade>.item:nth-child(4){--p:67%}.grade>.item:nth-child(5){--p:83%}.grade>.item:nth-child(6){--p:100%}
[data-area="tributario"] .tf-num,[data-area="tributario"] .ind-n,[data-area="tributario"] .tf-dt strong,
[data-area="empresas"] .tf-num,[data-area="empresas"] .ind-n,[data-area="empresas"] .tf-dt strong{font-family:'IBM Plex Mono',ui-monospace,Consolas,monospace;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
[data-area="tributario"] .tf-btn,[data-area="empresas"] .tf-btn{border-radius:10px}
.fmt-painel .grade{gap:18px}

/* empresarial: cláusula numerada, margem e filete */
[data-area="empresarial"] .num::before{content:"Cláusula "}
[data-area="empresarial"] .grade .item{border:0;border-left:3px double var(--acc);border-radius:0;background:rgba(244,246,246,.03);padding-left:24px}
[data-area="empresarial"] .num{letter-spacing:.14em;text-transform:uppercase;font-size:.7rem}
[data-area="empresarial"] section h2:not(.tf-h){border-bottom:1px solid rgba(79,201,192,.45);padding-bottom:12px;max-width:none}
[data-area="empresarial"] .tf-btn{border-radius:3px}

/* família: acolhedor, mais respiro, cantos grandes, números em selo redondo */
[data-area="familia"] section.wrap{padding-top:84px;padding-bottom:84px}
[data-area="familia"] .hero{padding-top:104px}
[data-area="familia"] .tf{border-radius:26px}
[data-area="familia"] .grade .item{background:linear-gradient(160deg,rgba(0,179,152,.12),rgba(10,74,64,.3));border-color:rgba(0,179,152,.28);padding:28px 28px 30px}
[data-area="familia"] .num{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(0,179,152,.2);border:1px solid rgba(0,179,152,.55);letter-spacing:0;font-size:.78rem}
[data-area="familia"] .lei{padding:26px 28px}
[data-area="familia"] .btn,[data-area="familia"] .tf-btn{border-radius:999px}
[data-area="familia"] .pn{border-radius:26px}
[data-area="familia"] p,[data-area="familia"] .faq p{line-height:1.8}

/* bancário: urgência, passos grandes, alto contraste */
[data-area="bancario"]{--mute:rgba(255,255,255,.96)}
[data-area="bancario"] .item p,[data-area="bancario"] .passo p,[data-area="bancario"] .lead,[data-area="bancario"] .faq p{color:var(--mute)}
[data-area="bancario"] .num{font-size:2.2rem;line-height:1;font-weight:600;letter-spacing:-.02em}
[data-area="bancario"] .grade .item{border:2px solid rgba(255,255,255,.55);background:#03231F}
[data-area="bancario"] .tf-btn{border-radius:4px}

/* saúde: checklist com ícone Lucide (traço 1,5) e item marcável */
[data-area="saude"] .num{font-size:0}
[data-area="saude"] .num::before{content:"";display:block;width:26px;height:26px;border:1.5px solid var(--acc2);border-radius:7px;
  background:var(--acc2);-webkit-mask:none;mask:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='-3 -3 30 30' fill='none' stroke='%2300B398' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/20px no-repeat}
[data-area="saude"] .grade .item{border-radius:14px;background:rgba(46,152,184,.1)}

[data-area] section.cta .eyebrow{color:#F4F6F6}
[data-area] section.cta .btn{color:#F4F6F6}
[data-area] section.cta .btn.solido{color:#02665C}
[data-area] section.cta .btn:hover{color:#02665C}
/* ---------- formato: ferramenta (a ferramenta no topo; já existe, aqui só o acabamento por área) ---------- */
.fmt-ferramenta .tf{max-width:760px}
@media(min-width:1100px){.fmt-ferramenta .ind{max-width:760px}}

/* ---------- formato: passo a passo (linha do tempo) ---------- */
.fmt-passos .passos{position:relative;gap:0;margin-top:48px;max-width:760px}
.fmt-passos .passos::before{content:"";position:absolute;left:21px;top:22px;bottom:22px;width:2px;background:linear-gradient(var(--acc),rgba(var(--acc-rgb),.18));transform-origin:top;
  animation:psid-linha both linear;animation-timeline:view();animation-range:entry 20% cover 70%}
@keyframes psid-linha{from{transform:scaleY(0)}}
.fmt-passos .passo{position:relative;grid-template-columns:44px 1fr;gap:22px;padding-bottom:34px}
.fmt-passos .passo:last-child{padding-bottom:0}
.fmt-passos .passo span{display:grid;place-items:center;width:44px;height:44px;padding:0;border:2px solid var(--acc);border-radius:var(--r);background:#03231F;color:var(--acc);font-weight:600;font-size:.9rem;position:relative;z-index:1}
.fmt-passos .passo h3{font-size:1.15rem;margin-bottom:8px}
.fmt-passos .passo p{font-size:1rem}
[data-area="tributario"] .fmt-passos .passo span{font-family:'IBM Plex Mono',ui-monospace,Consolas,monospace;font-weight:500;border-radius:6px}
[data-area="tributario"] .fmt-passos .passo>div{padding-left:2px;border-left:0}
[data-area="familia"] .fmt-passos .passo span{border-radius:50%;background:rgba(0,179,152,.2);border-color:rgba(0,179,152,.7)}
[data-area="familia"] .fmt-passos .passo>div{padding:20px 24px;border-radius:22px;background:linear-gradient(160deg,rgba(0,179,152,.1),rgba(10,74,64,.28));border:1px solid rgba(0,179,152,.26)}
[data-area="familia"] .fmt-passos .passos::before{background:repeating-linear-gradient(var(--acc) 0 6px,transparent 6px 12px);opacity:.7}
[data-area="bancario"] .fmt-passos .passo{grid-template-columns:64px 1fr}
[data-area="bancario"] .fmt-passos .passo span{width:64px;height:64px;font-size:1.7rem;background:var(--acc);color:var(--on-acc);border-color:#fff}
[data-area="bancario"] .fmt-passos .passos::before{left:31px;width:3px}
[data-area="empresarial"] .fmt-passos .passo span::before{content:"§\00a0"}
[data-area="empresarial"] .fmt-passos .passo span{width:64px;border-radius:3px;font-size:.8rem}
[data-area="empresarial"] .fmt-passos .passo{grid-template-columns:64px 1fr}
[data-area="empresarial"] .fmt-passos .passos::before{left:31px}

/* linha do tempo para parágrafos em sequência (hub da família) */
.fmt-linha{position:relative;padding-left:44px}
.fmt-linha::before{content:"";position:absolute;left:11px;top:14px;bottom:14px;border-left:2px dotted rgba(var(--acc-rgb,0,179,152),.7)}
.fmt-linha>p{position:relative}
.fmt-linha>p::before{content:"";position:absolute;left:-43px;top:.55em;width:14px;height:14px;border-radius:50%;background:var(--acc,#00B398);box-shadow:0 0 0 5px rgba(var(--acc-rgb,0,179,152),.22)}

/* ---------- formato: comparador (A × B, com critério por linha) ---------- */
.fmt-comparador .txt{max-width:none}
.cmp{width:100%;max-width:960px;margin:40px 0 0;border-collapse:separate;border-spacing:0;border:1px solid rgba(244,246,246,.22);border-radius:var(--r,14px);background:rgba(3,35,31,.6)}
.cmp caption{caption-side:top;text-align:left;padding:0 0 12px;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--acc2)}
.cmp th,.cmp td{padding:18px 20px;text-align:left;vertical-align:top;border-top:1px solid rgba(244,246,246,.12);font-size:.97rem;line-height:1.55;color:rgba(244,246,246,.92)}
.cmp thead th{border-top:0;font-family:'Poppins',sans-serif;font-weight:600;font-size:1.05rem;color:#F4F6F6;padding-top:20px;padding-bottom:20px}
.cmp thead th.a{background:rgba(var(--acc-rgb),.26)}
.cmp thead th.b{background:rgba(244,246,246,.1)}
.cmp thead th:first-child{background:transparent;font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--acc2)}
.cmp tbody th{width:20%;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--acc2)}
.cmp tbody td.a{background:rgba(var(--acc-rgb),.07)}
.cmp .ab{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:10px;border-radius:50%;background:var(--acc);color:var(--on-acc);font:600 .82rem 'Poppins',sans-serif;vertical-align:middle}
.cmp thead th:nth-child(2){border-top-left-radius:0}
.cmp thead th:first-child{border-top-left-radius:var(--r,14px)}
.cmp thead th:last-child{border-top-right-radius:var(--r,14px)}
.cmp tbody tr:last-child>*:first-child{border-bottom-left-radius:var(--r,14px)}
.cmp tbody tr:last-child>*:last-child{border-bottom-right-radius:var(--r,14px)}
.cmp-nota{margin:14px 0 0;font-size:.9rem;color:rgba(244,246,246,.8);max-width:64ch}
.cmp-nota a{color:var(--acc)}
@media(max-width:700px){
  .cmp,.cmp tbody,.cmp tr,.cmp td,.cmp th{display:block}
  .cmp thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .cmp tbody tr{border-top:1px solid rgba(244,246,246,.2)}
  .cmp tbody tr:first-child{border-top:0}
  .cmp tbody th{width:auto;padding:16px 18px 4px;border-top:0}
  .cmp td{border-top:0;padding:8px 18px}
  .cmp td:last-child{padding-bottom:18px}
  .cmp td::before{content:attr(data-l);display:block;margin-bottom:2px;font-family:'Poppins',sans-serif;font-weight:600;font-size:.8rem;letter-spacing:.04em;color:var(--acc)}
}

/* ---------- formato: perguntas (sanfona grande, resposta curta primeiro) ---------- */
.qi{margin:26px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px;max-width:none}
.qi li{margin:0}
.qi a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid rgba(var(--acc-rgb),.6);border-radius:999px;font-size:.88rem;line-height:1.3;color:#F4F6F6!important;background:rgba(var(--acc-rgb),.1)}
.qi a:hover{background:rgba(var(--acc-rgb),.28)}
.fmt-perguntas .faq{margin-top:30px;display:grid;gap:14px;max-width:860px}
.fmt-perguntas details.q{border:1px solid rgba(244,246,246,.2);border-radius:var(--r,14px);background:rgba(10,74,64,.35);scroll-margin-top:90px;transition:border-color .2s,background .2s}
.fmt-perguntas details.q[open]{border-color:var(--acc);background:rgba(var(--acc-rgb),.1)}
.fmt-perguntas details.q summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:44px 1fr 18px;gap:16px;align-items:center;padding:20px 24px;min-height:76px}
.fmt-perguntas details.q summary::-webkit-details-marker{display:none}
.fmt-perguntas details.q summary::before{content:"?";display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--acc);color:var(--on-acc);font:600 1.4rem 'Poppins',sans-serif}
.fmt-perguntas details.q summary::after{content:"";width:11px;height:11px;border-right:2px solid var(--acc);border-bottom:2px solid var(--acc);transform:rotate(45deg) translateY(-3px);transition:transform .2s}
.fmt-perguntas details.q[open] summary::after{transform:rotate(-135deg) translateY(-3px)}
.fmt-perguntas .faq details.q summary h3{margin:0;font-size:clamp(1.05rem,2.4vw,1.3rem);line-height:1.3;color:#F4F6F6}
.fmt-perguntas .faq details.q .a{padding:0 24px 26px 84px}
.fmt-perguntas .faq details.q .a p{margin:0;max-width:62ch;font-size:1rem;color:rgba(244,246,246,.9)}
.fmt-perguntas .faq details.q .r1{display:block;margin-bottom:10px;font-family:'Poppins',sans-serif;font-weight:600;font-size:1.18rem;line-height:1.4;color:#F4F6F6}
.fmt-perguntas details.q summary:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
@media(max-width:560px){
  .fmt-perguntas details.q summary{grid-template-columns:36px 1fr 14px;gap:12px;padding:16px 16px}
  .fmt-perguntas details.q summary::before{width:36px;height:36px;font-size:1.15rem}
  .fmt-perguntas .faq details.q .a{padding:0 16px 22px 16px}
}

/* ---------- formato: nota técnica (editorial) ---------- */
.fmt-nota .txt,.fmt-nota.txt{max-width:64ch;margin-left:auto;margin-right:auto}
.fmt-nota .txt h2,.fmt-nota.txt h2{max-width:none;font-size:clamp(1.7rem,3.6vw,2.4rem);padding-bottom:14px;border-bottom:1px solid rgba(244,246,246,.2)}
.fmt-nota .txt>p:first-of-type,.fmt-nota.txt>p:first-of-type{font-size:1.12rem;color:#F4F6F6}
.fmt-nota-d .txt>p:first-of-type::first-letter,.fmt-nota-d.txt>p:first-of-type::first-letter{float:left;font:600 3.8rem/.85 'Poppins',sans-serif;padding:6px 12px 0 0;color:var(--acc)}
.fmt-nota .txt>p,.fmt-nota.txt>p{line-height:1.85}
.fmt-nota .lei,.fmt-nota.txt .lei{max-width:none;margin-top:30px;font-size:.9rem}
@media(min-width:1180px){.fmt-nota:not(.txt) .lei{float:right;width:250px;margin:6px -290px 24px 28px;border-left-width:2px}}

/* ---------- hub da família (página com estilos em linha: precisa de !important) ---------- */
body[data-area="familia"] section.hub-hero{background-image:radial-gradient(circle at 10% 22%,rgba(255,255,255,.08) 0 150px,transparent 151px),radial-gradient(circle at 92% 88%,rgba(0,179,152,.28) 0 190px,transparent 191px)!important}
body[data-area="familia"] .hub-hero img{border-radius:36px 36px 36px 130px!important}
body[data-area="familia"] .onda{display:block;line-height:0;background:#03231F}
body[data-area="familia"] .onda svg{display:block;width:100%;height:clamp(36px,6vw,84px)}
body[data-area="familia"] section h2{color:var(--acc)!important}
body[data-area="familia"] section .tf h2{color:#F4F6F6!important}
body[data-area="familia"] .hub-cards{gap:20px!important;background:transparent!important;border:0!important;counter-reset:hubc}
body[data-area="familia"] .hub-card{counter-increment:hubc;background:linear-gradient(160deg,rgba(0,179,152,.14),rgba(10,74,64,.34))!important;border:1px solid rgba(0,179,152,.3);border-radius:26px;padding:34px 32px!important}
body[data-area="familia"] .hub-card::before{content:counter(hubc);display:grid;place-items:center;width:38px;height:38px;margin-bottom:18px;border-radius:50%;background:rgba(0,179,152,.22);border:1px solid rgba(0,179,152,.6);font:600 .85rem 'Poppins',sans-serif;color:#00B398}
body[data-area="familia"] .hub-card h3{color:#F4F6F6}
body[data-area="familia"] a.x2{border-radius:26px;border-color:rgba(0,179,152,.3)!important}
body[data-area="familia"] .fmt-linha p{font-size:17px}


/* ======================= 21d: extensão às demais páginas ======================= */
/* painéis SVG e indicadores seguem o acento da área (cor via --acc, no areas.css) */
[data-area] .pn{border-radius:var(--r,14px)}

/* ---------- formato: checklist (lista que o leitor marca) ---------- */
.fmt-checklist ul{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:10px;max-width:780px}
.fmt-checklist li{position:relative;margin:0;padding:15px 18px 15px 64px;min-height:56px;display:flex;align-items:center;border:1px solid rgba(244,246,246,.18);border-radius:var(--r,12px);background:rgba(10,74,64,.3);color:rgba(244,246,246,.94);line-height:1.55;transition:border-color var(--dur,.18s),background var(--dur,.18s)}
.fmt-checklist li::before{content:"";position:absolute;left:18px;top:50%;width:28px;height:28px;margin-top:-14px;border:1.5px solid var(--acc);border-radius:min(8px,var(--r,8px));background:center/20px no-repeat}
.fmt-checklist li[role="checkbox"]{cursor:pointer}
.fmt-checklist li[aria-checked="true"]{border-color:var(--acc);background:rgba(var(--acc-rgb),.14)}
.fmt-checklist li[aria-checked="true"]::before{background-color:var(--acc);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2312191A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")}
.fmt-checklist li:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.fmt-checklist .ck-n{margin:16px 0 0;font:600 .8125rem 'Poppins',sans-serif;letter-spacing:.05em;color:var(--acc2)}

/* ---------- formato: cronologia (cartões ligados por uma linha) ---------- */
.fmt-cronologia .grade,.fmt-cronologia .prazos{position:relative;display:block;max-width:840px;margin-top:44px;border-top:0}
.fmt-cronologia .grade::before,.fmt-cronologia .prazos::before{content:"";position:absolute;left:27px;top:22px;bottom:22px;width:2px;background:linear-gradient(var(--acc),rgba(var(--acc-rgb),.2));transform-origin:top;animation:psid-linha both linear;animation-timeline:view();animation-range:entry 15% cover 65%}
.fmt-cronologia .grade>.item{position:relative;margin:0 0 16px 78px}
.fmt-cronologia .grade>.item:last-child,.fmt-cronologia .prazos>div:last-child{margin-bottom:0}
[data-area] .fmt-cronologia .grade>.item>.num{position:absolute;left:-78px;top:16px;display:grid;place-items:center;width:56px;min-height:44px;margin:0;padding:6px 3px;line-height:1.1;text-align:center;white-space:normal;box-sizing:border-box;border:2px solid var(--acc);border-radius:min(50%,var(--r,50%));background:#03231F;color:var(--acc);font:600 .85rem 'Poppins',sans-serif;letter-spacing:0;text-transform:none}
[data-area] .fmt-cronologia .grade>.item>.num::before,[data-area] .fmt-cronologia .grade>.item>.num::after{content:none;display:none}
.fmt-cronologia .prazos>div{position:relative;display:grid;grid-template-columns:minmax(110px,170px) 1fr;gap:18px;align-items:start;margin:0 0 16px 78px;padding:20px 22px;border:1px solid rgba(244,246,246,.18);border-radius:var(--r,12px);background:rgba(10,74,64,.3)}
.fmt-cronologia .prazos>div::before{content:"";position:absolute;left:-58px;top:26px;width:14px;height:14px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 5px rgba(var(--acc-rgb),.25)}
.fmt-cronologia .prazos strong{font-family:'Poppins',sans-serif;font-weight:600;font-size:1.15rem;color:var(--acc)}
@media(max-width:560px){
  .fmt-cronologia .grade>.item,.fmt-cronologia .prazos>div{margin-left:56px}
  [data-area] .fmt-cronologia .grade>.item>.num{left:-56px;width:46px;min-height:36px;font-size:.68rem}
  .fmt-cronologia .grade::before,.fmt-cronologia .prazos::before{left:22px}
  .fmt-cronologia .prazos>div{grid-template-columns:1fr;gap:6px;padding:16px}
  .fmt-cronologia .prazos>div::before{left:-40px}
}

/* ---------- formato: painel nas demais áreas (cartões com o acento) ---------- */
[data-area] .fmt-painel .grade .item{box-shadow:inset 0 3px 0 var(--acc)}
[data-area="familia"] .fmt-painel .grade .item{box-shadow:none}

/* ---------- formato: nota técnica ---------- */
.fmt-nota .ponto .lei,.fmt-nota .ponto blockquote{border-left-color:var(--acc)}
.fmt-nota .hero h1{max-width:none}

/* ---------- passo a passo: saúde ---------- */
[data-area="saude"] .fmt-passos .passo span{border-radius:12px;background:linear-gradient(rgba(46,152,184,.18),rgba(46,152,184,.18)),#03231F}

/* comparador na área empresarial */
[data-area="empresarial"] .cmp{border-radius:3px}
[data-area="empresarial"] .cmp caption{letter-spacing:.22em}
[data-area="empresarial"] .cmp .ab{border-radius:3px}

/* ---------- páginas-hub (sem <main>, estilos em linha) ---------- */
body[data-area] section.hub-hero{position:relative;isolation:isolate}
body[data-area] section.hub-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 60%);mask-image:linear-gradient(90deg,transparent,#000 60%)}
body[data-area="tributario"] section.hub-hero::before{background:linear-gradient(rgba(244,246,246,.09) 1px,transparent 1px) 0 0/36px 36px,linear-gradient(90deg,rgba(244,246,246,.09) 1px,transparent 1px) 0 0/36px 36px}
body[data-area="saude"] section.hub-hero::before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cpath d='M28 22v12M22 28h12' stroke='%23F4F6F6' stroke-opacity='.22' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E") 0 0/56px 56px}
body[data-area]:not([data-area="familia"]) section h2:not(.tf-h){color:var(--acc)!important}
body[data-area]:not([data-area="familia"]) section .tf h2{color:#F4F6F6!important}
body[data-area]:not([data-area="familia"]) .hub-cards{gap:18px!important;background:transparent!important;border:0!important;counter-reset:hubc}
body[data-area]:not([data-area="familia"]) .hub-card{counter-increment:hubc;position:relative;background:linear-gradient(rgba(var(--acc-rgb),.08),rgba(10,74,64,.3) 70%)!important;border:1px solid rgba(244,246,246,.14);border-top:3px solid var(--acc);border-radius:var(--r);padding:30px 28px!important}
body[data-area]:not([data-area="familia"]) .hub-card::before{content:counter(hubc,decimal-leading-zero);display:block;margin-bottom:16px;font:500 .85rem 'IBM Plex Mono',ui-monospace,Consolas,monospace;letter-spacing:.06em;color:var(--acc)}
body[data-area="saude"] .hub-card::before{font-family:'Poppins',sans-serif;font-weight:600}
body[data-area]:not([data-area="familia"]) a.x2{border-radius:var(--r);border-color:rgba(var(--acc-rgb),.35)!important;transition:border-color var(--dur-1,.15s),transform var(--dur-1,.15s)}
body[data-area]:not([data-area="familia"]) a.x2:hover{border-color:var(--acc)!important;transform:translateY(-2px)}
body[data-area]:not([data-area="familia"]) .fmt-linha p{font-size:17px}
body[data-area] .hub-col{border-top-color:var(--acc)!important}
.estatico a.x2:hover{transform:none!important}
@media(prefers-reduced-motion:reduce){body[data-area] a.x2:hover{transform:none!important}}

body[data-area] [style*="color:#00ABAD"]{color:var(--acc)!important}
body[data-area] [style*="solid #00ABAD"]{border-top-color:var(--acc)!important}

/* ---------- movimento: tudo desligado com prefers-reduced-motion e ?estatico=1 ---------- */
.estatico [data-area] *,.estatico [data-area] *::before,.estatico [data-area] *::after,.estatico[data-area] *::after{animation:none!important;transition:none!important}
.estatico [data-area="tributario"] .num::after,.estatico [data-area="empresas"] .num::after{background-size:var(--p) 100%,100% 100%}
@media(prefers-reduced-motion:reduce){
  [data-area] *,[data-area] *::before,[data-area] *::after,[data-area] main::after{animation:none!important;transition:none!important}
}

.fmt-cronologia .prazos+.txt{margin-top:30px}
