
:root{--navy:#063a69;--navy2:#082f52;--blue:#0877bd;--cyan:#16b9d4;--pink:#e7267a;--orange:#f47c20;--green:#3e9f59;--ink:#11263a;--muted:#5c6d7d;--line:#dce6ee;--surface:#f5f9fc;--white:#fff;--container:1200px;--shadow:0 22px 55px rgba(6,58,105,.14);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button{font:inherit}.container{width:min(calc(100% - 40px),var(--container));margin:auto}.section{padding:clamp(70px,8vw,115px) 0}.soft{background:var(--surface)}.dark{color:#fff;background:radial-gradient(circle at 90% 0%,rgba(22,185,212,.18),transparent 30rem),linear-gradient(145deg,#052e50,#063a69 60%,#074d7d)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:13px;color:var(--blue);font-size:.76rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.eyebrow:before{content:"";width:24px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--pink),var(--cyan))}.title{max-width:850px;margin:0;font-size:clamp(2rem,5vw,3.65rem);font-weight:900;line-height:1.01;letter-spacing:-.05em}.copy{max-width:780px;margin:18px 0 0;color:var(--muted);font-size:clamp(1rem,1.6vw,1.15rem)}.kicker{font-size:.82rem;font-weight:850;color:var(--blue);text-transform:uppercase;letter-spacing:.08em}.note{margin-top:18px;border-left:4px solid var(--orange);padding:13px 16px;border-radius:0 13px 13px 0;color:#5d5360;background:#fff6ee;font-size:.88rem}.good-note{border-left-color:var(--green);background:#f0faf3;color:#355b41}
.btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:13px 22px;font-weight:850;transition:.2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--pink),#c7166b);box-shadow:0 12px 28px rgba(231,38,122,.27)}.btn-blue{color:#fff;background:linear-gradient(135deg,var(--blue),var(--navy))}.btn-ghost{border:1px solid #bdd1e0;color:var(--navy)}.btn-white{color:var(--navy);background:#fff}.announcement{color:#fff;background:linear-gradient(90deg,var(--navy2),var(--blue));font-size:.8rem}.announcement .container{min-height:38px;display:flex;align-items:center;justify-content:center;gap:20px;text-align:center}header{position:sticky;top:0;z-index:60;border-bottom:1px solid rgba(6,58,105,.08);background:rgba(255,255,255,.94);backdrop-filter:blur(16px)}.header{min-height:76px;display:flex;align-items:center;gap:19px}.brand img{width:154px}.nav{display:flex;align-items:center;gap:1px;margin-left:auto}.nav a{padding:10px 9px;border-radius:999px;font-size:.84rem;font-weight:740;color:#294459;white-space:nowrap}.nav a:hover,.nav a.active{color:var(--blue);background:#f0f7fb}.menu{display:none;width:46px;height:46px;border:0;border-radius:13px;background:#eef6fa;color:var(--navy)}
.page-hero{position:relative;overflow:hidden;padding:clamp(68px,8vw,110px) 0;background:radial-gradient(circle at 85% 12%,rgba(22,185,212,.17),transparent 27rem),linear-gradient(180deg,#fff,#f5fbfe)}.page-hero h1{margin:0;max-width:880px;color:var(--navy);font-size:clamp(3rem,7vw,6rem);font-weight:950;line-height:.92;letter-spacing:-.065em}.page-hero h1 span{display:block;color:transparent;background:linear-gradient(100deg,var(--blue),var(--cyan) 45%,var(--pink));-webkit-background-clip:text;background-clip:text}.hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:clamp(38px,6vw,76px)}.hero-image{overflow:hidden;border:1px solid rgba(6,58,105,.1);border-radius:30px;background:#fff;box-shadow:0 30px 80px rgba(6,58,105,.16)}.hero-image img{width:100%;min-height:280px;object-fit:cover}.actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:22px;padding:28px;background:#fff}.card h3{margin:0 0 8px;font-size:1.15rem}.card p{margin:0;color:var(--muted);font-size:.92rem}.card .num{display:inline-grid;place-items:center;width:38px;height:38px;margin-bottom:24px;border-radius:12px;background:#eaf7fd;color:var(--blue);font-size:.78rem;font-weight:900}.band{border-radius:30px;padding:clamp(40px,6vw,66px);color:#fff;background:radial-gradient(circle at 100% 0%,rgba(231,38,122,.28),transparent 26rem),linear-gradient(135deg,#052f51,#063a69);box-shadow:var(--shadow)}.band h2{margin:0;font-size:clamp(2.1rem,5vw,4rem);line-height:.96;letter-spacing:-.055em}.band p{max-width:760px;color:rgba(255,255,255,.72)}
.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}.stat{border:1px solid var(--line);border-radius:18px;padding:22px;background:#fff}.stat strong{display:block;color:var(--blue);font-size:2.1rem;line-height:1;letter-spacing:-.04em}.stat span{display:block;margin-top:7px;color:var(--muted);font-size:.82rem}.pricegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:32px}.price{border:1px solid var(--line);border-radius:24px;padding:30px;background:#fff}.price.featured{border-color:#acd7e9;box-shadow:var(--shadow)}.price h3{margin:0}.price strong{display:block;margin:15px 0;color:var(--navy);font-size:3rem;letter-spacing:-.05em}.price ul{padding-left:20px;color:var(--muted)}.tag{display:inline-flex;border-radius:999px;padding:7px 10px;background:#eaf7fd;color:var(--blue);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.list{display:grid;gap:12px;margin-top:28px}.list-item{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;border:1px solid var(--line);border-radius:17px;padding:18px;background:#fff}.list-item h3{margin:0;font-size:1rem}.list-item p{margin:3px 0 0;color:var(--muted);font-size:.82rem}.brandtags{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.brandtag{border:1px solid #cfe1eb;border-radius:999px;padding:9px 12px;background:#fff;color:#33546b;font-size:.83rem;font-weight:760}.logogrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.logo-card{min-height:180px;display:grid;place-items:center;border:1px solid var(--line);border-radius:18px;padding:15px;background:#fff}.logo-card img{width:100%;height:150px;object-fit:contain}
.hotelgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:35px}.hotelcard{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fff}.hotelcard img{width:100%;height:230px;object-fit:cover}.hotelbody{padding:24px}.hotelbody h3{margin:0;font-size:1.35rem}.hotelprice{display:block;margin:8px 0;color:var(--blue);font-size:1.25rem;font-weight:900}.services{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0}.service{padding:6px 9px;border-radius:999px;background:#f0f7fb;color:#466276;font-size:.72rem}.hotelbody .actions{margin-top:17px}
.packages{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}.package{border:1px solid var(--line);border-radius:20px;padding:24px;background:#fff}.package h3{margin:0}.package strong{display:block;margin-top:13px;color:var(--blue);font-size:2rem}.package small{color:var(--muted)}.contactgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.contactcard{border:1px solid var(--line);border-radius:20px;padding:25px;background:#fff}.contactcard h3{margin:0 0 8px}.contactcard p{color:var(--muted)}.faqitem{border-bottom:1px solid var(--line)}.faqbtn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;border:0;padding:20px 0;background:transparent;color:var(--ink);text-align:left;font-weight:850;cursor:pointer}.faqanswer{max-height:0;overflow:hidden;color:var(--muted);transition:max-height .28s ease}.faqanswer p{margin:0;padding:0 30px 20px 0}
.footer{margin-top:80px;color:rgba(255,255,255,.7);background:#052942}.footgrid{display:grid;grid-template-columns:1.2fr repeat(3,.8fr);gap:40px;padding:55px 0 42px}.footgrid img{width:170px}.footgrid p,.footgrid a{color:rgba(255,255,255,.6);font-size:.86rem}.footgrid ul{list-style:none;padding:0;display:grid;gap:8px}.footgrid h3{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.copyright{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.1);font-size:.77rem;color:rgba(255,255,255,.45)}
.scroll-progress{position:fixed;top:0;left:0;z-index:120;width:100%;height:3px;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--cyan),var(--blue),var(--pink),var(--orange))}.motion-ready [data-reveal]{will-change:transform,opacity}.motion-card{--mx:50%;--my:50%;position:relative;isolation:isolate}.motion-card:after{content:"";position:absolute;inset:0;z-index:-1;opacity:0;pointer-events:none;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(22,185,212,.10),transparent 48%);transition:opacity .2s ease}.motion-card:hover:after{opacity:1}.wa{position:fixed;right:18px;bottom:18px;z-index:40;width:56px;height:56px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#25d366;box-shadow:0 12px 30px rgba(24,134,73,.32);font-weight:900}
@media(max-width:1100px){.nav{display:none}.menu{display:block;margin-left:auto}header.open .nav{position:absolute;top:100%;left:0;right:0;display:grid;padding:15px 20px 22px;background:#fff;box-shadow:0 20px 35px rgba(6,58,105,.1)}.hero-grid{grid-template-columns:1fr}.grid4,.statgrid,.packages{grid-template-columns:repeat(2,1fr)}.grid3,.contactgrid{grid-template-columns:1fr}.footgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.container{width:min(calc(100% - 30px),var(--container))}.brand img{width:138px}.section{padding:65px 0}.page-hero{padding:58px 0}.page-hero h1{font-size:clamp(3rem,13vw,5rem)}.actions{display:grid}.actions .btn{width:100%}.grid4,.grid2,.statgrid,.pricegrid,.packages,.logogrid,.hotelgrid{grid-template-columns:1fr}.footgrid{grid-template-columns:1fr}.copyright{align-items:flex-start;flex-direction:column;padding:18px 0 22px}.hotelcard img{height:200px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.scroll-progress{display:none}[data-reveal]{opacity:1!important;transform:none!important}}


/* =========================================================
   REFINAMIENTO VISUAL + MOBILE UX
   ========================================================= */
body{
  text-wrap:pretty;
}
h1,h2,h3{
  text-wrap:balance;
}
p{
  text-wrap:pretty;
}
.container{
  padding-inline:max(0px,env(safe-area-inset-left));
}
.page-hero{
  isolation:isolate;
}
.page-hero:after{
  content:"";
  position:absolute;
  inset:auto -8% -32% auto;
  width:420px;
  aspect-ratio:1;
  border-radius:50%;
  border:1px solid rgba(8,119,189,.08);
  box-shadow:
    0 0 0 42px rgba(22,185,212,.035),
    0 0 0 92px rgba(231,38,122,.025);
  pointer-events:none;
  z-index:-1;
}
.hero-grid > div:first-child{
  max-width:760px;
}
.copy{
  line-height:1.7;
}
.card,
.price,
.package,
.contactcard,
.hotelcard,
.list-item,
.logo-card{
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}
.card:hover,
.price:hover,
.package:hover,
.contactcard:hover,
.hotelcard:hover,
.list-item:hover,
.logo-card:hover{
  border-color:#bfd8e8;
  box-shadow:0 18px 40px rgba(6,58,105,.10);
}
.section-header{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:34px;
}
.section-header .copy{
  max-width:620px;
  margin:0;
}
.facts-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.fact-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  border:1px solid #cfe1eb;
  border-radius:999px;
  background:rgba(255,255,255,.8);
  color:#31526b;
  font-size:.79rem;
  font-weight:760;
}
.fact-pill:before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--cyan),var(--pink));
  flex:0 0 auto;
}
.mobile-quickbar{
  display:none;
}

@media(max-width:900px){
  .section-header{
    display:block;
  }
  .section-header .copy{
    margin-top:16px;
  }
  .page-hero:after{
    width:300px;
    right:-120px;
    bottom:-120px;
  }
}

@media(max-width:720px){
  html{
    scroll-padding-top:78px;
  }
  body{
    padding-bottom:74px;
  }
  .announcement{
    font-size:.72rem;
  }
  .announcement .container{
    min-height:34px;
    gap:8px;
    padding-top:6px;
    padding-bottom:6px;
    flex-direction:column;
    line-height:1.2;
  }
  .header{
    min-height:66px;
  }
  .brand img{
    width:126px;
  }
  .menu{
    width:44px;
    height:44px;
    font-size:1.15rem;
  }
  header.open .nav{
    max-height:calc(100vh - 100px);
    overflow:auto;
    overscroll-behavior:contain;
    padding:
      12px
      max(15px,env(safe-area-inset-right))
      max(18px,env(safe-area-inset-bottom))
      max(15px,env(safe-area-inset-left));
  }
  header.open .nav a{
    min-height:48px;
    display:flex;
    align-items:center;
    border-radius:14px;
    padding:12px 14px;
    font-size:.94rem;
  }
  .page-hero{
    padding:44px 0 50px;
  }
  .page-hero h1{
    font-size:clamp(2.55rem,12.5vw,4.4rem);
    line-height:.94;
    letter-spacing:-.055em;
  }
  .page-hero .copy{
    font-size:1rem;
    line-height:1.62;
  }
  .hero-grid{
    gap:28px;
  }
  .hero-image{
    border-radius:22px;
    box-shadow:0 20px 50px rgba(6,58,105,.13);
  }
  .hero-image img{
    min-height:220px;
    max-height:320px;
  }
  .section{
    padding:56px 0;
  }
  .title{
    font-size:clamp(2rem,9.2vw,3rem);
    line-height:1.02;
  }
  .copy{
    font-size:.97rem;
    line-height:1.65;
  }
  .grid2,
  .grid3,
  .grid4,
  .statgrid,
  .pricegrid,
  .packages,
  .logogrid,
  .hotelgrid,
  .contactgrid{
    gap:14px;
  }
  .card,
  .price,
  .package,
  .contactcard{
    padding:22px;
    border-radius:19px;
  }
  .card .num{
    margin-bottom:18px;
  }
  .card h3{
    font-size:1.08rem;
  }
  .card p{
    font-size:.88rem;
    line-height:1.55;
  }
  .stat{
    padding:19px;
  }
  .stat strong{
    font-size:1.8rem;
  }
  .price strong{
    font-size:2.45rem;
  }
  .price ul{
    padding-left:18px;
    margin-block:14px 18px;
  }
  .price li + li{
    margin-top:6px;
  }
  .band{
    border-radius:22px;
    padding:30px 22px;
  }
  .band h2{
    font-size:clamp(2rem,9vw,3rem);
  }
  .band p{
    font-size:.94rem;
    line-height:1.6;
  }
  .brandtags{
    gap:7px;
  }
  .brandtag{
    font-size:.76rem;
    padding:8px 10px;
  }
  .hotelcard{
    border-radius:20px;
  }
  .hotelcard img{
    height:180px;
  }
  .hotelbody{
    padding:20px;
  }
  .hotelbody h3{
    font-size:1.18rem;
  }
  .hotelprice{
    font-size:1.12rem;
  }
  .services{
    gap:6px;
  }
  .service{
    padding:6px 8px;
    font-size:.68rem;
  }
  .list-item{
    grid-template-columns:1fr;
    align-items:start;
    padding:16px;
  }
  .list-item > :last-child{
    justify-self:start;
    color:var(--blue);
  }
  .faqbtn{
    min-height:58px;
    font-size:.95rem;
    line-height:1.35;
  }
  .faqanswer p{
    padding-right:0;
    font-size:.9rem;
    line-height:1.6;
  }
  .note{
    padding:12px 14px;
    font-size:.82rem;
    line-height:1.55;
  }
  .actions{
    gap:9px;
    margin-top:22px;
  }
  .btn{
    min-height:48px;
    padding:12px 18px;
    font-size:.9rem;
  }
  .footer{
    margin-top:58px;
  }
  .footgrid{
    padding:42px 0 30px;
    gap:26px;
  }
  .copyright{
    font-size:.72rem;
  }
  .wa{
    right:14px;
    bottom:86px;
    width:52px;
    height:52px;
  }
  .mobile-quickbar{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:55;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:
      8px
      max(10px,env(safe-area-inset-right))
      max(8px,env(safe-area-inset-bottom))
      max(10px,env(safe-area-inset-left));
    border-top:1px solid rgba(6,58,105,.10);
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(16px);
    box-shadow:0 -12px 30px rgba(6,58,105,.09);
  }
  .mobile-quickbar a{
    min-height:46px;
    display:grid;
    place-items:center;
    border-radius:13px;
    text-align:center;
    font-size:.8rem;
    font-weight:850;
  }
  .mobile-quickbar a:first-child{
    color:#fff;
    background:linear-gradient(135deg,var(--pink),#c7166b);
  }
  .mobile-quickbar a:last-child{
    color:var(--navy);
    background:#eaf4fa;
  }
}

@media(max-width:390px){
  .container{
    width:min(calc(100% - 24px),var(--container));
  }
  .page-hero h1{
    font-size:2.45rem;
  }
  .eyebrow{
    font-size:.69rem;
    letter-spacing:.09em;
  }
  .title{
    font-size:1.9rem;
  }
  .btn{
    width:100%;
  }
  .fact-pill{
    width:100%;
    border-radius:14px;
  }
}


/* =========================================================
   SPONSORS + FAQ — ENHANCED VISUAL SYSTEM
   ========================================================= */
.sponsor-hero{
  position:relative;
  overflow:hidden;
}
.sponsor-hero .hero-orb{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  filter:blur(1px);
  opacity:.7;
}
.sponsor-hero .hero-orb.one{
  width:210px;height:210px;right:8%;top:16%;
  background:radial-gradient(circle,rgba(231,38,122,.24),rgba(231,38,122,0) 68%);
}
.sponsor-hero .hero-orb.two{
  width:260px;height:260px;right:22%;bottom:-110px;
  background:radial-gradient(circle,rgba(22,185,212,.22),rgba(22,185,212,0) 68%);
}
.sponsor-highlight{
  margin-top:34px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.sponsor-highlight .highlight{
  border:1px solid rgba(8,119,189,.12);
  border-radius:18px;
  padding:18px;
  background:rgba(255,255,255,.74);
  backdrop-filter:blur(8px);
}
.sponsor-highlight strong{
  display:block;
  color:var(--navy);
  font-size:1.4rem;
  line-height:1;
}
.sponsor-highlight span{
  display:block;
  margin-top:7px;
  color:var(--muted);
  font-size:.78rem;
}
.sponsor-packages{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:36px;
  align-items:stretch;
}
.sponsor-tier{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:355px;
  border:1px solid rgba(6,58,105,.12);
  border-radius:26px;
  padding:26px;
  background:#fff;
  box-shadow:0 14px 34px rgba(6,58,105,.08);
}
.sponsor-tier:before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:7px;
  background:var(--tier-gradient,linear-gradient(90deg,var(--blue),var(--cyan)));
}
.sponsor-tier.gold{
  --tier-gradient:linear-gradient(90deg,#d6a928,#f1d376,#b9810d);
  background:
    radial-gradient(circle at 100% 0%,rgba(243,205,91,.22),transparent 42%),
    #fffdf7;
}
.sponsor-tier.silver{
  --tier-gradient:linear-gradient(90deg,#71808b,#c7d0d6,#8293a0);
  background:
    radial-gradient(circle at 100% 0%,rgba(143,160,171,.16),transparent 42%),
    #fbfcfd;
}
.sponsor-tier.premium{
  --tier-gradient:linear-gradient(90deg,var(--pink),#ad1a65,var(--orange));
  background:
    radial-gradient(circle at 100% 0%,rgba(231,38,122,.12),transparent 42%),
    #fffafd;
}
.sponsor-tier.basic{
  --tier-gradient:linear-gradient(90deg,var(--blue),var(--cyan));
  background:
    radial-gradient(circle at 100% 0%,rgba(22,185,212,.13),transparent 42%),
    #fafdff;
}
.tier-label{
  display:inline-flex;
  align-self:flex-start;
  margin-bottom:22px;
  border-radius:999px;
  padding:7px 10px;
  color:#294459;
  background:rgba(255,255,255,.8);
  border:1px solid rgba(6,58,105,.09);
  font-size:.69rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.sponsor-tier h3{
  margin:0;
  font-size:1.32rem;
}
.sponsor-tier .tier-price{
  margin:10px 0 6px;
  color:var(--navy);
  font-size:2.65rem;
  font-weight:950;
  letter-spacing:-.06em;
}
.sponsor-tier .tier-copy{
  min-height:48px;
  margin:0;
  color:var(--muted);
  font-size:.85rem;
}
.sponsor-tier ul{
  display:grid;
  gap:10px;
  margin:22px 0 25px;
  padding:0;
  list-style:none;
}
.sponsor-tier li{
  display:flex;
  gap:9px;
  color:#476073;
  font-size:.82rem;
}
.sponsor-tier li:before{
  content:"✓";
  color:var(--green);
  font-weight:950;
}
.sponsor-tier .btn{
  width:100%;
  margin-top:auto;
}
.sponsor-journey{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  margin-top:38px;
}
.sponsor-journey:before{
  content:"";
  position:absolute;
  top:27px;
  left:8%;
  right:8%;
  height:2px;
  background:linear-gradient(90deg,var(--cyan),var(--blue),var(--pink),var(--orange));
  opacity:.35;
}
.journey-step{
  position:relative;
  z-index:1;
  padding:0 18px;
  text-align:center;
}
.journey-icon{
  width:56px;height:56px;
  display:grid;
  place-items:center;
  margin:0 auto 15px;
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg,var(--blue),var(--cyan));
  box-shadow:0 10px 28px rgba(8,119,189,.2);
  font-weight:950;
}
.journey-step:nth-child(2) .journey-icon{background:linear-gradient(135deg,var(--pink),#bb1766)}
.journey-step:nth-child(3) .journey-icon{background:linear-gradient(135deg,var(--orange),#e65a1e)}
.journey-step:nth-child(4) .journey-icon{background:linear-gradient(135deg,var(--navy),var(--blue))}
.journey-step h3{
  margin:0 0 6px;
  font-size:1rem;
}
.journey-step p{
  margin:0;
  color:var(--muted);
  font-size:.8rem;
}
.sponsor-cta-panel{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  align-items:center;
  gap:28px;
  border-radius:28px;
  padding:clamp(30px,5vw,54px);
  color:#fff;
  background:
    radial-gradient(circle at 100% 0%,rgba(244,124,32,.28),transparent 22rem),
    radial-gradient(circle at 0% 100%,rgba(22,185,212,.16),transparent 24rem),
    linear-gradient(135deg,#052d4b,#063a69 60%,#084f80);
  box-shadow:0 24px 60px rgba(6,58,105,.18);
}
.sponsor-cta-panel h2{
  margin:0;
  font-size:clamp(2rem,4vw,3.2rem);
  letter-spacing:-.045em;
  line-height:1;
}
.sponsor-cta-panel p{
  margin:14px 0 0;
  color:rgba(255,255,255,.72);
}
.sponsor-cta-panel .actions{
  justify-content:flex-end;
  margin:0;
}

/* FAQ */
.faq-hero-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:center;
  gap:50px;
}
.faq-visual{
  position:relative;
  min-height:330px;
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 18%,rgba(231,38,122,.2),transparent 10rem),
    radial-gradient(circle at 20% 75%,rgba(22,185,212,.2),transparent 12rem),
    linear-gradient(135deg,#edf9fd,#f8fbfd);
  border:1px solid rgba(8,119,189,.10);
}
.faq-bubble{
  position:absolute;
  min-width:180px;
  max-width:250px;
  border:1px solid rgba(6,58,105,.10);
  border-radius:18px;
  padding:14px 16px;
  background:rgba(255,255,255,.9);
  box-shadow:0 16px 36px rgba(6,58,105,.10);
  color:#355368;
  font-size:.82rem;
  font-weight:780;
}
.faq-bubble.one{left:8%;top:16%;transform:rotate(-3deg)}
.faq-bubble.two{right:7%;top:42%;transform:rotate(3deg)}
.faq-bubble.three{left:16%;bottom:10%;transform:rotate(1deg)}
.faq-center{
  position:absolute;
  left:50%;top:50%;
  width:92px;height:92px;
  display:grid;
  place-items:center;
  transform:translate(-50%,-50%);
  border-radius:28px;
  color:#fff;
  background:linear-gradient(135deg,var(--blue),var(--pink));
  box-shadow:0 20px 45px rgba(8,119,189,.23);
  font-size:2rem;
  font-weight:950;
}
.faq-controls{
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  align-items:center;
  margin:0 0 28px;
}
.faq-search{
  min-height:54px;
  width:100%;
  border:1px solid #cbdde8;
  border-radius:16px;
  padding:0 17px;
  background:#fff;
  color:var(--ink);
  box-shadow:0 10px 28px rgba(6,58,105,.05);
}
.faq-search:focus{
  outline:0;
  border-color:var(--blue);
  box-shadow:0 0 0 4px rgba(8,119,189,.08);
}
.faq-filter{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.faq-filter button{
  min-height:42px;
  border:1px solid #cddde7;
  border-radius:999px;
  padding:9px 13px;
  color:#355368;
  background:#fff;
  cursor:pointer;
  font-size:.78rem;
  font-weight:850;
}
.faq-filter button.is-active{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--blue),var(--pink));
}
.faq-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.faq-card{
  border:1px solid var(--line);
  border-radius:20px;
  padding:0 18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(6,58,105,.045);
  transition:.22s ease;
}
.faq-card:hover{
  border-color:#b7d5e7;
  box-shadow:0 18px 42px rgba(6,58,105,.09);
}
.faq-card .faqbtn{
  gap:14px;
  min-height:72px;
  padding:17px 0;
}
.faq-card .faqbtn > span:first-child{
  display:flex;
  align-items:center;
  gap:10px;
}
.faq-icon{
  width:34px;height:34px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:var(--blue);
  background:#eaf7fd;
  font-size:.78rem;
  font-weight:900;
}
.faq-plus{
  width:32px;height:32px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:var(--blue);
  background:#edf6fb;
  transition:transform .22s ease,background .22s ease,color .22s ease;
}
.faq-card.open .faq-plus{
  transform:rotate(45deg);
  color:#fff;
  background:var(--pink);
}
.faq-card .faqanswer p{
  padding:0 0 20px 44px;
}
.faq-card[hidden]{
  display:none!important;
}
.faq-zero{
  display:none;
  margin-top:18px;
  border:1px dashed #bfd1df;
  border-radius:18px;
  padding:24px;
  color:var(--muted);
  background:#f9fcfd;
  text-align:center;
}
.faq-zero.is-visible{display:block}
.faq-help{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-top:34px;
}
.faq-help-card{
  border-radius:22px;
  padding:26px;
  color:#fff;
  background:linear-gradient(135deg,var(--navy),var(--blue));
}
.faq-help-card:nth-child(2){
  background:linear-gradient(135deg,#a8175d,var(--pink),var(--orange));
}
.faq-help-card h3{margin:0 0 8px;font-size:1.25rem}
.faq-help-card p{margin:0 0 18px;color:rgba(255,255,255,.76);font-size:.88rem}

@media(max-width:1050px){
  .sponsor-packages{grid-template-columns:repeat(2,1fr)}
  .faq-hero-grid{grid-template-columns:1fr}
  .faq-visual{min-height:290px}
}
@media(max-width:820px){
  .sponsor-highlight{grid-template-columns:1fr}
  .sponsor-journey{grid-template-columns:1fr 1fr;gap:26px 12px}
  .sponsor-journey:before{display:none}
  .sponsor-cta-panel{grid-template-columns:1fr}
  .sponsor-cta-panel .actions{justify-content:flex-start}
  .faq-controls{grid-template-columns:1fr}
  .faq-cards{grid-template-columns:1fr}
}
@media(max-width:720px){
  .sponsor-hero .hero-orb.one{right:-80px;top:10%;width:180px;height:180px}
  .sponsor-hero .hero-orb.two{right:20%;bottom:-100px;width:210px;height:210px}
  .sponsor-highlight{gap:9px;margin-top:24px}
  .sponsor-highlight .highlight{padding:15px;border-radius:15px}
  .sponsor-packages{grid-template-columns:1fr;gap:14px}
  .sponsor-tier{min-height:auto;padding:22px;border-radius:21px}
  .sponsor-tier .tier-copy{min-height:0}
  .sponsor-tier .tier-price{font-size:2.35rem}
  .sponsor-journey{grid-template-columns:1fr;gap:20px}
  .journey-step{display:grid;grid-template-columns:50px 1fr;text-align:left;gap:14px;padding:0}
  .journey-icon{width:50px;height:50px;margin:0;border-radius:15px;grid-row:1 / span 2}
  .journey-step h3{align-self:end}
  .journey-step p{align-self:start}
  .sponsor-cta-panel{padding:27px 22px;border-radius:22px}
  .faq-visual{min-height:250px;border-radius:22px}
  .faq-bubble{min-width:0;max-width:180px;padding:11px 12px;font-size:.72rem}
  .faq-bubble.one{left:5%;top:12%}
  .faq-bubble.two{right:4%;top:42%}
  .faq-bubble.three{left:10%;bottom:8%}
  .faq-center{width:76px;height:76px;border-radius:23px;font-size:1.55rem}
  .faq-filter{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:none}
  .faq-filter::-webkit-scrollbar{display:none}
  .faq-filter button{white-space:nowrap}
  .faq-card{padding:0 15px;border-radius:17px}
  .faq-card .faqbtn{min-height:66px;font-size:.91rem}
  .faq-icon{width:30px;height:30px;border-radius:10px}
  .faq-card .faqanswer p{padding:0 0 17px 40px;font-size:.86rem}
  .faq-help{grid-template-columns:1fr}
  .faq-help-card{padding:22px;border-radius:19px}
}
