/*
 * Akros Inicio — identidad aplicada (solo se carga con "Aplicar estos colores y letras al sitio").
 * Afecta la portada y el contenido de las páginas internas; nunca el encabezado ni el pie GOV.CO.
 *
 * Idea de diseño: el sitio de un colegio público es una ventanilla de servicios para familias.
 * Los accesos son un directorio (lista con divisores), no un mosaico de tarjetas. El único
 * gesto decorativo es el medallón del destacado, que retoma el anillo del escudo.
 * Fuentes con licencia OFL alojadas en ../fuentes (ver los OFL-*.txt).
 */

@font-face { font-family: "Atkinson Hyperlegible"; src: url("fuentes/atkinson-hyperlegible-400.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Atkinson Hyperlegible"; src: url("fuentes/atkinson-hyperlegible-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: "Atkinson Hyperlegible"; src: url("fuentes/atkinson-hyperlegible-700.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Lexend"; src: url("fuentes/lexend.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Serif 4"; src: url("fuentes/source-serif-4.woff2") format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; }

/* ---------- Escala tipográfica (razón 1,25 sobre 17 px) ---------- */
.aki-inicio, .nv-content-wrap, .aki-cabecera {
  --aki-t-0: 1.0625rem; --aki-t-1: 1.33rem; --aki-t-2: 1.66rem; --aki-t-3: 2.07rem; --aki-t-4: 2.6rem; --aki-t-5: 3.25rem;
  font-family: var(--aki-fuente-texto); color: var(--aki-texto);
  font-size: var(--aki-t-0); line-height: 1.65;
}
.nv-content-wrap h1, .nv-content-wrap h2, .nv-content-wrap h3, .nv-content-wrap h4,
.aki-inicio h2, .aki-inicio h3, .aki-cabecera-titulo {
  font-family: var(--aki-fuente-titulos); color: var(--aki-oscuro); font-weight: 650; letter-spacing: -0.012em; line-height: 1.18; text-wrap: balance;
}
.nv-content-wrap h2 { font-size: var(--aki-t-3); margin: 1.8em 0 .5em; }
.nv-content-wrap h3 { font-size: var(--aki-t-2); margin: 1.6em 0 .45em; }
.nv-content-wrap h4 { font-size: var(--aki-t-1); }
.nv-content-wrap p, .nv-content-wrap li { max-width: 72ch; }
.nv-content-wrap a:not(.wp-block-button__link):not(.aki-boton) { color: var(--aki-primario); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.nv-content-wrap a:not(.wp-block-button__link):not(.aki-boton):hover { color: var(--aki-oscuro); text-decoration-thickness: 2px; }
.nv-content-wrap :focus-visible, .aki-inicio :focus-visible, .aki-cabecera :focus-visible { outline: 3px solid var(--aki-oscuro); outline-offset: 3px; box-shadow: 0 0 0 6px var(--aki-acento); border-radius: 2px; }
.nv-content-wrap .wp-block-button__link { background: var(--aki-primario); color: #fff; border-radius: var(--aki-radio); }

/* ---------- Portada: ritmo general ---------- */
.aki-inicio { gap: var(--aki-espacio); padding-block: 8px 24px; }
.aki-inicio > * { width: min(1180px, 100%); margin-inline: auto; }
.aki-inicio .aki-seccion-titulo { font-size: var(--aki-t-3); margin: 0 0 .7em; max-width: 30ch; }

/* Franja de fondo a todo el ancho, sin salirse del contenedor del tema. */
.aki-inicio .aki-accesos, .aki-inicio .aki-cifras {
  position: relative; isolation: isolate; padding-block: clamp(32px, 5vw, 56px);
}
.aki-inicio .aki-accesos::before, .aki-inicio .aki-cifras::before {
  content: ""; position: absolute; inset: 0 calc(50% - 50vw); z-index: -1; background: var(--aki-superficie);
}

/* ---------- Destacado: el medallón ---------- */
.aki-destacado { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(28px, 5vw, 72px); padding-block: clamp(16px, 3vw, 40px); }
.aki-inicio .aki-destacado-titulo { font-size: clamp(2.1rem, 4.4vw, var(--aki-t-5)); font-weight: 700; letter-spacing: -0.02em; max-width: 18ch; }
.aki-destacado-parrafo { font-size: var(--aki-t-1); line-height: 1.55; max-width: 46ch; color: var(--aki-texto); }
.aki-antetitulo { text-transform: none; letter-spacing: 0; font: 700 var(--aki-t-0)/1.3 var(--aki-fuente-texto); color: var(--aki-primario); }
.aki-destacado-escudo { width: 84px; height: 84px; margin-bottom: 18px; }
.aki-destacado-media { position: relative; justify-self: center; width: min(100%, 460px); }
.aki-destacado-media img {
  aspect-ratio: 1 / 1; border-radius: 50%;
  /* El anillo del escudo: blanco, color principal y un filete de acento. */
  box-shadow: 0 0 0 10px #fff, 0 0 0 16px var(--aki-primario), 0 0 0 19px #fff, 0 0 0 21px var(--aki-acento);
}
.aki-destacado--sobre_imagen .aki-destacado-media { width: auto; }
.aki-destacado--sobre_imagen .aki-destacado-media img { border-radius: 0; box-shadow: none; }
.aki-destacado--sobre_imagen .aki-destacado-texto { border-radius: var(--aki-radio); border-top: 6px solid var(--aki-primario); }

.aki-boton { min-height: 48px; padding: 12px 24px; font: 700 var(--aki-t-0)/1.2 var(--aki-fuente-texto); border-radius: var(--aki-radio); }
.aki-boton--principal:hover { background: var(--aki-oscuro); border-color: var(--aki-oscuro); }
.aki-boton--secundario { background: #fff; }

/* ---------- Accesos: ventanilla de trámites ---------- */
.aki-accesos-lista { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(20px, 4vw, 56px); }
.aki-accesos-lista > li { border-bottom: 1px solid color-mix(in srgb, var(--aki-oscuro) 18%, transparent); }
.aki-accesos-lista > li:nth-child(-n+2) { border-top: 1px solid color-mix(in srgb, var(--aki-oscuro) 18%, transparent); }
.aki-acceso {
  align-items: center; gap: 16px; padding: 18px 6px; border: 0; border-radius: 0; background: transparent;
  transition: background-color .15s ease;
}
.aki-acceso:hover { transform: none; background: color-mix(in srgb, var(--aki-primario) 7%, transparent); }
.aki-acceso::after {
  content: ""; flex: none; margin-inline-start: auto; width: 9px; height: 9px;
  border-top: 2px solid var(--aki-primario); border-right: 2px solid var(--aki-primario); transform: rotate(45deg);
  transition: transform .15s ease;
}
.aki-acceso:hover::after { transform: translateX(3px) rotate(45deg); }
.aki-acceso-icono { width: 44px; height: 44px; border-radius: 50%; background: #fff; color: var(--aki-primario); box-shadow: inset 0 0 0 2px var(--aki-primario); }
.aki-inicio .aki-acceso-titulo { font: 650 var(--aki-t-1)/1.25 var(--aki-fuente-titulos); color: var(--aki-oscuro); }
.aki-acceso-desc { font-size: .95rem; color: var(--aki-texto); }

/* ---------- Cifras ---------- */
.aki-cifras-lista { border: 0; gap: 0; }
.aki-cifra { border-inline-start: 2px solid var(--aki-primario); padding: 4px 20px; }
.aki-cifra:first-child { border-inline-start: 2px solid var(--aki-primario); }
.aki-cifra dd { font: 700 clamp(2.4rem, 5vw, 3.4rem)/1 var(--aki-fuente-titulos); color: var(--aki-oscuro); letter-spacing: -0.03em; }
.aki-cifra dt { font-size: var(--aki-t-0); color: var(--aki-texto); }

/* ---------- Eventos ---------- */
.aki-eventos-lista { gap: 0; }
.aki-evento { border: 0; border-bottom: 1px solid color-mix(in srgb, var(--aki-oscuro) 18%, transparent); border-radius: 0; padding: 16px 0; background: transparent; }
.aki-evento-fecha { width: 68px; border-radius: var(--aki-radio); background: var(--aki-primario); }
.aki-evento-mes { text-transform: lowercase; letter-spacing: 0; font-size: .95rem; }
.aki-evento-titulo { font-size: var(--aki-t-1); }
.aki-evento-detalle { font-size: 1rem; }

/* ---------- Noticias (marcado de 1.x) ---------- */
.aki-inicio .aki-noticias-titulo { font: 650 var(--aki-t-3)/1.2 var(--aki-fuente-titulos); color: var(--aki-oscuro); margin-bottom: .7em; }
.aki-noticia-card { border: 0; border-radius: 0; background: transparent; }
.aki-noticia-card:hover { box-shadow: none; transform: none; }
.aki-noticia-card:hover h3 { text-decoration: underline; text-underline-offset: 3px; }
.aki-noticia-card-img { height: auto; aspect-ratio: 16 / 10; border-radius: var(--aki-radio); background: var(--aki-superficie); }
.aki-noticia-card-img-vacia { color: var(--aki-primario); }
.aki-noticia-card-cuerpo { padding: 14px 0 0; }
.aki-noticia-card-fecha { text-transform: none; letter-spacing: 0; font: 400 .95rem/1.3 var(--aki-fuente-texto); color: var(--aki-texto); }
.aki-inicio .aki-noticia-card h3 { font: 650 var(--aki-t-1)/1.3 var(--aki-fuente-titulos); color: var(--aki-oscuro); text-align: left; }
.aki-noticia-card-extracto { font-size: 1rem; color: var(--aki-texto); text-align: left; }
.aki-noticia-card-adjunto, .aki-noticia-card-vermas { color: var(--aki-primario); font-family: var(--aki-fuente-texto); font-size: .95rem; }

/* ---------- Tarjetas y texto (1.x) ---------- */
.aki-texto-institucional { max-width: 62ch; font: var(--aki-t-1)/1.6 var(--aki-fuente-texto); color: var(--aki-texto); }
.aki-tarjeta { border-radius: var(--aki-radio); border-color: color-mix(in srgb, var(--aki-oscuro) 18%, transparent); }
.aki-tarjeta h3 { font-family: var(--aki-fuente-titulos); color: var(--aki-oscuro); }
.aki-carrusel { border-radius: var(--aki-radio); }

/* ---------- Galería y aliados ---------- */
.aki-galeria-lista { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 8px; }
.aki-galeria-item { border-radius: var(--aki-radio); }
.aki-aliado { border-radius: var(--aki-radio); border-color: color-mix(in srgb, var(--aki-oscuro) 18%, transparent); }

/* ---------- Páginas internas ---------- */
.aki-cabecera { padding: clamp(28px, 4vw, 48px) 0 clamp(24px, 3.5vw, 40px); }
.aki-cabecera .aki-cabecera-titulo { font-size: clamp(2rem, 4vw, var(--aki-t-4)); font-weight: 700; max-width: 26ch; }
.aki-cabecera--banda { background: var(--aki-oscuro); border-bottom: 6px solid var(--aki-primario); }
.aki-cabecera-resumen { font-size: var(--aki-t-1); max-width: 60ch; }
.aki-migas ol { font-size: .95rem; }

/* ---------- Celular ---------- */
@media (max-width: 860px) {
  .aki-destacado { grid-template-columns: 1fr; }
  .aki-destacado-media { order: -1; width: min(78%, 340px); }
  .aki-destacado--imagen_izquierda .aki-destacado-media { order: -1; }
  .aki-accesos-lista { grid-template-columns: 1fr; }
  .aki-accesos-lista > li:nth-child(2) { border-top: 0; }
  .aki-cifras-lista { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .aki-acceso, .aki-acceso::after { transition: none; }
}

/* ---------- Alto contraste (plugin Akros Accesibilidad) ---------- */
html.akros-contraste .aki-destacado-media img { box-shadow: 0 0 0 4px #fff; }
html.akros-contraste .aki-acceso-icono { box-shadow: inset 0 0 0 2px #ffd400; }
html.akros-contraste .aki-acceso::after { border-color: #ffd400; }
html.akros-contraste .aki-inicio .aki-accesos::before, html.akros-contraste .aki-inicio .aki-cifras::before { background: #000; }

/* El CSS del sitio justifica el contenido: en la portada todo va a la izquierda. */
.aki-inicio li, .aki-inicio span, .aki-inicio p, .aki-inicio dt, .aki-inicio dd { text-align: left; }
/* Una noticia sin imagen no muestra una caja vacía: queda como texto. */
.aki-noticia-card-img:has(.aki-noticia-card-img-vacia) { display: none; }
.aki-noticia-card:has(.aki-noticia-card-img-vacia) .aki-noticia-card-cuerpo { padding-top: 16px; border-top: 3px solid var(--aki-primario); }
.aki-inicio .aki-noticia-card { border: 0; border-radius: 0; box-shadow: none; }
.aki-inicio .aki-noticia-card h3 { margin: 6px 0 0; }
.aki-inicio .aki-noticia-card-fecha, .aki-inicio .aki-noticia-card-extracto { margin: 0; font-family: var(--aki-fuente-texto); }
.aki-inicio .aki-noticia-card-extracto { margin-top: 8px; font-size: 1rem; line-height: 1.55; }
.aki-inicio .aki-noticia-card-vermas { padding-top: 12px; }
