/*
Theme Name: CIT Ourense (tema hijo de Divi)
Template: Divi
Description: Sistema de diseño CIT OURENSE AI RURAL: líneas de 2px, esquinas rectas, barras azules.
Version: 0.1
Text Domain: cit-child
*/

:root {
--cit-navy: #0B2545; --cit-azul: #1F6FD1; --cit-azul-osc: #17479A; --cit-palido: #B6C7DE;
--cit-pizarra: #34495F; --cit-niebla: #F4F7FB; --cit-banda: #E4ECF6; --cit-linea: #D5DFEC;
--cit-menu: #C5D3E7; --cit-roto: #F6F7F9; --cit-atenuado: #46597A;
--cit-grad: linear-gradient(135deg, #1F6FD1 0%, #17479A 50%, #0B2545 100%);
--cit-hero: linear-gradient(135deg, #4A9BFA 0%, #1F6FD1 24%, #17479A 52%, #0B2545 80%, #040F20 100%);
}

body, #page-container { font-family: 'DM Sans', system-ui, sans-serif; color: var(--cit-navy); }
h1, h2, h3, h4, .cit-titulo { font-family: 'Rubik', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; color: var(--cit-navy); }
a { color: var(--cit-azul-osc); }
.et_pb_button, .cit-btn { border-radius: 0 !important; border-width: 2px !important; }

/* Banda de logos (encima del menu): sección Divi con clase cit-minband */
.cit-minband { background: #fff; box-shadow: 0 -4px 10px rgba(11,37,69,.08); text-align: center; }
.cit-minband img { max-height: 44px; width: auto; margin: 0 18px; vertical-align: middle; }
#main-header, .cit-menu { background: var(--cit-menu) !important; }

/* Caja de subtitulo: clase cit-sub */
.cit-sub { background: var(--cit-grad); color: #fff; text-transform: uppercase; letter-spacing: .08em; border-left: 6px solid #BFD6F5; padding: 18px 24px; }
.cit-sub, .cit-sub * { color: #fff; }

/* Tarjetas (cifras y lineas): clase cit-card. Barra azul de 6px arriba, borde de 2px */
.cit-card { position: relative; border: 2px solid var(--cit-linea); background: #fff; padding: 28px 24px 22px; }
.cit-card::before { content: ""; position: absolute; left: -2px; right: -2px; top: -2px; height: 6px; background: var(--cit-azul); }
.cit-card.vacia::before { background: var(--cit-linea); }
.cit-card h3 { min-height: calc(2.4em + 16px); display: flex; align-items: flex-end; margin: 0 -24px 16px; padding: 0 24px 14px; border-bottom: 2px solid var(--cit-linea); }

/* Kicker, cita destacada y letra capital */
.cit-kick { font: 500 12px 'Rubik', sans-serif; text-transform: uppercase; letter-spacing: .16em; color: var(--cit-azul); }
.cit-pull { border-top: 2px solid var(--cit-linea); padding-top: 18px; }
.cit-pull::before { content: ""; display: block; width: 56px; height: 6px; background: var(--cit-azul); margin-bottom: 14px; }
.cit-capital > p:first-of-type::first-letter { float: left; font: 700 4.4em/0.85 'Rubik', sans-serif; color: var(--cit-azul); padding: 6px 10px 0 0; }
.cit-col { border-left: 2px solid var(--cit-linea); padding-left: 24px; }

/* Secciones */
.cit-banda { background: var(--cit-banda); }
.cit-niebla { background: var(--cit-niebla); }
.cit-hero { background: var(--cit-hero) !important; color: #fff; }
.cit-hero h1, .cit-hero h2, .cit-hero p { color: #fff; }
.cit-regla { border-top: 2px solid var(--cit-navy); }

/* Foto con escudo superpuesto arriba a la derecha: clase cit-foto en la sección/columna; escudo = imagen con clase cit-escudo */
.cit-foto { position: relative; }
.cit-foto .cit-escudo { position: absolute; top: 14px; right: 16px; height: clamp(58px, 9vw, 92px); width: auto; filter: drop-shadow(0 2px 6px rgba(0,0,0,.5)); }
