/* All selectors are scoped to the VIP page. */
.vip-page .breadcrumbs { padding-bottom: 35px; }
.vip-hero { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:80px; padding:20px 0 78px; }
.vip-hero-copy .eyebrow { display:flex; align-items:center; gap:9px; margin-bottom:21px; }
.vip-spark { font-size:17px; line-height:1; }
.vip-hero-copy h1 { font-size:clamp(42px,4.4vw,63px); }
.vip-hero-copy > p:not(.eyebrow) { max-width:440px; color:var(--muted); font-size:16px; line-height:1.85; margin:25px 0 27px; }
.vip-hero .button { font-size:12px; }
.vip-card { position:relative; isolation:isolate; overflow:hidden; border-radius:18px; background:linear-gradient(125deg,#222 0%,#141414 62%,#292020 100%); color:white; padding:30px 33px 24px; box-shadow:0 17px 37px #00000017; transform:rotate(-3deg); }
.vip-card::before { content:''; z-index:-1; position:absolute; width:230px; height:230px; right:-110px; top:-95px; border:1px solid #ffffff1b; transform:rotate(35deg); box-shadow:0 0 0 33px #ffffff03,0 0 0 67px #ffffff03; }
.vip-card::after { content:''; position:absolute; left:0; bottom:0; width:100%; height:5px; background:var(--red); }
.vip-card-top { display:flex; align-items:center; justify-content:space-between; }
.vip-card-brand { font-size:24px; font-weight:700; letter-spacing:.08em; line-height:1; }
.vip-card-brand > span { display:block; font-size:7px; letter-spacing:.26em; margin-top:7px; }
.vip-card-star { color:#ff5555; font-size:33px; line-height:1; }
.vip-card-center { padding:34px 0 29px; }
.vip-card-caption { display:block; color:#c0bcbf; font-size:7px; letter-spacing:.17em; margin-bottom:7px; }
.vip-card-name { font-size:29px; font-weight:300; letter-spacing:-.035em; line-height:1.3; }
.vip-card-name strong { font-size:39px; margin-left:5px; letter-spacing:.025em; }
.vip-card-bottom { display:flex; align-items:center; justify-content:space-between; border-top:1px solid #ffffff26; padding-top:13px; font-size:7px; letter-spacing:.16em; color:#c0bcbf; }
.vip-card-bottom > span:last-child { font-size:17px; color:white; line-height:1; }
.vip-perks { padding-bottom:80px; }
.vip-section-heading { border-top:1px solid var(--line); padding-top:38px; margin-bottom:30px; }
.vip-section-heading .eyebrow { margin-bottom:13px; }
.vip-section-heading h2 { font-size:37px; }
.vip-section-heading > p:last-child { color:var(--muted); font-size:13px; margin-top:14px; line-height:1.8; }
.vip-perks-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.vip-perk { border:1px solid var(--line); border-radius:11px; padding:25px 27px 27px; }
.vip-perk-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; }
.vip-perk-icon { color:var(--red); display:flex; }
.vip-perk-icon svg { width:26px; height:26px; }
.vip-perk-number { color:#949498; font-size:9px; letter-spacing:.1em; }
.vip-perk h3 { font-size:20px; font-weight:600; line-height:1.25; letter-spacing:-.03em; max-width:265px; margin-bottom:12px; }
.vip-perk p { color:var(--muted); font-size:12px; line-height:1.8; }
.vip-requirements { background:var(--soft); padding:70px 0; scroll-margin-top:0; }
.vip-requirements-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:95px; align-items:start; }
.vip-requirements-intro .eyebrow { margin-bottom:18px; }
.vip-requirements-intro h2 { font-size:42px; }
.vip-requirements-intro > p:not(.eyebrow) { color:var(--muted); font-size:13px; line-height:1.8; max-width:290px; margin-top:20px; }
.vip-three { display:flex; align-items:center; gap:17px; margin-top:24px; }
.vip-three strong { color:var(--red); font-size:70px; line-height:1; letter-spacing:-.05em; font-weight:500; }
.vip-three span { color:var(--muted); font-size:11px; line-height:1.7; }
.vip-requirements-list { list-style:none; padding:0; margin:0; }
.vip-requirements-list li { display:flex; align-items:flex-start; gap:19px; padding:24px 0 28px; border-top:1px solid #d9d9dc; }
.vip-requirements-list li:last-child { padding-bottom:0; }
.vip-requirement-check { display:flex; align-items:center; justify-content:center; width:32px; height:32px; flex-shrink:0; border-radius:50%; border:1px solid #efbebe; color:var(--red); background:#fff7f7; }
.vip-requirement-check svg { width:17px; height:17px; }
.vip-requirements-list h3 { font-size:21px; line-height:1.35; letter-spacing:-.025em; margin-bottom:13px; font-weight:600; }
.vip-requirements-list p { color:var(--muted); font-size:13px; line-height:1.85; }
.vip-requirements-list p strong { font-weight:600; color:var(--ink); }
.vip-cta { padding:62px 0; }
.vip-cta-inner { display:flex; align-items:center; justify-content:space-between; gap:45px; }
.vip-cta .eyebrow { margin-bottom:14px; }
.vip-cta h2 { font-size:30px; line-height:1.2; }
.vip-cta p:not(.eyebrow) { color:var(--muted); font-size:13px; line-height:1.8; max-width:510px; margin-top:14px; }
.vip-cta .button { flex-shrink:0; font-size:12px; }
@media(min-width:1250px) { .vip-card-center { padding-top:45px; padding-bottom:37px; } }
@media(max-width:1000px) { .vip-hero { gap:45px; }.vip-card { padding:24px 25px 20px; }.vip-card-center { padding:26px 0 24px; }.vip-card-name { font-size:25px; }.vip-card-name strong { font-size:34px; }.vip-requirements-grid { gap:55px; }.vip-perk { padding:22px; }.vip-perk h3 { font-size:19px; } }
@media(max-width:800px) { .vip-hero { gap:35px; }.vip-hero-copy h1 { font-size:43px; }.vip-hero-copy > p:not(.eyebrow) { font-size:14px; }.vip-card { padding:22px; }.vip-card-brand { font-size:21px; }.vip-card-caption { font-size:6px; }.vip-card-center { padding:24px 0 20px; }.vip-card-name { font-size:22px; }.vip-card-name strong { font-size:30px; }.vip-card-bottom { font-size:6px; }.vip-perks-grid { gap:12px; }.vip-perk { padding:20px; }.vip-perk h3 { font-size:18px; }.vip-requirements-grid { gap:35px; }.vip-cta-inner { gap:25px; }.vip-cta h2 { font-size:27px; } }
@media(max-width:700px) {
  .vip-page .breadcrumbs { padding-bottom:25px; }
  .vip-hero { grid-template-columns:1fr; gap:42px; padding:5px 0 49px; }
  .vip-hero-copy h1 { font-size:45px; }
  .vip-hero-copy .eyebrow { font-size:9px; margin-bottom:19px; }
  .vip-hero-copy > p:not(.eyebrow) { font-size:14px; margin:21px 0 23px; max-width:365px; }
  .vip-hero .button { font-size:12px; padding:15px 20px; }
  .vip-card { width:calc(100% - 14px); max-width:410px; margin:0 auto; padding:25px 27px 20px; }
  .vip-card-brand { font-size:23px; }
  .vip-card-center { padding:29px 0 26px; }
  .vip-card-caption { font-size:6px; }
  .vip-card-name { font-size:25px; }
  .vip-card-name strong { font-size:35px; }
  .vip-card-bottom { font-size:6px; }
  .vip-perks { padding-bottom:45px; }
  .vip-section-heading { padding-top:29px; margin-bottom:24px; }
  .vip-section-heading h2 { font-size:32px; }
  .vip-section-heading > p:last-child { font-size:12px; max-width:290px; }
  .vip-perks-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
  .vip-perk { padding:20px 17px; }
  .vip-perk-top { margin-bottom:20px; }
  .vip-perk-icon svg { width:23px; height:23px; }
  .vip-perk h3 { font-size:18px; line-height:1.3; margin-bottom:11px; }
  .vip-perk p { font-size:11px; line-height:1.8; }
  .vip-requirements { padding:43px 0; }
  .vip-requirements-grid { grid-template-columns:1fr; gap:27px; }
  .vip-requirements-intro h2 { font-size:36px; }
  .vip-requirements-intro > p:not(.eyebrow) { font-size:12px; max-width:310px; margin-top:17px; }
  .vip-three { margin-top:19px; gap:15px; }
  .vip-three strong { font-size:60px; }
  .vip-three span { font-size:10px; }
  .vip-requirements-list li { gap:15px; padding:23px 0; }
  .vip-requirements-list h3 { font-size:20px; margin-bottom:11px; }
  .vip-requirements-list p { font-size:12px; }
  .vip-requirement-check { width:29px; height:29px; }
  .vip-cta { padding:41px 0; }
  .vip-cta-inner { flex-direction:column; align-items:flex-start; gap:24px; }
  .vip-cta h2 { font-size:30px; max-width:300px; }
  .vip-cta p:not(.eyebrow) { font-size:12px; }
  .vip-cta .button { width:100%; justify-content:space-between; padding-inline:20px; }
}
@media(max-width:370px) { .vip-hero-copy h1 { font-size:40px; }.vip-perks-grid { grid-template-columns:1fr; }.vip-perk h3 { max-width:none; font-size:20px; }.vip-perk { padding:22px; }.vip-perk p { font-size:12px; }.vip-card { padding:22px; }.vip-card-center { padding:24px 0 21px; } }
