

    .scrollbar-hide::-webkit-scrollbar {
        display: none;
      }

      img {
    pointer-events: none;
    user-select: none; /* También útil para evitar la selección de texto alrededor */
}
      .scrollbar-hide {
        -ms-overflow-style: none;
        scrollbar-width: none;
      }


        .scrollbar-hide::-webkit-scrollbar{display:none}
  .scrollbar-hide{scrollbar-width:none;-ms-overflow-style:none}

      .scrollbar-hide::-webkit-scrollbar {
      display: none;
    }
    .scrollbar-hide {
      -ms-overflow-style: none;
      scrollbar-width: none;
    }


          @import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;700;800&display=swap');

      /* OPCIONAL: viñeteado muy sutil en los bordes del video (puedes quitarlo si no quieres) */
      .video-wrap::after{
        content:"";
        position:absolute; inset:0; pointer-events:none;
        background: radial-gradient(120% 90% at 50% 55%, transparent 60%, rgba(0,0,0,.32) 100%);
      }

      /* TITULO GRANDE (slogan) */
      .hero-title-large{
        font-family:'Montserrat',system-ui,sans-serif;
        font-weight:800;
        margin:0 0 .25rem;
        text-align:center;
        line-height:1.05;
        font-size:clamp(2.4rem,7vw,4.6rem);
        letter-spacing:-.01em;
        color:var(--ink);
        -webkit-text-stroke:.8px rgba(0,0,0,.18);
        text-shadow:
          0 2px 4px rgba(0,0,0,.35),
          0 10px 28px rgba(0,0,0,.35),
          0 0 1px rgba(0,0,0,.22);
      }

      /* TITULO PEQUEÑO (apoyo) */
      .hero-title-small{
        font-family:'Montserrat',system-ui,sans-serif;
        font-weight:700;
        margin:.1rem 0 .6rem;
        text-align:center;
        line-height:1.2;
        font-size:clamp(1.05rem,2.8vw,1.35rem);
        color:var(--ink-dim);
        text-shadow:
          0 2px 3px rgba(0,0,0,.35),
          0 8px 20px rgba(0,0,0,.25);
      }

      /* ROTADOR PROFESIONAL */
      .hero-subtitle{
        margin:.2rem auto 0;
        font-family:'Montserrat',system-ui,sans-serif;
        font-weight:600;
        color:var(--ink-dim);
        max-width: 900px;
        text-align:center;
        font-size:clamp(1rem,2.6vw,1.12rem);
        min-height:1.6em;
        transition:opacity .55s ease, transform .55s ease;
        will-change:opacity, transform;
        text-shadow:
          0 2px 3px rgba(0,0,0,.35),
          0 8px 20px rgba(0,0,0,.25);
      }
      .fade-out{ opacity:0; transform: translateY(6px); }
      .fade-in { opacity:1; transform: translateY(0); }

      @media (prefers-reduced-motion: reduce){
        .hero-subtitle{ transition:none }
      }



/* Carrusel: scroll-snap y scrollbars discretos */
.scrollbar-hide::-webkit-scrollbar { display: none; }
.scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }

.carousel-snap {
  scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain;
}

.card-snap { scroll-snap-align: start; }

/* Bordes laterales suaves del carrusel (fade) */
.carousel-mask {
  -webkit-mask-image: linear-gradient(to right, transparent 0, black 24px, black calc(100% - 24px), transparent 100%);
          mask-image: linear-gradient(to right, transparent 0, black 24px, black calc(100% - 24px), transparent 100%);
}



    @keyframes slideUp {
      0% { transform: translateY(0); }
      25% { transform: translateY(-1.5rem); }
      50% { transform: translateY(-3rem); }
      75% { transform: translateY(-4.5rem); }
      100% { transform: translateY(0); }
    }
  
    .animate-carousel {
      display: flex;
      flex-direction: column;
      animation: slideUp 10s infinite ease-in-out;
    }


    body {
      font-family: 'Inter', sans-serif;
    }

    

  
    html {
        scroll-behavior: smooth;
      }
      
      ::-webkit-scrollbar {
        width: 10px;
      }
      
      ::-webkit-scrollbar-track {
        background: transparent;
      }
      
      ::-webkit-scrollbar-thumb {
        background: rgba(255, 255, 255, 0.2);
        border-radius: 6px;
        backdrop-filter: blur(10px);
        border: 2px solid transparent;
        background-clip: padding-box;
        transition: background 0.3s ease;
      }
      
      ::-webkit-scrollbar-thumb:hover {
        background: rgba(255, 255, 255, 0.4);
      }
      



    /* ===== Capsule Header – mejoras solo CSS ===== */




/* responsive: cápsula más compacta en pantallas muy pequeñas */

/* opcional: si el nav llega a desbordar, escóndele el scrollbar */


 




/* Ajuste de cápsula en pantallas pequeñas */


/* Tipografía fluida */
h1, h2 {
  font-size: clamp(1.5rem, 4vw, 2.5rem);
}
p {
  font-size: clamp(1rem, 2.6vw, 1.125rem);
  line-height: 1.6;
}

/* Botones fluidos */
.btn-responsive {
  width: 100%;
}
@media (min-width: 640px) {
  .btn-responsive {
    width: auto;
  }
}

/* Olas más bajas en móvil */
.wave-responsive {
  height: clamp(48px, 8vw, 100px);
}





html { scroll-behavior: smooth; }

/* evita que el header tape el inicio de la sección */
[id] { scroll-margin-top: calc(var(--cap-h, 72px) + 12px); }