/* v58 "aprenda": páginas /aprenda e /curso-gratis-licitacao.
   Mesmo sistema da v56 (DESIGN.md): folha branca, régua fina, Archivo nos títulos, azul da marca. */

.ap-wrap{max-width:1120px;margin:0 auto}

/* topo claro, como o de Preços */
.ap-hero{background:var(--papel2);border-bottom:1px solid var(--regua);padding:36px 0 28px}
.ap-hero h1{margin:0 0 10px;max-width:760px}
.ap-lead{margin:0;max-width:680px;color:var(--sec);font-size:1.02rem}
.ap-free{margin:16px 0 0;padding:10px 14px;background:#fff;border:1px solid var(--regua);border-radius:4px;display:inline-block;max-width:100%;font-size:.95rem;color:var(--tinta)}
.ap-free b{font-weight:600}
.ap-crumb{margin:-10px 0 2px;font-size:.88rem;color:var(--sec)}
.ap-crumb a{display:inline-flex;align-items:center;min-height:44px;color:var(--sec);text-decoration:underline;text-underline-offset:3px}

/* seções em forma de folha: título à esquerda, linhas à direita */
.ap-sec{padding:40px 0;border-bottom:1px solid var(--regua)}
.ap-sec:last-of-type{border-bottom:0}
.ap-row{display:grid;grid-template-columns:minmax(0,.36fr) minmax(0,1fr);gap:10px 40px;align-items:start}
.ap-row>header h2{margin:0 0 8px}
.ap-row>header p{margin:0;color:var(--sec);font-size:.96rem}

.ap-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--regua)}
.ap-list>li{border-bottom:1px solid var(--regua)}
.ap-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 24px;align-items:center;padding:14px 0;color:inherit;text-decoration:none}
.ap-item b{font-family:var(--display);font-stretch:87.5%;font-weight:700;font-size:1.1rem;line-height:1.3;color:var(--tinta)}
.ap-item span{grid-column:1;color:var(--sec);font-size:.95rem;line-height:1.5}
.ap-item i{grid-column:2;grid-row:1/span 2;font-style:normal;font-weight:600;font-size:.92rem;color:var(--azul);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
a.ap-item:hover b{color:var(--azul)}
a.ap-item:focus-visible{outline:2px solid var(--azul);outline-offset:2px}
.ap-sub{font-size:1.05rem!important;margin:28px 0 6px}
.ap-more{margin:14px 0 0;font-size:.95rem}
.ap-more a,.ap-link{color:var(--azul);font-weight:600;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:44px}

/* destaque do curso no hub: folha com cabeçalho célula */
.ap-sheet{border:1px solid var(--regua);border-radius:4px;background:#fff;overflow:hidden}
.ap-sheet-h{background:var(--celula);padding:10px 18px;border-bottom:1px solid var(--regua);font-size:.86rem;font-weight:600;color:var(--tinta)}
.ap-sheet-b{padding:18px 18px 20px}
.ap-sheet-b p{margin:0 0 12px;color:var(--sec)}
.ap-mods{list-style:none;margin:0 0 18px;padding:0;columns:2;column-gap:28px;font-size:.94rem}
.ap-mods li{break-inside:avoid;padding:6px 0;border-bottom:1px solid #e7ebf2;color:var(--tinta)}
.ap-mods li small{color:var(--sec);font-size:.84rem;margin-right:6px;font-variant-numeric:tabular-nums}

.ap-btns{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px}
.ap-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;background:var(--azul);color:#fff;border:1px solid var(--azul);border-radius:4px;font-weight:600;text-decoration:none;line-height:1.2;text-align:center}
.ap-btn:hover{background:var(--azul-esc);border-color:var(--azul-esc)}
.ap-btn:focus-visible{outline:2px solid var(--tinta);outline-offset:2px}
.ap-btn--line{background:#fff;color:var(--tinta);border-color:var(--tinta)}
.ap-btn--line:hover{background:var(--celula);border-color:var(--tinta)}

/* faixa final */
.ap-end{background:var(--papel2);border-top:1px solid var(--regua);padding:36px 0}
.ap-end h2{margin:0 0 8px}
.ap-end p{margin:0 0 18px;color:var(--sec);max-width:640px}
.ap-note{margin:18px 0 0;font-size:.86rem;color:var(--sec)}

/* ===== curso: índice ao lado, módulos como folhas ===== */
.cg-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:start;padding:36px 0 44px}
.cg-toc{position:sticky;top:90px;font-size:.92rem}
.cg-toc h2{font-size:1rem!important;margin:0 0 8px}
.cg-toc ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--regua)}
.cg-toc li{border-bottom:1px solid var(--regua)}
.cg-toc a{display:flex;gap:8px;align-items:baseline;padding:10px 0;min-height:44px;color:var(--tinta);text-decoration:none;line-height:1.35}
.cg-toc a small{color:var(--sec);font-variant-numeric:tabular-nums;flex:0 0 auto}
.cg-toc a:hover{color:var(--azul)}

.cg-intro{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--regua);border-radius:4px;margin-bottom:28px}
.cg-intro>div{padding:16px 20px}
.cg-intro>div+div{border-left:1px solid var(--regua)}
.cg-intro h2{font-size:1.2rem!important;margin:0 0 8px}
.cg-intro ul{margin:0;padding:0 0 0 18px;color:var(--tinta);font-size:.95rem}
.cg-intro li{margin:0 0 5px}
.cg-video{margin:0 0 28px;padding:12px 16px;border:1px solid var(--regua);border-radius:4px;background:var(--papel2);font-size:.95rem}
.cg-video b{font-weight:600}

.cg-mod{border:1px solid var(--regua);border-radius:4px;background:#fff;margin:0 0 22px;scroll-margin-top:90px}
.cg-mod-h{background:var(--celula);border-bottom:1px solid var(--regua);padding:12px 18px}
.cg-mod-h small{display:block;font-size:.84rem;color:var(--sec);font-weight:600;margin-bottom:2px}
.cg-mod-h h2{font-size:clamp(1.2rem,1.8vw,1.4rem)!important;margin:0}
.cg-mod-h p{margin:4px 0 0;font-size:.94rem;color:var(--sec)}
.cg-aulas{list-style:none;margin:0;padding:0}
.cg-aulas li{border-bottom:1px solid var(--regua)}
.cg-aula{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:2px 16px;align-items:center;padding:12px 18px;color:inherit;text-decoration:none}
.cg-aula small{grid-row:1/span 2;align-self:start;padding-top:2px;color:var(--sec);font-size:.86rem;font-variant-numeric:tabular-nums}
.cg-aula b{font-weight:600;font-size:1rem;line-height:1.35;color:var(--tinta)}
.cg-aula span{grid-column:2;color:var(--sec);font-size:.93rem;line-height:1.5}
.cg-aula i{grid-column:3;grid-row:1/span 2;font-style:normal;font-weight:600;font-size:.9rem;color:var(--azul);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
a.cg-aula:hover b{color:var(--azul)}
a.cg-aula:focus-visible{outline:2px solid var(--azul);outline-offset:-2px}
.cg-task{padding:14px 18px 16px;background:var(--papel2)}
.cg-task h3{font-size:1rem!important;margin:0 0 6px}
.cg-task p,.cg-task li{font-size:.94rem;color:var(--tinta)}
.cg-task p{margin:0}
.cg-task ol{margin:6px 0 0;padding-left:20px}
.cg-task li{margin:0 0 3px}
.cg-task a{display:inline!important;min-height:0!important;margin:0!important;padding:0!important;color:var(--azul);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.cg-legal{margin:8px 0 0;font-size:.86rem;color:var(--sec)}

@media(max-width:960px){
  .cg-grid{grid-template-columns:1fr;gap:20px}
  .cg-toc{position:static}
  .cg-toc ol{columns:2;column-gap:24px}
  .cg-toc li{break-inside:avoid}
}
@media(max-width:760px){
  .ap-hero{padding:24px 0 22px}
  .ap-sec{padding:28px 0}
  .ap-row{grid-template-columns:1fr;gap:12px}
  .ap-item{grid-template-columns:1fr}
  .ap-item i{grid-column:1;grid-row:auto;justify-self:start;min-height:28px;display:flex;align-items:center}
  .ap-mods{columns:1}
  .ap-btns .ap-btn{width:100%}
  .cg-toc ol{columns:1}
  .cg-intro{grid-template-columns:1fr}
  .cg-intro>div+div{border-left:0;border-top:1px solid var(--regua)}
  .cg-aula{grid-template-columns:38px minmax(0,1fr);padding:12px 14px}
  .cg-aula i{grid-column:2;grid-row:auto;justify-self:start;min-height:28px;display:flex;align-items:center}
  .cg-mod-h,.cg-task{padding-left:14px;padding-right:14px}
  .ap-end{padding:28px 0 32px}
}
