/* =================================
   1. VARIABLES GLOBALES (TU PANEL DE CONTROL)
   ================================= */
:root {
    /* Paleta de Colores */
    --color-fondo: #121212;
    --color-texto-principal: #ffffff;
    --color-texto-secundario: #fafafa71;
    --color-acento-turquesa: #80d8ff;
    --color-acento-rojo: #ff4d4d;
    --color-enfasis-amarillo: #ebcacc;
    /* El del título del contador */

    /* Estilos de Glassmorphism */
    --glass-background: rgba(68, 68, 68, 0.256);
    --glass-blur: 10px;
    --glass-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);

    /* Bordes */
    --borde-radio-grande: 35px;
    --borde-radio-pequeno: 25px;

    /* Fuentes */
    --fuente-principal: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;


}



/* =================================
   2. ESTILOS GLOBALES Y RESET
   ================================= */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: var(--fuente-principal);
    background: var(--color-fondo);
    color: var(--color-texto-principal);
    min-height: 100vh;
    position: relative;
    overflow-x: hidden;
}

.container {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 30px auto;
    width: 100%;
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px;
    box-sizing: border-box;
}

.bento-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    width: 100%;
    margin-top: 0px;
}

.countdown-container,
.checklist-container,
.glass-box {
    width: 100%;
    max-width: 450px;
    margin: 0;
    box-sizing: border-box;
}

.glass-box {
    margin-top: 0;
    margin-bottom: 0;
    padding: 25px;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}




.rotating-car {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;

    background-size: cover;
    z-index: -1;
    animation: rotar-carro 20s linear infinite;
    pointer-events: none;
    transform-origin: center center;
}







/* =================================
   3. COMPONENTES REUTILIZABLES
   ================================= */

.glass-card {
    background: var(--glass-background);
    border-radius: var(--borde-radio-grande);
    backdrop-filter: blur(var(--glass-blur));
    -webkit-backdrop-filter: blur(var(--glass-blur));
    box-shadow: var(--glass-shadow);
    padding: 25px;
    width: 90%;
    max-width: 450px;
    margin: 15px auto;
}





/* =====  LOGO F1ENSIVAR    ===== */

.logo {
    width: 190px;
    margin-bottom: 15px;
}






/* ===== SIGNATURE (ESTILO ORIGINAL - MODO FOOTER) ===== */

.dual-signature {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;

    /* POSICIÓN DE FOOTER */
    margin-top: 8px;
    /* Mucho espacio arriba para separarlo del contenido */
    margin-bottom: 30px;
    /* Margen final */

    /* SUTILEZA: Bajamos la opacidad general para que no destaque tanto */
    opacity: 0.8;
}

.author-bubble {
    display: flex;
    align-items: center;
    gap: 6px;

    /* TAMAÑO: Un poco más pequeño que el original */
    font-size: 10px;
    padding: 4px 10px;
    /* Padding reducido */

    /* ESTILO ORIGINAL DE BURBUJA */
    color: var(--color-texto-secundario);
    background: rgba(118, 117, 117, 0.261);
    border-radius: var(--borde-radio-pequeno);
    backdrop-filter: blur(var(--glass-blur));
    -webkit-backdrop-filter: blur(var(--glass-blur));
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
    /* Sombra un poco más suave */

    /* ANIMACIÓN */
    animation: blink 6s infinite;
}

/* El separador "&" */
.and-separator {
    color: #ffffff88;
    font-weight: bold;
    font-size: 9px;
}

/* Iconos dentro de la burbuja */
.icon-small {
    width: 14px;
    /* Un pelín más pequeños */
    height: 14px;
    transition: transform 0.3s ease;
}

.icon-small:hover {
    transform: scale(1.3);
}

/* Animación de parpadeo original */
@keyframes blink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }

    /* Cambiado a 0.5 para que no desaparezca tanto */
}







/* =====   BOX REDES SOCIALES   ===== */
.glass-box.redes-sociales {
    padding: 12px 20px;
    /* Podemos sobreescribir el padding si es necesario */
    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap;
    gap: 18px;
}



.glass-box.redes-sociales .icon {
    width: 32px;
    height: 32px;
}




/* ===== CONTADOR REGRESIVO ===== */
.countdown-container {
    text-align: center;
    padding: 15px 25px;
}

.countdown-container h3 {
    font-size: clamp(0.9rem, 2.5vw, 1.2rem);
    margin: 0 8px 12px 8px;
    color: var(--color-enfasis-amarillo);
    /* <<< Cambio aquí */
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 0 10px;
}

#countdown {
    display: flex;
    justify-content: space-evenly;
    gap: 8px;
    /* Reducido de 10px */
    margin: 10px 0;
    /* Reducido */
}

.time-unit {
    background: rgba(234, 234, 234, 0.7);
    border-radius: 20px;
    padding: 0;
    /* Eliminamos padding interno */
    width: 65px;
    /* Ancho fijo */
    height: 65px;
    /* Altura IGUAL al ancho */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    aspect-ratio: 1/1;
    /* Garantía extra */
    margin: 0 5px;
    /* Espaciado horizontal */
}

.time-unit span {
    font-size: clamp(1.7rem, 4vw, 2.1rem);
    /* Tamaño óptimo */
    line-height: 1;
    font-weight: bold;
    color: rgb(27, 27, 27);
    display: block;
    padding: 8px 0 0;
    /* Padding sólo arriba */
}

.unit-label {
    font-size: clamp(0.50rem, 2vw, 0.8rem);
    /* Reducido de 0.75rem */
    color: #000000;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 3px;
    /* Reducido */
}








/* =====   LISTA CALENDARIO  ===== */



.checklist-title {
    padding-left: 6px;
    font-size: clamp(0.8rem, 2.2vw, 1.1rem);
    margin-bottom: 20px;
    text-align: left;
    font-weight: 600;
    /* --- INICIO DE LÍNEAS MODIFICADAS --- */
    color: var(--color-texto-principal);
    text-shadow:
        0 0 2px color-mix(in srgb, var(--color-acento-turquesa) 80%, transparent),
        0 0 6px color-mix(in srgb, var(--color-acento-turquesa) 70%, transparent),
        0 0 12px color-mix(in srgb, var(--color-acento-turquesa) 40%, transparent);
    /* --- FIN DE LÍNEAS MODIFICADAS --- */
}

/* Nuevos estilos para lista de eventos */
.events-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    padding-left: 1px;
    /* padding para mover el contenido a la derecha */
}




.event-item {
    width: 100%;
    transition: transform 0.2s ease;
    padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}


/* Al último elemento de la lista le quitamos el borde y el padding */
.event-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.event-item:hover {
    transform: translateX(5px);
}

.event-link {
    display: flex;
    gap: 10px;
    align-items: center;
    text-decoration: none;
    color: white;
    width: 100%;
}

.event-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.event-text {
    font-size: clamp(0.8rem, 2vw, 0.95rem);
    color: rgba(255, 255, 255, 0.85);
    text-align: left;
    display: inline-block;
    width: 100%;
    line-height: 1.4;
}




.calendar-content {
    display: flex;
    width: 100%;
    gap: 12px;
    align-items: stretch;
    justify-content: space-between;
    box-sizing: border-box;
}

.calendar-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}




/* Columna derecha: imagen */
.calendar-image-wrapper {
    flex: 1;
    overflow: hidden;

    display: flex;
    align-items: stretch;
}

/* Imagen ocupa toda la altura */
.calendar-image {
    width: 100%;
    height: 100%;
    object-fit: cover;



}


.calendar-slider {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* =================================
   NUEVO SLIDER TIPO CARTAS (CARD STACK)
   ================================= */
.calendar-slider {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    /* Mantiene todo dentro del marco */
    perspective: 1000px;
    /* IMPORTANTE: Le da profundidad 3D al movimiento */
}

/* Estilo base compartido para ambas cartas */
.slider-card {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 35px;
    /* Mantiene tus bordes redondeados */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.174);
    /* Sombra para que parezca una carta real */

    /* Preparamos la transición suave */
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s;
}

/* La carta de ARRIBA (La que ves actualmente) */
.slider-card.front {
    z-index: 2;
    /* Se pone encima */
    transform: translateX(0) rotate(0deg);
    opacity: 1;
}

/* La carta de ABAJO (La que espera su turno) */
.slider-card.back {
    z-index: 1;
    /* Se pone debajo */
    transform: scale(0.92) translateY(10px);
    /* Un poco más pequeña y abajo para dar efecto 3D */
    opacity: 0.6;
    /* Un poco oscura hasta que le toque subir */
}

/* --- LA ANIMACIÓN --- */
/* Esta clase se la pondremos con JS para "tirar" la carta */
.swipe-out {
    transform: translateX(-120%) rotate(-20deg) !important;
    /* Se va a la derecha rotando */
    opacity: 0 !important;
}





.calendar-link {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
}






/* === Glow fijo turquesa === */
.glow-static {
    text-shadow:
        0 0 4px #80d8ff,
        0 0 8px #80d8ff,
        0 0 12px #80d8ff;
    color: #caefff;
    /* opcional: un tono turquesa claro */
}

/* === Blanco con glow celeste tenue visible === */


#next-race-title {
    /* Mantener estilos actuales de texto */
    color: var(--color-texto-principal);
    text-shadow: 0 0 2px color-mix(in srgb, var(--color-acento-turquesa) 80%, transparent),
        0 0 6px color-mix(in srgb, var(--color-acento-turquesa) 70%, transparent),
        0 0 12px color-mix(in srgb, var(--color-acento-turquesa) 40%, transparent);
    letter-spacing: 1px;
    font-weight: 600;
    text-transform: uppercase;

    /* NUEVOS ESTILOS PARA FONDO OSCURO */
    background: rgba(0, 0, 0, 0.326);
    /* Fondo oscuro semi-transparente */
    padding: 10px 15px;
    border-radius: 25px;
    margin: 25px 0 0 0;
    /* Espacio arriba para separar del contador */
    text-align: center;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}




/* === GLOW TELEGRAM + TEXTO 'ÚNETE' === */

.telegram-highlight {
    position: relative;
    display: inline-block;
    /* para que no desordene el layout */
}

.telegram-label {
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 11px;
    color: var(--color-acento-turquesa);
    background: rgba(128, 216, 255, 0.08);
    padding: 2px 8px;
    border-radius: 12px;
    animation: blink-glow 2s infinite;
    font-weight: 500;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    white-space: nowrap;
    pointer-events: none;
    /* para que no bloquee clics */
}

.telegram-icon {
    animation: glow-telegram 4s ease-in-out infinite;
}

/* Parpadeo suave */
@keyframes blink-glow {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.4;
    }
}

/* Glow difuminado azul */


@keyframes glow-telegram {

    0%,
    100% {
        filter: drop-shadow(0 0 4px var(--color-acento-turquesa)) drop-shadow(0 0 8px var(--color-acento-turquesa));
    }

    50% {
        filter: drop-shadow(0 0 1px var(--color-acento-turquesa)) drop-shadow(0 0 3px var(--color-acento-turquesa));
    }
}






/* === Contenedor de la imagen rotante === */

.rotating-image {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;

    background-size: cover;
    z-index: -1;
    animation: rotar 60s linear infinite;
    pointer-events: none;

    transform-origin: center center;
    /* Asegura rotación desde el centro */
}

/* Animación de rotación */
@keyframes rotar {
    from {
        transform: rotate(0deg) scale(3);
        /* Mayor escala inicial */
    }

    to {
        transform: rotate(360deg) scale(3);
        /* Mayor escala final */
    }
}



/* Animación de rotación del carro  */

@keyframes rotar-carro {
    from {
        transform: rotate(0deg) scale(1.5);
    }

    /* <-- Escala reducida */
    to {
        transform: rotate(360deg) scale(1.5);
    }

    /* <-- Escala reducida */
}



/* Asegura que el contenedor principal esté sobre el fondo */
.container {
    position: relative;
    z-index: 1;
}








/* ===== ESTILOS ESPECÍFICOS PARA LA PÁGINA PODCAST ===== */



/* =================================
   NUEVOS ESTILOS PARA PODCAST REDESIGN
   ================================= */

/* HEADER SUPERIOR */


.podcast-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: -1;
    /* Se queda detrás de todo */
}



.podcast-header {
    background: rgba(0, 0, 0, 0.387);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    padding: 10px 0;
    width: 100%;
    position: sticky;
    top: 0;
    z-index: 1000;
}

.header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 980px;
    margin: 0 auto;
    padding: 0 20px;
}

.podcast-header-logo {
    width: 100px;
    height: auto;
}

.header-platforms {
    display: flex;
    gap: 20px;
}

.platform-icon {
    width: 28px;
    height: 28px;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.platform-icon:hover {
    transform: scale(1.2);
    filter: drop-shadow(0 0 8px var(--color-acento-rojo));
}

/* CONTENEDOR PRINCIPAL DEL PODCAST */
.podcast-container {
    margin-top: 20px;
    text-align: center;
}

.podcast-main-title {
    font-size: 2.5rem;
    color: var(--color-texto-principal);
    text-shadow: 0 0 10px var(--color-acento-rojo);
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 3px;
}

.podcast-subtitle {
    color: var(--color-texto-secundario);
    font-size: 1.1rem;
    margin-bottom: 40px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

/* GALERÍA DE EPISODIOS */
.episodes-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 25px;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

.episode-card {
    padding: 20px;
    text-align: left;
}

.episode-card h3 {
    color: var(--color-texto-principal);
    margin: 15px 0 8px 0;
    font-size: 1.2rem;
}

.episode-card p {
    color: var(--color-texto-secundario);
    font-size: 0.9rem;
    line-height: 1.4;
}

/* VIDEO CONTAINER (nueva versión) */
.video-container {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    /* 16:9 */
    height: 0;
    border-radius: 12px;
    overflow: hidden;
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* ENLACE VOLVER */
.home-link {
    margin-top: 50px;
    margin-bottom: 30px;
}

.home-link a {
    color: var(--color-texto-secundario);
    text-decoration: none;
    font-size: 0.9rem;
    transition: color 0.3s ease;
}

.home-link a:hover {
    color: var(--color-acento-turquesa);
}

































/* === GLOW PODCAST + TEXTO 'ESCÚCHANOS' === */
/* Forzar tamaño uniforme para el icono del podcast SOLO en la barra de redes */
.glass-box.redes-sociales .podcast-icon {
    width: 32px;
    height: 32px;
    margin: 0;
    /* Sin márgenes extra */
}


.podcast-highlight {
    position: relative;
    display: inline-block;
    /* No flex, así no empuja nada */
    vertical-align: middle;
    /* Alinea con otros iconos */
}

/* Icono con glow rojo */
.podcast-highlight .podcast-icon {
    width: 32px;
    height: 32px;
    animation: glow-podcast-icon 2s ease-in-out infinite;
}

/* Texto flotante, no afecta el tamaño del box */
.podcast-label {
    position: absolute;
    top: -24px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 11px;
    color: var(--color-acento-rojo);
    background: rgba(255, 77, 77, 0.08);
    padding: 2px 8px;
    border-radius: 12px;
    animation: blink-podcast-label 2s infinite;
    font-weight: 500;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    white-space: nowrap;
    pointer-events: none;
}

.podcast-icon {
    animation: glow-podcast-icon 2s ease-in-out infinite;
    margin-top: 4px;
    /* Baja el icono un poco para alinearlo con los otros */
}

/* Animación del glow del icono */
@keyframes glow-podcast-icon {

    0%,
    100% {
        filter: drop-shadow(0 0 4px var(--color-acento-rojo)) drop-shadow(0 0 8px var(--color-acento-rojo));
    }

    50% {
        filter: drop-shadow(0 0 1px var(--color-acento-rojo)) drop-shadow(0 0 3px var(--color-acento-rojo));
    }
}

/* Parpadeo del texto */
@keyframes blink-podcast-label {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.4;
    }
}



/* =================================
   5. ESTILO TARJETA CALENDARIO (POLAROID) - CORREGIDO
   ================================= */

/* 1. Estilo del contenedor principal de la tarjeta. */
.polaroid-card {
    background: rgba(68, 68, 68, 0.256);
    padding: 0;
}

/* 2. A la sección de texto le redondeamos SOLO las esquinas izquierdas. */
.polaroid-card .calendar-text {
    padding: 25px;
    border-radius: var(--borde-radio-grande) 0 0 var(--borde-radio-grande);
}

/* 3. Al contenedor de la imagen le redondeamos SOLO las esquinas derechas. */
.polaroid-card .calendar-image-wrapper {
    border-radius: 0 var(--borde-radio-grande) var(--borde-radio-grande) 0;
    overflow: hidden;
    /* Esto recorta la imagen que está dentro */
}

/* 4. ¡IMPORTANTE! Anulamos los redondeos de los elementos internos. */
.polaroid-card .calendar-slider,
.polaroid-card .calendar-image {
    border-radius: 0;
}



/* =================================
   6. ESTILOS DE LA LISTA DE EVENTOS
   ================================= */

.card-divider {
    border: none;
    /* quitamos el borde por defecto */
    height: 1px;
    /* grosor de la línea */
    margin: 10px 0 20px 0;
    /* mismos espacios que ya tenías */
    background: rgba(255, 255, 255, 0.25);
    /* color del centro */
    /* 👇 mágica: desvanece 0 px a los lados, 100 % en el centro */
    mask-image: linear-gradient(to right,
            transparent 0%,
            black 20%,
            black 80%,
            transparent 100%);
    -webkit-mask-image: linear-gradient(to right,
            transparent 0%,
            black 20%,
            black 80%,
            transparent 100%);
}

.title-container {
    display: flex;
    white-space: nowrap;
    align-items: center;
    gap: 10px;
    /* Espacio entre el icono y el texto */
}

.title-container .checklist-title {
    margin-bottom: 0;
    white-space: nowrap;
    /* Quitamos el margen que ya no necesitamos */
}



/* === Responsive PARA MOBILES === */


/* ==========================
   XS – Extra Small (0 - 575px)
   ========================== */
@media screen and (max-width: 575px) {
    .logo {
        width: 160px;
    }

    .glass-card:first-of-type {
        margin-top: 0;
    }


    /* 2. Arreglamos y optimizamos el Calendario Polaroid (VERSIÓN FINAL) */
    .polaroid-card {
        padding: 0 !important;
    }

    .calendar-content {
        gap: 10px;
    }

    .polaroid-card .calendar-text {
        padding: 12px;
        flex: 1;
        /* Ocupa el 50% del espacio */
        min-width: 0;
    }

    .polaroid-card .calendar-image-wrapper {
        flex: 1;
        /* Ocupa el otro 50% del espacio */
    }

    .event-text {
        font-size: clamp(0.6rem, 2vw, 0.95rem);
        color: rgba(255, 255, 255, 0.85);
        text-align: left;
        display: inline-block;
        width: 100%;
        line-height: 1.4;
    }

    .event-item {
        width: 100%;
        transition: transform 0.2s ease;
        padding-bottom: 4px;
        margin-bottom: 4px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .events-list {
        padding-left: 0;
    }



    /* 1. Arreglamos el contador que se desborda */
    .time-unit {
        width: 45px;
        height: 45px;
        margin: 0 2px;
        /* Reducimos el margen horizontal */
    }

    .time-unit span {
        font-size: 1.3rem !important;
        /* Aumentado de 1.1rem */
    }

    /* Letras más pequeñas */
    .unit-label {
        font-size: clamp(0.4rem, 2vw, 0.75rem) !important;
        /* Reducido de 0.65rem */
    }

    /* Ajustar tamaño de cajas si es necesario */
    .time-unit {
        width: 48px;
        /* Aumentado de 45px si necesitas más espacio */
        height: 48px;
    }



    #next-race-title,
    .checklist-title {
        font-size: clamp(0.6rem, 2.2vw, 1.1rem);
    }



    .container {
        padding: 10px;
        margin-top: 10px;
    }

    .signature,
    .author-bubble {
        font-size: clamp(10px, 1.5vw, 14px);
    }

    .signature {
        margin: 15px 0 30px;
    }

    .dual-signature {
        gap: 8px;
        margin-bottom: 20px;
    }
}



/* =========================
   SM – Small (576 - 767px)
   ========================= */

@media screen and (min-width: 576px) and (max-width: 767px) {
    .logo {
        width: 180px;
    }

    /* Unificamos los cambios de las cajas de cristal */
    .glass-card {
        padding: 16px;
        width: 90%;
    }

    .glass-card:first-of-type {
        margin-top: 0;
    }

    .time-unit {
        width: 55px;
        height: 55px;
    }

    .time-unit span {
        font-size: 1.3rem !important;
        /* Aumentado de 1.1rem */
    }

    /* Letras más pequeñas */
    .unit-label {
        font-size: 0.6rem !important;
        /* Reducido de 0.65rem */
    }

    /* Ajustar tamaño de cajas si es necesario */
    .time-unit {
        width: 48px;
        /* Aumentado de 45px si necesitas más espacio */
        height: 48px;
    }

    #next-race-title,
    .checklist-title {
        font-size: clamp(0.6rem, 2.5vw, 1.2rem);
    }

    .event-text {
        font-size: clamp(0.6rem, 2vw, 0.95rem);
        color: rgba(255, 255, 255, 0.85);
        text-align: left;
        display: inline-block;
        width: 100%;
        line-height: 1.4;
    }

    .event-item {
        width: 100%;
        transition: transform 0.2s ease;
        padding-bottom: 8px;
        margin-bottom: 8px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .events-list {
        padding-left: 0;
    }

    .polaroid-card {
        padding: 0 !important;
        /* FORZAMOS a que la tarjeta no tenga padding exterior */
    }


    .container {
        padding: 10px;
        margin-top: 1px;
    }

    .countdown-container h3 {
        font-size: clamp(0.9rem, 2.5vw, 1.2rem);
    }

    .signature,
    .author-bubble,
    .by-label {
        font-size: clamp(11px, 1.5vw, 14px);
    }

    .signature {
        margin: 20px 0 40px;
    }

    .dual-signature {
        margin-bottom: 25px;
    }
}




/* ===============================
   MD – Medium (768px - 991px)
   =============================== */



/* ===============================
   LG – Large (992px - 1199px)
   =============================== */



/* =================================
XL – Extra Large (1200px - 1399px)
================================= */






/* =================================
    NEST HUB 
================================= */



/* ========= FIX para Nest Hub y dispositivos muy anchos con altura limitada ========= */




/* ===== Ajuste fino para móviles MUY estrechos (menos de 377px) ===== */

/* ===== Ajuste fino para móviles MUY estrechos (menos de 390px) ===== */
@media screen and (max-width: 390px) {
    .glass-box.redes-sociales {
        gap: 12px;
        /* Reducimos el espacio entre íconos */
        padding: 10px 15px;
        flex-wrap: nowrap;
        /* ¡La clave! Prohibimos el salto de línea */
        justify-content: space-between;
        /* Hacemos que se distribuyan en el espacio disponible */
    }

    .glass-box.redes-sociales .icon {
        width: 28px;
        /* Hacemos los iconos un poco más pequeños */
        height: 28px;
    }
}



/* ===== RESPONSIVE PARA PODCAST HEADER ===== */
@media screen and (max-width: 767px) {
    .podcast-header {
        padding: 8px 0;
        /* Más compacto en móviles */
    }

    .podcast-header-logo {
        width: 80px;
        /* Logo más pequeño en móviles */
    }

    .platform-icon {
        width: 24px;
        /* Iconos más pequeños en móviles */
        height: 24px;
    }

    .header-platforms {
        gap: 15px;
        /* Menos espacio entre iconos en móviles */
    }
}

@media screen and (max-width: 390px) {
    .podcast-header-logo {
        width: 70px;
        /* Extra pequeño para móviles muy estrechos */
    }

    .platform-icon {
        width: 22px;
        height: 22px;
    }

    .header-content {
        padding: 0 15px;
        /* Menos padding lateral */
    }
}