@import url('https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css');
@import url('https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css');

/* =========================================
   ESTILOS ANTIGUOS (Mantenidos intactos)
   ========================================= */
.button {
    background-color: #e3001b;
}

#primary-menu.style-2 {
    background: #e3001b;
}

a {
    color: #e3001b;
}

h1 > span:not(.nocolor):not(.badge), h2 > span:not(.nocolor):not(.badge), h3 > span:not(.nocolor):not(.badge), h4 > span:not(.nocolor):not(.badge), h5 > span:not(.nocolor):not(.badge), h6 > span:not(.nocolor):not(.badge) {
    color: #e3001b;
}

.btn-warning {
    color: #fff;
    background-color: #e3001b;
    border-color: #e3001b;
}

.text-warning {
    color: #e3001b !important;
}

.select2-container--default .select2-selection--single {
    border: 1px solid #aaa;
    border-radius: 4px;
    height: 44px;
    padding-top: 8px;
    padding-left: 10px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 9px;
}

.promo.promo-border {
    border: 1px solid #050505;
}    

.feature-box .fbox-icon i, .feature-box .fbox-icon img {
    background-color: #e3001b;
}

.heading-block h1,
.heading-block h2,
.heading-block h3,
.heading-block h4,
.emphasis-title h1,
.emphasis-title h2 {
    font-weight: 100;
}

.heading-block.center > span, .heading-block.title-center > span, .center .heading-block > span {
    max-width: 100%;
}

.show-grid [class^=col-] {
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: #fff;
    border: 0px solid #DDD; 
}

.content-wrap {
    padding: 0px 0; 
}

.row {
    margin-right: 0px;
    margin-left: 0px;
    margin-top: 10px;
}

#copyrights {
    padding: 10px 0;
    background-color: #000;
    font-size: 14px;
    line-height: 1.8;
    color: #ffffff;
}

h1 {
    font-size: 36px;
}

h1, h2, h3, h4, h5, h6 {
    color: #444;
    font-weight: 400;
    line-height: 1.5;
    margin: 0 0 0 0;
    font-family: 'Raleway', sans-serif;
}

#primary-menu.style-2 > div > ul > li > a {
    padding-top: 19px;
    padding-bottom: 19px;
}

#primary-menu ul li > a {
    font-family: Optima, 'Raleway', sans-serif;
    display: block;
    line-height: 22px;
    padding: 39px 15px;
    color: #fff;
    font-size: 13px;
    letter-spacing: 1px;
    text-transform: uppercase;
    -webkit-transition: margin .4s ease, padding .4s ease;
    -o-transition: margin .4s ease, padding .4s ease;
    transition: margin .4s ease, padding .4s ease;
}

#footer {
    border-top: 0px solid rgba(0,0,0,0.2);
}

.section {
    position: relative;
    margin: 10px 0;
    padding: 10px 0;
    background-color: #fff;
    overflow: hidden;
}

#logo {
    font-size: 20px;
}

.badge-pill {
    padding-top: 10px;
}

.heading-block {
     margin-bottom: 0px; 
}

.heading-block:after {
    display: none;
    margin-top: 0px;
    width: 0px;
    border-top: 0px solid #444;
}

.postcontent, .sidebar, .col_full, .col_half, .col_one_third, .col_two_third, .col_three_fourth, .col_one_fourth, .col_one_fifth, .col_two_fifth, .col_three_fifth, .col_four_fifth, .col_one_sixth, .col_five_sixth {
    margin-bottom: 0px;
}

p, pre, ul, ol, dl, dd, blockquote, address, table, fieldset, form {
    margin-bottom: 10px;
}

.divider {
    margin: 15px 0;
}

footer.dark, .dark #footer {
    margin-top: 80px !important;
}

h1, h2, h3, h4, h5, h6 {
    line-height: 1.2;
}

/* =========================================
   NUEVOS ESTILOS MAQUETACIÓN INCIBE
   ========================================= */

:root {
    /* Colores extraídos del logo de INCIBE */
    --color-principal: #e3001b; /* Rojo INCIBE */
    --color-secundario: #42505c; /* Gris oscuro/azulado INCIBE */
    --color-terciario: #ffc600; /* Amarillo INCIBE */
    --bg-fondo: #fafafa;
}

body {
    font-family: Roboto, Helvetica, Arial, sans-serif;
}

/* --- Botones Superiores --- */
.nav-superior .btn-outline-custom {
    color: var(--color-secundario);
    border: 1px solid #d0d0d0;
    background-color: white;
    border-radius: 4px;
    font-weight: 500;
    font-size: 0.9rem;
    text-transform: uppercase;
    transition: all 0.2s ease-in-out;
}

/* Aquí aplicamos el AMARILLO al pasar el ratón */
.nav-superior .btn-outline-custom:hover {
    background-color: var(--color-terciario);
    border-color: var(--color-terciario);
    color: var(--color-secundario); /* El texto se queda gris oscuro para que se lea bien sobre el amarillo */
}

/* --- Tarjetas --- */
.tarjeta-custom {
            border: 1px solid #e0e0e0; /* Ahora sí, borde completo */
            border-radius: 4px;
            background-color: white;
            height: 100%;
            transition: all 0.3s ease;
        }

        /* Aplicamos el AMARILLO como acento interior inferior y elevación */
        .tarjeta-custom:hover {
            box-shadow: 0 8px 16px rgba(0,0,0,0.08), inset 0 -4px 0 var(--color-terciario);
            transform: translateY(-3px);
        }

.icono-tarjeta {
    font-size: 2.5rem;
    color: var(--color-principal);
    margin-bottom: 1rem;
}

.titulo-tarjeta {
    font-size: 1.1rem;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--color-secundario);
    min-height: 40px;
}

.texto-tarjeta {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 2rem;
    margin-top: 1rem;
}

.btn-tarjeta {
    background-color: var(--color-principal);
    color: white;
    border: none;
    border-radius: 4px;
    padding: 8px 16px;
    font-size: 0.85rem;
    font-weight: 500;
    text-transform: uppercase;
    transition: background-color 0.2s;
}

.btn-tarjeta:hover {
    background-color: var(--color-secundario); 
    color: white;
}

.enlace-tarjeta {
    color: var(--color-principal);
    font-weight: bold;
    font-size: 0.85rem;
    text-decoration: none;
    text-transform: uppercase;
    display: block;
    margin-bottom: 10px;
    transition: color 0.2s;
}

/* Aquí también usamos el AMARILLO para los enlaces de texto extra dentro de la tarjeta */
.enlace-tarjeta:hover {
    color: var(--color-terciario);
}

/* --- Footer --- */
.footer {
    background-color: white;
    border-top: 1px solid #e0e0e0;
    padding: 3rem 0;
    margin-top: 4rem;
    font-size: 0.85rem;
}

.footer-titulo {
    color: var(--color-secundario);
    font-weight: 600;
    margin-bottom: 1rem;
    text-transform: uppercase;
}

.footer-links a {
    color: #666;
    text-decoration: none;
    display: block;
    margin-bottom: 8px;
    transition: color 0.2s;
}

.footer-links a:hover {
    color: var(--color-principal);
}

.contacto-icono {
    color: var(--color-principal);
    width: 20px;
    text-align: center;
    margin-right: 5px;
}

.contacto-texto-destacado {
    color: var(--color-secundario);
    font-weight: 500;
}

#date {
    background-color: transparent !important;
}

#footer {
    background: #f4f4f4 !important;
    border-top: 2px solid #DF1A21 !important;
    color: #42505c !important; /* Texto oscuro para que se lea sobre el fondo claro */
}

/* Y para que los enlaces del footer también se lean bien y no se queden blancos */
#footer a {
    color: #42505c !important; 
}

/* 1. Unificar la fuente de todo el footer */
#footer, 
#footer p, 
#footer a, 
#footer span {
    font-family: Roboto, Helvetica, Arial, sans-serif !important;
}

/* 2. Arreglar los colores de los títulos (Sede, Normativa, etc.) */
#footer h1, 
#footer h2, 
#footer h3, 
#footer h4, 
#footer h5, 
#footer h6, 
#footer .widget-title {
    color: #42505c !important; /* El gris oscuro corporativo que usamos arriba */
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-weight: 600 !important; /* Un poco de grosor para que destaquen */
    letter-spacing: 1px !important; /* Dale un respiro a las mayúsculas */
}