      
    p {
      font-size: 14px;
    }

    /* Estilo adicional para centrar verticalmente */
    .vh-100 {
      height: 100vh;
    }

    .navbar-nav .nav-link {
      font-family: 'Radio Canada', sans-serif;
      text-transform: uppercase;
      color: #140F2E !important;
      margin: 0 10px;
    }

    .navbar-toggler {
      border: none; 
    }

    .img-fluid {width: 100%!important;}

    .navbar-nav {
      align-items: center;
    }

    .header {
      background-image: url(bahidora/nuevo-mentes-desk.webp);
      background-size: 100%;
      background-position: top;
      background-repeat: no-repeat;
      height: calc(100vh - 37px) !important;
      top: 69px;
      position: relative;
    }

    .table.text-light th,
    .table.text-light td {
      color: #FFF !important;
    }

    #sponser2 {
      max-width: auto !important;

    }

    #header .nav-link {
      font-family: 'Radio Canada', sans-serif;
      text-transform: uppercase;
      color: black !important;
      font-weight: 700;
    }

    #header .nav-link:hover {
      text-decoration: underline;
    }

    .hero {
      position: relative;
      width: 100%;
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      aspect-ratio: 16 / 9; /* Mantiene la proporción del video */
      max-height: 750px;     /* Limite en pantallas grandes */
    }

    .hero-video {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      transform: translate(-50%, -50%);
      z-index: -1;
      pointer-events: none;
    }

    .hero iframe {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 100vw;
      /* height: 100vh; */
      transform: translate(-50%, -50%);
      z-index: -1;
      pointer-events: none;
    }

    .hero-overlay {
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      background: rgba(0, 0, 0, 0.4);
      z-index: 0;
    }

    .hero-content {
      position: relative;
      z-index: 1;
      font-family: 'Bungee', cursive!important;
    }

    /* Título principal */
    .hero-title {
      font-family: 'Bungee', cursive!important;
      font-size: 110px;
      line-height: 1.1;
      color: white;
      letter-spacing: -4%;
      margin: 0;
    }

    /* Subtítulo */
    .hero-subtitle {
      font-size: 50px;
      color: white;
      margin: 10px 0 0;
      letter-spacing: -4%;
    }

    .paquetes-title {
      font-family: 'Bungee', cursive !important;
      font-size: 67px;
      margin-top: 20px;
      margin-bottom: 20px;
      color: #0F1130;
      line-height: 1.1;
      text-align: center; letter-spacing: -2px;
    }
    .card-image {
      width: 250px;
    }

    .paquetes-card {
      background-color: #0F1130;
      border-radius: 0;
      border: none;
    }

    .card-body {
      padding: 1.5rem;
    }

    /* Títulos y descripciones de card */
    .card-titulo{
      font-family: 'Radio Canada', sans-serif!important;
      font-size: 15px;
      color: #B8F968; font-weight: bold; margin-bottom: 20px;
    }

    .card-text{
      font-family: 'Radio Canada', sans-serif!important;
      font-size: 14px;
      color: #B8F968; 
      display: flex;
    }

    /* Botón sin border-radius */
    .paquetes-btn {
      background-color: #B8F968;
      color: #140F2E;
      border: none;
      border-radius: 0;
      font-weight: bold;
    }

    /* Botón hover */
    .paquetes-btn:hover {
      background-color: #a4e254;
    }

    .paquetes-dropdown-wrapper {
      position: relative;
      width: 100%;
    }

    .paquetes-dropdown {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      background-color: transparent;
      border: 1px solid #B8F968;
      border-radius: 0;
      height: 48px;
      padding: 0 40px 0 12px;
      font-family: 'Radio Canada', sans-serif;
      font-size: 14px;
      color: #B8F968;
      background-image: url("data:image/svg+xml;utf8,<svg fill='%23B8F968' height='12' viewBox='0 0 24 24' width='12' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
      background-repeat: no-repeat;
      background-position: right 12px center;
      background-size: 15px;
    }

    .paquetes-scroll-section {
      width: 100vw!important;      /* ancho completo del viewport */
      padding: 0;        /* elimina padding por defecto */
      margin: 0;         /* elimina márgenes por defecto */
      overflow: hidden;  /* opcional: para que no se vea scroll vertical */
    }

    /* Contenedor de scroll horizontal */
    .scroll-container {
      display: flex;
      gap: 20px;                     /* espacio entre cards */
      overflow-x: auto;              /* scroll horizontal */
      padding-bottom: 10px;          /* espacio debajo del scroll */
      scroll-behavior: smooth;
      -webkit-overflow-scrolling: touch; /* smooth scroll en iOS */
      cursor: grab;                  /* indica que se puede arrastrar */
      padding-left: 0px !important;            /* margen a la izquierda antes de scroll */
      padding-right: 0px !important;
      flex-wrap: wrap;
      justify-content: center;
    }

    /* Ocultar barra de scroll */
    .scroll-container::-webkit-scrollbar {
      display: none;
    }
    .scroll-container {
      -ms-overflow-style: none;  /* IE 10+ */
      scrollbar-width: none;     /* Firefox */
    }

    .scroll-card {
      flex-shrink: 0;
      flex: 0 0 auto;
      width: 300px;               /* ancho por defecto */
      aspect-ratio: 3 / 4;        /* relación ancho:alto (ajusta según tu diseño) */
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      box-sizing: border-box;
    }

    /* Contenido interno */
    .scroll-card * {
      box-sizing: border-box;
    }

    .scroll-card select,
    .scroll-card button {
      min-width: 0;
    }

    /* Sección Lineup */
    .lineup-section {
      width: 100%;
      background-color: #AA93B5; /* fondo actualizado */
    }
    /* Título */


    .lineup-title {
      font-family: 'Bungee', cursive!important;
      font-size: 170px;
      color: #0F1130;
      text-align: left;
      margin: 0;
      line-height: 1; letter-spacing: -6px;
    }

    /* Contenedor scrollable */
    .lineup-scroll-bg {
      background-color: #0F1130;
      width: 100%;
      overflow: hidden;
      padding: 20px 0;
    }

    .lineup-scroll-container {
      display: flex;
      gap: 20px;
      overflow-x: auto;
      scroll-behavior: smooth;
      padding-left: 40px; padding-top:30px; padding-bottom:30px
    }

    .lineup-scroll-container::-webkit-scrollbar {
      display: none;
    }
    .lineup-scroll-container {
      -ms-overflow-style: none;
      scrollbar-width: none;
    }

    /* Imagenes del scroll */
    .lineup-img {
      flex-shrink: 0;
      width: 300px;
      height: auto;
      display: block;
    }

    .lineup-button-container {
      display: flex;
      justify-content: center; /* centrado horizontal */
      padding: 20px 0;         /* espacio arriba y abajo */
    }

    .lineup-button {
      background-color: #B8F968;
      color: #0F1130;          /* texto oscuro */
      border: none;
      padding: 12px 30px;
      font-family: 'Radio Canada', sans-serif;
      font-weight: 700;
      font-size: 16px;
      cursor: pointer;
    }

    .lineup-button:hover {
      opacity: 0.9;
    }

    .blog-date {
      font-family: 'Radio Canada', sans-serif;
      color: #140F2E;
      font-size: 15px;font-weight: 500; 
      margin-bottom: 4px;
    }

    .blog-title {
      font-family: 'Radio Canada', sans-serif;
      color: #140F2E;
      font-size: 17px;
      font-weight: 700;
      margin-bottom: 0; line-height: 1.2;
    }

    .accordion-item {
      margin-bottom: 20px; /* Espacio entre acordeones */
    }
    /* Botón del acordeón */
    .accordion-button {
      background-color: #140F2E !important; /* Fondo siempre igual */
      color: #B8F968 !important;            /* Texto */
      font-family: 'Radio Canada', sans-serif;
      font-weight: 500;
    }

    .accordion-item:last-child {
      margin-bottom: 0; /* quita el extra del último */
    }

    /* Evitar que el color cambie al abrir */
    .accordion-button:not(.collapsed) {
      background-color: #140F2E !important;
      color: #B8F968 !important;
    }
    /* Elimina filtros antiguos */
    .accordion-button::after,
    .accordion-button.collapsed::after {
      filter: none !important;  
    }

    /* Flecha cerrada */
    .accordion-button.collapsed::after {
      background-image: url("data:image/svg+xml;charset=UTF-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%23B8F968' d='M1.5 5l6 6 6-6'/></svg>") !important;
    }

    /* Flecha abierta */
    .accordion-button::after {
      background-image: url("data:image/svg+xml;charset=UTF-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%23B8F968' d='M1.5 5l6 6 6-6'/></svg>") !important;
    }


    /* Cuerpo del acordeón */
    .accordion-body {
      background-color: #140F2E;
      color: #B8F968;
      font-family: 'Radio Canada', sans-serif;
      padding: 10px 15px; /* Ajusta a tu gusto, por defecto es más grande */
    }

    .footer-b {
      background-color: #B8F968;
      height: 250px;
      display: flex;
      align-items: center;
    }

    .footer-b-container {
      width: 100%;
      max-width: 1200px;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 0 20px;
      flex-wrap: wrap;
    }

    /* Izquierda */
    .footer-b-left {
      display: flex;
      align-items: center;
      gap: 15px;
    }

    .footer-b-logo {
      height: 120px; /* ajusta según necesites */
    }

    .footer-b-socials a {
      color: #191971;
      font-size: 20px;
      margin-left: 10px;
      text-decoration: none;
    }

    /* Centro */
    .footer-b-center a {
      color: #191971;
      text-decoration: none;
      font-family: 'Radio Canada', sans-serif; font-size:19px
    }

    /* Derecha */
    .footer-b-right span {
      color: #191971;
      font-family: 'Radio Canada', sans-serif;font-size:19px; font-weight: 700;
    }

    .footer-b-socials a {
      color: #191971;
      font-size: 22px; /* ajusta tamaño si quieres más grandes */
      margin: 0 8px;
      text-decoration: none;
    }

    .footer-b-socials a:hover {
      color: #0F1130; /* opcional: color más oscuro al pasar el mouse */
    }

    .mapa-placeholder {
      background-color: #ccc; /* gris */
      width: 100%;
      height: 400px; /* alto del mapa */
      border-radius: 8px;
      font-family: 'Radio Canada', sans-serif;
      font-size: 24px;
      color: #140F2E;
      font-weight: bold;
    }

    .mapa-section {
      background-color: #AA93B5; /* el mismo fondo de tus otras secciones */
    }

    select option {
      background-color: #ffffff!important;  /* fondo blanco */
      color: #140F2E!important;             /* texto oscuro */
    }

    /* Responsive */
    @media (max-width: 768px) {
      .footer-b-container {
        flex-direction: column;
        text-align: center;
        gap: 15px;
        height: auto;
        padding: 20px;
        margin-bottom: 32%;
      }

      .footer-b-left, .footer-b-center, .footer-b-right {
        justify-content: center;
      }

      .footer-b-logo {
        height: 50px;
      }
      .card-image {
          width: 100%;
      }

    }


    @media (max-width: 576px) {
      .blog-date, .blog-title {
        font-size: 16px; /* Ajuste para móviles */
      }
    }

    @media (min-width: 993px) {

    .paquetes-scroll-section img {
      width: 40%!important;   /* llena el ancho de la card */
      height: auto;  /* mantiene proporción */
      display: block;
      margin-right:1em;
      margin-bottom: 2em !important;
      float: left;
    }

    .scroll-container {
      padding-left: 80px;            /* margen a la izquierda antes de scroll */
    }

    .paquetes-title {
      font-family: 'Bungee', cursive !important;
      font-size: 67px;
      margin-top: 60px;
      margin-bottom: 80px;
      color: #0F1130;
      line-height: 1.1;
      text-align: center; letter-spacing: -2px;
    }

    }



    /* Responsive combinado */
    @media (max-width: 1200px) { 
      .scroll-card { width: 250px; aspect-ratio: 3 / 4; }
      .hero-title { font-size: 90px; } 
      .hero-subtitle { font-size: 40px; } 
      .paquetes-title { font-size: 55px; }
      .lineup-img { width: 250px; }
      .lineup-title {font-size: 90px;}
    }

    @media (max-width: 992px)  { 
        .scroll-card { width: 200px; aspect-ratio: 3 / 4; }
      .hero-title { font-size: 70px; } 
      .hero-subtitle { font-size: 32px; } 
      .paquetes-title { font-size: 45px; }
      .lineup-img { width: 200px; }
      .lineup-title {font-size: 45px;letter-spacing: -2px;}
    }

    @media (max-width: 768px)  { 
        .scroll-card { width: 45vw; aspect-ratio: 3 / 4; }
      .hero-title { font-size: 50px; } 
      .hero-subtitle { font-size: 24px; } 
      .paquetes-title { font-size: 42px; }
      .lineup-img { width: 45vw;}
      .lineup-title {font-size: 45px;letter-spacing: -2px;}
    }

    @media (max-width: 576px)  { 
        .scroll-card { width: 70vw; aspect-ratio: 3 / 4; }
      .hero-title { font-size: 36px; } 
      .hero-subtitle { font-size: 18px; } 
      .paquetes-title { font-size: 40px; }
      .lineup-img { width: 70vw; }
        .lineup-title {font-size: 45px;letter-spacing: -2px;}

    }


    @media (max-width: 541px) {

      #sponser {
        width: 100% !important;
      }
      

      #sponser2 {
        width: 100% !important;
      }

      .header {
        background-image: url(bahidora/nuevo-mentes-mob.webp);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
      }

      

          }

    .location {
      position: relative;
    }

    .location .badge {
      min-width: 12px;
      min-height: 12px;
      border-radius: 50%;
      line-height: 0;
      padding: 0;
      position: absolute;
      left: 0;
      top: 3px;
    }

    .location .name {
      margin-left: 20px;
    }

    .text-align-justify {
      text-align: justify;
    }

    .gallery {
      position: relative;
      width: 80%;
      max-width: 600px;
      overflow: hidden;
    }

    .gallery-slider {
      display: flex;
      transition: transform 0.5s ease;
    }

    .gallery-slide {
      flex: 0 0 100%;
      background-size: cover;
      background-position: center;
      height: 300px;
      cursor: pointer;
    }

    button.prev,
    button.next {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background-color: rgba(0, 0, 0, 0.5);
      color: white;
      border: none;
      padding: 10px;
      cursor: pointer;
    }

    button.prev {
      left: 10px;
    }

    button.next {
      right: 10px;
    }

    .zoom-viewer {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: rgba(0, 0, 0, 0.8);
      z-index: 1000;
    }

    .zoom-viewer.hidden {
      display: none;
    }

    #zoom-image {
      max-width: 90%;
      max-height: 90%;
      border: 5px solid white;
    }

    #close-zoom {
      position: absolute;
      top: 20px;
      right: 20px;
      background-color: red;
      color: white;
      border: none;
      padding: 5px 10px;
      cursor: pointer;
      border-radius: 50px;
    }

    .txt-declaimer p {

      color: #fff;
      font-size: 1em;
      margin: 0px;

    }

    .txt-declaimer a {
      color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
    }

    .texto-evento {

      color: #fff;
      font-weight: bold;
      font-size: 4em;

    }

    .enlaces-eventos.disabled {
      pointer-events: none;
      /* Deshabilita la interactividad */
      color: #fff !important;
      background-color: #adadad !important;
      /* Cambia el color del enlace */
      text-decoration: none;
      /* Elimina el subrayado */
      cursor: default;
      /* Cambia el cursor a no interactivo */
    }

    @media (max-height: 700px) and (max-width: 900px) {
      .header {
        top: 75px;
        position: relative;
      }
    }