:root {
  --member-navy:#07182b;
  --member-blue:#88d7f1;
  --member-mint:#b9f4cd;
  --member-lime:#cbff35;
  --member-violet:#7357ff;
  --member-orange:#ff6848;
  --member-cream:#f7f2e9;
  --member-line:rgba(7,24,43,.24);
}
.membership-page { background:var(--member-cream); color:var(--member-navy); }
.membership-page main h2 { color:inherit; }
#benefits,#pathways,#apply { scroll-margin-top:165px; }
.membership-kicker { margin:0 0 24px; color:inherit; font:500 .64rem/1.4 var(--mono); letter-spacing:.1em; }
.membership-section { padding:112px 0; }
.membership-button { display:inline-flex; min-height:58px; padding:0 24px; align-items:center; justify-content:space-between; gap:34px; color:var(--member-navy); font-size:.72rem; font-weight:800; text-decoration:none; transition:transform .2s,box-shadow .2s,background-color .2s; }
.membership-button:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(7,24,43,.18); }
.membership-button.primary { background:var(--member-lime); }
.membership-button.secondary { border:1px solid rgba(255,255,255,.58); color:#fff; }
.membership-button.lime { background:var(--member-lime); align-self:end; }

.membership-hero { position:relative; overflow:hidden; padding:160px 0 0; color:#fff; background:linear-gradient(128deg,#07182b 0%,#112a49 52%,#1d5070 100%); }
.membership-hero:before { content:""; position:absolute; inset:0; opacity:.19; background:linear-gradient(30deg,transparent 48%,rgba(255,255,255,.12) 49% 50%,transparent 51%) 0 0/48px 48px; }
.membership-hero:after { content:""; position:absolute; width:520px; height:520px; right:-170px; top:-190px; border-radius:50%; background:radial-gradient(circle,var(--member-mint),transparent 65%); opacity:.35; }
.membership-hero-copy { position:relative; z-index:1; display:grid; grid-template-columns:.92fr 1.08fr; gap:7%; align-items:center; padding-bottom:76px; }
.membership-hero h1 { max-width:690px; margin:0; font:800 clamp(4.9rem,9vw,9.2rem)/.76 var(--display); letter-spacing:-.105em; }
.membership-hero h1 em { color:var(--member-lime); font-style:normal; }
.membership-lead { max-width:620px; margin:40px 0 0; color:#e8f5fb; font-size:1.02rem; line-height:1.7; }
.membership-actions { display:flex; gap:10px; margin-top:38px; flex-wrap:wrap; }
.membership-hero-visual { position:relative; min-height:590px; margin:0; border:1px solid rgba(255,255,255,.32); overflow:hidden; background:#132c48; }
.membership-hero-visual img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.85) contrast(1.04); }
.membership-hero-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(7,24,43,.92),transparent 55%); }
.membership-hero-visual figcaption { position:absolute; z-index:1; left:26px; right:26px; bottom:25px; display:flex; justify-content:space-between; gap:20px; align-items:end; }
.membership-hero-visual figcaption span { color:var(--member-lime); font:500 .6rem var(--mono); letter-spacing:.08em; }
.membership-hero-visual figcaption b { max-width:330px; text-align:right; font:700 1.05rem/1.2 var(--display); }
.membership-hero-strip { position:relative; z-index:1; display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid rgba(255,255,255,.24); }
.membership-hero-strip span { padding:20px; border-right:1px solid rgba(255,255,255,.24); text-align:center; color:#dbf2fc; font:500 .6rem var(--mono); letter-spacing:.08em; }

.membership-section-head { display:grid; grid-template-columns:1.3fr .7fr; gap:10%; align-items:end; }
.membership-section-head h2,.membership-forward h2,.membership-builders h2,.membership-apply h2,.membership-related h2 { font:800 clamp(3.5rem,6.2vw,6.9rem)/.85 var(--display); letter-spacing:-.09em; }
.membership-section-head h2 em,.membership-forward h2 em,.membership-builders h2 em,.membership-apply h2 em,.membership-related h2 em { color:var(--member-violet); font-style:normal; }
.membership-section-head>p { max-width:430px; margin:0 0 8px; color:#445469; font-size:.9rem; line-height:1.7; }
.membership-intro { background:linear-gradient(180deg,#dff7fb,#e9fbf2); }
.membership-intro-grid { display:grid; grid-template-columns:1fr 1fr .82fr; margin-top:70px; border:1px solid var(--member-line); }
.membership-intro-grid article,.membership-intro-grid aside { min-height:345px; padding:28px; border-right:1px solid var(--member-line); display:flex; flex-direction:column; }
.membership-intro-grid> :last-child { border-right:0; }
.membership-intro-grid span { font:500 .6rem var(--mono); letter-spacing:.08em; }
.membership-intro-grid h3 { margin:auto 0 15px; font:800 2rem/.95 var(--display); letter-spacing:-.06em; }
.membership-intro-grid p { margin:0; color:#445469; font-size:.78rem; line-height:1.7; }
.membership-intro-grid a { margin-top:25px; color:inherit; font-size:.7rem; font-weight:800; }
.membership-intro-grid aside { background:var(--member-violet); color:#fff; }
.membership-intro-grid aside h3 { font-size:2.35rem; }
.membership-intro-grid aside a { padding:17px; background:var(--member-lime); color:var(--member-navy); text-decoration:none; display:flex; justify-content:space-between; }

.membership-forward { color:#fff; background:var(--member-navy); }
.membership-forward h2 em { color:var(--member-lime); }
.membership-forward-grid { margin-top:70px; border-top:1px solid rgba(255,255,255,.3); }
.membership-forward-grid article { display:grid; grid-template-columns:120px 1fr; padding:36px 0; border-bottom:1px solid rgba(255,255,255,.3); transition:padding .2s,background-color .2s; }
.membership-forward-grid article:hover { padding-left:18px; background:rgba(255,255,255,.035); }
.membership-forward-grid article>span { color:var(--member-lime); font:500 .7rem var(--mono); }
.membership-forward-grid article>div { display:grid; grid-template-columns:180px 1.05fr 1fr 180px; gap:28px; align-items:start; }
.membership-forward-grid article p:first-child { margin:4px 0 0; color:var(--member-blue); font:500 .62rem/1.5 var(--mono); letter-spacing:.07em; }
.membership-forward-grid h3 { margin:0; font:800 2.3rem/.95 var(--display); letter-spacing:-.07em; }
.membership-forward-grid article p:not(:first-child) { margin:0; color:#bcc9d6; font-size:.78rem; line-height:1.65; }
.membership-forward-grid a { color:#fff; font-size:.7rem; font-weight:800; text-decoration:none; }

.membership-ifest { padding:80px 0; background:var(--member-violet); color:#fff; }
.membership-ifest>.wrap { display:grid; grid-template-columns:1fr 1fr 200px; gap:7%; align-items:center; }
.membership-ifest h2 { margin:0; font:800 clamp(3.1rem,5.3vw,5.8rem)/.85 var(--display); letter-spacing:-.09em; }
.membership-ifest h2 em { color:var(--member-lime); font-style:normal; }
.membership-ifest-benefits p { margin:0; padding:11px 0; border-bottom:1px solid rgba(255,255,255,.32); font-size:.78rem; }
.membership-ifest-benefits small { display:block; margin-top:18px; color:#ddd8ff; font:.52rem/1.55 var(--mono); }

.membership-pathways { background:var(--member-cream); }
.membership-pathway-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin-top:70px; }
.membership-pathway-grid article { min-height:470px; padding:27px; display:flex; flex-direction:column; color:#fff; background:var(--member-navy); }
.membership-pathway-grid article.featured { color:var(--member-navy); background:var(--member-lime); }
.membership-pathway-grid article>span { font:500 .6rem var(--mono); letter-spacing:.08em; }
.membership-pathway-grid h3 { margin:48px 0 13px; font:800 2.05rem/.9 var(--display); letter-spacing:-.07em; }
.membership-pathway-grid p { color:#bdc9d6; font-size:.78rem; line-height:1.6; }
.membership-pathway-grid .featured p { color:#344457; }
.membership-pathway-grid ul { padding:24px 0 28px; margin:auto 0 0; list-style:none; border-top:1px solid rgba(255,255,255,.25); font-size:.74rem; line-height:2; }
.membership-pathway-grid .featured ul { border-color:rgba(7,24,43,.22); }
.membership-pathway-grid li:before { content:"+"; margin-right:10px; color:var(--member-lime); }
.membership-pathway-grid .featured li:before { color:var(--member-violet); }
.membership-pathway-grid a { padding:16px; color:var(--member-navy); background:#fff; text-align:center; text-decoration:none; font-size:.7rem; font-weight:800; }
.membership-pathway-grid .featured a { color:#fff; background:var(--member-violet); }
.membership-pricing-note { margin:13px 0 0; padding:18px 22px; border:1px solid var(--member-line); color:#445469; font:.64rem/1.6 var(--mono); }
.membership-pricing-note strong { color:var(--member-violet); }
.membership-addon { display:grid; grid-template-columns:150px 1fr 170px; gap:34px; align-items:center; margin-top:13px; padding:24px 27px; color:#fff; background:var(--member-orange); }
.membership-addon>span { font:500 .6rem var(--mono); }
.membership-addon h3 { margin:0 0 5px; font:800 1.4rem var(--display); letter-spacing:-.04em; }
.membership-addon p { margin:0; font-size:.72rem; line-height:1.6; }
.membership-addon a { color:#fff; font-size:.7rem; font-weight:800; }

.membership-builders { background:#dce8f0; }
.membership-builders>.wrap { display:grid; grid-template-columns:.8fr 1.2fr; gap:8%; }
.membership-builders-intro { position:sticky; top:180px; align-self:start; }
.membership-builders-intro>p:not(.membership-kicker) { max-width:430px; color:#46566a; line-height:1.7; }
.membership-role-list { display:flex; flex-wrap:wrap; gap:7px; margin-top:30px; }
.membership-role-list span { padding:9px 12px; border:1px solid #788a9a; border-radius:999px; font:500 .56rem var(--mono); }
.membership-stories { display:grid; gap:13px; }
.member-voice { min-height:260px; padding:28px; color:#fff; background:var(--member-violet); display:flex; flex-direction:column; }
.member-voice span,.story-card span { font:500 .58rem var(--mono); letter-spacing:.08em; }
.member-voice h3 { margin:auto 0 9px; font:800 2.3rem/.95 var(--display); letter-spacing:-.06em; }
.member-voice p { margin:0; max-width:520px; color:#e5e0ff; font-size:.77rem; line-height:1.6; }
.member-voice a { margin-top:22px; color:var(--member-lime); font-size:.7rem; font-weight:800; }
.story-card { min-height:360px; position:relative; overflow:hidden; color:#fff; }
.story-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.story-card:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(7,24,43,.96),transparent 70%); }
.story-card>div { position:absolute; z-index:1; left:25px; right:25px; bottom:23px; }
.story-card h3 { margin:9px 0 6px; font:800 2.1rem/.95 var(--display); letter-spacing:-.06em; }
.story-card p { margin:0; max-width:570px; color:#d9e3eb; font-size:.73rem; line-height:1.55; }
.story-card.creator img { object-position:center 35%; }

.membership-apply { color:#fff; background:var(--member-navy); }
.membership-apply h2 em { color:var(--member-lime); }
.membership-application-intro { display:grid; grid-template-columns:.9fr 1.1fr; gap:4% 8%; padding-bottom:80px; margin-bottom:80px; border-bottom:1px solid rgba(255,255,255,.26); }
.membership-application-intro>.membership-kicker { grid-column:1/-1; }
.membership-application-intro h2 { margin:0; font:800 clamp(3.6rem,6vw,6.7rem)/.85 var(--display); letter-spacing:-.09em; }
.membership-application-intro h2 em { color:var(--member-lime); font-style:normal; }
.membership-application-intro>div p { margin:0 0 15px; color:#c4d0dc; font-size:.82rem; line-height:1.7; }
.membership-application-intro>div a,.membership-application-help a { color:var(--member-lime); }
.membership-application-intro ul { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); padding:0; margin:38px 0 0; list-style:none; border:1px solid rgba(255,255,255,.26); }
.membership-application-intro li { min-height:100px; padding:20px; border-right:1px solid rgba(255,255,255,.26); display:flex; flex-direction:column; justify-content:flex-end; }
.membership-application-intro li:last-child { border-right:0; }
.membership-application-intro li b { color:var(--member-lime); font:800 1.6rem var(--display); }
.membership-application-intro li span { margin-top:5px; color:#c4d0dc; font-size:.66rem; }
.membership-application-help { grid-column:1/-1; margin:0; padding:20px 0 0; color:#c4d0dc; font-size:.72rem; line-height:1.65; }
.membership-apply-layout { display:grid; grid-template-columns:.78fr 1.22fr; gap:9%; align-items:start; }
.membership-apply-layout>div { position:sticky; top:180px; }
.membership-apply-layout>div>p:not(.membership-kicker) { max-width:470px; color:#b8c7d6; font-size:.84rem; line-height:1.7; }
.membership-steps { margin-top:32px; border-top:1px solid rgba(255,255,255,.26); }
.membership-steps span { display:flex; gap:15px; padding:13px 0; border-bottom:1px solid rgba(255,255,255,.26); font-size:.7rem; }
.membership-steps b { color:var(--member-lime); font:500 .6rem var(--mono); }
.membership-form { background:#10233b; border-color:#52657a; }
.membership-page .membership-form>label { color:#f2f7fb; }
.membership-form input,.membership-form select,.membership-form textarea { color:#fff; background:#071526; border-color:#486078; }
.membership-form input::placeholder,.membership-form textarea::placeholder { color:#94a7ba; }
.membership-form button { color:var(--member-navy); background:var(--member-lime); }
.membership-form .form-consent span { color:#c7d3df; }
.membership-form .form-consent a,.membership-form .form-message a { color:var(--member-lime); }

.membership-related { background:var(--member-mint); }
.membership-related-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:65px; border:1px solid var(--member-line); }
.membership-related-grid a { min-height:230px; padding:23px; border-right:1px solid var(--member-line); color:inherit; text-decoration:none; display:flex; flex-direction:column; transition:background-color .2s; }
.membership-related-grid a:last-child { border-right:0; }
.membership-related-grid a:hover { background:var(--member-lime); }
.membership-related-grid span { font:500 .57rem var(--mono); letter-spacing:.07em; }
.membership-related-grid h3 { margin:auto 0 12px; font:800 1.9rem/.95 var(--display); letter-spacing:-.06em; }
.membership-related-grid b { font-size:1.2rem; }

@media (max-width:1050px) {
  .membership-forward-grid article>div { grid-template-columns:140px 1fr 1fr; }
  .membership-forward-grid article>div a { grid-column:2; }
  .membership-ifest>.wrap { grid-template-columns:1fr 1fr; }
  .membership-ifest .membership-button { grid-column:2; justify-self:start; }
  .membership-pathway-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .membership-section { padding:78px 0; }
  .membership-hero { padding-top:138px; }
  .membership-hero-copy { grid-template-columns:1fr; gap:48px; padding-bottom:55px; }
  .membership-hero h1 { font-size:4.7rem; }
  .membership-lead { margin-top:30px; font-size:.9rem; }
  .membership-actions { display:grid; }
  .membership-button { width:100%; }
  .membership-hero-visual { min-height:455px; }
  .membership-hero-visual figcaption { display:block; }
  .membership-hero-visual figcaption b { display:block; margin-top:8px; text-align:left; }
  .membership-hero-strip { grid-template-columns:1fr 1fr; }
  .membership-hero-strip span { text-align:left; }
  .membership-hero-strip span:last-child { grid-column:1/-1; }
  .membership-section-head,.membership-builders>.wrap,.membership-apply-layout { grid-template-columns:1fr; gap:42px; }
  .membership-section-head>p { margin-top:0; }
  .membership-section-head h2,.membership-forward h2,.membership-builders h2,.membership-apply h2,.membership-related h2 { font-size:3.8rem; }
  .membership-intro-grid { grid-template-columns:1fr; margin-top:45px; }
  .membership-intro-grid article,.membership-intro-grid aside { min-height:290px; border-right:0; border-bottom:1px solid var(--member-line); }
  .membership-intro-grid> :last-child { border-bottom:0; }
  .membership-forward-grid { margin-top:45px; }
  .membership-forward-grid article { grid-template-columns:45px 1fr; }
  .membership-forward-grid article>div { grid-template-columns:1fr; gap:15px; }
  .membership-forward-grid article>div a { grid-column:auto; }
  .membership-forward-grid h3 { font-size:1.9rem; }
  .membership-ifest>.wrap { grid-template-columns:1fr; gap:38px; }
  .membership-ifest .membership-button { grid-column:auto; width:100%; }
  .membership-pathway-grid { grid-template-columns:1fr; margin-top:45px; }
  .membership-pathway-grid article { min-height:420px; }
  .membership-addon { grid-template-columns:1fr; gap:14px; }
  .membership-application-intro { grid-template-columns:1fr; gap:28px; padding-bottom:55px; margin-bottom:55px; }
  .membership-application-intro>.membership-kicker,.membership-application-intro ul,.membership-application-help { grid-column:auto; }
  .membership-application-intro h2 { font-size:3.8rem; }
  .membership-application-intro ul { grid-template-columns:1fr; margin-top:5px; }
  .membership-application-intro li { min-height:88px; border-right:0; border-bottom:1px solid rgba(255,255,255,.26); }
  .membership-application-intro li:last-child { border-bottom:0; }
  .membership-builders-intro,.membership-apply-layout>div { position:static; }
  .membership-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:45px; }
  .membership-related-grid a { min-width:0; min-height:190px; border-bottom:1px solid var(--member-line); }
  .membership-related-grid a:nth-child(2) { border-right:0; }
  .membership-related-grid a:nth-child(n+3) { border-bottom:0; }
}
@media (prefers-reduced-motion:reduce) {
  .membership-button,.membership-forward-grid article,.membership-related-grid a { transition:none; }
}
