:root {
  --club-paper: #f7f9f9;
  --club-ink: #0b1530;
  --club-copy: #4e5b70;
  --club-muted: #778296;
  --club-line: rgba(11, 21, 48, .09);
  --club-teal: #5bc0be;
  --club-teal-ink: #287d7b;
  --club-navy: #04081f;
  --club-blue: #3972fd;
}

html { scroll-behavior: smooth; }
body { margin: 0; background: var(--club-paper); color: var(--club-ink); }
.club-page, .club-page *, .club-page *::before, .club-page *::after { box-sizing: border-box; }
.club-page { overflow: clip; background: var(--club-paper); font-family: var(--font, "Manrope", sans-serif); }
.club-page a { color: inherit; text-decoration: none; }
.club-wrap { width: min(1320px, 100%); margin: 0 auto; padding-inline: clamp(24px, 4vw, 58px); }

.club-lockup .s2h-lock { gap: 0; }
.club-lock-suffix { margin-left: 10px; padding-left: 11px; border-left: 1px solid rgba(255,255,255,.3); color: #fff; font: 400 21px/1 "Palanquin", sans-serif; letter-spacing: -.02em; }
.s2h.is-light .club-lock-suffix { color: #3a506b; border-left-color: rgba(58,80,107,.25); }

.club-page .reveal { opacity: 0; transform: translateY(22px); transition: opacity .72s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms), transform .72s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms); }
.club-page .reveal.in { opacity: 1; transform: none; }

.club-hero { position: relative; min-height: min(900px, calc(100svh - 12px)); margin: 12px; border-radius: clamp(24px, 2.3vw, 34px); overflow: hidden; isolation: isolate; color: #fff; background: radial-gradient(circle at 84% 18%, rgba(57,114,253,.3), transparent 34%), radial-gradient(circle at 68% 78%, rgba(91,192,190,.16), transparent 36%), linear-gradient(132deg, #030719 0%, #071332 54%, #0c1e49 100%); }
.club-hero::before { content: ""; position: absolute; inset: 0; z-index: -2; opacity: .35; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 68px 68px; mask-image: radial-gradient(circle at 76% 47%, #000 0%, transparent 72%); }
.club-hero-glow { position: absolute; z-index: -1; width: 520px; height: 520px; right: 5%; top: 17%; border-radius: 50%; background: rgba(57,114,253,.15); filter: blur(90px); pointer-events: none; }
.club-hero-grid { min-height: inherit; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(440px, .95fr); gap: clamp(48px, 5vw, 82px); align-items: center; padding-top: clamp(145px, 12vw, 176px); padding-bottom: clamp(72px, 7vw, 96px); }
.club-hero-copy { position: relative; z-index: 2; }
.club-kicker, .club-eyebrow { margin: 0 0 22px; color: var(--club-teal-ink); font-size: 13px; font-weight: 700; line-height: 1.4; letter-spacing: .14em; text-transform: uppercase; }
.club-kicker { color: #a8e5e1; }
.club-kicker::before, .club-eyebrow::before { content: ""; display: inline-block; width: 28px; height: 1px; margin: 0 12px 4px 0; background: currentColor; }
.club-hero h1 { max-width: 12.8ch; margin: 0; color: #fff; font-size: clamp(48px, 5vw, 76px); font-weight: 400; line-height: .99; letter-spacing: -.055em; text-wrap: balance; }
.club-hero h1 span { color: #9ddbd8; }
.club-hero-lede { max-width: 670px; margin: 30px 0 0; color: #c7d2e5; font-size: clamp(17px, 1.45vw, 21px); line-height: 1.62; text-wrap: pretty; }
.club-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.club-btn { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; padding: 14px 24px; border-radius: 99px; font-size: 15px; font-weight: 650; transition: transform .22s ease, filter .22s ease, background .22s ease, border-color .22s ease; }
.club-btn-primary { color: #031b22; border: 1px solid rgba(218,255,252,.25); background: linear-gradient(180deg, #79ddd7 0%, #50c2bd 68%, #3ca49f 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.34), inset 0 -2px 0 rgba(13,84,84,.42), 0 0 24px -8px rgba(91,192,190,.54), 0 12px 30px -14px rgba(91,192,190,.56); }
.club-btn-primary:hover { transform: translateY(-2px); filter: brightness(1.07); }
.club-btn-ghost { color: rgba(255,255,255,.9); border: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.05); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: inset 0 1px 0 rgba(255,255,255,.12); }
.club-btn-ghost:hover { transform: translateY(-2px); color: #fff; background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.34); }
.club-hero-note { max-width: 58ch; margin: 18px 0 0; color: rgba(255,255,255,.58); font-size: 13.5px; line-height: 1.5; }

.club-hero-scene { position: relative; width: min(100%, 600px); min-height: 590px; justify-self: end; overflow: hidden; border-radius: 30px; border: 1px solid rgba(255,255,255,.16); box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 46px 90px -46px rgba(0,0,0,.88); }
.club-hero-scene::before { content: ""; position: absolute; inset: 14px; z-index: 2; pointer-events: none; border: 1px solid rgba(255,255,255,.16); border-radius: 21px; }
.club-hero-scene > img { position: absolute; inset: 0; width: 100%; height: 100%; display: block; object-fit: cover; object-position: 59% center; filter: saturate(.82) contrast(1.04) brightness(.9); transform: scale(1.015); }
.club-scene-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(2,7,25,.3) 0%, transparent 38%, rgba(2,7,25,.82) 100%), linear-gradient(90deg, rgba(4,8,31,.28), transparent 55%); }
.club-scene-topline { position: absolute; z-index: 3; top: 34px; left: 34px; right: 34px; display: flex; align-items: center; justify-content: space-between; gap: 16px; color: rgba(255,255,255,.82); font-size: 11px; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.club-scene-topline span { display: inline-flex; align-items: center; gap: 8px; }
.club-scene-topline i { width: 7px; height: 7px; display: inline-block; border-radius: 50%; background: var(--club-teal); box-shadow: 0 0 0 5px rgba(91,192,190,.14); }
.club-scene-caption { position: absolute; z-index: 3; left: 34px; right: 34px; bottom: 34px; display: flex; align-items: center; gap: 16px; padding: 18px; border-radius: 18px; background: rgba(7,18,45,.76); border: 1px solid rgba(255,255,255,.16); box-shadow: inset 0 1px 0 rgba(255,255,255,.1); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.club-scene-caption img { width: 42px; height: 42px; flex: none; }
.club-scene-caption strong, .club-scene-caption span { display: block; }
.club-scene-caption strong { font-size: 16px; font-weight: 650; }
.club-scene-caption span { margin-top: 4px; color: #b8c6da; font-size: 12px; line-height: 1.45; }

.club-section { padding: clamp(90px, 10vw, 150px) 0; }
.club-problem-head, .club-mechanism-head { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr); gap: clamp(38px, 7vw, 110px); align-items: end; }
.club-problem h2, .club-mechanism h2, .club-for h2 { margin: 0; max-width: 15ch; color: var(--club-ink); font-size: clamp(42px, 4.8vw, 68px); font-weight: 400; line-height: 1.04; letter-spacing: -.052em; text-wrap: balance; }
.club-problem h2 span, .club-mechanism h2 span { color: var(--club-teal-ink); }
.club-problem-head > p, .club-mechanism-head > p, .club-for-copy > p { margin: 0 0 6px; color: var(--club-copy); font-size: clamp(17px, 1.4vw, 20px); line-height: 1.65; text-wrap: pretty; }
.club-cost-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: clamp(58px, 7vw, 90px); border-top: 1px solid var(--club-line); border-bottom: 1px solid var(--club-line); }
.club-cost { min-height: 290px; padding: 30px clamp(20px, 2.4vw, 34px); border-left: 1px solid var(--club-line); display: flex; flex-direction: column; }
.club-cost:first-child { border-left: 0; }
.club-cost > span { color: var(--club-teal-ink); font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.club-cost h3 { margin: auto 0 14px; max-width: 14ch; font-size: 20px; font-weight: 600; line-height: 1.25; letter-spacing: -.02em; }
.club-cost p { margin: 0; color: var(--club-copy); font-size: 14.5px; line-height: 1.65; }

.club-belief { margin: 0 12px; border-radius: 32px; padding: clamp(100px, 12vw, 170px) 0; color: #fff; background: radial-gradient(circle at 18% 15%, rgba(91,192,190,.18), transparent 32%), radial-gradient(circle at 88% 80%, rgba(57,114,253,.22), transparent 40%), #050a21; }
.club-belief-inner { text-align: center; }
.club-eyebrow-dark { color: #91d9d5; }
.club-belief h2 { max-width: 18ch; margin: 0 auto; color: #fff; font-size: clamp(46px, 6vw, 86px); font-weight: 400; line-height: 1.02; letter-spacing: -.055em; text-wrap: balance; }
.club-belief > .club-wrap > p:not(.club-eyebrow) { margin: 24px auto 0; color: #9ddbd8; font-size: clamp(24px, 3vw, 42px); line-height: 1.15; letter-spacing: -.035em; }
.club-belief-rule { width: 72px; height: 1px; margin: 42px auto 30px; background: var(--club-teal); }
.club-belief small { display: block; max-width: 62ch; margin: 0 auto; color: #aebbd0; font-size: 15px; line-height: 1.65; }

.club-mechanism { padding-bottom: clamp(104px, 11vw, 164px); }
.club-duo { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: clamp(62px, 7vw, 96px); }
.club-duo-card { min-width: 0; border-radius: 28px; overflow: hidden; padding: clamp(28px, 3.4vw, 44px); }
.club-duo-community { color: var(--club-ink); background: radial-gradient(circle at 10% 0%, rgba(91,192,190,.28), transparent 35%), linear-gradient(145deg, #ecf5f4, #dfeaf5); box-shadow: 0 0 0 1px rgba(11,21,48,.06), 0 30px 70px -50px rgba(11,21,48,.35); }
.club-duo-relation { color: #fff; background: radial-gradient(circle at 90% 0%, rgba(57,114,253,.28), transparent 38%), #07122d; box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 30px 70px -50px rgba(4,8,31,.8); }
.club-duo-top { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.club-duo-index { font-size: 12px; font-weight: 700; letter-spacing: .12em; opacity: .6; }
.club-duo-label { padding: 7px 11px; border-radius: 99px; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; background: rgba(255,255,255,.38); border: 1px solid rgba(255,255,255,.6); }
.club-duo-relation .club-duo-label { background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.14); }
.club-duo-card h3 { max-width: 14ch; margin: 58px 0 18px; font-size: clamp(30px, 3.4vw, 48px); font-weight: 500; line-height: 1.08; letter-spacing: -.045em; text-wrap: balance; }
.club-duo-community h3 { color: var(--club-ink); }
.club-duo-relation h3 { color: #fff; }
.club-duo-card > p { max-width: 58ch; margin: 0; color: #526178; font-size: 16px; line-height: 1.65; }
.club-duo-relation > p { color: #afbdd2; }
.club-peer-photo { margin-top: 42px; overflow: hidden; border-radius: 20px; }
.club-peer-photo { height: 300px; background: #d5e0e2; }
.club-peer-photo img { width: 100%; height: 100%; display: block; object-fit: cover; filter: saturate(.82) contrast(1.02); transition: transform .8s cubic-bezier(.22,1,.36,1); }
.club-duo-card:hover .club-peer-photo img { transform: scale(1.025); }
.club-value-bar { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 20px; overflow: hidden; border: 1px solid var(--club-line); border-radius: 22px; background: rgba(255,255,255,.7); box-shadow: 0 24px 60px -52px rgba(11,21,48,.5); }
.club-value-bar > div { min-height: 156px; padding: 28px clamp(24px, 3vw, 38px); border-left: 1px solid var(--club-line); }
.club-value-bar > div:first-child { border-left: 0; }
.club-value-bar span, .club-value-bar strong { display: block; }
.club-value-bar span { color: var(--club-teal-ink); font-size: 11px; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.club-value-bar strong { margin-top: 26px; color: var(--club-ink); font-size: 17px; font-weight: 550; line-height: 1.45; letter-spacing: -.015em; }

.club-cycle { margin: 0 12px; padding: clamp(96px, 10vw, 150px) 0; border-radius: 32px; color: #fff; background: linear-gradient(145deg, #06102a, #0b1c44); }
.club-cycle h2 { max-width: 14ch; margin: 0; font-size: clamp(44px, 5vw, 72px); font-weight: 400; line-height: 1.04; letter-spacing: -.052em; text-wrap: balance; }
.club-cycle-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin-top: clamp(58px, 7vw, 88px); }
.club-cycle-step { position: relative; min-height: 260px; padding: 28px 28px 24px; border: 1px solid rgba(255,255,255,.1); border-left: 0; }
.club-cycle-step:first-child { border-left: 1px solid rgba(255,255,255,.1); border-radius: 20px 0 0 20px; }
.club-cycle-step:last-child { border-radius: 0 20px 20px 0; }
.club-cycle-step:not(:last-child)::after { content: ""; position: absolute; z-index: 2; right: -7px; top: 40px; width: 13px; height: 13px; border-radius: 50%; background: var(--club-teal); box-shadow: 0 0 0 6px #0a193b, 0 0 22px rgba(91,192,190,.5); }
.club-cycle-step > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: #aee6e3; font-size: 12px; font-weight: 700; background: rgba(91,192,190,.1); border: 1px solid rgba(91,192,190,.22); }
.club-cycle-step h3 { margin: 74px 0 12px; font-size: 19px; font-weight: 600; line-height: 1.3; }
.club-cycle-step p { margin: 0; color: #9eacc3; font-size: 14px; line-height: 1.65; }

.club-for-grid { display: grid; grid-template-columns: minmax(0, .96fr) minmax(420px, 1.04fr); gap: clamp(60px, 9vw, 140px); align-items: start; }
.club-for-copy { position: sticky; top: 120px; }
.club-for h2 { max-width: 14ch; }
.club-for-copy > p { margin-top: 28px; max-width: 54ch; }
.club-for-list { border-top: 1px solid var(--club-line); }
.club-for-list article { display: grid; grid-template-columns: 52px 1fr; gap: 20px; padding: 34px 0; border-bottom: 1px solid var(--club-line); }
.club-for-list article > span { color: var(--club-teal-ink); font-size: 12px; font-weight: 700; letter-spacing: .1em; }
.club-for-list h3 { margin: 0; font-size: 22px; font-weight: 600; letter-spacing: -.025em; }
.club-for-list p { margin: 10px 0 0; color: var(--club-copy); font-size: 15px; line-height: 1.65; }

.club-conversation { padding: 0 12px 12px; color: #fff; background: var(--club-paper); }
.club-conversation-card { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); gap: clamp(50px, 7vw, 100px); align-items: center; padding-top: clamp(70px, 8vw, 110px); padding-bottom: clamp(70px, 8vw, 110px); border-radius: 32px; background: radial-gradient(circle at 8% 85%, rgba(91,192,190,.2), transparent 35%), radial-gradient(circle at 92% 8%, rgba(57,114,253,.26), transparent 38%), #06102a; }
.club-conversation-copy h2 { max-width: 12ch; margin: 0; font-size: clamp(44px, 5vw, 70px); font-weight: 400; line-height: 1.04; letter-spacing: -.052em; text-wrap: balance; }
.club-conversation-copy > p { max-width: 54ch; margin: 26px 0 0; color: #afbdd2; font-size: 17px; line-height: 1.7; }
.club-fit-note { display: flex; align-items: center; gap: 14px; margin-top: 34px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.12); color: #cad4e4; font-size: 13.5px; line-height: 1.55; }
.club-fit-note img { width: 34px; height: 34px; flex: none; }
.club-form-card { padding: clamp(28px, 3vw, 42px); border-radius: 26px; color: var(--club-ink); background: rgba(250,253,255,.96); border: 1px solid rgba(255,255,255,.8); box-shadow: 0 28px 68px -34px rgba(0,0,0,.72); }
.club-form-title { margin: 0; font-size: 24px; font-weight: 600; line-height: 1.25; letter-spacing: -.025em; }
.club-form-sub { margin: 7px 0 24px; color: #667286; font-size: 14px; }
.club-form-card label { color: #142039; font-size: 13px; font-weight: 600; }
.club-form-card :is(input, select, textarea):not([type="checkbox"]):not([type="radio"]) { min-height: 49px; padding: 12px 14px; color: #142039; background: #fff; border: 1px solid #d9dfe7; border-radius: 11px; font: 400 15px/1.4 "Manrope", sans-serif; box-shadow: 0 1px 2px rgba(16,24,40,.04); }
.club-form-card :is(input, select, textarea):focus { outline: none; border-color: #142039; box-shadow: 0 0 0 3px rgba(20,32,57,.1); }
.club-form-card .hs-button { min-height: 52px; border-radius: 11px; color: #fff; background: #11294b; box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 8px 20px -10px rgba(17,41,75,.6); }
.club-form-card .legal-consent-container { color: #667286; }
.club-form-loading { margin: 0; padding: 22px 0; color: #667286; font-size: 14px; text-align: center; }
.club-form-card.is-ready .club-form-loading { display: none; }

@media (max-width: 1040px) {
  .club-hero-grid { grid-template-columns: 1fr; }
  .club-hero-copy { text-align: center; }
  .club-hero h1, .club-hero-lede { margin-inline: auto; }
  .club-hero-actions { justify-content: center; }
  .club-hero-scene { justify-self: center; width: min(100%, 760px); min-height: 520px; }
  .club-problem-head, .club-mechanism-head { grid-template-columns: 1fr; align-items: start; }
  .club-problem-head > p, .club-mechanism-head > p { max-width: 62ch; }
  .club-cost-grid { grid-template-columns: 1fr 1fr; }
  .club-cost:nth-child(3) { border-left: 0; border-top: 1px solid var(--club-line); }
  .club-cost:nth-child(4) { border-top: 1px solid var(--club-line); }
  .club-cycle-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
  .club-cycle-step, .club-cycle-step:first-child, .club-cycle-step:last-child { border: 1px solid rgba(255,255,255,.1); border-radius: 18px; }
  .club-cycle-step:not(:last-child)::after { display: none; }
  .club-for-grid { grid-template-columns: 1fr; }
  .club-for-copy { position: static; }
  .club-conversation-card { grid-template-columns: 1fr; }
  .club-conversation-copy h2 { max-width: 15ch; }
}

@media (max-width: 760px) {
  .club-lock-suffix { margin-left: 7px; padding-left: 8px; font-size: 18px; }
  .club-hero { min-height: 0; margin: 6px; border-radius: 24px; }
  .club-hero-grid { padding-top: 132px; padding-bottom: 64px; gap: 42px; }
  .club-hero h1 { font-size: clamp(42px, 12vw, 58px); }
  .club-hero-lede { font-size: 16px; }
  .club-hero-actions { flex-direction: column; }
  .club-btn { width: 100%; }
  .club-hero-note { margin-inline: auto; }
  .club-hero-scene { min-height: 430px; border-radius: 22px; }
  .club-hero-scene::before { inset: 9px; border-radius: 16px; }
  .club-scene-topline { top: 24px; left: 24px; right: 24px; }
  .club-scene-caption { left: 20px; right: 20px; bottom: 20px; padding: 15px; border-radius: 15px; }
  .club-scene-caption img { width: 36px; height: 36px; }
  .club-section { padding: 78px 0; }
  .club-problem h2, .club-mechanism h2, .club-for h2 { font-size: 40px; }
  .club-cost-grid { grid-template-columns: 1fr; }
  .club-cost, .club-cost:nth-child(2), .club-cost:nth-child(3), .club-cost:nth-child(4) { min-height: 230px; border-left: 0; border-top: 1px solid var(--club-line); }
  .club-cost:first-child { border-top: 0; }
  .club-belief, .club-cycle { margin-inline: 6px; border-radius: 24px; }
  .club-belief h2 { font-size: 45px; }
  .club-duo { grid-template-columns: 1fr; }
  .club-duo-card { border-radius: 22px; }
  .club-duo-card h3 { margin-top: 42px; font-size: 34px; }
  .club-peer-photo { height: 240px; }
  .club-value-bar { grid-template-columns: 1fr; }
  .club-value-bar > div { min-height: 0; border-left: 0; border-top: 1px solid var(--club-line); }
  .club-value-bar > div:first-child { border-top: 0; }
  .club-value-bar strong { margin-top: 14px; }
  .club-cycle h2 { font-size: 42px; }
  .club-cycle-grid { grid-template-columns: 1fr; }
  .club-cycle-step { min-height: 220px; }
  .club-cycle-step h3 { margin-top: 52px; }
  .club-for-grid { gap: 52px; }
  .club-for-list article { grid-template-columns: 38px 1fr; gap: 14px; }
  .club-conversation { padding-inline: 6px; }
  .club-conversation-card { padding-inline: 24px; border-radius: 24px; }
  .club-conversation-copy h2 { font-size: 42px; }
  .club-form-card { padding: 24px 19px; border-radius: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .club-page .reveal { opacity: 1; transform: none; transition: none; }
  .club-btn, .club-peer-photo img { transition: none; }
}
