/* Fontes da marca, servidas pelo próprio domínio.
   Bricolage Grotesque e Nunito Sans: SIL Open Font License 1.1 (hospedar e redistribuir é permitido).
   Fontes variáveis: um arquivo por família e subconjunto atende toda a faixa de peso.
   Gerado por documentos/site/_fontes.py — não editar à mão. */
@font-face{
  font-family:'Bricolage Grotesque';
  font-style:normal;
  font-weight:700 800;
  font-display:swap;
  src:url(/fontes/bricolage-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'Bricolage Grotesque';
  font-style:normal;
  font-weight:700 800;
  font-display:swap;
  src:url(/fontes/bricolage-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face{
  font-family:'Nunito Sans';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url(/fontes/nunito-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'Nunito Sans';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url(/fontes/nunito-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ================================================================
   Site educaludi.com.br
   Cores, tipografia e logo: base/MARCA.md (não recolorir, não redesenhar a logo).
   O @font-face entra antes deste arquivo, gerado por _fontes.py.
   ================================================================ */

:root{
  --marinho:#14213D; --escuro:#0B1428; --medio:#1F3160;
  --ouro:#F5B700; --ouro-texto:#8A6500; --papel:#F7F4EC;
  --texto:#161d2e; --suave:#5b6478; --borda:#e4dfd2; --borda-forte:#d6cfbd;
  --claro-sobre-escuro:#c9d4e8;
  --titulo:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;
  --corpo:"Nunito Sans","Segoe UI",system-ui,sans-serif;
  --sombra:0 1px 2px rgba(11,20,40,.05), 0 8px 24px rgba(11,20,40,.07);
  --sombra-alta:0 2px 4px rgba(11,20,40,.06), 0 24px 56px rgba(11,20,40,.16);
  --raio:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
[id]{scroll-margin-top:86px}
body{
  margin:0;background:var(--papel);color:var(--texto);
  font-family:var(--corpo);font-size:17.5px;line-height:1.65;
}
img{max-width:100%;height:auto}
a{color:var(--marinho);text-underline-offset:3px}
:focus-visible{outline:3px solid var(--ouro);outline-offset:3px;border-radius:6px}
h1,h2,h3,h4{font-family:var(--titulo);letter-spacing:-.018em;text-wrap:balance}
p{text-wrap:pretty}

.pular{
  position:absolute;left:-9999px;top:0;z-index:20;background:var(--ouro);color:var(--marinho);
  padding:12px 18px;font-family:var(--titulo);font-weight:700;border-radius:0 0 10px 0;
}
.pular:focus{left:0;top:0}

/* ---------------- barra de topo ---------------- */
.topo{
  position:sticky;top:0;z-index:15;
  background:rgba(11,20,40,.92);backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid rgba(245,183,0,.22);
}
.topo-dentro{
  max-width:1160px;margin:0 auto;padding:13px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.topo a{color:#e9edf6;text-decoration:none}
.topo .marca img{height:26px;width:auto;display:block}
.topo nav{display:flex;align-items:center;gap:4px}
.topo nav a{
  font-family:var(--titulo);font-weight:700;font-size:.88rem;
  padding:8px 14px;border-radius:999px;white-space:nowrap;
}
.topo nav a:hover{color:var(--ouro)}
.topo nav a[aria-current="page"]{color:var(--ouro)}
.topo nav .botao-topo{
  background:var(--ouro);color:var(--marinho);border-radius:999px;padding:9px 18px;
}
.topo nav .botao-topo:hover{color:var(--marinho);filter:brightness(1.07)}

/* ---------------- faixas ---------------- */
.faixa{padding:92px 0}
.faixa-papel{background:var(--papel)}
.faixa-branca{background:#fff;border-top:1px solid var(--borda);border-bottom:1px solid var(--borda)}
.faixa-escura{
  background:
    radial-gradient(1100px 460px at 78% -8%, rgba(245,183,0,.12), transparent 62%),
    radial-gradient(900px 520px at 8% 108%, rgba(31,49,96,.85), transparent 60%),
    var(--escuro);
  color:#fff;
}
.faixa-escura h2,.faixa-escura h3{color:#fff}
.faixa-escura p{color:var(--claro-sobre-escuro)}
.dentro{max-width:1160px;margin:0 auto;padding:0 24px}
.dentro-estreito{max-width:760px}

.titulo-faixa{font-size:clamp(1.75rem,3.1vw,2.5rem);font-weight:800;margin:0 0 14px;color:var(--marinho)}
.sub-faixa{font-size:1.1rem;color:var(--suave);margin:0 0 44px;max-width:46em}
.faixa-escura .titulo-faixa{color:#fff}
.faixa-escura .sub-faixa{color:var(--claro-sobre-escuro)}

/* ---------------- botões ---------------- */
.botoes{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 0}
.botao,.botao-fantasma{
  display:inline-flex;align-items:center;gap:9px;text-decoration:none;
  font-family:var(--titulo);font-weight:700;font-size:1rem;
  padding:14px 26px;border-radius:999px;transition:transform .12s ease, filter .12s ease;
}
.botao{background:var(--ouro);color:var(--marinho);box-shadow:0 10px 26px rgba(245,183,0,.24)}
.botao:hover{transform:translateY(-1px);filter:brightness(1.06)}
.botao-fantasma{border:1.5px solid rgba(255,255,255,.34);color:#fff}
.botao-fantasma:hover{border-color:var(--ouro);color:var(--ouro)}
.faixa-papel .botao-fantasma,.faixa-branca .botao-fantasma{border-color:var(--borda-forte);color:var(--marinho)}
.faixa-papel .botao-fantasma:hover,.faixa-branca .botao-fantasma:hover{border-color:var(--ouro);color:var(--ouro-texto)}
.seta-botao{font-family:var(--corpo)}

/* ---------------- herói ---------------- */
.heroi{padding:76px 0 86px}
.heroi-grade{display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center}
.heroi h1{font-size:clamp(2.05rem,4.1vw,3.25rem);line-height:1.08;font-weight:800;margin:0 0 22px;color:#fff}
.heroi h1 em{color:var(--ouro);font-style:normal}
.heroi .chamada{font-size:1.14rem;margin:0;max-width:34em;color:#dfe6f2}
.aviso{
  margin:30px 0 0;font-size:.92rem;color:#92a3c0;line-height:1.55;
  border-left:2px solid rgba(245,183,0,.5);padding-left:14px;max-width:38em;
}
.selo{
  display:inline-flex;align-items:center;gap:9px;margin:0 0 22px;
  font-family:var(--titulo);font-weight:700;font-size:.78rem;letter-spacing:.09em;
  text-transform:uppercase;color:var(--ouro);
  background:rgba(245,183,0,.1);border:1px solid rgba(245,183,0,.3);
  border-radius:999px;padding:8px 16px;
}
.selo::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ouro)}

/* herói das páginas internas */
.heroi-interno{padding:66px 0 70px}
.heroi-interno h1{font-size:clamp(1.9rem,3.6vw,2.75rem);line-height:1.1;font-weight:800;margin:0 0 20px;color:#fff}
.heroi-interno h1 em{color:var(--ouro);font-style:normal}
.heroi-interno .chamada{font-size:1.12rem;margin:0 0 24px;max-width:40em;color:#dfe6f2}
.destaque-oferta{
  margin:0;padding:18px 22px;border-radius:12px;max-width:44em;
  background:rgba(31,49,96,.55);border:1px solid rgba(245,183,0,.28);
  color:#e9edf6;font-size:1.02rem;
}
.destaque-oferta strong{color:var(--ouro)}

/* ---------------- molduras ---------------- */
.janela{
  border-radius:14px;overflow:hidden;background:#fff;
  border:1px solid rgba(255,255,255,.14);box-shadow:var(--sombra-alta);
}
.faixa-papel .janela,.faixa-branca .janela{border-color:var(--borda)}
.janela-barra{
  display:flex;align-items:center;gap:7px;padding:11px 14px;
  background:#101c33;border-bottom:1px solid rgba(255,255,255,.08);
}
.faixa-papel .janela-barra,.faixa-branca .janela-barra{background:#f1eee4;border-bottom-color:var(--borda)}
.janela-barra span{width:10px;height:10px;border-radius:50%;background:#2b3c5e;display:block}
.faixa-papel .janela-barra span,.faixa-branca .janela-barra span{background:#d3ccb9}
.janela-barra span:first-child{background:var(--ouro);opacity:.85}
.janela img{display:block;width:100%}

.celular{
  width:min(290px,78vw);margin:0 auto;padding:9px;border-radius:30px;
  background:linear-gradient(170deg,#2b3f6e 0%,#16254a 100%);
  box-shadow:var(--sombra-alta);
}
.celular img{display:block;width:100%;border-radius:22px;background:#fff}

/* ---------------- cartões ---------------- */
.cartoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(272px,1fr));gap:20px}
/* com quatro cartões, três colunas deixam um sozinho na segunda linha */
@media (min-width:900px){.cartoes-quatro{grid-template-columns:repeat(2,1fr);gap:22px}}
.cartao{
  background:#fff;border:1px solid var(--borda);border-radius:var(--raio);
  padding:26px 24px;box-shadow:var(--sombra);
}
.faixa-branca .cartao{background:var(--papel)}
.faixa-escura .cartao{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.12);box-shadow:none}
.cartao h3{font-size:1.14rem;font-weight:800;margin:0 0 9px;color:var(--marinho)}
.faixa-escura .cartao h3{color:#fff}
.cartao p{margin:0;font-size:.99rem;color:var(--suave)}
.faixa-escura .cartao p{color:var(--claro-sobre-escuro)}
.icone{
  width:46px;height:46px;border-radius:12px;display:grid;place-items:center;margin:0 0 16px;
  background:rgba(245,183,0,.14);color:var(--ouro-texto);
}
.faixa-escura .icone{background:rgba(245,183,0,.16);color:var(--ouro)}
.icone svg{width:23px;height:23px;display:block}

/* duas colunas texto + imagem */
.par{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.par-invertido .par-texto{order:2}
.lista-ganhos{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:15px}
.lista-ganhos li{padding-left:34px;position:relative;font-size:1.02rem}
.lista-ganhos li::before{
  content:"";position:absolute;left:0;top:7px;width:18px;height:18px;border-radius:50%;
  background:var(--ouro);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6 9 17l-5-5' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6 9 17l-5-5' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat;
}
.lista-ganhos strong{color:var(--marinho)}
.faixa-escura .lista-ganhos strong{color:#fff}

/* nota sob uma tela grande */
.nota-telas{font-size:.9rem;color:var(--suave);margin:20px 0 0;max-width:62em}
.faixa-escura .nota-telas{color:#92a3c0}
.legenda-tela{
  font-size:.86rem;color:var(--suave);line-height:1.55;
  margin:18px auto 0;max-width:34em;text-align:center;
}
.faixa-escura .legenda-tela{color:#92a3c0}

/* ---------------- chamada final ---------------- */
.chamada-final{text-align:center}
.chamada-final .titulo-faixa{margin-bottom:16px}
.chamada-final .sub-faixa{margin:0 auto 32px}
.chamada-final .botoes{justify-content:center}
.contato-final{
  font-family:var(--titulo);font-weight:700;font-size:1.12rem;color:var(--ouro);margin:34px 0 0;
}
.contato-final a{color:var(--ouro)}
.contato-final span{display:block;font-family:var(--corpo);font-weight:400;font-size:.92rem;color:#92a3c0;margin-top:6px}

/* ================================================================
   Texto longo das páginas internas
   ================================================================ */
.texto{font-size:1.06rem}
.texto section{padding:52px 0 0;border-top:1px solid var(--borda);margin-top:46px}
.texto section:first-of-type{border-top:none;margin-top:0;padding-top:0}
.texto h2{font-size:clamp(1.55rem,2.6vw,2rem);font-weight:800;margin:0 0 20px;color:var(--marinho)}
.texto h3{font-size:1.24rem;font-weight:700;margin:38px 0 12px;color:var(--marinho)}
.texto h4{font-size:1.04rem;font-weight:700;margin:0 0 8px;color:var(--marinho)}
.texto p{margin:0 0 18px}

.sumario{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 6px;padding:0}
.sumario a{
  font-size:.85rem;text-decoration:none;color:var(--marinho);font-family:var(--titulo);font-weight:700;
  border:1px solid var(--borda-forte);background:#fff;border-radius:999px;padding:8px 15px;
}
.sumario a:hover{border-color:var(--ouro);color:var(--ouro-texto)}

ul.tipos{
  list-style:none;padding:0;margin:0 0 24px;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1px;
  background:var(--borda);border:1px solid var(--borda);border-radius:12px;overflow:hidden;
}
ul.tipos li{background:#fff;padding:12px 16px;font-size:.97rem}
ul.tipos li::before{
  content:"";display:inline-block;width:7px;height:7px;border-radius:50%;
  background:var(--ouro);margin-right:11px;vertical-align:middle;
}

ul.jornada{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:11px}
ul.jornada li{
  background:#fff;border:1px solid var(--borda);border-radius:12px;padding:17px 19px;
  font-size:1rem;box-shadow:var(--sombra);
}
ul.jornada li span{
  display:block;font-family:var(--titulo);font-weight:800;font-size:.75rem;
  text-transform:uppercase;letter-spacing:.1em;color:var(--ouro-texto);margin-bottom:5px;
}

ul.compromissos{list-style:none;padding:0;margin:0 0 20px}
ul.compromissos li{padding:14px 0 14px 32px;border-bottom:1px solid var(--borda);position:relative;font-size:1rem}
ul.compromissos li:last-child{border-bottom:none}
ul.compromissos li::before{
  content:"";position:absolute;left:4px;top:20px;width:10px;height:10px;
  background:var(--ouro);border-radius:2px;transform:rotate(45deg);
}
ul.compromissos strong{color:var(--marinho)}

.caixa{
  background:#fff;border:1px solid var(--borda);border-left:4px solid var(--ouro);
  border-radius:12px;padding:20px 22px 6px;margin:0 0 26px;box-shadow:var(--sombra);
}
.nota-fonte{font-size:.95rem;color:var(--suave);border-left:2px solid var(--borda-forte);padding-left:15px}

figure{margin:30px 0 34px}
figcaption{font-size:.86rem;color:var(--suave);margin-top:12px;line-height:1.55}
.duas{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:30px 0 34px;align-items:start}
.duas figure{margin:0}

.cta{
  background:
    radial-gradient(700px 300px at 85% 0%, rgba(245,183,0,.14), transparent 60%),
    var(--marinho);
  color:#fff;border-radius:var(--raio);padding:30px 28px;margin:30px 0 12px;box-shadow:var(--sombra-alta);
}
.cta .cta-principal{font-size:1.08rem;margin:0 0 20px;color:#eef2f9}
.cta .cta-contato{font-family:var(--titulo);font-weight:700;font-size:1.14rem;color:var(--ouro);margin:0;line-height:1.5}
.cta .cta-contato a{color:var(--ouro)}
.cta .cta-contato span{display:block;font-family:var(--corpo);font-weight:400;font-size:.9rem;color:#9fb0cc;margin-top:5px}

.refs{font-size:.89rem;color:var(--suave)}
.refs h2{font-size:1.15rem;color:var(--suave)}
.refs-nota{font-size:.89rem}
.refs ol{padding-left:20px;margin:0}
.refs li{margin-bottom:8px;line-height:1.55}
sup a{color:var(--ouro-texto);text-decoration:none;font-size:.72em;padding:0 1px}

/* ---------------- rodapé ---------------- */
.rodape{background:var(--escuro);color:#92a3c0;font-size:.93rem}
.rodape-dentro{
  max-width:1160px;margin:0 auto;padding:54px 24px 46px;
  display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:34px;
}
.rodape a{color:#dfe6f2;text-decoration:none}
.rodape a:hover{color:var(--ouro)}
.rodape img{height:24px;width:auto;margin:0 0 16px;display:block}
.rodape p{margin:0 0 10px;line-height:1.6;max-width:36em}
.rodape h2{font-family:var(--titulo);font-weight:800;font-size:.78rem;letter-spacing:.1em;
  text-transform:uppercase;color:#6f8199;margin:0 0 14px}
.rodape ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.rodape-fim{
  border-top:1px solid rgba(255,255,255,.08);margin-top:10px;padding-top:22px;
  font-size:.86rem;color:#6f8199;
}

/* ---------------- telas estreitas ---------------- */
@media (max-width:900px){
  .faixa{padding:68px 0}
  .heroi{padding:56px 0 64px}
  .heroi-grade,.par{grid-template-columns:1fr;gap:38px}
  .par-invertido .par-texto{order:0}
  .rodape-dentro{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
  body{font-size:17px}
  /* a barra não cabe inteira num celular: ficam a marca e o botão.
     Os dois links continuam no herói de cada página e no rodapé. */
  .topo-dentro{padding:11px 16px;gap:12px}
  .topo nav a:not(.botao-topo){display:none}
  .topo nav .botao-topo{padding:9px 16px;font-size:.86rem}
  .dentro{padding:0 18px}
  .duas{grid-template-columns:1fr}
  .rodape-dentro{grid-template-columns:1fr;gap:28px}
  .so-desktop{display:none}
  .botao,.botao-fantasma{width:100%;justify-content:center}
}

/* ---------------- impressão ---------------- */
@media print{
  @page{size:A4;margin:14mm}
  body{background:#fff;color:#000;font-size:10.5pt;line-height:1.45}
  .topo,.pular,.sumario,.botoes,.rodape ul,.rodape h2{display:none}
  .faixa,.heroi,.heroi-interno{padding:0 0 10pt;background:none;color:#000}
  .faixa-escura{border-bottom:2pt solid #000}
  .faixa-escura h2,.faixa-escura h3,.faixa-escura p,.heroi h1,.heroi-interno h1,.heroi .chamada,
  .heroi-interno .chamada,.destaque-oferta,.titulo-faixa,.sub-faixa{color:#000}
  .heroi h1 em,.heroi-interno h1 em{color:#000}
  .selo{color:#000;border-color:#000;background:none}
  .dentro{max-width:none;padding:0}
  .janela,.celular,.cartao,.caixa,.cta,ul.jornada li{box-shadow:none;background:none;border:1pt solid #999}
  .janela-barra{display:none}
  .celular{width:auto;padding:0}
  figure img{max-height:95mm;width:auto;max-width:100%}
  .texto section{page-break-inside:auto;border-top:1pt solid #999}
  h2,h3,h4{page-break-after:avoid}
  figure,.caixa,.cartao,.cta{page-break-inside:avoid}
  .cta .cta-principal,.cta .cta-contato,.cta .cta-contato span,.cta .cta-contato a{color:#000}
  a{color:#000;text-decoration:none}
}

/* ---------------- números da capacidade ---------------- */
.numeros{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin:0 0 24px}
.numero{background:#fff;border:1px solid var(--borda);border-radius:var(--raio);padding:24px 22px;box-shadow:var(--sombra)}
.faixa-branca .numero{background:var(--papel)}
.numero strong{display:block;font-family:var(--titulo);font-size:clamp(2.4rem,5vw,3.4rem);font-weight:800;line-height:1;color:var(--ouro-texto)}
.numero span{display:block;margin-top:10px;font-size:.98rem;color:var(--suave)}

/* ---------------- perguntas ---------------- */
.titulo-perguntas{margin-top:56px}
.perguntas{display:grid;gap:20px}
.pergunta{border-left:3px solid var(--ouro);padding:2px 0 2px 18px}
.pergunta h3{font-size:1.1rem;font-weight:800;margin:0 0 7px;color:var(--marinho)}
.pergunta p{margin:0;color:var(--suave)}
