
  :root{
    --navy: #000133;
    --navy-soft: #11123F;
    --pink: #FF78C0;
    --pink-deep: #F080BF;
    --pink-dark: #E85CAE;
    --cream: #ECE7DF;
    --cream-2: #F7F4EF;
    --mint: #70BB9C;
    --mint-dark: #549A7D;
    --mustard: #F6AC2D;
    --grey: #7C7A8C;
    --white: #FFFFFF;
    --line: #DCD6CA;
  }

  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth; overflow-x:hidden; max-width:100%;}
  body{
    background:var(--cream);
    color:var(--navy);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  @media (prefers-reduced-motion: reduce){
    *{animation-duration:0.01ms !important; transition-duration:0.01ms !important;}
  }

  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}

  h1,h2,h3,h4{
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    letter-spacing:-0.01em;
    line-height:1.12;
    color:var(--navy);
  }

  .pink-text{color:var(--pink-dark);}

  .wrap{
    max-width:1180px;
    margin:0 auto;
    padding:0 28px;
  }

  .eyebrow{
    font-family:'Inter',sans-serif;
    font-size:13px;
    font-weight:800;
    letter-spacing:0.04em;
    text-transform:uppercase;
    color:var(--pink-dark);
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:rgba(255,120,192,0.12);
    padding:7px 16px;
    border-radius:30px;
  }
  .eyebrow.on-dark{
    background:rgba(255,120,192,0.18);
    color:#FFB8E0;
  }

  /* ===== BUTTONS ===== */
  .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:17px;
    padding:17px 30px;
    border-radius:14px;
    cursor:pointer;
    border:none;
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
    white-space:normal;
    text-align:center;
    max-width:100%;
  }
  .btn-primary{
    background:var(--pink);
    color:var(--navy);
    box-shadow:0 5px 0 var(--pink-dark), 0 14px 24px -10px rgba(255,120,192,.6);
  }
  .btn-primary:hover{
    transform:translateY(-2px);
    box-shadow:0 7px 0 var(--pink-dark), 0 18px 28px -10px rgba(255,120,192,.65);
  }
  .btn-primary:active{transform:translateY(2px); box-shadow:0 2px 0 var(--pink-dark);}
  .btn-mint{
    background:var(--mint);
    color:var(--navy);
    box-shadow:0 5px 0 var(--mint-dark), 0 14px 24px -10px rgba(112,187,156,.55);
  }
  .btn-mint:hover{transform:translateY(-2px);}
  .btn-ghost-dark{
    background:transparent;
    border:2px solid var(--navy);
    color:var(--navy);
  }
  .btn-ghost-dark:hover{background:var(--navy); color:var(--white);}

  .microcopy{
    font-size:13.5px;
    color:var(--grey);
    margin-top:12px;
    display:flex;
    align-items:center;
    gap:8px;
    justify-content:center;
    font-weight:600;
  }
  .microcopy svg{flex-shrink:0;}

  /* ===== BADGE (signature shape) ===== */
  .blob-badge{
    width:84px;height:84px;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
  }
  .blob-badge svg{width:100%;height:100%;}

  /* ===== NAV ===== */
  header{
    position:fixed;
    top:0;left:0;right:0;
    z-index:100;
    background:var(--navy);
  }
  .nav{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:16px 28px;
    max-width:1180px;
    margin:0 auto;
  }
  .logo{
    font-family:'Baloo 2',sans-serif;
    font-weight:800;
    font-size:26px;
    color:var(--white);
    letter-spacing:-0.01em;
  }
  .logo span{color:var(--pink);}
  .logo-link{display:inline-flex; align-items:center;}
  .logo-img{
    height:30px;
    width:auto;
    display:block;
  }
  .nav .btn{padding:11px 24px;font-size:14px; border-radius:10px;}

  .nav-links{
    display:flex;
    align-items:center;
    gap:28px;
    margin-left:auto;
    margin-right:24px;
  }
  .nav-links a{
    font-family:'Inter',sans-serif;
    font-weight:600;
    font-size:14.5px;
    color:var(--white);
    text-decoration:none;
    opacity:.85;
    transition:opacity .15s ease;
    white-space:nowrap;
  }
  .nav-links a:hover{opacity:1;}

  .nav-toggle{
    display:none;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    width:38px;height:38px;
    margin-left:auto;
    background:transparent;
    border:none;
    cursor:pointer;
    padding:0;
  }
  .nav-toggle span{
    display:block;
    width:24px;height:2.5px;
    background:var(--white);
    border-radius:2px;
    transition:transform .2s ease, opacity .2s ease;
  }
  .nav-toggle.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg);}
  .nav-toggle.open span:nth-child(2){opacity:0;}
  .nav-toggle.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg);}

  .nav-links-mobile{
    display:none;
    flex-direction:column;
    gap:4px;
    background:var(--navy-soft);
    padding:0 28px;
    max-height:0;
    overflow:hidden;
    transition:max-height .25s ease, padding .25s ease;
  }
  .nav-links-mobile.open{
    padding:14px 28px 20px;
    max-height:260px;
  }
  .nav-links-mobile a{
    font-family:'Inter',sans-serif;
    font-weight:600;
    font-size:15px;
    color:var(--white);
    text-decoration:none;
    padding:12px 4px;
    border-bottom:1px solid rgba(255,255,255,0.08);
  }
  .nav-links-mobile a.btn{
    margin-top:10px;
    border-bottom:none;
    text-align:center;
  }

  /* ===== HERO ===== */
  .hero{
    padding:120px 0 60px;
    position:relative;
    overflow:hidden;
  }
  .hero::after{
    content:"";
    position:absolute;
    top:-200px; right:-200px;
    width:520px; height:520px;
    background:radial-gradient(circle, rgba(255,120,192,0.18), transparent 65%);
    z-index:0;
    pointer-events:none;
  }
  .hero .wrap{position:relative; z-index:1;}
  .hero-grid{
    display:grid;
    grid-template-columns:1.05fr 0.95fr;
    gap:50px;
    align-items:center;
  }
  .hero h1{
    font-size:clamp(34px, 4.6vw, 54px);
    margin:18px 0 18px;
    color:var(--navy);
  }
  .hero h1 .pink-accent{color:var(--pink-dark);}
  .hero-sub{
    font-size:17.5px;
    color:var(--navy);
    opacity:0.78;
    max-width:520px;
    margin-bottom:28px;
    line-height:1.6;
    font-weight:500;
  }
  .hero-cta-row{display:flex; flex-direction:column; align-items:flex-start;}

  .trust-strip{
    margin-top:38px;
    padding-top:24px;
    border-top:2px dashed var(--line);
  }
  .trust-strip-label{
    font-size:12px;
    color:var(--grey);
    text-transform:uppercase;
    letter-spacing:0.08em;
    font-weight:700;
    margin-bottom:12px;
  }
  .uni-row{
    display:flex;
    flex-wrap:wrap;
    gap:16px 24px;
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:15.5px;
    color:var(--navy);
    opacity:0.7;
  }

  .hero-visual{
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:560px;
    padding:50px 60px 50px 50px;
  }
  .hero-card-stack{
    position:relative;
    width:100%;
    max-width:380px;
  }
  .hero-card{
    background:var(--white);
    border-radius:24px;
    padding:30px 28px;
    box-shadow:0 30px 60px -20px rgba(0,1,51,0.28), 0 0 0 1px var(--line);
    position:relative;
    z-index:2;
  }
  .hero-card-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:18px;
  }
  .hero-card-crest{
    width:42px;height:42px;
    border-radius:12px;
    background:var(--navy);
    color:var(--white);
    display:flex;align-items:center;justify-content:center;
    font-family:'Baloo 2',sans-serif;font-weight:800;font-size:18px;
  }
  .crest-svg{width:22px; height:22px; display:block;}
  .hero-card-date{font-size:10.5px; color:var(--grey); text-align:right; font-weight:700; letter-spacing:0.06em;}
  .hero-card h3{font-size:21px; margin-bottom:12px; color:var(--navy);}
  .hero-card p.body{font-size:13.5px; color:var(--grey); line-height:1.7; margin-bottom:14px;}
  .hero-card p.accept{font-size:12.5px; color:var(--pink-dark); font-weight:700; padding-top:12px; border-top:1px dashed var(--line);}
  .hero-card-uni{
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:var(--cream);
    color:var(--navy);
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:11.5px;
    padding:4px 10px;
    border-radius:20px;
    margin-bottom:14px;
  }

  /* Background star/sun blob behind card (Nexstep signature element) */
  .hero-blob-bg{
    position:absolute;
    top:-44px; right:-44px;
    width:120px; height:120px;
    z-index:0;
    animation:slowSpin 40s linear infinite;
  }
  .hero-blob-text{
    position:absolute;
    bottom:-44px; right:-30px;
    width:100px; height:100px;
    z-index:4;
    animation:slowSpin 50s linear infinite reverse;
  }
  @keyframes slowSpin{
    from{transform:rotate(0deg);}
    to{transform:rotate(360deg);}
  }

  .hero-pill{
    position:absolute;
    background:var(--white);
    border-radius:14px;
    padding:11px 16px;
    box-shadow:0 14px 28px -8px rgba(0,1,51,.18);
    font-size:13px;
    font-weight:700;
    display:flex;
    align-items:center;
    gap:9px;
    color:var(--navy);
    z-index:5;
    white-space:nowrap;
  }
  .hero-pill .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
  .pill-bl{bottom:-18px; left:-30px;}

  /* ===== SECTION GENERIC ===== */
  .section{padding:70px 0;}
  .section-tight{padding:44px 0;}
  .section-head{max-width:680px; margin-bottom:42px;}
  .section-head h2{font-size:clamp(28px,3.4vw,42px); margin-top:14px;}
  .section-head p{color:var(--navy); opacity:0.75; font-size:17px; margin-top:14px; line-height:1.6; font-weight:500;}
  .center{text-align:center; margin-left:auto; margin-right:auto;}

  /* ===== PAIN GRID ===== */
  .pain-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:20px;}
  .pain-card{
    background:var(--white);
    border-radius:20px;
    padding:30px;
    display:flex;
    gap:18px;
    align-items:flex-start;
  }
  .pain-icon{
    width:50px;height:50px;
    border-radius:16px;
    background:var(--cream);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    color:var(--pink-dark);
  }
  .pain-card h4{font-size:18px; margin-bottom:6px; font-family:'Baloo 2',sans-serif; font-weight:700;}
  .pain-card p{font-size:14.5px; color:var(--grey); line-height:1.6;}

  /* ===== EVAL SECTION (navy block) ===== */
  .eval-section{
    background:var(--navy);
    color:var(--white);
    border-radius:32px;
    margin:0 28px;
    padding:60px 50px;
    position:relative;
    overflow:hidden;
    max-width:100%;
  }
  .eval-section::before{
    content:"";
    position:absolute;
    top:-120px; right:-120px;
    width:380px; height:380px;
    background:radial-gradient(circle, rgba(255,120,192,0.28), transparent 70%);
  }
  .eval-grid{
    display:grid;
    grid-template-columns:0.95fr 1.05fr;
    gap:50px;
    position:relative;
    z-index:1;
    min-width:0;
  }
  .eval-grid > div{min-width:0;}
  .eval-section h2{color:var(--white); font-size:clamp(24px,3.2vw,36px); margin-top:14px; overflow-wrap:break-word;}
  .eval-section .sub{color:#C2BFD6; font-size:16px; margin-top:14px; line-height:1.65;}

  .eval-list{margin-top:26px;}
  .eval-item{
    display:flex;
    gap:16px;
    padding:18px 0;
    border-top:1px solid rgba(255,255,255,0.14);
  }
  .eval-num{
    width:30px;height:30px;
    border-radius:50%;
    background:var(--pink);
    color:var(--navy);
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:13px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
  }
  .eval-item h4{font-family:'Inter',sans-serif; color:var(--white); font-size:16px; font-weight:700; margin-bottom:5px;}
  .eval-item p{color:#A9A6BF; font-size:14.5px; line-height:1.6;}

  .eval-card-box{
    background:rgba(255,255,255,0.07);
    border:1px solid rgba(255,255,255,0.16);
    border-radius:22px;
    padding:32px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
  }
  .eval-stat-row{display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:26px;}
  .eval-stat .num{font-family:'Baloo 2',sans-serif; font-size:32px; font-weight:800; color:var(--white);}
  .eval-stat .num span{color:var(--pink);}
  .eval-stat .lbl{font-size:12.5px; color:#9D9AB5; margin-top:4px; line-height:1.4; font-weight:500;}
  .eval-card-box .btn{width:100%; margin-top:4px;}
  .eval-card-box .microcopy{color:#9D9AB5;}

  /* ===== TESTIMONIALS ===== */
  .test-scroller{
    display:flex;
    gap:20px;
    overflow-x:auto;
    padding:6px 28px 26px;
    margin:0 -28px;
    scroll-snap-type:x mandatory;
  }
  .test-scroller::-webkit-scrollbar{height:6px;}
  .test-scroller::-webkit-scrollbar-thumb{background:var(--line); border-radius:10px;}
  .test-card{
    scroll-snap-align:start;
    background:var(--white);
    border-radius:20px;
    padding:26px;
    min-width:310px;
    max-width:310px;
    display:flex;
    flex-direction:column;
  }
  .test-card p.quote{
    font-size:15px;
    color:var(--navy);
    opacity:0.85;
    line-height:1.65;
    flex-grow:1;
    margin-bottom:18px;
    font-weight:500;
  }
  .test-person{
    display:flex;
    align-items:center;
    gap:12px;
    border-top:1px solid var(--line);
    padding-top:16px;
  }
  .test-avatar{
    width:46px;height:46px;
    border-radius:50%;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:16px;
    color:var(--navy);
  }
  .test-name{font-weight:700; font-size:14px; font-family:'Baloo 2',sans-serif;}
  .test-uni{font-size:12.5px; color:var(--pink-dark); font-weight:700;}

  /* ===== STATS BAND ===== */
  .stats-band{
    background:var(--navy);
    padding:64px 0;
    position:relative;
    overflow:hidden;
  }
  .stats-band::before{
    content:"";
    position:absolute;
    top:-100px; left:-100px;
    width:380px; height:380px;
    background:radial-gradient(circle, rgba(255,120,192,0.18), transparent 70%);
    pointer-events:none;
  }
  .stats-band::after{
    content:"";
    position:absolute;
    bottom:-100px; right:-100px;
    width:340px; height:340px;
    background:radial-gradient(circle, rgba(246,172,45,0.14), transparent 70%);
    pointer-events:none;
  }
  .stats-band .wrap{position:relative; z-index:1;}
  .stats-band .section-head{margin:0 auto 38px; text-align:center;}
  .stats-band .section-head h2{color:var(--white); font-size:clamp(26px, 3vw, 34px);}
  .stats-band .section-head p{color:#A9A6BF; opacity:1;}
  .stats-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:0;
    text-align:center;
    border-top:1px solid rgba(255,255,255,0.12);
    border-bottom:1px solid rgba(255,255,255,0.12);
  }
  .stats-grid > div{
    padding:30px 16px;
    border-right:1px solid rgba(255,255,255,0.10);
  }
  .stats-grid > div:last-child{border-right:none;}
  .stat-icon{
    width:42px;height:42px;
    border-radius:12px;
    background:rgba(255,120,192,0.15);
    color:var(--pink);
    display:flex;align-items:center;justify-content:center;
    margin:0 auto 12px;
  }
  .stat-num{font-family:'Baloo 2',sans-serif; font-weight:800; font-size:clamp(28px,3.4vw,38px); color:var(--white); line-height:1;}
  .stat-num span{color:var(--pink);}
  .stat-lbl{font-size:12.5px; color:#A9A6BF; margin-top:6px; line-height:1.4; font-weight:500;}

  /* ===== ADVISOR (Guille) ===== */
  .advisor-section{padding:70px 0;}
  .advisor-card{
    background:var(--white);
    border-radius:32px;
    padding:0;
    overflow:hidden;
    display:grid;
    grid-template-columns:1fr 1.4fr;
    box-shadow:0 30px 60px -30px rgba(0,1,51,0.18);
    position:relative;
  }
  .advisor-photo{
    background:linear-gradient(165deg, var(--pink) 0%, var(--pink-deep) 50%, #9D3478 100%);
    position:relative;
    min-height:460px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .advisor-photo::before{
    content:"";
    position:absolute;
    inset:0;
    background:
      radial-gradient(circle at 30% 30%, rgba(255,255,255,0.18), transparent 40%),
      radial-gradient(circle at 70% 80%, rgba(0,1,51,0.25), transparent 50%);
    z-index:0;
  }
  .advisor-avatars{
    display:flex;
    gap:22px;
    align-items:center;
    justify-content:center;
    position:relative;
    z-index:1;
  }
  .advisor-avatar-wrap{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
  }
  .advisor-avatar-name{
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:13px;
    color:rgba(255,255,255,0.92);
    letter-spacing:0.02em;
    text-transform:uppercase;
    background:rgba(0,1,51,0.35);
    padding:4px 12px;
    border-radius:20px;
  }
    .advisor-avatar{
    position:relative;
    width:185px;
    height:185px;
    flex-shrink:0;
    object-fit:cover;
    border-radius:50%;
    z-index:1;
    border:5px solid rgba(255,255,255,0.95);
    box-shadow:0 20px 40px -10px rgba(0,1,51,0.4);
  }
  .advisor-blob-tag{
    position:absolute;
    top:24px; right:18px;
    width:100px; height:100px;
    z-index:2;
    animation:slowSpin 60s linear infinite;
  }
  .advisor-content{
    padding:48px 50px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .advisor-content .eyebrow{margin-bottom:14px;}
  .advisor-content h2{font-size:clamp(26px,3vw,38px); margin-bottom:14px;}
  .advisor-content > p{font-size:16px; color:var(--grey); line-height:1.65; margin-bottom:20px; font-weight:500;}
  .advisor-traits{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-bottom:26px;
  }
  .advisor-trait{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:14.5px;
    color:var(--navy);
    font-weight:600;
  }
  .advisor-trait svg{flex-shrink:0;}
  .advisor-cta-row{
    display:flex;
    gap:14px;
    align-items:center;
    flex-wrap:wrap;
  }
  .advisor-cta-row .microcopy{margin-top:0;}
  /* ===== PRESS CAROUSEL ===== */
  .press-carousel-wrap{
    position:relative;
  }
  .press-track{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 2*22px) / 3);
    gap:22px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    padding-bottom:6px;
    -webkit-overflow-scrolling:touch;
    /* Hide native scrollbar; nav is via arrows/dots */
    scrollbar-width:none;
  }
  .press-track::-webkit-scrollbar{display:none;}
  .press-item{
    background:var(--white);
    border-radius:18px;
    overflow:hidden;
    border:1px solid var(--line);
    transition:transform .25s ease, box-shadow .25s ease;
    display:flex;
    flex-direction:column;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    text-decoration:none;
    color:inherit;
    cursor:pointer;
  }
  .press-item:hover{
    transform:translateY(-4px);
    box-shadow:0 20px 40px -14px rgba(0,1,51,0.2);
  }
  .press-thumb{
    width:100%;
    aspect-ratio:1/1;
    overflow:hidden;
    background:var(--cream);
    position:relative;
    border-bottom:1px solid var(--line);
  }
  .press-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
    display:block;
  }
  .press-meta-row{
    padding:18px 20px 20px;
    display:flex;
    flex-direction:column;
    flex-grow:1;
  }
  .press-medium{
    font-family:'Baloo 2',sans-serif;
    font-weight:800;
    font-size:12.5px;
    color:var(--pink-dark);
    letter-spacing:0.04em;
    text-transform:uppercase;
    margin-bottom:8px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
  }
  .press-medium svg{
    flex-shrink:0;
    opacity:0.55;
    transition:opacity .2s ease, transform .2s ease;
  }
  .press-item:hover .press-medium svg{
    opacity:1;
    transform:translate(2px,-2px);
  }
  .press-headline{
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:15.5px;
    color:var(--navy);
    line-height:1.3;
    flex-grow:1;
  }
  .press-date{
    font-size:12px;
    color:var(--grey);
    font-weight:600;
    margin-top:12px;
  }
  .press-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    margin-top:22px;
  }
  .press-arrow{
    width:42px;
    height:42px;
    border-radius:50%;
    border:1px solid var(--line);
    background:var(--white);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:background .2s ease, transform .15s ease, border-color .2s ease;
    flex-shrink:0;
  }
  .press-arrow:hover{
    background:var(--navy);
    border-color:var(--navy);
  }
  .press-arrow:hover svg path{stroke:#FFFFFF;}
  .press-arrow:active{transform:scale(0.92);}
  .press-arrow:disabled{opacity:0.35; cursor:default;}
  .press-arrow:disabled:hover{background:var(--white); border-color:var(--line);}
  .press-arrow:disabled:hover svg path{stroke:var(--navy);}
  .press-dots{
    display:flex;
    align-items:center;
    gap:8px;
  }
  .press-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--line);
    border:none;
    cursor:pointer;
    padding:0;
    transition:background .2s ease, transform .2s ease;
  }
  .press-dot.is-active{
    background:var(--pink-dark);
    transform:scale(1.3);
  }

  /* ===== UNIVERSITY LOGOS MARQUEE ===== */
  .uni-logos-section{
    padding:36px 0;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:var(--cream-2);
    overflow:hidden;
  }
  .uni-logos-label{
    text-align:center;
    font-size:12.5px;
    font-weight:700;
    letter-spacing:0.07em;
    text-transform:uppercase;
    color:var(--grey);
    margin-bottom:22px;
  }
  .uni-logos-viewport{
    position:relative;
    -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 64px, #000 calc(100% - 64px), transparent 100%);
    mask-image:linear-gradient(90deg, transparent 0, #000 64px, #000 calc(100% - 64px), transparent 100%);
  }
  .uni-logos-track{
    display:flex;
    align-items:center;
    gap:52px;
    width:max-content;
    animation:uniScroll 38s linear infinite;
  }
  .uni-logos-section:hover .uni-logos-track{animation-play-state:paused;}
  .uni-logos-track img{
    height:34px;
    width:auto;
    display:block;
    object-fit:contain;
    opacity:0.85;
    filter:grayscale(100%);
    transition:opacity .2s ease, filter .2s ease;
    flex-shrink:0;
  }
  .uni-logos-track img:hover{
    opacity:1;
    filter:grayscale(0%);
  }
  @keyframes uniScroll{
    from{transform:translateX(0);}
    to{transform:translateX(-50%);}
  }

  /* ===== DESTINATIONS (flags grid) ===== */
  .dest-grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:18px;
  }
  .dest-card{
    background:var(--white);
    border-radius:20px;
    padding:26px 18px 22px;
    text-align:center;
    border:1px solid var(--line);
    position:relative;
    transition:transform .25s ease, box-shadow .25s ease;
    overflow:hidden;
  }
  .dest-card:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 36px -12px rgba(0,1,51,0.18);
  }
  .dest-card.featured{
    background:var(--navy);
    color:var(--white);
    border-color:var(--navy);
  }
  .dest-card.featured .dest-pct-big{color:var(--pink);}
  .dest-card.featured .dest-name-big{color:var(--white);}
  .dest-card.featured .dest-meta{color:#A9A6BF;}
  .dest-flag{
    width:64px;height:64px;
    border-radius:50%;
    margin:0 auto 14px;
    object-fit:cover;
    box-shadow:0 8px 16px -4px rgba(0,1,51,0.18);
  }
  .dest-pct-big{
    font-family:'Baloo 2',sans-serif;
    font-weight:800;
    font-size:36px;
    color:var(--pink-dark);
    line-height:1;
    margin-bottom:6px;
  }
  .dest-name-big{
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:16px;
    color:var(--navy);
    margin-bottom:2px;
  }
  .dest-meta{
    font-size:11.5px;
    color:var(--grey);
    font-weight:500;
  }
  .dest-rank{
    position:absolute;
    top:12px; left:14px;
    font-family:'Baloo 2',sans-serif;
    font-weight:800;
    font-size:11px;
    color:var(--grey);
    opacity:0.6;
  }
  .dest-card.featured .dest-rank{color:rgba(255,255,255,0.4);}

  /* ===== PROCESS ===== */
  .process-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
  .process-step{
    background:var(--white);
    border-radius:24px;
    padding:32px 28px;
  }
  .process-num-badge{
    width:46px;height:46px;
    border-radius:14px;
    background:var(--pink);
    color:var(--navy);
    font-family:'Baloo 2',sans-serif;
    font-weight:800;
    font-size:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:18px;
  }
  .process-step h4{font-size:19px; margin-bottom:10px;}
  .process-step p{font-size:14.5px; color:var(--grey); line-height:1.65;}

  /* ===== PLANS ===== */
  .plans-section{scroll-margin-top:90px;}
  .plans-grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:20px;
    align-items:stretch;
  }
  .plan-card{
    background:var(--white);
    border:2px solid var(--line);
    border-radius:20px;
    padding:28px 22px 26px;
    display:flex;
    flex-direction:column;
  }
  .plan-card.is-featured{
    border-color:var(--pink);
    box-shadow:0 14px 30px -16px rgba(255,120,192,.45);
    position:relative;
  }
  .plan-card.is-featured::before{
    content:'Más elegido';
    position:absolute;
    top:-13px; left:50%;
    transform:translateX(-50%);
    background:var(--pink);
    color:var(--navy);
    font-family:'Baloo 2',sans-serif;
    font-weight:800;
    font-size:12px;
    padding:5px 14px;
    border-radius:999px;
    white-space:nowrap;
  }
  .plan-head{text-align:center; margin-bottom:18px;}
  .plan-eyebrow{
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:18px;
    color:var(--navy);
    line-height:1.25;
  }
  .plan-name{
    font-family:'Baloo 2',sans-serif;
    font-weight:800;
    font-size:21px;
    line-height:1.25;
  }
  .plan-name.mint{color:var(--mint-dark);}
  .plan-name.mustard{color:var(--mustard);}
  .plan-name.pink{color:var(--pink-dark);}
  .plan-features{
    list-style:none;
    margin:0 0 20px;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:11px;
    flex-grow:1;
  }
  .plan-features li{
    display:flex;
    align-items:flex-start;
    gap:9px;
    font-size:13.5px;
    line-height:1.4;
    color:var(--navy);
  }
  .plan-features li .ico{
    flex-shrink:0;
    width:18px;height:18px;
    margin-top:1px;
  }
  .plan-features li.no{color:var(--grey);}
  .plan-features .help{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:15px;height:15px;
    border-radius:50%;
    background:var(--navy);
    color:var(--white);
    font-size:9.5px;
    font-weight:700;
    flex-shrink:0;
    margin-left:2px;
    cursor:default;
  }
  .plan-price{
    text-align:center;
    font-family:'Baloo 2',sans-serif;
    font-weight:800;
    font-size:27px;
    color:var(--navy);
    margin-bottom:16px;
  }

  /* ===== CURRENCY SWITCHER (sin JS) ===== */
  .curr-radio{position:absolute; opacity:0; width:0; height:0; pointer-events:none;}
  .curr-tabs{display:flex; gap:8px; justify-content:center; flex-wrap:wrap; margin-bottom:28px;}
  .curr-tab{
    padding:8px 20px;
    border-radius:20px;
    background:var(--white);
    border:1px solid var(--line);
    font-weight:600;
    font-size:13.5px;
    cursor:pointer;
    color:var(--navy);
    transition:background .2s ease, color .2s ease;
  }
  #curr-cl:checked ~ .curr-tabs label[for="curr-cl"],
  #curr-pe:checked ~ .curr-tabs label[for="curr-pe"],
  #curr-mx:checked ~ .curr-tabs label[for="curr-mx"],
  #curr-co:checked ~ .curr-tabs label[for="curr-co"]{
    background:var(--navy); color:#fff; border-color:var(--navy);
  }
  .plan-price span{display:none;}
  #curr-cl:checked ~ .plans-grid .p-cl,
  #curr-pe:checked ~ .plans-grid .p-pe,
  #curr-mx:checked ~ .plans-grid .p-mx,
  #curr-co:checked ~ .plans-grid .p-co{display:inline;}
  .plan-card .btn{width:100%; font-size:14.5px; padding:14px 18px;}
  .plan-microcopy{
    font-size:11.5px;
    color:var(--grey);
    text-align:center;
    line-height:1.5;
    margin-top:14px;
  }
  .plan-microcopy strong{color:var(--navy);}
  .plans-footnote{
    text-align:center;
    color:var(--grey);
    font-size:13.5px;
    margin-top:30px;
  }
  @media(max-width:980px){
    .plans-grid{
      grid-template-columns:none;
      grid-auto-flow:column;
      grid-auto-columns:78%;
      overflow-x:auto;
      scroll-snap-type:x mandatory;
      scroll-behavior:smooth;
      gap:16px;
      padding-bottom:6px;
      -webkit-overflow-scrolling:touch;
      scrollbar-width:none;
    }
    .plans-grid::-webkit-scrollbar{display:none;}
    .plan-card{scroll-snap-align:start;}
    .plan-card.is-featured{order:0;}
  }
  @media(max-width:560px){
    .plans-grid{grid-auto-columns:84%;}
  }

  /* ===== FAQ ===== */
  #faq{scroll-margin-top:90px;}
  .faq-section{max-width:760px; margin:0 auto;}
  .faq-item{border-bottom:2px solid var(--line);}
  .faq-q{
    width:100%;
    text-align:left;
    background:none;
    border:none;
    padding:22px 4px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    cursor:pointer;
    font-family:'Baloo 2',sans-serif;
    font-weight:700;
    font-size:16.5px;
    color:var(--navy);
    gap:20px;
  }
  .faq-q .plus{
    flex-shrink:0;
    width:30px;height:30px;
    border-radius:10px;
    background:var(--cream);
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    transition:transform .25s ease, background .25s ease;
  }
  .faq-q .plus::before,.faq-q .plus::after{content:""; position:absolute; background:var(--navy); transition:transform .25s ease, background .25s ease;}
  .faq-q .plus::before{width:12px;height:2px;}
  .faq-q .plus::after{width:2px;height:12px;}
  .faq-item[open] .plus{background:var(--pink);}
  .faq-item[open] .plus::before,.faq-item[open] .plus::after{background:var(--navy);}
  .faq-item[open] .plus::after{transform:rotate(90deg) scaleY(0);}
  .faq-q{list-style:none;}
  .faq-q::-webkit-details-marker{display:none;}
  .faq-q::marker{content:"";}
  .faq-a-inner{padding:0 4px 22px; font-size:14.5px; color:var(--grey); line-height:1.7; max-width:640px;}

  /* ===== FINAL CTA ===== */
  .final-cta{
    background:var(--navy);
    border-radius:36px;
    margin:0 28px;
    text-align:center;
    padding:80px 40px 70px;
    position:relative;
    overflow:hidden;
  }
  .final-cta::before{
    content:"";
    position:absolute;
    top:-140px; left:50%;
    transform:translateX(-50%);
    width:480px; height:480px;
    background:radial-gradient(circle, rgba(255,120,192,0.22), transparent 70%);
  }
  .final-cta h2{
    color:var(--white);
    font-size:clamp(28px,4.2vw,46px);
    max-width:680px;
    margin:16px auto 18px;
    position:relative; z-index:1;
  }
  .final-cta p.sub{
    color:#C2BFD6;
    font-size:17px;
    max-width:520px;
    margin:0 auto 32px;
    position:relative; z-index:1;
    font-weight:500;
  }
  .final-cta .btn, .final-cta .microcopy, .final-cta .eyebrow{position:relative; z-index:1;}
  .urgency-pill{
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:rgba(246,172,45,0.18);
    color:var(--mustard);
    font-size:13px;
    font-weight:700;
    padding:8px 16px;
    border-radius:30px;
    margin-bottom:24px;
  }
  .final-cta .microcopy{color:#C2BFD6;}

  /* ===== ELEMENTOS GRÁFICOS DE MARCA (estilo Instagram Nexstep) ===== */
  .brand-asterisk{
    position:absolute;
    pointer-events:none;
    animation:slowSpin 24s linear infinite;
    z-index:0;
  }
  .brand-asterisk svg{width:100%;height:100%;display:block;}

  .ig-ticket{
    position:absolute;
    display:inline-flex;
    flex-direction:column;
    border:2px solid var(--pink);
    border-radius:8px;
    overflow:hidden;
    font-family:'Baloo 2',sans-serif;
    transform:rotate(-8deg);
    background:transparent;
    pointer-events:auto;
    z-index:2;
  }
  .ig-ticket-top{
    color:var(--pink);
    font-weight:700;
    font-size:14px;
    letter-spacing:0.18em;
    padding:8px 16px 6px;
    text-align:center;
    border-bottom:2px dashed var(--pink);
  }
  .ig-ticket-bot{
    color:var(--pink);
    font-weight:600;
    font-size:11.5px;
    letter-spacing:0.05em;
    padding:6px 16px 8px;
    text-align:center;
    display:flex;align-items:center;justify-content:center;gap:6px;
  }
  .ig-ticket:hover{transform:rotate(-4deg) scale(1.04); transition:transform .25s ease;}

  .brand-plane{
    position:absolute;
    pointer-events:none;
    opacity:0.18;
    z-index:0;
  }
  .brand-plane svg{width:100%;height:100%;display:block;}

  /* ===== FOOTER ===== */
  footer{padding:50px 0 30px;}
  .foot-grid{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px;}
  .foot-logo{font-family:'Baloo 2',sans-serif; font-weight:800; font-size:20px;}
  .foot-logo-img{height:24px; width:auto; display:block;}
  .foot-links{display:flex; gap:26px; font-size:13.5px; color:var(--grey); font-weight:600;}
  .foot-copy{font-size:12.5px; color:var(--grey); margin-top:30px; text-align:center;}

  /* ===== STICKY MOBILE CTA ===== */
  .sticky-cta{
    position:fixed;
    bottom:0;left:0;right:0;
    background:var(--white);
    padding:14px 20px;
    z-index:90;
    display:none;
    box-shadow:0 -10px 30px -10px rgba(0,1,51,0.18);
  }
  .sticky-cta .btn{width:100%;}

  /* ===== REVEAL =====
     Desactivado: GHL no ejecuta el <script> inline que agrega la clase .in,
     dejando el contenido en opacity:0 (secciones en blanco). Se muestra directo. */
  .reveal{opacity:1; transform:none;}
  .reveal.in{opacity:1; transform:none;}

  /* ===== RESPONSIVE ===== */
  @media(max-width:980px){
    /* Compactar secciones en mobile para eliminar vacíos */
    .section{padding:48px 0;}
    .section-tight{padding:32px 0;}
    .advisor-section{padding:48px 0;}
    .section-head{margin-bottom:24px;}
    /* Desactivar reveal en mobile: en Safari iOS el IntersectionObserver
       a veces no dispara correctamente, dejando contenido en opacity:0.
       Mostrar directo evita "espacios vacíos" durante el scroll. */
    .reveal{opacity:1 !important; transform:none !important;}
    .hero{padding:100px 0 24px;}
    .hero-grid{grid-template-columns:1fr; gap:32px;}
    .hero-visual{order:-1; min-height:auto; padding:24px 0 30px;}
    .hero-card-stack{max-width:340px;}
    .hero-blob-bg{width:90px; height:90px; top:-30px; right:-20px;}
    .hero-blob-text{width:80px; height:80px; bottom:-30px; right:-15px;}
    .pill-bl{bottom:-15px; left:-15px;}
    .hero h1{font-size:clamp(30px, 7vw, 38px);}
    .pain-grid{grid-template-columns:1fr;}
    .eval-grid{grid-template-columns:1fr; gap:36px;}
    .stats-grid{grid-template-columns:repeat(2,1fr); gap:0;}
    .stats-grid > div{border-right:none; border-bottom:1px solid rgba(255,255,255,0.10); padding:24px 14px;}
    .stats-grid > div:nth-child(odd){border-right:1px solid rgba(255,255,255,0.10);}
    .stats-grid > div:nth-last-child(-n+2){border-bottom:none;}
    .stats-grid > div:last-child{grid-column:1 / -1;}
    .stats-grid > div:nth-last-child(2){border-right:none;}
    .process-grid{grid-template-columns:1fr; gap:18px;}
    .dest-grid{grid-template-columns:repeat(2, 1fr); gap:12px;}
    .dest-card{padding:22px 14px 18px;}
    .dest-flag{width:54px;height:54px;}
    .dest-pct-big{font-size:30px;}
    .eval-section{margin:0 16px; padding:40px 24px;}
    .eval-stat-row{grid-template-columns:1fr 1fr; gap:16px;}
    .final-cta{margin:0 16px; padding:60px 26px 54px; border-radius:28px;}
    .advisor-card{grid-template-columns:1fr; border-radius:24px;}
    .advisor-photo{min-height:360px;}
    .advisor-avatar{width:135px; height:135px;}
    .advisor-avatars{gap:16px;}
    .advisor-content{padding:32px 26px 38px;}
    .press-track{grid-auto-columns:82%; gap:14px;}
    .uni-logos-section{padding:26px 0;}
    .uni-logos-track{gap:38px; animation-duration:26s;}
    .uni-logos-track img{height:26px;}
    .nav .btn{padding:10px 16px; font-size:13px;}
    .nav-links{display:none;}
    .nav-toggle{display:flex;}
    .nav-links-mobile{display:flex;}
    .uni-row{font-size:14px; gap:12px 18px;}
    .sticky-cta{display:block;}
    body{padding-bottom:78px;}
  }
  @media(max-width:560px){
    .hero-pill{font-size:11.5px; padding:9px 12px;}
    /* CRO mobile: el bloque de conversión final debe estar libre de ruido.
       Ocultamos todos los decorativos en pantallas pequeñas para que el
       foco quede 100% en el CTA y el microcopy de confianza. */
    .final-cta .brand-asterisk,
    .final-cta .brand-plane,
    .final-cta .ig-ticket{display:none;}
  }
