/*
Theme Name:   PINAE Azul
Description:  Tema hijo de Halva para pinae.es. Paleta azul / marino / amarillo, letra Atkinson Hyperlegible (muy legible), tarjetas con borde de color y pie azul.
Author:       José Aurelio Pina Romero
Template:     halva
Version:      1.0.0
Text Domain:  pinae-azul
*/

/* ===== Paleta ===== */
:root {
	--pa-azul: #1d4f91;
	--pa-marino: #1B2A4E;
	--pa-amarillo: #f4b200;
	--pa-pizarra: #3d6081;
	--pa-borde: #d0d9e6;
	--pa-fondo: #f6f8fb;
	--pa-texto: #111;
	--pa-gris: #5b6474;
	--pa-letra: "Atkinson Hyperlegible", Verdana, Arial, sans-serif;
	--pa-sombra: 0 6px 18px rgba(27, 42, 78, .08);
	--pa-sombra-hover: 0 10px 24px rgba(27, 42, 78, .16);
}

/* ===== Letra y texto ===== */
body.bwp-body {
	background: var(--pa-fondo);
	color: var(--pa-texto);
	font-family: var(--pa-letra);
	font-size: 18px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}
body.bwp-body :is(h1, h2, h3, h4, h5, h6, p, li, a, span, td, th, input, textarea, select, button, label, blockquote, time):not(i):not([class*="fa-"]) {
	font-family: var(--pa-letra);
}
body.bwp-body :is(h1, h2, h3, h4, h5, h6) { color: var(--pa-marino); font-weight: 700; }
.bwp-content a:not([class]), .entry-content a:not([class]) {
	color: var(--pa-azul);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.bwp-content a:not([class]):hover, .entry-content a:not([class]):hover { color: var(--pa-marino); }
:focus-visible { outline: 2px solid var(--pa-amarillo); outline-offset: 3px; }

/* ===== Cabecera ===== */
.bwp-site-header {
	background: var(--pa-azul);
	border-bottom: 4px solid var(--pa-amarillo);
	padding-bottom: 34px;
}
.bwp-site-header .bwp-logo-text { font-size: clamp(26px, 3.2vw + 8px, 46px) !important; line-height: 1.15 !important; }
.bwp-secondary-nav { margin-top: 0 !important; }
.bwp-carousel-section { margin-top: 24px !important; }
.bwp-site-header .bwp-logo-text,
.bwp-site-header .bwp-logo-text:hover {
	color: #fff !important;
	letter-spacing: 1px;
	font-weight: 700;
}
.bwp-site-header .bwp-logo-text::after { background-color: var(--pa-amarillo) !important; }

/* ===== Menú ===== */
.bwp-secondary-nav {
	background: #fff;
	border-bottom: 1px solid var(--pa-borde);
	box-shadow: 0 2px 10px rgba(27, 42, 78, .05);
}
.bwp-main-menu > li > a {
	color: var(--pa-marino) !important;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: 1px;
	transition: color .15s;
}
.bwp-main-menu > li:hover > a,
.bwp-main-menu > li > a:hover,
.bwp-main-menu > li.current-menu-item > a,
.bwp-main-menu > li.current-menu-ancestor > a { color: var(--pa-azul) !important; }

/* Submenú: azul con letra blanca, marino con raya amarilla al pasar */
.bwp-main-menu .sub-menu {
	background: var(--pa-azul) !important;
	border: 0 !important;
	border-top: 3px solid var(--pa-amarillo) !important;
	box-shadow: 0 8px 20px rgba(27, 42, 78, .25) !important;
}
.bwp-main-menu .sub-menu li { background: transparent !important; border-color: rgba(255, 255, 255, .18) !important; }
.bwp-main-menu .sub-menu li a {
	color: #fff !important;
	border-left: 3px solid transparent;
	font-size: 15px;
	transition: background-color .15s, border-color .15s;
}
.bwp-main-menu .sub-menu li a:hover,
.bwp-main-menu .sub-menu li:hover > a,
.bwp-main-menu .sub-menu li.current-menu-item > a {
	background: var(--pa-marino) !important;
	color: #fff !important;
	border-left-color: var(--pa-amarillo);
}

/* Menú oculto y menú del móvil */
.bwp-hidden-main-nav, .bwp-dropdown-mobile-menu-container { background: var(--pa-marino) !important; }
.bwp-hidden-main-nav a, .bwp-mobile-menu a { color: #fff !important; }
.bwp-hidden-main-nav a:hover, .bwp-mobile-menu a:hover { color: var(--pa-amarillo) !important; }

/* Botones flotantes (menú, buscar, barra lateral, subir) */
.bwp-sticky-buttons-container, .bwp-mobile-buttons { background: transparent; }
.bwp-sticky-button, .bwp-toggle-mobile-menu-button, .bwp-scroll-top-button {
	background: var(--pa-azul) !important;
	color: #fff !important;
	border-color: transparent !important;
}
.bwp-sticky-button:hover, .bwp-toggle-mobile-menu-button:hover, .bwp-scroll-top-button:hover {
	background: var(--pa-marino) !important;
	color: var(--pa-amarillo) !important;
}

/* ===== Carrusel de portada ===== */
.bwp-homepage-carousel-item-overlay { background: linear-gradient(180deg, rgba(27, 42, 78, .15), rgba(27, 42, 78, .75)) !important; }
.bwp-homepage-carousel-item-bg-color { background: var(--pa-marino) !important; }
.bwp-homepage-carousel-post-title, .bwp-homepage-carousel-post-title a { color: #fff !important; }

/* ===== Título de secciones ===== */
.bwp-archive-title,
.bwp-latest-posts-section h2:not(.screen-reader-text) {
	color: var(--pa-marino);
	border-bottom: 3px solid var(--pa-amarillo);
	padding-bottom: 6px;
	display: inline-block;
}

/* ===== Tarjetas de entradas ===== */
.bwp-blog-post .bwp-post-wrapper {
	background: #fff;
	border: 1px solid var(--pa-borde);
	border-top: 4px solid var(--pa-azul);
	border-radius: 8px;
	overflow: hidden;
	box-shadow: var(--pa-sombra);
	transition: box-shadow .15s, transform .15s, border-color .15s;
}
.bwp-blog-post .bwp-post-wrapper:hover {
	box-shadow: var(--pa-sombra-hover);
	transform: translateY(-2px);
	border-top-color: var(--pa-amarillo);
}
.bwp-blog-post .bwp-post-content { padding: 18px 20px 14px; }
.bwp-post-media img { transition: transform .25s; }
.bwp-blog-post .bwp-post-wrapper:hover .bwp-post-media img { transform: scale(1.04); }
.bwp-post-media-overlay { background: rgba(29, 79, 145, .35) !important; }

.bwp-post-title, .bwp-post-title a {
	color: var(--pa-marino) !important;
	font-weight: 800;
	line-height: 1.3;
	text-decoration: none;
}
.bwp-blog-post .bwp-post-title { font-size: 17px; text-transform: uppercase; letter-spacing: .03em; }
.bwp-post-title a:hover { color: var(--pa-azul) !important; }

.bwp-post-metadata, .bwp-post-metadata a, .bwp-single-post-metadata, .bwp-single-post-metadata a {
	color: var(--pa-gris) !important;
	font-size: 14px;
	font-style: italic;
}
.bwp-post-excerpt { color: var(--pa-texto); }

/* "Leer más" como botón píldora */
.bwp-read-more-link {
	display: inline-block;
	padding: 6px 16px;
	border-radius: 999px;
	background: var(--pa-azul);
	color: #fff !important;
	font-weight: 700;
	font-size: 14px;
	text-decoration: none !important;
	transition: background-color .15s;
}
.bwp-read-more-link:hover { background: var(--pa-marino); color: var(--pa-amarillo) !important; }
.bwp-comments-counter a { color: var(--pa-azul) !important; }

/* Opciones de vista y número de página */
.bwp-layout-options .bwp-button.bwp-active, .bwp-layout-options .bwp-button:hover { color: var(--pa-azul) !important; }
.bwp-page-numbers { color: var(--pa-gris); }

/* Paginación (WP-PageNavi y nativa) */
.wp-pagenavi a, .wp-pagenavi span, .page-numbers {
	border: 1px solid var(--pa-borde) !important;
	border-radius: 6px;
	padding: 6px 12px;
	color: var(--pa-azul) !important;
	background: #fff;
}
.wp-pagenavi span.current, .page-numbers.current, .wp-pagenavi a:hover, a.page-numbers:hover {
	background: var(--pa-azul) !important;
	border-color: var(--pa-azul) !important;
	color: #fff !important;
}

/* ===== Entrada / página individual ===== */
.bwp-single-post-article {
	background: #fff;
	border: 1px solid var(--pa-borde);
	border-radius: 10px;
	box-shadow: var(--pa-sombra);
}
.bwp-single-post-article .entry-content { padding-left: 4px; padding-right: 4px; }
.entry-content blockquote {
	border-left: 6px solid var(--pa-amarillo);
	background: var(--pa-fondo);
	border-radius: 0 8px 8px 0;
	padding: 12px 18px;
}
.entry-content table th { background: var(--pa-marino); color: #fff; }
.entry-content table td, .entry-content table th { border-color: var(--pa-borde); }

/* Botones y formularios */
.wp-block-button__link, .entry-content button, input[type="submit"], .bwp-search-submit {
	background: var(--pa-azul) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-weight: 700;
}
.wp-block-button__link:hover, input[type="submit"]:hover, .bwp-search-submit:hover { background: var(--pa-marino) !important; }
input[type="text"], input[type="search"], input[type="email"], textarea, select {
	border: 1px solid var(--pa-borde) !important;
	border-radius: 6px;
}
input:focus, textarea:focus, select:focus { border-color: var(--pa-azul) !important; }

/* ===== Barra lateral (widgets) ===== */
.bwp-hidden-sidebar { background: var(--pa-fondo) !important; }
.bwp-sidebar-content .bwp-widget {
	background: #fff;
	border: 1px solid var(--pa-borde);
	border-left: 6px solid var(--pa-amarillo);
	border-radius: 10px;
	padding: 16px 18px;
	box-shadow: var(--pa-sombra);
	margin-bottom: 18px;
}
.bwp-sidebar-content .bwp-widget-title {
	color: var(--pa-marino) !important;
	font-size: 18px;
	border-bottom: 2px solid var(--pa-borde);
	padding-bottom: 6px;
}
.bwp-hide-sidebar-button { background: var(--pa-azul) !important; color: #fff !important; }

/* ===== Pie ===== */
.bwp-footer-widgets-section { background: var(--pa-azul); color: #fff; }
.bwp-footer-widgets-section .bwp-widget {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}
.bwp-footer-widgets-section :is(p, li, span, div, a, h1, h2, h3, h4, h5, h6, .bwp-widget-title) { color: #fff !important; }
.bwp-footer-widgets-section .bwp-widget-title { border-bottom-color: rgba(255, 255, 255, .25); }
.bwp-footer-widgets-section a:hover { color: var(--pa-amarillo) !important; }
.bwp-footer-widgets-section .bwp-section-separator { display: none; }

.bwp-site-footer {
	background: var(--pa-marino);
	border-top: 3px solid var(--pa-amarillo);
	color: #fff;
}
.bwp-site-footer :is(p, span, div, a, li) { color: #fff !important; }
.bwp-site-footer a:hover { color: var(--pa-amarillo) !important; }
.bwp-footer-text { font-weight: 700; letter-spacing: .5px; }

/* Separadores con degradado del tema -> amarillo */
.bwp-section-separator.bwp-gradient { background: var(--pa-amarillo) !important; height: 3px; }

/* ===== Zona privada ===== */
.pinae-privado-aviso {
	max-width: 520px;
	margin: 24px auto;
	background: #fff;
	border: 1px solid var(--pa-borde);
	border-top: 6px solid var(--pa-amarillo);
	border-radius: 10px;
	padding: 22px 24px;
	box-shadow: var(--pa-sombra);
}
.pinae-privado-titulo { font-size: 22px; font-weight: 700; color: var(--pa-marino); margin: 0 0 6px; }
.pinae-privado-aviso form p { margin: 0 0 12px; }
.pinae-privado-aviso label { display: block; font-weight: 700; color: var(--pa-marino); margin-bottom: 4px; }
.pinae-privado-aviso .login-remember label { display: inline; font-weight: 400; }
.pinae-privado-aviso input[type="text"], .pinae-privado-aviso input[type="password"] {
	width: 100%;
	padding: 10px 12px;
	font-size: 17px;
}
.pinae-privado-aviso input[type="submit"] { padding: 10px 26px; font-size: 16px; cursor: pointer; }
.pinae-privado-ayuda { font-size: 15px; margin: 4px 0 0; }
.pinae-privado-mini { color: var(--pa-gris); font-style: italic; }
.pinae-privado-bloque { border-left: 6px solid var(--pa-azul); background: var(--pa-fondo); border-radius: 0 8px 8px 0; padding: 12px 18px; }
.pinae-boton {
	display: inline-block; padding: 8px 18px; border-radius: 999px;
	background: var(--pa-azul); color: #fff !important; font-weight: 700; text-decoration: none !important;
}
.pinae-boton:hover { background: var(--pa-marino); color: var(--pa-amarillo) !important; }

/* ===== Móvil ===== */
@media (max-width: 760px) {
	body.bwp-body { font-size: 17px; }
	.bwp-blog-post .bwp-post-content { padding: 14px 16px 12px; }
	.bwp-sidebar-content .bwp-widget { padding: 14px; }
}
