/* =============================================================================================
   Gacio · Presentación — diseño A1 v3 (maqueta aprobada el 25-10-2026)
   Azul institucional, Poppins (texto) y Playfair Display (títulos) alojadas; sin sombras ni animaciones.
   Todo con el prefijo gc- (y body.gc para ganar a Hello y al kit de Elementor sin !important).
   ============================================================================================= */

@font-face { font-family: "Poppins"; src: url("../fonts/poppins-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Poppins"; src: url("../fonts/poppins-500.woff2") format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "Poppins"; src: url("../fonts/poppins-600.woff2") format("woff2"); font-weight: 600 700; font-display: swap; }
@font-face { font-family: "Playfair Display"; src: url("../fonts/playfair.woff2") format("woff2"); font-weight: 400 900; font-display: swap; }

:root {
	--gc-azul: #0072bd;          /* 5,1:1 con blanco; 4,7:1 sobre --gc-fondo */
	--gc-azul-osc: #005a96;      /* hover: 7,2:1 */
	--gc-azul-pe: #00385e;       /* franja final del pie: 12:1 con blanco */
	--gc-azul-tono: #e6f1f9;     /* solo superficie, nunca texto azul encima */
	--gc-azul-claro: #cfe4f4;    /* detalles sobre --gc-azul-pe */
	--gc-fondo: #f4f6f8;
	--gc-linea: #dde3e9;
	--gc-tinta: #222a31;
	--gc-suave: #55606b;         /* texto secundario: 5,9:1 sobre --gc-fondo */
	--gc-branco: #ffffff;

	--gc-letra: "Poppins", system-ui, sans-serif;
	--gc-titular: "Playfair Display", Georgia, serif;
	--gc-ancho: 1200px;
	--gc-margen: clamp(16px, 3vw, 40px);
	--gc-radio: 4px;
}

/* ---------- Base (también para el contenido antiguo) ---------- */
html { -webkit-text-size-adjust: 100%; scroll-behavior: auto; }
body.gc { margin: 0; background: var(--gc-fondo); color: var(--gc-tinta); font: 400 1.0625rem/1.65 var(--gc-letra); }
body.gc a { color: var(--gc-azul); }
body.gc a:hover { color: var(--gc-azul-osc); }
body.gc :focus-visible { outline: 3px solid var(--gc-azul); outline-offset: 3px; }
body.gc h1, body.gc h2, body.gc h3, body.gc h4, body.gc h5, body.gc h6 { font-family: var(--gc-letra); color: var(--gc-tinta); }
body.gc [id] { scroll-margin-top: 16px; }

/* Enlace de salto de Hello («Saltar ao contido») */
body.gc .skip-link:focus { position: absolute; left: 16px; top: 12px; z-index: 100000; clip: auto; clip-path: none; width: auto; height: auto; padding: 12px 18px; background: var(--gc-azul); color: var(--gc-branco); font: 600 1rem/1.2 var(--gc-letra); text-decoration: none; }

/* Los widgets del plugin van pegados: sin el espacio entre widgets del kit de Elementor */
body.gc .elementor-widget[class*="elementor-widget-gacio_"] { margin-block-end: 0; }

.gc-envoltura { width: min(100% - 2 * var(--gc-margen), var(--gc-ancho)); margin-inline: auto; }
.gc-cabeceira, .gc-triptico, .gc-seccion, .gc-pe { font: 400 1.0625rem/1.65 var(--gc-letra); color: var(--gc-tinta); }
.gc-cabeceira img, .gc-seccion img, .gc-pe img { display: block; max-width: 100%; height: auto; }
.gc-cabeceira ul, .gc-triptico ul, .gc-seccion ul.gc-grella, .gc-pe ul { list-style: none; margin: 0; padding: 0; }
.gc-seccion h1, .gc-seccion h2, .gc-seccion h3, .gc-seccion p, .gc-seccion blockquote, .gc-pe p, .gc-marca { margin: 0; }

/* Trazo corto: el adorno de la caja de presentación original, ahora en azul */
.gc-trazo { display: block; width: 44px; height: 3px; background: var(--gc-azul); margin-bottom: 18px; }

/* Las secciones comparten la misma cabecera */
.gc-antetitulo { display: block; font: 600 .8125rem/1 var(--gc-letra); letter-spacing: .12em; text-transform: uppercase; color: var(--gc-azul); margin-bottom: 10px; }
body.gc .gc-titulo { font: 500 clamp(1.875rem, 1.35rem + 1.6vw, 2.75rem)/1.12 var(--gc-titular); color: var(--gc-tinta); margin: 0; }
.gc-seccion-cab { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 24px; margin-bottom: 36px; }
.gc-seccion { padding: 80px 0; }

/* Botones: sin animaciones */
body.gc .gc-boton { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 10px 26px; border: 2px solid var(--gc-azul); border-radius: var(--gc-radio); font: 600 1rem/1.25 var(--gc-letra); text-decoration: none; cursor: pointer; transition: none; }
body.gc .gc-boton--cheo { background: var(--gc-azul); color: var(--gc-branco); }
body.gc .gc-boton--cheo:hover { background: var(--gc-azul-osc); border-color: var(--gc-azul-osc); color: var(--gc-branco); }
body.gc .gc-boton--linea { background: var(--gc-branco); color: var(--gc-azul); }
body.gc .gc-boton--linea:hover { background: var(--gc-azul-tono); color: var(--gc-azul-osc); }
.gc-boton svg { width: 16px; height: 16px; flex: none; fill: currentColor; }

/* ---------- Cabecera ---------- */
.gc-cabeceira { background: var(--gc-branco); border-bottom: 1px solid var(--gc-linea); position: relative; z-index: 20; }
.gc-cabeceira > .gc-envoltura { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.gc-cabeceira-sup { display: flex; align-items: center; gap: 22px; padding-block: 10px; }
.gc-marca { line-height: 0; font-size: 0; }
.gc-marca a { display: inline-block; }
.gc-cabeceira .gc-marca img { width: 180px; height: auto; }
.gc-cabeceira .gc-escudo { width: 30px; height: auto; }
.gc-menu-boton { display: none; }
.gc-cabeceira .gc-menu { display: flex; flex-wrap: wrap; gap: 4px 34px; }
body.gc .gc-menu a { display: flex; align-items: center; height: 92px; padding: 3px 2px 0; border-bottom: 3px solid transparent; font: 500 1rem/1.2 var(--gc-letra); color: var(--gc-tinta); text-decoration: none; }
body.gc .gc-menu a:hover { color: var(--gc-azul); border-bottom-color: var(--gc-azul-tono); }
body.gc .gc-menu a[aria-current] { color: var(--gc-azul); border-bottom-color: var(--gc-azul); }

/* ---------- Tríptico: las tres secciones con el mismo peso (icono + título) ---------- */
.gc-triptico { background: var(--gc-branco); border-bottom: 1px solid var(--gc-linea); padding: 28px 0; }
.gc-triptico ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
body.gc .gc-porta { display: flex; align-items: center; gap: 18px; height: 100%; padding: 14px 20px 14px 14px; border: 1px solid var(--gc-linea); border-radius: var(--gc-radio); background: var(--gc-branco); color: var(--gc-tinta); text-decoration: none; }
.gc-porta-icono { display: grid; place-items: center; flex: none; width: 64px; height: 64px; border-radius: var(--gc-radio); background: var(--gc-azul); }
.gc-porta-icono svg { width: 40px; height: 40px; fill: none; stroke: var(--gc-branco); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.gc-porta strong { flex: 1; font: 500 1.375rem/1.2 var(--gc-titular); }
.gc-porta-frecha { width: 22px; height: 22px; flex: none; fill: none; stroke: var(--gc-azul); stroke-width: 2.4; }
body.gc .gc-porta:hover { border-color: var(--gc-azul); color: var(--gc-tinta); }
.gc-porta:hover strong { color: var(--gc-azul); text-decoration: underline; text-underline-offset: 4px; }

/* ---------- Novas (portada y archivo) ---------- */
.gc-grella { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.gc-nova { position: relative; display: flex; flex-direction: column; background: var(--gc-branco); border: 1px solid var(--gc-linea); border-radius: var(--gc-radio); overflow: hidden; }
.gc-seccion .gc-nova img, .gc-nova-sen-imaxe { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; object-position: center top; background: var(--gc-azul-tono); }
.gc-nova-corpo { display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 24px; }
.gc-nova time { font-size: .875rem; color: var(--gc-suave); }
body.gc .gc-nova-titular { margin: 0; font: 600 1.0625rem/1.35 var(--gc-letra); letter-spacing: .01em; }
body.gc .gc-nova-titular a { color: var(--gc-tinta); text-decoration: none; }
.gc-nova-titular a::after { content: ""; position: absolute; inset: 0; }
.gc-nova:hover { border-color: var(--gc-azul); }
body.gc .gc-nova:hover .gc-nova-titular a { color: var(--gc-azul); text-decoration: underline; text-underline-offset: 3px; }
.gc-nova p { font-size: 1rem; line-height: 1.6; color: var(--gc-suave); }
.gc-novas-pe { display: flex; justify-content: center; margin-top: 40px; }

/* Paginación del archivo (marcado del núcleo: the_posts_pagination) */
.gc-paxinacion { margin-top: 48px; }
/* Hello pone el <nav class="pagination"> en flex a la izquierda: centrado, en la portada y en el archivo */
body.gc .gc-paxinacion .navigation { display: flex; justify-content: center; margin: 0; }
.gc-paxinacion .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
body.gc .gc-paxinacion .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 48px; min-height: 48px; padding: 8px 14px; border: 1px solid var(--gc-linea); border-radius: var(--gc-radio); background: var(--gc-branco); color: var(--gc-azul); font-weight: 500; text-decoration: none; }
body.gc .gc-paxinacion a.page-numbers:hover { border-color: var(--gc-azul); color: var(--gc-azul-osc); }
body.gc .gc-paxinacion .page-numbers.current { background: var(--gc-azul); border-color: var(--gc-azul); color: var(--gc-branco); }
body.gc .gc-paxinacion .page-numbers.dots { border-color: transparent; background: none; color: var(--gc-suave); }

/* ---------- Un pouco de Historia: foto a sangre + texto a dos columnas con capitular ---------- */
.gc-historia { padding: 0; background: var(--gc-branco); border-block: 1px solid var(--gc-linea); }
.gc-historia-grella { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: stretch; }
.gc-seccion .gc-historia-foto { width: 100%; height: 100%; min-height: 320px; object-fit: cover; }
.gc-historia-texto { padding: 56px var(--gc-margen) 56px clamp(32px, 4.5vw, 64px); max-width: calc(var(--gc-ancho) * 7 / 12 + 64px); }
.gc-historia-columnas { columns: 2 260px; column-gap: 40px; margin-top: 26px; }
.gc-historia-columnas p { font-size: 1.0625rem; line-height: 1.7; }
.gc-seccion .gc-historia-columnas p + p { margin-top: 1em; }
.gc-historia-columnas p:first-child::first-letter { float: left; margin: 6px 10px 0 0; font: 500 4.1rem/.8 var(--gc-titular); color: var(--gc-azul); }

/* ---------- Recoñecemento: banda azul con la cita ---------- */
.gc-reconecemento { background: var(--gc-azul); color: var(--gc-branco); }
.gc-reconecemento .gc-trazo { background: var(--gc-branco); }
body.gc .gc-reconecemento .gc-titulo { color: var(--gc-branco); max-width: 22ch; }
.gc-seccion .gc-entradilla { max-width: 70ch; margin: 24px 0 40px; font-size: 1.125rem; line-height: 1.7; font-weight: 500; }
.gc-seccion .gc-cita { position: relative; margin: 0; padding: 8px 0 0; border: 0; border-top: 1px solid rgba(255, 255, 255, .45); font-style: normal; color: inherit; background: none; }
.gc-cita-marca { display: block; width: 64px; height: auto; margin: 28px 0 8px; fill: var(--gc-branco); }
.gc-destaque { max-width: 40ch; font: 400 clamp(1.375rem, 1.1rem + .9vw, 1.875rem)/1.45 var(--gc-titular); }
.gc-cita-resto { columns: 2 340px; column-gap: 56px; margin-top: 36px; font-size: 1.0625rem; line-height: 1.75; }
.gc-seccion .gc-cita-resto p { break-inside: avoid; margin-bottom: 1.1em; }

/* ---------- Vídeos: solo la imagen ---------- */
.gc-videos .gc-grella { gap: 20px; }
.gc-video a { position: relative; display: block; border-radius: var(--gc-radio); overflow: hidden; background: var(--gc-tinta); }
.gc-seccion .gc-video img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.gc-video span { position: absolute; left: 50%; top: 50%; display: grid; place-items: center; width: 60px; height: 60px; margin: -30px 0 0 -30px; border-radius: 50%; background: var(--gc-azul); }
.gc-video svg { width: 22px; height: 22px; margin-left: 3px; fill: var(--gc-branco); }
.gc-video a:hover span { background: var(--gc-azul-osc); }
.gc-video iframe { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-radius: var(--gc-radio); background: var(--gc-tinta); }

/* ---------- Pie ---------- */
.gc-pe { background: var(--gc-branco); border-top: 1px solid var(--gc-linea); }
.gc-pe .gc-logos { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 24px 56px; padding: 40px 0; }
.gc-pe .gc-logos img { height: 56px; width: auto; }
.gc-pe .gc-logos li:first-child img { height: 64px; }
.gc-pe-legal { background: var(--gc-azul-pe); color: var(--gc-branco); font-size: .9375rem; }
.gc-pe-legal .gc-envoltura { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 32px; padding-block: 22px; }
.gc-pe .gc-pe-legal ul { display: flex; flex-wrap: wrap; gap: 6px 24px; }
body.gc .gc-pe-legal a { color: var(--gc-branco); text-decoration: underline; text-underline-offset: 3px; }
body.gc .gc-pe-legal a:hover { color: var(--gc-azul-claro); }

/* ---------- Páginas interiores ---------- */
/* Logros (plantilla «Páxina 2026»): título y texto, sin autor, fecha ni «Comparte» */
.gc-paxina-cab { margin-bottom: 36px; }
.gc-paxina-texto { max-width: 75ch; padding: clamp(24px, 4vw, 48px); background: var(--gc-branco); border: 1px solid var(--gc-linea); border-radius: var(--gc-radio); }
.gc-paxina-texto > :first-child { margin-top: 0; }
.gc-paxina-texto p, .gc-paxina-texto ul, .gc-paxina-texto ol { margin: 0 0 1em; }
.gc-paxina-texto img { margin-block: 1em; }
.gc-paxina-texto .aligncenter { margin-inline: auto; }
/* Logros: una tarjeta por logro (título h2, texto 7/12 y foto a su tamaño real 5/12, como «Un pouco de Historia») */
.gc-paxina-texto--tarxetas { display: grid; gap: 28px; max-width: none; padding: 0; background: none; border: 0; }
.gc-logro { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(28px, 4vw, 56px); align-items: start; padding: clamp(24px, 4vw, 48px); background: var(--gc-branco); border: 1px solid var(--gc-linea); border-radius: var(--gc-radio); }
.gc-logro--so-texto { grid-template-columns: minmax(0, 1fr); }
body.gc .gc-logro h2 { margin: 0 0 .7em; font: 500 clamp(1.5rem, 1.2rem + 1vw, 2rem)/1.2 var(--gc-titular); color: var(--gc-tinta); }
.gc-logro-texto { max-width: 68ch; }
.gc-logro-texto > :last-child { margin-bottom: 0; }
.gc-logro-lista { margin: 1.25em 0 0; padding: 0; list-style: none; border-top: 1px solid var(--gc-linea); }
.gc-logro-lista li { padding: 12px 0; border-bottom: 1px solid var(--gc-linea); }
.gc-logro-foto { margin: 0; }
.gc-paxina-texto .gc-logro-foto img { display: block; width: 100%; height: auto; margin: 0; border-radius: var(--gc-radio); }
/* Recoñecemento (09-historia-reconecemento.php): entradilla y la cita en una tarjeta, con las comillas del plugin */
.gc-paxina-entradilla { max-width: 70ch; margin: 0; font-size: 1.125rem; line-height: 1.7; font-weight: 500; }
.gc-paxina-cita { max-width: 68ch; margin: 0; padding: 0; border: 0; font-style: normal; color: inherit; background: none; }
.gc-paxina-cita::before { content: ""; display: block; width: 56px; height: 42px; margin-bottom: 20px; background: var(--gc-azul);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 48'%3E%3Cpath d='M0 48V28C0 12 8 3 24 0l3 6C18 9 14 14 13 22h11v26H0zm37 0V28C37 12 45 3 61 0l3 6c-9 3-13 8-14 16h11v26H37z'/%3E%3C/svg%3E") no-repeat center / contain;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 48'%3E%3Cpath d='M0 48V28C0 12 8 3 24 0l3 6C18 9 14 14 13 22h11v26H0zm37 0V28C37 12 45 3 61 0l3 6c-9 3-13 8-14 16h11v26H37z'/%3E%3C/svg%3E") no-repeat center / contain; }
.gc-paxina-cita p { margin: 0 0 1em; }
.gc-paxina-cita > :last-child { margin-bottom: 0; }
.gc-paxina-cita .gc-paxina-destaque { margin-bottom: 1.2em; font: 400 clamp(1.375rem, 1.15rem + .8vw, 1.75rem)/1.45 var(--gc-titular); }
/* Solo para lectores de pantalla (título «Novas» de la portada) */
.gc-oculto { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0; }

/* Grupos de música (08-grupos.php): entradilla, 4 fotos en fila y una tarjeta por grupo con el nombre como h2 */
body.gc .gc-grupos { font: 400 1.0625rem/1.65 var(--gc-letra); color: var(--gc-tinta); }
.gc-grupos p { margin: 0 0 1em; }
.gc-grupos-intro { max-width: 70ch; font-size: 1.125rem; line-height: 1.7; font-weight: 500; }
.gc-grupos-intro > :last-child { margin-bottom: 0; }
body.gc .gc-grupos-fotos, body.gc .gc-grupos-lista { margin: 0; padding: 0; list-style: none; }
body.gc .gc-grupos-fotos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-block: 40px; }
.gc-grupos-fotos a { display: block; }
.gc-grupos-fotos img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--gc-radio); }
.gc-grupos-lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.gc-grupos-lista li { padding: clamp(20px, 2.5vw, 28px); background: var(--gc-branco); border: 1px solid var(--gc-linea); border-radius: var(--gc-radio); }
body.gc .gc-grupos-lista h2 { margin: 0 0 .5em; font: 500 1.375rem/1.25 var(--gc-titular); letter-spacing: .02em; color: var(--gc-tinta); }
.gc-grupos-lista p { margin: 0; }

/* Páginas con la plantilla de Hello (Grupos de música, Contacto, legales): el título como h1 con el estilo de la portada */
body.gc .page-header, body.gc .page-content, body.gc .site-main > .post-tags { width: min(100% - 2 * var(--gc-margen), var(--gc-ancho)); max-width: none; margin-inline: auto; padding-inline: 0; }
body.gc .site-main { padding-inline: 0; padding-bottom: 72px; }
body.gc .page-header { padding: 64px 0 28px; }
body.gc .page-header::before { content: ""; display: block; width: 44px; height: 3px; margin-bottom: 18px; background: var(--gc-azul); }
body.gc .page-header .entry-title { max-width: none; margin: 0; padding-inline: 0; font: 500 clamp(1.875rem, 1.35rem + 1.6vw, 2.75rem)/1.12 var(--gc-titular); color: var(--gc-tinta); }
/* Páginas de texto escrito en el editor (aviso legal, política de privacidade): líneas de lectura cómoda y tablas
   sin las bandas grises ni las cabeceras centradas de Hello. Solo hijos directos: no toca las páginas de Elementor */
body.gc.page .page-content > :is(p, h2, h3, ul, ol, table) { max-width: 75ch; }
body.gc.page .page-content > h2 { margin: 1.6em 0 .5em; font-size: 1.5rem; line-height: 1.3; }
body.gc.page .page-content > table { width: 100%; margin: 0 0 1.5em; border-collapse: collapse; font-size: 1rem; }
body.gc.page .page-content > table :is(th, td) { padding: 10px 14px; border: 1px solid var(--gc-linea); background: var(--gc-branco); text-align: left; vertical-align: top; }
body.gc.page .page-content > table th { font-weight: 600; }
body.gc.page .page-content > table td a { overflow-wrap: anywhere; }
body.gc.page .page-content > table th[scope="row"] { width: 30%; }
/* Hello pinta los <button> de rosa: el de enviar del formulario, en azul y sin animación */
body.gc .wpforms-container button[type="submit"], body.gc .wpforms-container .wpforms-submit { min-height: 48px; padding: 10px 26px; border: 2px solid var(--gc-azul); border-radius: var(--gc-radio); background: var(--gc-azul); color: var(--gc-branco); font: 600 1rem/1.25 var(--gc-letra); transition: none; }
body.gc .wpforms-container button[type="submit"]:hover, body.gc .wpforms-container .wpforms-submit:hover { background: var(--gc-azul-osc); border-color: var(--gc-azul-osc); color: var(--gc-branco); }

/* ---------- Tableta y móvil ---------- */
@media (max-width: 980px) {
	.gc-grella { grid-template-columns: repeat(2, 1fr); gap: 20px; }
	.gc-historia-grella { grid-template-columns: 1fr; }
	.gc-seccion .gc-historia-foto { height: auto; min-height: 0; aspect-ratio: 16 / 9; }
	.gc-historia-texto { max-width: none; padding: 44px var(--gc-margen); }
	.gc-porta strong { font-size: 1.1875rem; }
}
@media (max-width: 760px) {
	.gc-cabeceira > .gc-envoltura { display: block; }
	.gc-cabeceira-sup { display: grid; grid-template-columns: auto 1fr auto auto; gap: 14px; padding-block: 10px; }
	.gc-marca { grid-column: 1; }
	.gc-cabeceira .gc-marca img { width: 150px; }
	.gc-cabeceira .gc-escudo { grid-column: 3; width: 26px; }
	body.gc .gc-menu-boton { grid-column: 4; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 14px; border: 2px solid var(--gc-azul); border-radius: var(--gc-radio); background: var(--gc-branco); color: var(--gc-azul); font: 600 .9375rem/1 var(--gc-letra); cursor: pointer; transition: none; }
	body.gc .gc-menu-boton:hover, body.gc .gc-menu-boton:focus { background: var(--gc-azul-tono); color: var(--gc-azul-osc); border-color: var(--gc-azul); }
	.gc-menu-boton svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.4; }
	.gc-cabeceira .gc-menu { display: none; flex-direction: column; gap: 0; padding: 0 0 12px; }
	.gc-cabeceira.gc-aberta .gc-menu { display: flex; }
	body.gc .gc-menu a { height: auto; padding: 13px 4px; border-bottom: 1px solid var(--gc-linea); font-size: 1.0625rem; }
	body.gc .gc-menu a[aria-current] { border-bottom: 1px solid var(--gc-linea); box-shadow: inset 4px 0 0 var(--gc-azul); padding-left: 14px; }

	/* Tríptico en móvil: tres filas iguales */
	.gc-triptico { padding: 18px 0; }
	.gc-triptico ul { grid-template-columns: 1fr; gap: 10px; }
	body.gc .gc-porta { padding: 10px 16px 10px 10px; gap: 14px; }
	.gc-porta-icono { width: 52px; height: 52px; }
	.gc-porta-icono svg { width: 32px; height: 32px; }
	.gc-porta strong { font-size: 1.1875rem; }

	.gc-seccion { padding: 52px 0; }
	.gc-historia { padding: 0; }
	.gc-grella { grid-template-columns: 1fr; }
	/* Novas compactas (portada): la primera, entera; el resto en fila, foto a la izquierda y fecha + titular a la derecha */
	.gc-novas--compactas .gc-grella { gap: 12px; }
	.gc-novas--compactas .gc-nova:not(:first-child) { flex-direction: row; align-items: stretch; }
	.gc-seccion.gc-novas--compactas .gc-nova:not(:first-child) img, .gc-novas--compactas .gc-nova:not(:first-child) .gc-nova-sen-imaxe { flex: none; width: 38%; height: auto; aspect-ratio: 1 / 1; }
	.gc-novas--compactas .gc-nova:not(:first-child) .gc-nova-corpo { justify-content: center; gap: 6px; padding: 12px 14px; }
	body.gc .gc-novas--compactas .gc-nova:not(:first-child) .gc-nova-titular { font-size: .9375rem; line-height: 1.3; }
	.gc-novas--compactas .gc-nova:not(:first-child) time { font-size: .8125rem; }
	.gc-novas--compactas .gc-nova:not(:first-child) p { display: none; }
	.gc-videos .gc-grella { grid-template-columns: 1fr 1fr; gap: 12px; }
	.gc-video span { width: 44px; height: 44px; margin: -22px 0 0 -22px; }
	.gc-video svg { width: 16px; height: 16px; }
	.gc-pe-legal .gc-envoltura { flex-direction: column; align-items: flex-start; }
	.gc-pe .gc-logos { gap: 24px 36px; }
	.gc-pe .gc-logos img { height: 44px; }
	.gc-pe .gc-logos li:first-child img { height: 52px; }
	body.gc .page-header { padding-top: 40px; }
	.gc-paxina-texto--tarxetas { gap: 20px; }
	.gc-logro { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.gc-logro-foto { order: -1; }
	body.gc .gc-grupos-fotos { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-block: 28px; }
	.gc-grupos-lista { grid-template-columns: minmax(0, 1fr); gap: 14px; }
}
