@font-face { /*Importar fuente externa*/
    font-family: 'FantasmAndSecret'; /*Nombre interno de la fuente*/
    src: url('Fantasm and Secrets.ttf') format('truetype'); /*Ruta donde esta guardado el archivo y especifica el formato*/
    font-weight: normal; /*Usara grosol normal*/
    font-style: normal; /*Fuente versión estandar*/
}

html {
  scroll-behavior: smooth;
}

* {
    margin: 0; /*Elimina espacio exterior (Margen)*/
    padding: 0; /*Elimina espacio interior*/
    box-sizing: border-box; /*Ancho y largo de un elemento incluya bordes y relleno*/
}

body {
    font-family: 'Montserrat', sans-serif; /*Aplicamos la fuente*/
    font-weight: 700; /*Grosor de fuente negrita*/
    background-color: #F2F4F3; /*Color de fondo*/
    color: #49111C; /*Color del texto*/
    line-height: 1.2; /*Altura entre lineas*/
    -webkit-font-smoothing: antialiased; /*Para que las fuentes se vean mas nitidas y suaves*/
    letter-spacing: -0.02em; /*Espacio entre letras*/
}

.tittle {
    background-color: #49111C;
    color: #F5F5DC;
    justify-content: center;
    text-align: center;
    /* Añadimos un poco más de espacio abajo para que la tarjeta tenga donde apoyarse */
    padding-bottom: 80px; 
}

.tittle h1 {
    padding-bottom: 3%;
    padding-top: 3%;
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
    font-size: 3rem;
}

.information {
    /* Mantenemos tus estilos */
    justify-content: center;
    text-align: center;
    color: black;
    padding-top: 2%;
    
    /* Añadimos el bloque */
    background-color: white;
    max-width: 900px;        /* Ancho del bloque */
    margin: -60px auto 0;    /* Esto hace que el bloque suba sobre el granate */
    padding: 40px;           /* Espacio interno para que no pegue a los bordes */
    box-shadow: 0px 10px 30px rgba(0,0,0,0.1); /* Sombra suave para el efecto de bloque */
}

#flecha{
    padding-top: 3%;
    font-size: 25px;
    font-weight: bold;
    color: #49111C;
    animation: botar 2s infinite;
}

@keyframes botar {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0); /* Posición original */
    }
    40% {
        transform: translateY(-20px); /* Salto hacia arriba */
    }
    60% {
        transform: translateY(-10px); /* Segundo salto más pequeño */
    }
}

/* Contenedor principal de la sección */
.container-redes {
  padding: 60px 20px;
  background-color: #F2F4F3; /* Un fondo oscuro suele hacer que los videoclips resalten más */
  font-family: 'Montserrat', sans-serif;
  font-style: italic;
  text-align: center;
}

/* Título de la sección */
.container-redes h1 {
  font-size: 2.5rem;
  color: #49111C;
  font-weight: 700; /* Letra gruesa e impactante */
  text-transform: uppercase;
  margin-bottom: 50px;
  display: inline-block;
  padding-bottom: 12px;
  border-bottom: 3px solid #49111C; 
}

/* Cuadrícula para los videos (Grid) */
.contenedor-videos {
  display: grid;
  /* Crea columnas automáticamente de mínimo 320px y se adapta a cualquier pantalla */
  grid-template-columns: repeat(2, 1fr);
  gap: 30px; /* Espacio entre los videos */
  max-width: 1400px;
  margin: 0 auto;
}

/* Tarjeta contenedora de cada reproductor */
.reproductor-wrapper {
  position: relative;
  /* Truco clásico para mantener la proporción 16:9 sin importar el tamaño de pantalla */
  padding-bottom: 56.25%; 
  height: 0;
  overflow: hidden;
  border-radius: 12px; /* Bordes redondeados elegantes */
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3); /* Sombra suave */
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Efecto al pasar el ratón por encima del video */
.reproductor-wrapper:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(255, 255, 255, 0.1); /* Destello sutil en hover */
}

/* Obliga al iframe de YouTube a rellenar su contenedor wrapper */
.reproductor-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.contenedor-reels {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 35px;
  width: 90%;
  max-width: 1200px; /* Ancho ideal para que las dos columnas de Reels se vean estilizadas */
  margin: 0 auto;
  padding: 20px 0;
}

.tarjeta-redes {
  background-color: #ffffff; /* Fondo blanco puro que absorbe el borde de Instagram */
  border-radius: 20px; /* Bordes redondeados más suaves */
  padding: 12px; /* Pequeño espacio interno elegante */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06); /* Sombra suave y moderna */
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), 
              box-shadow 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Efecto de elevación al pasar el ratón sobre la tarjeta */
.tarjeta-redes:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

/* Contenedor interno para mantener la proporción */
.reproductor-wrapper.reel-wrapper {
  position: relative;
  padding-bottom: 135px; /* Ajuste proporcional aproximado para el bloque de Instagram */
  padding-bottom: 140%; 
  height: 0;
  overflow: hidden;
  border-radius: 12px; /* Redondeado interno ligeramente menor para que armonice */
}

/* El iframe se adapta al 100% de su tarjeta */
.reel-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  border: none !important;
}




.tittle2 {
    background-color: #49111C;
    color: #F5F5DC;
    justify-content: center;
    text-align: center;
    /* Añadimos un poco más de espacio abajo para que la tarjeta tenga donde apoyarse */
    padding-bottom: 50px;
    padding-top: 50px;
}

.tittle2 h1 {
    padding-bottom: 3%;
    padding-top: 3%;
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
    font-size: 3rem;
}

.container-publicidad {
  display: grid;
  /* Crea las 3 columnas de igual tamaño */
  grid-template-columns: repeat(4, 1fr); 
  /* Separación de 20px entre cada tarjeta */
  gap: 35px; 
  padding: 20px;
  max-width: 1200px;
  /* Centra todo el bloque en la pantalla */
  margin: 0 auto;
  padding-top: 80px;
  padding-bottom: 5%;
}

/* Cada una de tus tarjetas de video */
.tarjeta-publicidad {
  background-color: #fcfcfc;
  border-radius: 8px;
  padding: 15px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06); /* Sombra suave y moderna */
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), 
              box-shadow 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.tarjeta-publicidad:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

/* Hace que tus videos descargados se adapten perfectamente a la columna */
.tarjeta-publicidad video {
  width: 100%;
  height: auto;
  border-radius: 6px;
  background-color: #000; /* Fondo negro mientras carga el video */
}

/* Estilos opcionales para tus textos */
.tarjeta-publicidad h3 {
  margin: 15px 0 0px 0;
  font-family: 'Montserrat', sans-serif;
  font-style: italic;
  justify-content: center;
  text-align: center;
  color: black;
  letter-spacing: 1.5px;
}

#ancho {
  grid-column: 1 / -1;
}

#ancho video {
  max-height: 450px; 
  object-fit: cover; /* Evita que el video se deforme si se limita la altura */
}


.boton {
    position: fixed; /*Lo deja anclado en la pantalla*/
    bottom: 30px; /*Separacion por debajo*/
    left: 50%; /*Separación por la izquierda*/
    transform: translateX(-50%); /*Centrarlo perfectamente*/
    z-index: 9999; /* Un número muy alto para que nada le pase por encima */
    pointer-events: auto; /* Asegura que los clics funcionen siempre */
}

.boton-volver {
    display: flex; /*Alinea los elementos horizontalmente*/
    gap: 20px; /*Separa los iconos entre si*/
    background-color: #F2F4F3; /*Color de fondo*/
    backdrop-filter: blur(10px); /*Desenfoca ligeramente lo que hay detras*/
    padding: 12px 25px; /*Espacio interno arriba, abajo y por los lados*/
    border-radius: 50px; /*Redondea los bordes*/
    border: 1px solid #49111C; /*Añade un borde fino con ese color*/
    box-shadow: 0 1px 10px #49111C; /*Proyecta una sombra suave de ese color*/
}

.volver-atras {
    text-decoration: none; /*Quita el subrayado por defecto*/
    font-size: 12px; /*Tamaño*/
    font-weight: 600; /*Grosor de fuente negrita*/
    color: #49111C; /*Color que aplicamos*/
    text-transform: uppercase; /*Convierte el texto en mayusculas*/
    transition: 0.3s; /*Transicion de suavizado del raton*/
}

.volver-atras:hover {
    color: #49111C; /*Color que aplicamos*/
    transform: translateY(-2px); /*Salta 2px hacia arriba*/
}

/*---------------------- MEDIA QUERYS ------------------*/

@media screen and (max-width: 768px) {

    /* 1. Ajustes Generales de Cabeceras e Información */
    .tittle, .tittle2 {
        padding-top: 40px !important;
        padding-bottom: 40px !important;
    }

    .tittle h1, .tittle2 h1 {
        font-size: 2rem !important; /* Reducimos el tamaño para que no se corte el título */
        padding: 4% 15px !important;
    }

    .information {
        max-width: 92% !important;
        margin: -30px auto 0 !important;
        padding: 20px !important;
    }

    /* 2. Sección de Videoclips (YouTube) */
    .container-redes {
        padding: 40px 15px !important;
    }

    .container-redes h1 {
        font-size: 1.8rem !important;
        margin-bottom: 30px !important;
    }

    .contenedor-videos {
        /* Pasamos de 2 columnas a 1 sola columna limpia */
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
        gap: 20px !important;
    }

    /* 3. Sección de Reels (Instagram) */
    .contenedor-reels {
        /* Pasamos de 3 columnas a 1 sola columna vertical */
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
        width: 95% !important;
        gap: 25px !important;
        padding: 10px 0 !important;
    }

    .tarjeta-redes {
        padding: 8px !important; /* Aprovecha mejor el espacio lateral en pantallas pequeñas */
    }

    .reproductor-wrapper.reel-wrapper {
        /* Ajustamos la proporción vertical para que el Reel se vea entero en móviles */
        padding-bottom: 150% !important; 
    }

    /* 4. Sección de Publicidad (Vídeos Locales) */
    .container-publicidad {
        /* Pasamos de 4 columnas a 1 sola columna */
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
        gap: 25px !important;
        padding-bottom: 100px !important;
        padding-top: 40px !important;
        
    }

    .tarjeta-publicidad {
        padding: 12px !important;
    }

    .tarjeta-publicidad h3 {
        font-size: 1.1rem !important;
        margin: 10px 0 3px 0 !important;
        letter-spacing: 1px !important;
    }

    /* Ajuste para el vídeo destacado (#ancho) */
    #ancho video {
        /* En móvil no queremos que recorte la altura de forma fija (cover) 
           sino que se adapte de forma fluida y natural */
        max-height: none !important;
        object-fit: contain !important; 
    }

    /* 5. UI - Botón Flotante de Volver */
    .boton-volver {
        padding: 10px 20px !important;
        gap: 15px !important;
    }

    .volver-atras {
        font-size: 11px !important;
    }
}