/*==========================
        AWARDS
===========================*/

.award-card{
    position: relative;
    background: #ffffff63;
    /*border-radius: 12px;*/
    overflow: hidden;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .08);
    transition: transform .4s, box-shadow .4s;
    height: 100%;
    animation: fadeCard .8s ease;
}

.award-card:hover{
    transform: translateY(-12px);
    box-shadow: 0 30px 55px rgba(0, 0, 0, .18);
}

/* Barra superior de acento que aparece al hacer hover */
.award-card::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 5px;
    background: #003c6b;
    transition: width .4s ease;
    z-index: 10;
}

.award-card:hover::before{
    width: 100%;
}

@keyframes fadeCard{
    from{
        opacity: 0;
        transform: translateY(30px);
    }
    to{
        opacity: 1;
        transform: none;
    }
}

.award-image{
    position: relative;
    overflow: hidden;
}

.award-image img{
    width: 90%;
    margin: 0 auto;
    display: block;
    transition: transform .6s;
}

.award-card:hover .award-image img{
    transform: scale(1.08);
}

.award-content{
    padding: 15px;
    
}

.award-category{
    display: inline-block;
    font-weight: 700;
    color: #1a3159;
    font-size: .75em;
     margin-bottom: 10px;
    /*letter-spacing: 2px;*/
    text-transform: uppercase;
    font-family: 'Manrope', sans-serif;
}

.award-boton{
    display: inline-block;
    background: #1a3159;
    color: #fcf9f9;
    padding: 8px 18px;
    border-radius: 5px;
    font-size: .75em;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-top: 10px;
    margin-bottom: 10px;
    transition: background .3s;
}

.award-boton:hover{
    background: #00274a;
}

.award-boton a{
    color: inherit;
    text-decoration: none;
}

.award-content h3{
    margin: 0;
    font-size: 1.25em;
    color: #222;
     min-height: 3em;
}

.award-content p{
    margin-top: 10px;
    color: #666;
    font-size: 1.05em;
    line-height: 1.6;
}

@media (max-width: 736px){
    .award-content{
        padding: 22px;
    }

    .award-content h3{
        font-size: 1.25em;
    }

    .award-category{
        font-size: .70em;
    }
}


/*==========================
    BLOQUE PATROCINADORES
===========================*/

#partners{
    padding: 20px 20px;
    background: #f7f8fb;
}

#partners h2{
    text-align: center;
    margin-bottom: 45px;
    color: #003c6b;
    font-size: 2rem;
}

.logos-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 10px;
    align-items: center;
    justify-items: center;
    margin-bottom: 80px;
}
.img_grup{
    max-width: 70px!important;
    width: 100%;
    height: auto;
    /*filter: grayscale(100%);
    opacity: .7;
    transition: filter .3s, opacity .3s, transform .3s;*/
}

.logos-grid img{
    max-width: 140px;
    width: 100%;
    height: auto;
    /*filter: grayscale(100%);
    opacity: .7;
    transition: filter .3s, opacity .3s, transform .3s;*/
}



.logos-grid img:hover{
    filter: none;
    opacity: 1;
    transform: scale(1.05);
}


/* Mega-menú de "Ediciones anteriores": panel plano de un solo nivel
   en vez de menú-dentro-de-menú, agrupado con etiquetas visuales */
.dropotron.dropotron-wide{
    min-width: 15em;
}

.dropotron .menu-group-label{
    padding: 0;
}

.dropotron .menu-group-label > *{
    display: block;
    padding: .6em 1em .3em;
    font-size: .68em;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .45);
    border-top: solid 1px rgba(255, 255, 255, .15);
    cursor: default;
}

.dropotron .menu-group-label:first-child > *{
    border-top: 0;
}

/*==========================
    NAV FIJO (barra superior)
===========================*/

/* El NAV es lo que se queda fijo arriba al hacer scroll (no el vídeo).
   Así el menú siempre está a mano y el vídeo puede ser un hero grande
   sin tapar ni ser tapado por la navegación. */
#header{
    display: block;
    padding: 0;
}

#nav{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    background-color: #ffffff;
    /*background: rgba(232, 236, 239, .97);*/
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    box-shadow: 0 2px 12px rgba(0, 0, 0, .05);
    padding: 6px 0;
    transition: padding .3s ease, box-shadow .3s ease;
}

#nav > ul > li > a,
#nav > ul > li > span{
    line-height: 3.2em;
}

/* Estado compacto cuando se ha hecho scroll (clase is-scrolled añadida por JS a #header) */
#header.is-scrolled #nav{
    padding: 2px 0;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .12);
}

#header.is-scrolled #nav > ul > li > a,
#header.is-scrolled #nav > ul > li > span{
    line-height: 2.2em;
}


/*==========================
    HEADER-VIDEO: CABECERA HERO
===========================*/

/* Ancho completo, centrado, debajo del nav.
   El padding-top reserva exactamente el hueco del nav fijo para que no lo tape. */
.header-video{
    width: 100%;
    max-width: none;
    margin: 0;
    /*padding-top: 68px;*/
}

.header-video video{
    width: 80%;
    height: auto;
    max-height: 100%;
    object-fit: cover;
    display: block;
    margin: 0 auto;
}

@media screen and (max-width: 980px){
    /* En móvil el #nav se oculta y lo sustituye el botón hamburguesa (#titleBar,
       ya fijo por su cuenta a 44px de alto), así que el hueco se ajusta a eso */
    .header-video{
        padding-top: 44px;
    }
    .header-video video{
        max-height: 320px;
    }
}

@media screen and (max-width: 480px){
    .header-video video{
        /*max-height: 220px;*/
        width: 115%;
        max-width: none;
        margin-left: -7.5%;

    }
}
/*==========================
    EVENTO (GUGGENHEIM)
===========================*/

.event-section{
    --event-maroon: #1a3159;
    background: var(--event-maroon);
    padding: 70px 20px;
}

.event-inner{
    max-width: 1140px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 60px;
    align-items: center;
}

.event-content h2{
    margin: 0 20px 22px;
    color: #fff;
    line-height: 2.2rem;
    font-weight: 400;
    font-size: 2rem;
}

.event-content p{
    color: rgba(255, 255, 255, .85);
    font-size: 1.0em;
    line-height: 1.7;
    margin: 0 20px 30px;
}

.event-content p strong{
    color: #fff;
}

.event-meta{
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin: 0 20px 30px;
}

.event-meta-item{
    display: flex;
    align-items: center;
    gap: 16px;
}

.event-meta-item .icon{
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    /*border-radius: 60%;
    border: 1px solid rgba(255, 255, 255, .5);*/
    color: #fff;
    font-size: 1em;
}

.event-meta-item span{
    color: #fff;
    
    font-size: .95em;
    letter-spacing: .04em;
}

.event-image{
    border: 6px solid rgba(255, 255, 255, .12);
}

.event-image img{
    display: block;
    width: 100%;
    height: 400px;
    object-fit: cover;
}

@media screen and (max-width: 980px){
    .event-inner{
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .event-image{
        order: -1;
    }
}

@media screen and (max-width: 480px){
    .event-section{
        padding: 50px 16px;
    }
    .event-content h2{
        font-size: 1.6rem;
    }
}
/* =================================
   LATERAL - NAVEGACIÓN EDITORIAL
================================= */

#sidebar section {
    background: #fafafa;
    border: 1px solid #e8e8e8;
    border-radius: 6px;
    padding: 25px 25px 20px;
    margin-bottom: 30px;
}

/* Título de cada bloque */

#sidebar section h2,
#sidebar section h3 {

    color: #1d4872;

    font-size: 15px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    padding-bottom: 12px;

    margin-bottom: 8px;

    border-bottom: 2px solid #c7a55b;

}

#sidebar section li:last-child {

    border-bottom: 0;

}

#sidebar section li a {

    color: #333;

    font-size: 14px;

    font-weight: 600;

    line-height: 1.4;

    text-decoration: none;

    transition: all .2s ease;

}

#sidebar section li a:hover {

    color: #1d4872;

    padding-left: 5px;

}
#sidebar section li a::before {

    content: "›";

    color: #c7a55b;

    font-size: 18px;

    margin-right: 8px;

    transition: .2s ease;

}

#sidebar section li a:hover::before {

    margin-right: 12px;

}
#sidebar img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    display: block;
}
.pregunta {
    color: #222;
    font-weight: 700;
}
@media (max-width: 768px) {

    #sidebar section {

        padding: 20px;

        margin-bottom: 20px;

    }

    #sidebar section li {

        padding: 10px 0;

    }

}