/* BookC — site institucional v1.7.0 */
@font-face{font-family:"Jakarta";src:url(../fonts/jakarta.woff2) format("woff2");font-weight:200 800;font-display:swap}

:root{
  --tinta:#011d6c;--tinta-2:#0a2a8a;--azul:#1c6afd;--azul-esc:#1452c9;--ceu:#59b8ff;
  --fundo:#f4f7fc;--sup:#ffffff;--sup-2:#eef2fa;--texto:#16213a;--mudo:#55627d;--linha:#dde4f0;
  --pauta:rgba(28,106,253,.07);--margem:rgba(28,106,253,.18);
  --sombra:0 1px 2px rgba(1,29,108,.06),0 18px 40px -18px rgba(1,29,108,.28);
  --tn:#e8590c;--ri:#1c6afd;--rcpn:#7c3aed;--tp:#16a34a;--rtd:#0d9488;--rcpj:#4f46e5;
  --r-s:8px;--r-m:14px;--r-l:22px;
  --larg:1200px;--gut:16px;
  color-scheme:light;
}
:root[data-theme="dark"]{
  --fundo:#081230;--sup:#0e1b3f;--sup-2:#13234d;--texto:#e6ecf8;--mudo:#9aa8c6;--linha:#22345f;
  --pauta:rgba(89,184,255,.06);--margem:rgba(89,184,255,.16);
  --sombra:0 1px 2px rgba(0,0,0,.3),0 24px 48px -20px rgba(0,0,0,.6);
  color-scheme:dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --fundo:#081230;--sup:#0e1b3f;--sup-2:#13234d;--texto:#e6ecf8;--mudo:#9aa8c6;--linha:#22345f;
    --pauta:rgba(89,184,255,.06);--margem:rgba(89,184,255,.16);
    --sombra:0 1px 2px rgba(0,0,0,.3),0 24px 48px -20px rgba(0,0,0,.6);
    color-scheme:dark;
  }
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fundo);color:var(--texto);font:400 1rem/1.6 "Jakarta",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{margin:0;line-height:1.12;letter-spacing:-.022em;font-weight:800}
h2{font-size:clamp(1.75rem,1.1rem + 2.6vw,2.75rem);max-width:22ch}
h3{font-size:1.15rem;letter-spacing:-.01em;font-weight:700}
p{margin:0}
:focus-visible{outline:3px solid var(--ceu);outline-offset:3px;border-radius:6px}
[hidden]{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pular{position:absolute;left:-999px;top:8px;z-index:100;background:var(--azul);color:#fff;padding:.6rem 1rem;border-radius:var(--r-s)}
.pular:focus{left:8px}
.wrap{width:100%;max-width:var(--larg);margin:0 auto;padding:0 var(--gut)}
@media (min-width:720px){:root{--gut:32px}}

/* marca claro/escuro */
.marca__escuro{display:none}
:root[data-theme="dark"] .marca__claro{display:none}
:root[data-theme="dark"] .marca__escuro{display:block}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .marca__claro{display:none}
  :root:not([data-theme="light"]) .marca__escuro{display:block}
}

/* botões */
.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.62rem 1.1rem;border-radius:999px;font-weight:700;font-size:.94rem;text-decoration:none;border:1.5px solid transparent;cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s,transform .15s}
.btn--pri{background:var(--azul);color:#fff}
.btn--pri:hover{background:var(--azul-esc)}
.btn--sec{border-color:var(--linha);background:var(--sup);color:var(--texto)}
.btn--sec:hover{border-color:var(--azul)}
.btn--g{padding:.85rem 1.4rem;font-size:1rem}
.btn--bloco{width:100%}
.btn:active{transform:translateY(1px)}
.icobtn{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--linha);background:var(--sup);color:var(--texto);cursor:pointer;padding:0}
.icobtn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.i-sol{display:none}
:root[data-theme="dark"] .i-sol{display:block}:root[data-theme="dark"] .i-lua{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .i-sol{display:block}:root:not([data-theme="light"]) .i-lua{display:none}}

/* topo */
.topo{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--fundo) 86%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .2s}
.topo.rolou{border-bottom-color:var(--linha)}
.topo__in{max-width:var(--larg);margin:0 auto;padding:.7rem var(--gut);display:flex;align-items:center;gap:1rem}
.marca img{height:34px;width:auto}
.topo__acoes{margin-left:auto;display:flex;align-items:center;gap:.5rem}
.topo__cta{display:none}
.menu{position:fixed;inset:64px 0 auto 0;background:var(--sup);border-bottom:1px solid var(--linha);display:flex;flex-direction:column;padding:.5rem var(--gut) 1.25rem;transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility .18s;box-shadow:var(--sombra);max-height:calc(100dvh - 64px);overflow:auto}
.menu.aberto{opacity:1;transform:none;visibility:visible}
.menu a{text-decoration:none;font-weight:600;padding:.85rem .25rem;border-bottom:1px solid var(--linha)}
.menu a.menu__cta-mob{margin-top:1rem;border:0;padding:.85rem;color:#fff}
.hamb{flex-direction:column;gap:4px;display:flex;align-items:center;justify-content:center}
.hamb span{width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s}
.hamb[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.hamb[aria-expanded="true"] span:nth-child(2){opacity:0}
.hamb[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media (min-width:1040px){
  .hamb,.menu__cta-mob{display:none!important}
  .topo__cta{display:inline-flex}
  .menu{position:static;flex-direction:row;background:none;border:0;padding:0;opacity:1;visibility:visible;transform:none;box-shadow:none;gap:.15rem;margin-left:1.5rem;overflow:visible;max-height:none}
  .menu a{border:0;padding:.5rem .7rem;border-radius:10px;font-size:.93rem;color:var(--mudo)}
  .menu a:hover{color:var(--texto);background:var(--sup-2)}
}

/* hero */
.hero{position:relative;padding:2.5rem 0 4rem;overflow:hidden}
.hero__pauta{position:absolute;inset:0;pointer-events:none;
  background:
   linear-gradient(90deg,transparent calc(var(--gut) + 6px),var(--margem) calc(var(--gut) + 6px),var(--margem) calc(var(--gut) + 7px),transparent calc(var(--gut) + 7px)),
   repeating-linear-gradient(180deg,transparent 0 35px,var(--pauta) 35px 36px);
  -webkit-mask-image:linear-gradient(180deg,#000 40%,transparent);mask-image:linear-gradient(180deg,#000 40%,transparent)}
.hero__in{position:relative;display:grid;gap:3rem}
.hero__local{display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;color:var(--mudo);margin-bottom:1.1rem}
.hero__local svg{width:18px;height:18px;fill:none;stroke:var(--azul);stroke-width:2}
.hero h1{font-size:clamp(2.2rem,1.1rem + 4.4vw,4rem);text-wrap:balance;max-width:14ch;letter-spacing:-.035em;line-height:1.02;color:var(--tinta)}
:root[data-theme="dark"] .hero h1{color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero h1{color:#fff}}
.hero__sub{margin-top:1.25rem;font-size:clamp(1.02rem,.95rem + .35vw,1.18rem);color:var(--mudo);max-width:46ch}
.hero__ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.hero__ctas .btn{flex:1 1 220px}
@media (min-width:520px){.hero__ctas .btn{flex:0 0 auto}}
.hero__fatos{list-style:none;padding:0;margin:2rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;color:var(--mudo);font-size:.92rem}
.hero__fatos strong{color:var(--texto);font-weight:800;margin-right:.2rem}
.hero__vitrine{position:relative;padding:0 0 2.5rem 0}
@media (min-width:1040px){
  .hero{padding:4rem 0 6rem}
  .hero__in{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:center;gap:3.5rem}
  .hero__vitrine{padding:0 0 3rem 3rem}
}

/* janela (moldura de navegador) */
.janela{margin:0;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-m);box-shadow:var(--sombra);overflow:hidden}
.janela__barra{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--linha);background:var(--sup-2)}
.janela__barra i{width:9px;height:9px;border-radius:50%;background:var(--linha)}
.janela__barra span{margin-left:.6rem;font-size:.75rem;color:var(--mudo);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.janela--hero{position:relative;z-index:1}
.t-escuro{display:none!important}
:root[data-theme="dark"] .t-claro{display:none!important}:root[data-theme="dark"] .t-escuro{display:block!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .t-claro{display:none!important}:root:not([data-theme="light"]) .t-escuro{display:block!important}}
.flutua{position:absolute;z-index:2;left:0;bottom:0;width:42%;max-width:290px;margin:0;border-radius:var(--r-m);overflow:hidden;box-shadow:0 30px 50px -20px rgba(1,29,108,.55);border:1px solid var(--linha)}
.hero__vitrine{padding:2rem 0 0!important}
@media (min-width:1040px){.hero__vitrine{padding:2.5rem 0 0!important}}

/* selo — o elemento memorável */
.selo{position:absolute;z-index:3;right:-10px;top:-34px;width:clamp(104px,22vw,168px);aspect-ratio:1;color:var(--azul);filter:drop-shadow(0 10px 18px rgba(1,29,108,.25))}
.selo svg{width:100%;height:100%;overflow:visible}
.selo circle:first-of-type{fill:var(--sup)}
.selo__aro{fill:none;stroke:currentColor;stroke-width:3}
.selo__aro--fino{stroke-width:1.2;stroke-dasharray:2 4}
.selo text{font:800 15.5px "Jakarta",sans-serif;letter-spacing:2.4px;fill:currentColor}
.selo__gira{transform-origin:100px 100px;animation:gira 38s linear infinite}
.selo__check{fill:none;stroke:var(--tp);stroke-width:9;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:90;stroke-dashoffset:90;animation:carimba .7s .9s cubic-bezier(.6,0,.2,1) forwards}
.selo{animation:pousa .55s .45s cubic-bezier(.2,1.4,.4,1) both}
@keyframes gira{to{transform:rotate(360deg)}}
@keyframes carimba{to{stroke-dashoffset:0}}
@keyframes pousa{from{opacity:0;transform:scale(1.35) rotate(-12deg)}to{opacity:1;transform:none}}
@media (min-width:1040px){.selo{right:-28px;top:-52px}}

/* seções */
.secao{padding:4.5rem 0}
@media (min-width:1040px){.secao{padding:6.5rem 0}}
.secao__cab{display:grid;gap:1rem;margin-bottom:2.5rem}
.secao__cab p,.lead{color:var(--mudo);font-size:1.05rem;max-width:60ch}
.lead{margin-top:1rem}
@media (min-width:1040px){.secao__cab{grid-template-columns:1.1fr .9fr;align-items:end;gap:3rem;margin-bottom:3.25rem}}
.secao--tinta{background:var(--tinta);color:#e9efff;--mudo:#b4c3e6;--linha:rgba(255,255,255,.14);--sup:rgba(255,255,255,.05);--sup-2:rgba(255,255,255,.08)}
.secao--tinta h2{color:#fff}
:root[data-theme="dark"] .secao--tinta{background:#03123f}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .secao--tinta{background:#03123f}}
.secao--papel{background:var(--sup-2)}
.sub-h{margin:3.5rem 0 1.25rem;font-size:1.25rem}
.lista{list-style:none;padding:0;margin:1.25rem 0 0;display:grid;gap:.55rem}
.lista li{position:relative;padding-left:1.55rem;color:var(--texto)}
.lista li::before{content:"";position:absolute;left:0;top:.42em;width:.95rem;height:.95rem;border-radius:50%;background:color-mix(in srgb,var(--c,var(--azul)) 16%,transparent);box-shadow:inset 0 0 0 1.5px var(--c,var(--azul))}
.lista li::after{content:"";position:absolute;left:.3rem;top:.66em;width:.36rem;height:.2rem;border-left:1.6px solid var(--c,var(--azul));border-bottom:1.6px solid var(--c,var(--azul));transform:rotate(-45deg)}

/* atribuições */
.atrib__abas{display:flex;gap:.5rem;overflow-x:auto;padding:4px 4px 12px;margin:0 calc(var(--gut) * -1) 1.5rem;padding-left:var(--gut);padding-right:var(--gut);scroll-snap-type:x proximity;scrollbar-width:thin}
.aba{flex:0 0 auto;scroll-snap-align:start;display:flex;align-items:center;gap:.55rem;padding:.55rem .95rem .55rem .55rem;border-radius:12px;border:1px solid var(--linha);background:var(--sup);color:var(--mudo);font:600 .92rem "Jakarta",sans-serif;cursor:pointer;transition:border-color .15s,color .15s,background .15s}
.aba b{display:inline-grid;place-items:center;min-width:2.6rem;padding:.15rem .4rem;border-radius:7px;font-size:.72rem;letter-spacing:.02em;color:#fff;background:var(--c)}
.aba:hover{color:var(--texto)}
.aba[aria-selected="true"]{color:var(--texto);border-color:var(--c);background:color-mix(in srgb,var(--c) 8%,var(--sup));box-shadow:0 0 0 1px var(--c)}
@media (min-width:1040px){.atrib__abas{margin:0 0 2rem;padding:4px;flex-wrap:wrap;overflow:visible}}
.atrib__painel{display:grid;gap:2rem;align-items:start}
.atrib__painel h3{font-size:1.5rem;color:var(--c)}
.atrib__painel>.atrib__txt>p{margin-top:.75rem;color:var(--mudo)}
.atrib__painel .janela{border-top:3px solid var(--c)}
.atrib__painel:not([hidden]){animation:entra .28s ease-out}
@keyframes entra{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (min-width:1040px){.atrib__painel{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:3rem}}

/* fluxo (sequência real) */
.fluxo{list-style:none;padding:0;margin:0;display:grid;gap:0;counter-reset:passo}
.fluxo li{counter-increment:passo;position:relative;padding:0 0 2rem 3.75rem}
.fluxo li::before{content:counter(passo);position:absolute;left:0;top:-.2rem;width:2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;font-weight:800;background:#fff;color:var(--tinta)}
.fluxo li::after{content:"";position:absolute;left:1.22rem;top:2.6rem;bottom:.3rem;width:2px;background:rgba(255,255,255,.18)}
.fluxo li:last-child::after{display:none}
.fluxo li:nth-child(4)::before{background:var(--tp);color:#fff}
.fluxo h3{color:#fff;margin-bottom:.4rem}
.fluxo p{color:var(--mudo);font-size:.96rem;max-width:40ch}
@media (min-width:760px){
  .fluxo{grid-template-columns:repeat(3,1fr);gap:2.75rem 2rem}
  .fluxo li{padding:3.5rem 0 0}
  .fluxo li::after{left:3.2rem;right:-1.5rem;top:1.25rem;bottom:auto;width:auto;height:2px}
  .fluxo li:nth-child(3)::after{display:none}
}
@media (min-width:1180px){
  .fluxo{grid-template-columns:repeat(6,1fr);gap:1.5rem}
  .fluxo li:nth-child(3)::after{display:block}
  .fluxo p{font-size:.92rem}
}

/* modos Atlas */
.modos{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:1rem;box-shadow:var(--sombra)}
.modos__chave{display:inline-flex;background:var(--sup-2);border-radius:999px;padding:4px;margin-bottom:1.25rem;max-width:100%}
.modos__chave button{border:0;background:none;font:700 .92rem "Jakarta",sans-serif;color:var(--mudo);padding:.55rem 1rem;border-radius:999px;cursor:pointer;white-space:nowrap}
.modos__chave button[aria-checked="true"]{background:var(--azul);color:#fff}
.modos__corpo{display:grid;gap:1.5rem}
.modos__corpo .janela{box-shadow:none;transition:filter .3s,opacity .3s}
.modos[data-ativo="sem"] .modos__corpo .janela{filter:grayscale(.85);opacity:.55}
.modos__txt h3{font-size:1.3rem}
@media (min-width:900px){.modos{padding:1.75rem}.modos__corpo{grid-template-columns:1.3fr 1fr;align-items:center;gap:2.5rem}}
.integra{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;border-top:1px solid var(--linha)}
.integra li{display:grid;gap:.15rem;padding:1rem 0;border-bottom:1px solid var(--linha)}
.integra b{font-weight:800}
.integra span{color:var(--mudo);font-size:.95rem}
@media (min-width:640px){.integra{grid-template-columns:1fr 1fr;column-gap:2rem}}
@media (min-width:1040px){.integra{grid-template-columns:repeat(3,1fr)}}

/* mosaico de gestão */
.mosaico{display:grid;gap:1rem}
.peca{margin:0;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-m);overflow:hidden;display:flex;flex-direction:column}
.peca__txt{padding:1.25rem 1.25rem 1rem}
.peca__txt p{margin-top:.45rem;color:var(--mudo);font-size:.95rem}
.peca img{margin:auto 0 0 1.25rem;border-top-left-radius:10px;border:1px solid var(--linha);border-right:0;border-bottom:0;object-fit:cover;object-position:left top;aspect-ratio:16/9;width:calc(100% - 1.25rem)}
.peca--lista{list-style:none;padding:1.25rem;gap:0;background:var(--tinta);border-color:var(--tinta);color:#e9efff}
.peca--lista li{padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:.92rem;color:#b4c3e6}
.peca--lista li:last-child{border:0}
.peca--lista b{display:block;color:#fff;font-size:1rem}
@media (min-width:700px){.mosaico{grid-template-columns:1fr 1fr}.peca--larga,.peca--lista{grid-column:1/-1}}
@media (min-width:1040px){
  .mosaico{grid-template-columns:repeat(3,1fr)}
  .peca--larga{grid-column:span 2;grid-row:span 1;flex-direction:row}
  .peca--larga .peca__txt{flex:0 0 36%;padding:2rem}
  .peca--larga img{width:64%;margin:2rem 0 0 0;aspect-ratio:auto;height:calc(100% - 2rem);min-height:260px}
  .peca--lista{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem;padding:1.75rem 2rem}
  .peca--lista li{border:0;padding:0}
}

/* duas colunas */
.duas{display:grid;gap:2.5rem;align-items:center}
@media (min-width:1040px){.duas{grid-template-columns:1fr 1fr;gap:4.5rem}.duas--inv>div:first-child{order:0}}
.garantias{margin:2rem 0 0;display:grid;gap:1.25rem}
.garantias div{padding-left:1rem;border-left:3px solid var(--azul)}
.garantias dt{font-weight:800}
.garantias dd{margin:.2rem 0 0;color:var(--mudo);font-size:.96rem}
.duas__fig{margin:0}
.duas__fig figcaption{margin-top:.9rem;color:var(--mudo);font-size:.92rem;text-align:center}

/* treinamento */
.videos{width:100%;margin-top:2rem;border-collapse:collapse;font-size:.95rem}
.videos th,.videos td{padding:.65rem 0;border-bottom:1px solid var(--linha);text-align:left;font-weight:600}
.videos thead th{font-size:.82rem;color:var(--mudo);font-weight:600}
.videos td{width:55%;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:800;color:#fff}
.videos tbody th{color:#dfe7ff}
.videos thead th:last-child{text-align:left}
.barra{display:inline-block;vertical-align:middle;margin-right:.6rem;height:8px;border-radius:4px;background:var(--ceu);width:calc(var(--v) / 38 * 140px)}
.treino__tela{position:relative;border-radius:var(--r-m);overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:0 30px 60px -25px rgba(0,0,0,.6)}
.treino__legenda{position:absolute;left:50%;bottom:7%;transform:translateX(-50%);width:min(88%,560px);background:rgba(10,18,40,.88);color:#fff;font-size:clamp(.72rem,.6rem + .5vw,.95rem);line-height:1.4;text-align:center;padding:.55em .9em;border-radius:8px}
.treino__nota{margin-top:1rem;color:var(--mudo);font-size:.94rem}
.treino__nota b{color:#fff}

/* faq */
.estreito{max-width:820px}
.faq{margin-top:2rem;border-top:1px solid var(--linha)}
.faq details{border-bottom:1px solid var(--linha)}
.faq summary{list-style:none;cursor:pointer;padding:1.15rem 2.5rem 1.15rem 0;font-weight:700;font-size:1.05rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:.4rem;top:50%;width:.6rem;height:.6rem;border-right:2px solid var(--azul);border-bottom:2px solid var(--azul);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{padding:0 0 1.25rem;color:var(--mudo);max-width:66ch}

/* contato */
.canais{list-style:none;padding:0;margin:2rem 0 0;display:grid;gap:.75rem}
.canais a{display:flex;align-items:center;gap:.9rem;text-decoration:none;padding:.9rem 1rem;border-radius:var(--r-m);border:1px solid var(--linha);background:var(--sup);transition:border-color .15s}
.canais a:hover{border-color:var(--ceu)}
.canais svg{width:26px;height:26px;fill:none;stroke:var(--ceu);stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round;flex:0 0 auto}
.canais span{display:flex;flex-direction:column;color:var(--mudo);font-size:.93rem}
.canais b{color:#fff;font-size:1rem}
.form{background:var(--fundo);color:var(--texto);border-radius:var(--r-l);padding:1.25rem;display:grid;gap:1rem;box-shadow:0 30px 60px -25px rgba(0,0,0,.5);--linha:#dde4f0;--mudo:#55627d}
:root[data-theme="dark"] .form{--linha:#22345f;--mudo:#9aa8c6}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .form{--linha:#22345f;--mudo:#9aa8c6}}
@media (min-width:600px){.form{padding:1.75rem}}
.campo{display:grid;gap:.35rem;border:0;padding:0;margin:0;min-width:0}
.campo-2{display:grid;gap:1rem}
@media (min-width:520px){.campo-2{grid-template-columns:1fr 1fr}}
.campo label,.campo legend{font-weight:700;font-size:.9rem;padding:0}
.campo legend{margin-bottom:.45rem}
.campo small{font-weight:500;color:var(--mudo)}
.campo input,.campo textarea{width:100%;font:inherit;font-size:16px;color:var(--texto);background:var(--sup);border:1.5px solid var(--linha);border-radius:10px;padding:.7rem .85rem;transition:border-color .15s,box-shadow .15s}
.campo input:focus,.campo textarea:focus{outline:0;border-color:var(--azul);box-shadow:0 0 0 4px color-mix(in srgb,var(--azul) 18%,transparent)}
.campo input[aria-invalid="true"]{border-color:#dc2626}
.campo textarea{resize:vertical;min-height:90px}
.chips{display:flex;flex-wrap:wrap;gap:.45rem}
.chips label{cursor:pointer}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips span{display:inline-block;padding:.42rem .8rem;border-radius:999px;border:1.5px solid var(--linha);background:var(--sup);font-weight:600;font-size:.88rem;transition:all .15s}
.chips input:checked+span{background:var(--azul);border-color:var(--azul);color:#fff}
.chips input:focus-visible+span{outline:3px solid var(--ceu);outline-offset:2px}
.form__nota{font-size:.82rem;color:var(--mudo);text-align:center}

/* rodapé */
.rodape{border-top:1px solid var(--linha);padding:2.5rem 0 calc(2rem + env(safe-area-inset-bottom))}
.rodape__in{display:grid;gap:1.5rem}
.rodape__marca img{height:32px;width:auto}
.rodape__marca p{margin-top:.5rem;color:var(--mudo);font-size:.92rem}
.rodape__links{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}
.rodape__links a{text-decoration:none;color:var(--mudo);font-weight:600;font-size:.93rem}
.rodape__links a:hover{color:var(--texto)}
.rodape__legal{color:var(--mudo);font-size:.85rem}
.versao{display:inline-block;margin-top:.3rem;padding:.1rem .55rem;border-radius:999px;background:var(--sup-2);border:1px solid var(--linha);font-weight:700;font-size:.78rem}
@media (min-width:900px){.rodape__in{grid-template-columns:1fr auto auto;align-items:center;gap:3rem}.rodape__legal{text-align:right}}

/* blocos de recurso (texto + tela) */
.bloco{display:grid;gap:1.75rem;align-items:center;margin-top:3rem}
.bloco:first-of-type{margin-top:0}
.bloco__txt{min-width:0}
.bloco__txt>p{margin-top:.6rem;color:var(--mudo);max-width:52ch}
.bloco__txt h3{font-size:1.4rem}
.bloco .janela{min-width:0}
@media (min-width:1040px){
  .bloco{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:3.5rem;margin-top:5rem}
  .bloco--inv>.bloco__txt{order:2}
  .bloco--escuro{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
.bloco--escuro .janela{max-width:560px;justify-self:center}
.lista b{font-weight:800}
.secao--tinta .lista li{color:#dfe7ff}
.secao--tinta .lista li::before{box-shadow:inset 0 0 0 1.5px var(--ceu);background:rgba(89,184,255,.15)}
.secao--tinta .lista li::after{border-color:var(--ceu)}
/* galeria de gráficos */
.galeria{display:grid;gap:1.25rem;margin-top:2.5rem}
@media (min-width:900px){.galeria--2{grid-template-columns:1fr 1fr}.cartao--larga{grid-column:1/-1}}
.cartao{margin:0;display:grid;gap:.8rem;align-content:start;min-width:0}
.cartao .janela{box-shadow:var(--sombra)}
.cartao figcaption{color:var(--mudo);font-size:.94rem;max-width:62ch}
.cartao figcaption b{color:var(--texto)}
.secao--tinta .cartao figcaption b{color:#fff}
.secao--tinta .janela{border-color:rgba(255,255,255,.16);background:#0e1b3f}
/* cadeia de hashes (sequência real) */
.cadeia{list-style:none;padding:0;margin:0;display:grid;gap:.75rem;counter-reset:elo}
.cadeia li{counter-increment:elo;position:relative;padding:1rem 1rem 1rem 3.6rem;border:1px solid rgba(255,255,255,.16);border-radius:var(--r-m);background:rgba(255,255,255,.04);display:grid;gap:.2rem}
.cadeia li::before{content:counter(elo);position:absolute;left:1rem;top:1rem;width:1.9rem;height:1.9rem;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.9rem;background:var(--ceu);color:var(--tinta)}
.cadeia b{color:#fff}
.cadeia span{color:var(--mudo);font-size:.92rem}
@media (min-width:900px){
  .cadeia{grid-template-columns:repeat(4,1fr);gap:0}
  .cadeia li{border-radius:0;border-right-width:0}
  .cadeia li:first-child{border-radius:var(--r-m) 0 0 var(--r-m)}
  .cadeia li:last-child{border-radius:0 var(--r-m) var(--r-m) 0;border-right-width:1px}
  .cadeia li:not(:last-child)::after{content:"";position:absolute;right:-9px;top:1.45rem;width:16px;height:16px;border-top:1px solid rgba(255,255,255,.3);border-right:1px solid rgba(255,255,255,.3);background:var(--tinta);transform:rotate(45deg);z-index:1}
}
:root[data-theme="dark"] .cadeia li:not(:last-child)::after{background:#03123f}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .cadeia li:not(:last-child)::after{background:#03123f}}
/* atribuições em texto */
.atr{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
.atr li{background:var(--sup);border:1px solid var(--linha);border-top:3px solid var(--c);border-radius:var(--r-m);padding:1.25rem;display:grid;gap:.45rem;align-content:start}
.atr b{justify-self:start;padding:.15rem .5rem;border-radius:7px;font-size:.74rem;color:#fff;background:var(--c)}
.atr p{color:var(--mudo);font-size:.94rem}
@media (min-width:640px){.atr{grid-template-columns:1fr 1fr}}
@media (min-width:1040px){.atr{grid-template-columns:repeat(3,1fr)}}

/* pioneiro no selo eletrônico */
.pioneiro__in{display:grid;gap:2rem;align-items:center}
.pioneiro__marco{width:clamp(150px,30vw,220px);aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;border:3px solid var(--ceu);box-shadow:0 0 0 10px rgba(89,184,255,.08),inset 0 0 0 8px rgba(89,184,255,.12);color:#fff}
.pioneiro__marco span{font-size:clamp(3.6rem,2rem + 6vw,5.6rem);font-weight:800;line-height:.9;letter-spacing:-.04em}
.pioneiro__marco small{font-size:.86rem;color:#b4c3e6;font-weight:600;line-height:1.3;margin-top:.4rem}
.pioneiro h2{max-width:24ch}
@media (min-width:900px){.pioneiro__in{grid-template-columns:auto 1fr;gap:3.5rem}}
.evolucao{display:grid;gap:2rem;margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid rgba(255,255,255,.14)}
.evolucao h3{color:#fff;font-size:1.25rem}
.evolucao p{margin-top:.6rem;color:var(--mudo);max-width:52ch}
@media (min-width:900px){.evolucao{grid-template-columns:1fr 1.2fr;gap:4rem}}
.normas{list-style:none;padding:0;margin:1.1rem 0 0;display:grid;gap:.75rem}
.normas li{display:grid;grid-template-columns:7.5rem 1fr;gap:1rem;align-items:baseline;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.12)}
.normas b{color:var(--ceu);font-weight:800}
.normas span{color:#dfe7ff;font-size:.95rem}
@media (max-width:420px){.normas li{grid-template-columns:1fr;gap:.2rem}}
/* blocos só texto */
.recursos{display:grid;gap:1.25rem}
@media (min-width:900px){.recursos{grid-template-columns:1fr 1fr}}
.bloco--so{display:block;margin:0;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:1.5rem}
@media (min-width:1040px){.bloco--so{padding:2rem;margin:0}}
.bloco--faixa{margin-top:1.25rem;background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.16)}
@media (min-width:1040px){.bloco--faixa{margin-top:1.25rem}.bloco--faixa .lista{grid-template-columns:1fr 1fr;column-gap:2rem}}
.bloco--faixa h3{color:#fff}
.pecas{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
.pecas li{border-left:3px solid var(--azul);padding:.2rem 0 .2rem 1rem}
.pecas p{margin-top:.35rem;color:var(--mudo);font-size:.95rem}
@media (min-width:640px){.pecas{grid-template-columns:1fr 1fr;gap:1.5rem 2rem}}
@media (min-width:1040px){.pecas{grid-template-columns:repeat(4,1fr)}}

/* página inicial em três aparelhos */
.palco{display:grid;grid-template-columns:1.5fr 1fr;gap:1.25rem;align-items:end}
.disp{margin:0;display:grid;gap:.7rem;justify-items:center;min-width:0}
.disp figcaption{font-weight:700;font-size:.92rem;color:var(--mudo)}
.disp__tela{width:100%;overflow:hidden;background:#0b1736;box-shadow:0 0 0 1px var(--linha),var(--sombra)}
.disp__tela img{width:100%;height:auto}
.disp--desktop{grid-column:1/-1}
.disp--desktop .disp__tela{border-radius:var(--r-m);border:1px solid var(--linha);background:var(--sup);padding-top:26px;position:relative}
.disp--desktop .disp__tela::before{content:"";position:absolute;left:12px;top:9px;width:9px;height:9px;border-radius:50%;background:var(--linha);box-shadow:15px 0 0 var(--linha),30px 0 0 var(--linha)}
.disp--tablet .disp__tela{border-radius:22px;border:9px solid #0b1736}
.disp--tablet .disp__tela img{border-radius:12px}
.disp--celular .disp__tela{border-radius:26px;border:6px solid #0b1736;max-width:220px}
.disp--celular .disp__tela img{border-radius:20px}
@media (min-width:760px){
  .palco{grid-template-columns:3.4fr 1.55fr .85fr;gap:2rem}
  .disp--desktop{grid-column:auto}
  .disp--celular .disp__tela{max-width:none}
}

/* hero: história + recursos + aparelhos */
.hero__recursos{list-style:none;padding:0;margin:0;display:grid;gap:0;border-top:1px solid var(--linha)}
.hero__recursos li{padding:.85rem 0;border-bottom:1px solid var(--linha);color:var(--mudo);font-size:.93rem;display:grid;gap:.1rem}
.hero__recursos b{color:var(--texto);font-size:1rem}
@media (min-width:640px){.hero__recursos{grid-template-columns:1fr 1fr;column-gap:1.75rem}}
@media (min-width:1040px){.hero__in{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;align-items:end!important}}
.hero__palco{position:relative;margin-top:3rem}
.hero__palco .selo{right:-6px;top:-40px}
@media (min-width:760px){.hero__palco .selo{right:auto;left:calc(58% - 9rem);top:-50px}}
@media (min-width:1040px){.hero__palco{margin-top:4rem}.hero__palco .selo{left:calc(58% - 10.5rem);top:-64px}}

/* ===== efeitos de rolagem ===== */
.progresso{position:fixed;left:0;right:0;top:0;height:3px;z-index:60;pointer-events:none}
.progresso i{display:block;height:100%;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--azul),var(--ceu))}
/* faixas que correm */
.faixas{padding:2.25rem 0;overflow:hidden;display:grid;gap:.4rem;border-block:1px solid var(--linha);background:var(--fundo)}
.faixas--so{padding:1.4rem 0}
.faixa{overflow:hidden;white-space:nowrap;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.faixa__trilho{display:flex;width:max-content;will-change:transform}
.faixa__grupo{display:flex;align-items:center;flex:0 0 auto}
.faixa span{font-weight:800;letter-spacing:-.03em;line-height:1.1;padding:0 .2em}
.faixa i{font-style:normal;color:var(--azul);padding:0 .55em}
.faixa--cheia span{font-size:clamp(2rem,1.2rem + 3.6vw,4.4rem);color:var(--tinta)}
:root[data-theme="dark"] .faixa--cheia span{color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .faixa--cheia span{color:#fff}}
.faixa--cheia i{font-size:clamp(1.2rem,.8rem + 1.6vw,2.2rem)}
.faixa--contorno span{font-size:clamp(2rem,1.2rem + 3.6vw,4.4rem);color:transparent;-webkit-text-stroke:1.5px var(--azul)}
.faixa--contorno i{font-size:clamp(1.2rem,.8rem + 1.6vw,2.2rem);color:var(--ceu)}
.faixa--tinta span{font-size:clamp(1.1rem,.9rem + 1vw,1.6rem);color:var(--mudo);font-weight:700;letter-spacing:-.01em}
.faixa--tinta i{color:var(--ceu)}
/* números */
.numeros{list-style:none;padding:0;margin:3rem 0 0;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.numeros li{display:grid;gap:.3rem;color:var(--mudo);font-size:.92rem;padding-top:1rem;border-top:2px solid var(--ceu)}
.numeros b{font-size:clamp(2.2rem,1.5rem + 2.6vw,3.4rem);font-weight:800;letter-spacing:-.04em;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
@media (min-width:900px){.numeros{grid-template-columns:repeat(4,1fr);gap:2rem}}
/* revelação ao rolar: só quando o JS está ativo e o movimento é permitido */
.anima .revela{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--atraso,0s)}
.anima .revela.visto{opacity:1;transform:none}
.anima .revela--zoom{transform:translateY(36px) scale(.96)}
.anima .barra{transform-origin:0 50%;transform:scaleX(0);transition:transform 1.1s cubic-bezier(.2,.7,.2,1) .2s}
.anima .visto .barra,.anima .barra.visto{transform:none}
.disp{will-change:transform}
@media (prefers-reduced-motion:reduce){.faixa__trilho{transform:none!important}.anima .revela{opacity:1;transform:none}}

/* ===== linhas com pontos (laterais) ===== */
.trilhas{position:absolute;left:0;top:0;width:100%;pointer-events:none;z-index:40;display:none}
.trilhas svg{display:block;width:100%;height:100%;overflow:visible}
.trilhas path{fill:none;stroke:var(--trilha);stroke-width:1.4}
.trilhas circle{fill:var(--trilha-ponto)}
.trilhas path{stroke-linejoin:round}
.trilhas path.ramal{stroke-width:1.2}
.trilhas path.pulso{stroke:var(--trilha-ponto);stroke-width:2.4;stroke-linecap:round;filter:drop-shadow(0 0 4px var(--trilha-ponto))}
.trilhas circle.sinal{filter:drop-shadow(0 0 6px var(--trilha-ponto))}
.trilhas .no{fill:var(--fundo);stroke:var(--trilha-ponto);stroke-width:2}
@media (min-width:1280px){.trilhas{display:block}}
:root{--trilha:rgba(28,106,253,.38);--trilha-ponto:#1c6afd}
:root[data-theme="dark"]{--trilha:rgba(89,184,255,.35);--trilha-ponto:#59b8ff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--trilha:rgba(89,184,255,.35);--trilha-ponto:#59b8ff}}
body{position:relative}

/* ===== árvore: as atribuições convergem no BookC ===== */
.arvore{position:relative;margin:0 0 3rem}
.arvore__topo{list-style:none;padding:0;margin:0 0 -.2rem;display:grid;grid-template-columns:repeat(6,1fr);position:relative;z-index:1}
.arvore__topo li{justify-self:center;font-weight:800;font-size:clamp(.62rem,.5rem + .5vw,.86rem);color:#fff;background:var(--c);padding:.32em .7em;border-radius:999px;box-shadow:0 0 0 4px var(--sup-2)}
.arvore__svg{display:block;width:100%;height:auto;overflow:visible}
.arvore__svg .ramo{fill:none;stroke:var(--c);stroke-width:2;opacity:.55;stroke-dasharray:var(--comp,1400);stroke-dashoffset:var(--falta,0)}
.arvore__svg .tronco{fill:none;stroke:var(--azul);stroke-width:2.5;opacity:.6}
.arvore__pontos circle{stroke:var(--sup-2);stroke-width:3}
.arvore__base{display:grid;justify-items:center;gap:.2rem;margin-top:-.5rem;text-align:center}
.arvore__nucleo{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:0 0 0 6px color-mix(in srgb,var(--azul) 18%,transparent),var(--sombra)}
.arvore__nucleo img{width:34px;height:auto}
.arvore__base b{font-size:1.3rem;margin-top:.5rem}
.arvore__base small{color:var(--mudo);font-size:.92rem}

/* SweetAlert2 — centralizado, na identidade */
.swal2-popup{font-family:"Jakarta",system-ui,sans-serif!important;border-radius:18px!important}
.swal2-styled.swal2-confirm{background:var(--azul)!important;border-radius:999px!important}
.swal2-styled.swal2-cancel{border-radius:999px!important}
.swal2-styled,.swal2-html-container,.swal2-title{font-family:"Jakarta",system-ui,sans-serif!important}
.swal2-styled{font-weight:700!important}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .selo__check{stroke-dashoffset:0}
}
