:root {
  --ink: #111411;
  --ink-2: #1a1d19;
  --forest: #153427;
  --ivory: #f5f1e8;
  --paper: #fbf9f4;
  --stone: #d9d1c2;
  --muted: #777269;
  --gold: #b58a42;
  --gold-light: #dfc58c;
  --success: #256a4b;
  --alert: #9d3d3d;
  --serif: "Playfair Display", Georgia, serif;
  --sans: "DM Sans", Arial, sans-serif;
  --shadow: 0 24px 70px rgba(28, 24, 16, .12);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); font-family: var(--sans); background: var(--paper); }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }

.site-header {
  position: sticky; top: 0; z-index: 20; height: 78px; padding: 0 clamp(24px, 6vw, 96px);
  display: flex; align-items: center; justify-content: space-between;
  background: rgba(11, 14, 12, .96); color: white; border-bottom: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(16px);
}
.brand { display: flex; align-items: center; gap: 18px; letter-spacing: .2em; }
.brand-logo { width: 43px; height: 43px; flex: 0 0 auto; display: block; }
.brand-mark { font-family: var(--serif); color: var(--gold-light); font-size: 26px; letter-spacing: .08em; }
.brand-word { font-size: 11px; letter-spacing: .28em; }
.main-nav { display: flex; align-items: center; gap: 34px; font-family: var(--serif); font-size: 15px; }
.main-nav a { opacity: .8; transition: opacity .2s, color .2s; }
.main-nav a:hover { opacity: 1; color: var(--gold-light); }
.nav-login { border: 1px solid rgba(223,197,140,.55); padding: 12px 21px; opacity: 1 !important; }
.mobile-toggle { display: none; color: white; background: none; border: 0; letter-spacing: .12em; }

.hero { min-height: 700px; display: grid; grid-template-columns: 47% 53%; color: white; background: #090c0a; overflow: hidden; }
.hero-copy { padding: 110px clamp(28px, 7vw, 120px); align-self: center; }
.eyebrow, .kicker { display: inline-block; color: var(--gold-light); font-size: 11px; font-weight: 600; letter-spacing: .25em; text-transform: uppercase; }
.eyebrow::after { content: ""; display: inline-block; width: 44px; height: 1px; background: currentColor; margin: 0 0 3px 18px; opacity: .7; }
.hero h1 { max-width: 680px; margin: 26px 0 24px; font-family: var(--serif); font-size: clamp(52px, 5.2vw, 86px); line-height: 1.02; font-weight: 500; letter-spacing: -.035em; }
.hero-copy > p { max-width: 590px; color: rgba(255,255,255,.75); font-family: var(--serif); font-size: clamp(20px, 1.7vw, 27px); line-height: 1.45; }
.hero-actions { margin-top: 42px; display: flex; align-items: center; gap: 34px; flex-wrap: wrap; }
.button { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; gap: 34px; padding: 13px 24px; border: 0; border-radius: 2px; font-family: var(--serif); font-size: 16px; transition: transform .2s, filter .2s; }
.button:hover { transform: translateY(-2px); filter: brightness(1.05); }
.button-gold { color: #14130f; background: linear-gradient(135deg, #e0c894, #b88639); box-shadow: 0 12px 36px rgba(181,138,66,.2); }
.button-quiet { color: var(--ink); background: transparent; border: 1px solid #d4cec2; }
.text-link { padding-bottom: 6px; display: inline-flex; gap: 18px; align-items: center; border-bottom: 1px solid currentColor; font-family: var(--serif); }
.hero-visual { position: relative; min-height: 700px; display: grid; place-items: center; overflow: hidden; background:
  radial-gradient(circle at 65% 22%, rgba(213,177,102,.25), transparent 28%),
  linear-gradient(135deg, #213026 0%, #0e1511 48%, #060806 100%);
  background-size: cover; background-position: center;
}
.hero-visual::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #090c0a 0%, transparent 28%); }
.portrait-placeholder { position: relative; z-index: 1; width: min(62%, 520px); aspect-ratio: .78; display: flex; flex-direction: column; justify-content: flex-end; padding: 52px; border: 1px solid rgba(223,197,140,.35); background: linear-gradient(160deg, rgba(255,255,255,.08), rgba(0,0,0,.24)); box-shadow: var(--shadow); }
.portrait-placeholder::before { content: "MSD"; position: absolute; top: 40px; right: -28px; color: rgba(223,197,140,.08); font-family: var(--serif); font-size: 160px; transform: rotate(90deg); }
.portrait-placeholder span { color: var(--gold-light); font-size: 10px; letter-spacing: .3em; }
.portrait-placeholder strong { margin: 14px 0; font-family: var(--serif); font-size: clamp(28px, 3vw, 48px); font-weight: 500; line-height: 1.05; }
.portrait-placeholder small { max-width: 280px; color: rgba(255,255,255,.55); line-height: 1.5; }
.hero-visual.has-image .portrait-placeholder { display: none; }
.hero-seal { position: absolute; z-index: 2; right: 7%; bottom: 8%; width: 116px; aspect-ratio: 1; border-radius: 50%; display: grid; place-items: center; padding: 22px; color: var(--gold-light); border: 1px solid rgba(223,197,140,.5); background: rgba(7,10,8,.84); text-align: center; }
.hero-seal span { font-size: 8px; letter-spacing: .18em; }
.hero-seal b { font-family: var(--serif); font-size: 26px; }

.proof-strip { padding: 28px clamp(24px, 8vw, 130px); display: grid; grid-template-columns: repeat(3, 1fr); background: var(--ivory); border-bottom: 1px solid #ded7ca; }
.proof-item { display: flex; align-items: center; justify-content: center; gap: 16px; border-right: 1px solid #d8d0c0; }
.proof-item:last-child { border: 0; }
.proof-item strong { font-family: var(--serif); font-size: 34px; font-weight: 500; }
.proof-item span { color: var(--muted); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }

.system-section, .results-section { padding: 110px clamp(24px, 8vw, 130px); }
.section-heading { max-width: 660px; }
.eyebrow-dark { color: var(--gold); }
.section-heading h2, .programme-intro h2, .final-cta h2 { margin: 20px 0; font-family: var(--serif); font-size: clamp(40px, 4vw, 64px); line-height: 1.05; font-weight: 500; letter-spacing: -.03em; }
.section-heading p, .programme-intro p { color: var(--muted); font-size: 17px; line-height: 1.7; }
.system-grid { margin-top: 66px; display: grid; grid-template-columns: repeat(3, 1fr); }
.system-card { position: relative; padding: 42px 48px; border-top: 1px solid var(--stone); border-right: 1px solid var(--stone); }
.system-card:last-child { border-right: 0; }
.system-number { width: 48px; height: 48px; display: grid; place-items: center; color: var(--gold); border: 1px solid var(--gold-light); border-radius: 50%; font-family: var(--serif); }
.system-card h3 { margin: 30px 0 12px; font-family: var(--serif); font-size: 25px; font-weight: 500; }
.system-card p { color: var(--muted); line-height: 1.7; }

.programme-band { padding: 100px clamp(24px, 8vw, 130px); display: grid; grid-template-columns: 1.05fr .95fr; gap: 10vw; color: white; background: var(--forest); }
.programme-intro { max-width: 680px; }
.programme-list article { padding: 28px 0; display: flex; gap: 26px; border-bottom: 1px solid rgba(255,255,255,.14); }
.programme-list article > span { color: var(--gold-light); font-family: var(--serif); }
.programme-list h3 { margin: 0 0 8px; font-family: var(--serif); font-size: 24px; font-weight: 500; }
.programme-list p { margin: 0; color: rgba(255,255,255,.62); }

.results-section { background: #efebe3; }
.testimonial-grid { margin-top: 55px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.testimonial-grid blockquote { margin: 0; min-height: 260px; padding: 38px; display: flex; flex-direction: column; justify-content: space-between; background: var(--paper); border: 1px solid #ddd5c7; }
.testimonial-grid blockquote p { margin: 0; font-family: var(--serif); font-size: 22px; line-height: 1.45; }
.testimonial-grid footer { padding-top: 22px; color: var(--gold); font-size: 10px; letter-spacing: .16em; border-top: 1px solid #e2dbce; }
.testimonial-grid footer span { float: right; color: var(--muted); }
.final-cta { padding: 110px 24px; color: white; background: var(--ink); text-align: center; }
.final-cta h2 { max-width: 830px; margin-left: auto; margin-right: auto; }
.final-cta p { max-width: 660px; margin: 0 auto 36px; color: rgba(255,255,255,.65); line-height: 1.7; }
.site-footer { padding: 48px clamp(24px, 8vw, 130px); display: grid; grid-template-columns: 1fr auto; gap: 32px; color: rgba(255,255,255,.66); background: #080a09; border-top: 1px solid rgba(255,255,255,.08); }
.site-footer > div:first-child { display: flex; align-items: center; gap: 25px; }
.site-footer > div:first-child p { margin: 0; }
.site-footer > div:nth-child(2) { display: flex; gap: 24px; align-items: center; }
.site-footer > p { margin: 0; font-size: 12px; }

.reveal { opacity: 0; transform: translateY(14px); transition: opacity .7s ease, transform .7s ease; }
.reveal.is-visible { opacity: 1; transform: none; }

/* Application */
.application-body { min-height: 100vh; background: #e9e5dc; }
.application-header { height: 74px; padding: 0 clamp(24px, 6vw, 88px); display: flex; align-items: center; justify-content: space-between; background: rgba(251,249,244,.96); border-bottom: 1px solid #ddd5c7; }
.brand-dark .brand-word { color: var(--ink); }
.secure-label { color: var(--muted); font-size: 13px; }
.application-shell { min-height: calc(100vh - 74px); display: grid; grid-template-columns: 43% 57%; }
.application-story { position: relative; padding: 9vh clamp(36px, 7vw, 110px); display: flex; flex-direction: column; justify-content: space-between; color: white; overflow: hidden; background:
  radial-gradient(circle at 25% 75%, rgba(205,160,80,.22), transparent 28%),
  linear-gradient(140deg, #16251c, #080b09 75%);
}
.application-story::after { content: "MSD"; position: absolute; right: -50px; bottom: 10%; color: rgba(255,255,255,.035); font-family: var(--serif); font-size: 300px; }
.application-story > div { position: relative; z-index: 1; }
.application-story h1 { margin: 24px 0; font-family: var(--serif); font-size: clamp(46px, 4.3vw, 72px); line-height: 1.04; font-weight: 500; letter-spacing: -.035em; }
.application-story p { max-width: 600px; color: rgba(255,255,255,.65); font-size: 17px; line-height: 1.75; }
.story-proof { display: flex; align-items: center; gap: 18px; }
.story-proof b { font-family: var(--serif); font-size: 48px; font-weight: 500; }
.story-proof span { max-width: 100px; color: var(--gold-light); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
.application-card { width: min(700px, calc(100% - 60px)); min-height: 650px; margin: 55px auto; padding: clamp(34px, 5vw, 66px); align-self: center; background: var(--paper); border: 1px solid #d9d1c3; box-shadow: var(--shadow); }
.application-progress { margin-bottom: 42px; text-align: center; color: var(--muted); font-size: 10px; font-weight: 600; letter-spacing: .2em; }
.progress-dots { margin-top: 18px; display: flex; justify-content: center; gap: 13px; }
.progress-dots i { width: 10px; height: 10px; border: 1px solid #bdb5a6; border-radius: 50%; background: transparent; }
.progress-dots i.is-active, .progress-dots i.is-complete { border-color: var(--gold); background: var(--gold); }
.form-step { display: none; }
.form-step.is-active { display: block; animation: enter .35s ease; }
@keyframes enter { from { opacity: 0; transform: translateX(8px); } }
.form-step h2, .application-success h2 { margin: 12px 0 30px; font-family: var(--serif); font-size: clamp(35px, 3vw, 49px); line-height: 1.12; font-weight: 500; letter-spacing: -.025em; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.form-grid label, .wide-label { display: grid; gap: 8px; color: #35362f; font-size: 13px; }
.form-grid input, textarea { width: 100%; padding: 15px 16px; color: var(--ink); background: white; border: 1px solid #d7d0c4; border-radius: 3px; outline: none; }
.form-grid input:focus, textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(181,138,66,.1); }
.choice-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.choice-grid label { cursor: pointer; }
.choice-grid input { position: absolute; opacity: 0; }
.choice-grid label > span { min-height: 100px; padding: 18px; display: flex; flex-direction: column; justify-content: center; gap: 6px; border: 1px solid #d8d0c2; background: white; font-family: var(--serif); font-size: 17px; }
.choice-grid label > span small { color: var(--muted); font-family: var(--sans); font-size: 12px; line-height: 1.45; }
.choice-grid input:checked + span { border-color: var(--gold); background: #faf4e8; box-shadow: inset 3px 0 0 var(--gold); }
.choice-grid.compact label > span { min-height: 72px; }
.form-intro { color: var(--muted); line-height: 1.6; }
.consent { margin-top: 20px; display: flex; gap: 12px; align-items: flex-start; color: var(--muted); font-size: 12px; line-height: 1.5; }
.consent input { margin-top: 3px; }
.form-actions { margin-top: 30px; display: flex; justify-content: flex-end; gap: 12px; }
.form-next, .form-submit { flex: 1; }
.form-error { min-height: 20px; margin-top: 14px; color: var(--alert); font-size: 12px; }
.application-trust { margin: 22px 0 0; color: var(--muted); font-size: 11px; text-align: center; }
.application-success { padding-top: 60px; text-align: center; }
.success-mark { width: 64px; height: 64px; margin: 0 auto 28px; display: grid; place-items: center; color: white; background: var(--success); border-radius: 50%; font-size: 25px; }
.application-success p { max-width: 500px; margin: 0 auto 28px; color: var(--muted); line-height: 1.7; }

/* Shared portal/admin */
.portal-body, .admin-body { min-height: 100vh; background: #f2eee6; }
.portal-sidebar, .admin-sidebar { position: fixed; inset: 0 auto 0 0; z-index: 10; width: 248px; padding: 32px 18px 22px; display: flex; flex-direction: column; color: white; background: linear-gradient(180deg, #151916, #090b0a); }
.brand-stacked { flex-direction: column; gap: 5px; text-align: center; }
.brand-stacked .brand-logo { width: 58px; height: 58px; }
.brand-stacked .brand-mark { font-size: 35px; }
.portal-sidebar nav, .admin-sidebar nav { margin-top: 48px; display: grid; gap: 7px; }
.portal-sidebar nav a, .admin-sidebar nav a { padding: 13px 15px; display: flex; gap: 13px; align-items: center; color: rgba(255,255,255,.68); border-radius: 4px; font-family: var(--serif); }
.portal-sidebar nav a.is-active, .admin-sidebar nav a.is-active { color: white; background: linear-gradient(90deg, rgba(190,147,74,.72), rgba(190,147,74,.18)); }
.sidebar-member { margin-top: auto; padding-top: 22px; display: flex; gap: 12px; align-items: center; border-top: 1px solid rgba(255,255,255,.1); }
.sidebar-member > span, .member-avatar { width: 38px; height: 38px; display: grid; place-items: center; color: var(--ink); background: var(--gold-light); border-radius: 50%; font-family: var(--serif); }
.sidebar-member div { display: grid; gap: 3px; }
.sidebar-member small { color: rgba(255,255,255,.46); font-size: 9px; letter-spacing: .1em; }
.portal-main, .admin-main { margin-left: 248px; min-height: 100vh; }
.portal-topbar { height: 72px; padding: 0 4vw; display: flex; align-items: center; justify-content: space-between; background: rgba(251,249,244,.92); border-bottom: 1px solid #ddd5c7; }
.portal-topbar > span { color: var(--gold); font-size: 10px; letter-spacing: .2em; }
.portal-topbar > div { display: flex; align-items: center; gap: 14px; }
.portal-topbar button { border: 0; background: none; }
.member-welcome { padding: 62px 5vw 32px; display: flex; justify-content: space-between; align-items: end; gap: 30px; }
.member-welcome h1 { margin: 12px 0; font-family: var(--serif); font-size: clamp(44px, 5vw, 70px); font-weight: 500; letter-spacing: -.04em; }
.member-welcome p { color: var(--muted); }
.momentum-card { min-width: 180px; padding: 20px 28px; display: grid; background: var(--paper); border: 1px solid #ddd5c7; }
.momentum-card span, .momentum-card small { color: var(--muted); font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }
.momentum-card strong { font-family: var(--serif); font-size: 43px; font-weight: 500; }
.continue-card { margin: 0 5vw; display: grid; grid-template-columns: minmax(220px, 34%) 1fr; background: var(--paper); border: 1px solid #ddd5c7; box-shadow: 0 16px 45px rgba(30,27,19,.07); }
.continue-art { min-height: 310px; padding: 30px; display: flex; flex-direction: column; justify-content: space-between; color: white; background: linear-gradient(145deg, #23392b, #0a0d0b); }
.continue-art span { font-size: 9px; letter-spacing: .2em; }
.continue-art b { color: var(--gold-light); font-family: var(--serif); font-size: 70px; font-weight: 500; }
.continue-card > div:last-child { padding: clamp(28px, 4vw, 60px); }
.continue-card h2 { margin: 12px 0; font-family: var(--serif); font-size: clamp(30px, 3vw, 46px); font-weight: 500; }
.continue-card p { color: var(--muted); }
.progress-track { height: 4px; margin: 24px 0; overflow: hidden; background: #e2ddd3; }
.progress-track i { height: 100%; display: block; background: var(--gold); }
.academy-section { padding: 62px 5vw; }
.portal-section-heading { display: flex; align-items: end; justify-content: space-between; }
.portal-section-heading h2 { margin: 8px 0 0; font-family: var(--serif); font-size: 38px; font-weight: 500; }
.portal-section-heading > span { color: var(--muted); }
.academy-grid { margin-top: 28px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.course-card { overflow: hidden; background: var(--paper); border: 1px solid #ddd5c7; }
.course-art { height: 170px; padding: 20px; display: flex; justify-content: space-between; align-items: flex-end; color: white; background: var(--forest); }
.course-gold .course-art { background: linear-gradient(145deg, #ad813c, #60461f); }
.course-ink .course-art { background: linear-gradient(145deg, #262923, #090b09); }
.course-art span { font-family: var(--serif); font-size: 32px; }
.course-art b { color: rgba(255,255,255,.5); font-family: var(--serif); font-size: 45px; }
.course-body { padding: 25px; }
.course-body h3 { margin: 11px 0 8px; font-family: var(--serif); font-size: 23px; font-weight: 500; }
.course-body p { color: var(--muted); font-size: 12px; }
.progress-meta { display: flex; justify-content: space-between; color: var(--muted); font-size: 11px; }
.progress-meta a { color: var(--gold); font-weight: 600; }
.member-bottom-grid { padding: 0 5vw 70px; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.member-panel { padding: 34px; background: var(--paper); border: 1px solid #ddd5c7; }
.member-panel-dark { color: white; background: var(--ink); }
.member-panel h3 { margin: 12px 0; font-family: var(--serif); font-size: 28px; font-weight: 500; }
.member-panel p { color: var(--muted); line-height: 1.6; }
.member-panel-dark p { color: rgba(255,255,255,.58); }
.text-link-light { color: var(--gold-light); }

/* Admin */
.admin-sidebar blockquote { margin: auto 8px 0; padding: 22px; color: var(--gold-light); border: 1px solid rgba(223,197,140,.23); font-family: var(--serif); font-size: 14px; line-height: 1.8; letter-spacing: .08em; }
.admin-main { padding: 0 32px 60px; }
.admin-topbar { min-height: 94px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.admin-topbar h1 { margin: 0; font-family: var(--serif); font-size: clamp(31px, 3vw, 47px); font-weight: 500; }
.admin-topbar > div:first-child span { color: var(--gold); font-size: 9px; letter-spacing: .24em; }
.admin-tools { display: flex; align-items: center; gap: 12px; }
.admin-tools label { width: min(320px, 30vw); padding: 11px 14px; display: flex; gap: 10px; background: var(--paper); border: 1px solid #ddd5c7; border-radius: 4px; }
.admin-tools input { width: 100%; border: 0; outline: 0; background: transparent; }
.admin-tools button { border: 0; background: none; }
.metric-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.metric-grid article { padding: 20px; display: flex; gap: 16px; background: var(--paper); border: 1px solid #ded7ca; box-shadow: 0 8px 25px rgba(28,24,16,.04); }
.metric-grid article > span { width: 46px; height: 46px; flex: 0 0 auto; display: grid; place-items: center; color: var(--gold); background: #f1e7d5; border-radius: 50%; }
.metric-grid p { margin: 0 0 3px; font-family: var(--serif); }
.metric-grid strong { display: block; font-family: var(--serif); font-size: 32px; font-weight: 500; }
.metric-grid small { font-size: 10px; }
.positive { color: var(--success); }.alert { color: var(--alert); }
.admin-grid { margin-top: 16px; display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 16px; }
.pipeline-panel, .priorities-panel, .revenue-panel, .academy-stat { background: var(--paper); border: 1px solid #ded7ca; }
.panel-heading { padding: 20px 22px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #e1dacf; }
.panel-heading h2 { margin: 0; font-family: var(--serif); font-size: 24px; font-weight: 500; }
.panel-heading button { border: 0; background: none; color: var(--gold); }
.table-wrap { overflow-x: auto; }
.pipeline-panel .table-wrap { max-height: 680px; overflow: auto; }
table { width: 100%; border-collapse: collapse; font-size: 11px; }
th { position: sticky; z-index: 2; top: 0; padding: 11px 14px; color: var(--muted); background: #f3efe7; font-size: 9px; letter-spacing: .12em; text-align: left; }
td { padding: 12px 14px; border-bottom: 1px solid #e7e1d6; white-space: nowrap; }
tbody tr:nth-child(even) { background: rgba(184,137,66,.025); }
tbody tr:hover { background: rgba(184,137,66,.075); }
.pipeline-panel td:nth-child(2) { display: table-cell; }
.pipeline-panel td:nth-child(2) > .applicant-avatar { margin-right: 9px; display: inline-grid; vertical-align: middle; }
.pipeline-panel td:nth-child(2) > div { display: inline-grid; vertical-align: middle; }
.applicant-avatar { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: #d8c49d; font-family: var(--serif); }
.status { padding: 5px 9px; border-radius: 20px; background: #e8e5df; }
.status-paid { color: #185438; background: #d7ebdf; }
.status-call-booked { color: #285b80; background: #d8e9f3; }
.priorities-panel > label { padding: 13px 20px; display: grid; grid-template-columns: auto 1fr auto; gap: 10px; align-items: center; border-bottom: 1px solid #e8e2d8; font-family: var(--serif); font-size: 12px; }
.priorities-panel time { color: var(--muted); }
.next-call { margin: 14px; padding: 22px; color: white; background: var(--ink); }
.next-call > span { color: var(--gold-light); font-size: 9px; letter-spacing: .16em; }
.next-call h3 { margin: 10px 0; font-family: var(--serif); font-size: 23px; font-weight: 500; }
.next-call p { color: rgba(255,255,255,.58); font-size: 11px; }
.next-call .button { width: 100%; min-height: 42px; margin-top: 12px; font-size: 13px; }
.admin-bottom-grid { margin-top: 16px; display: grid; grid-template-columns: 1fr 260px; gap: 16px; }
.bar-chart { height: 150px; padding: 20px 30px 0; display: flex; align-items: end; justify-content: space-around; gap: 20px; }
.bar-chart i { width: 36px; background: linear-gradient(180deg, var(--gold), #ddc799); border-radius: 3px 3px 0 0; }
.chart-labels { padding: 8px 30px 18px; display: flex; justify-content: space-around; color: var(--muted); font-size: 9px; }
.academy-stat { padding: 28px; display: flex; flex-direction: column; }
.academy-stat > span { width: 48px; height: 48px; display: grid; place-items: center; color: var(--success); background: #dcebe2; border-radius: 50%; }
.academy-stat p { margin: 18px 0 0; font-family: var(--serif); }
.academy-stat strong { font-family: var(--serif); font-size: 48px; font-weight: 500; }
.academy-stat small { color: var(--muted); }
.academy-stat a { margin-top: auto; color: var(--gold); font-size: 12px; }

/* CRM authentication and records */
.crm-login-body { min-height: 100vh; margin: 0; font-family: var(--sans); background: #080c12; }
.crm-login-shell { min-height: 100vh; display: grid; grid-template-columns: 1.05fr .95fr; }
.crm-login-brand { padding: clamp(38px, 6vw, 90px); display: flex; flex-direction: column; justify-content: space-between; color: white; background: radial-gradient(circle at 25% 75%, rgba(42,115,255,.28), transparent 30%), linear-gradient(rgba(100,231,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(100,231,255,.035) 1px, transparent 1px), #070a10; background-size: auto, 50px 50px, 50px 50px, auto; }
.crm-login-brand h1 { margin: 24px 0; font-family: var(--serif); font-size: clamp(55px, 7vw, 100px); line-height: .9; letter-spacing: -.065em; text-transform: uppercase; }
.crm-login-brand p { max-width: 620px; color: #9fabb8; font-size: 17px; line-height: 1.7; }
.crm-login-brand > small { color: rgba(255,255,255,.38); font-size: 9px; letter-spacing: .18em; text-transform: uppercase; }
.crm-login-panel { padding: 30px; display: grid; place-items: center; background: #edf3f7; }
.crm-login-card { width: min(500px, 100%); padding: clamp(34px, 6vw, 65px); background: white; border: 1px solid #d7e1e8; border-radius: 18px; box-shadow: var(--shadow); }
.crm-login-card h2 { margin: 15px 0 8px; font-family: var(--serif); font-size: 38px; letter-spacing: -.045em; }
.crm-login-card > p:not(.crm-login-error) { color: var(--muted); line-height: 1.6; }
.crm-login-card label { margin-top: 20px; display: grid; gap: 8px; color: #3f4953; font-size: 12px; font-weight: 700; }
.crm-login-card input { padding: 15px; border: 1px solid #d3dde4; border-radius: 9px; outline: 0; }
.crm-login-card input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(42,115,255,.1); }
.crm-login-card .button { width: 100%; margin-top: 10px; }
.crm-login-error { min-height: 22px; margin: 12px 0 0; color: var(--alert); font-size: 12px; }
.member-login-help { display: block; margin-top: 18px; color: var(--muted); text-align: center; line-height: 1.5; }
.member-login-body .crm-login-brand { background: radial-gradient(circle at 18% 74%, rgba(184,137,66,.34), transparent 30%), #080807; }
.sidebar-member { flex-wrap: wrap; }
.sidebar-member button { width: 100%; padding: 8px 0 0; border: 0; background: transparent; color: rgba(255,255,255,.48); font: inherit; font-size: 11px; text-align: left; cursor: pointer; }
.sidebar-member button:hover { color: var(--gold-light); }
.member-record-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.local-login-note { margin-top: 18px; display: block; color: var(--muted); font-size: 10px; line-height: 1.5; text-align: center; }
.admin-logout { margin-top: auto; padding: 13px 15px; color: rgba(255,255,255,.58); background: transparent; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; text-align: left; }
.admin-body.is-loading .admin-main { opacity: .4; pointer-events: none; }
.crm-toolbar { margin-top: 28px; padding: 22px 4px 16px; display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.crm-toolbar h2 { margin: 7px 0 0; font-family: var(--serif); font-size: 32px; letter-spacing: -.04em; }
.crm-toolbar p { margin: 7px 0 0; color: var(--muted); font-size: 11px; }
.crm-toolbar label { display: grid; gap: 6px; color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .12em; }
.crm-toolbar select, .crm-drawer select, .crm-drawer input, .crm-drawer textarea { padding: 11px 13px; color: var(--ink); background: white; border: 1px solid #d3dde4; border-radius: 8px; outline: 0; }
.pipeline-panel td div, .pipeline-panel td:nth-child(3) { display: grid; gap: 3px; }
.pipeline-panel td small { color: var(--muted); font-size: 9px; }
.pipeline-panel td a { color: var(--gold); }
.pipeline-summary { margin: 0 0 14px; display: grid; grid-template-columns: repeat(4, minmax(120px, 1fr)); gap: 10px; }
.pipeline-total { min-height: 70px; padding: 14px 17px; display: flex; align-items: center; justify-content: space-between; color: var(--ink); background: var(--paper); border: 1px solid #ded7ca; border-radius: 10px; text-align: left; cursor: pointer; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.pipeline-total:hover { transform: translateY(-1px); border-color: #b79a64; box-shadow: 0 8px 24px rgba(28,24,16,.06); }
.pipeline-total.is-active { border-color: var(--gold); box-shadow: 0 0 0 2px rgba(177,132,64,.12); }
.pipeline-total span { color: var(--muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.pipeline-total strong { font-family: var(--serif); font-size: 30px; font-weight: 500; }
.pipeline-total-live strong { color: #9a6c22; }
.pipeline-total-won strong { color: #13704b; }
.pipeline-total-lost strong { color: #a53b42; }
.lead-number-heading { width: 44px; text-align: center; }
td.lead-number { width: 44px; color: #9a7a40; font-size: 10px; letter-spacing: .08em; text-align: center; }
.lead-phone { color: var(--ink) !important; font-size: 10px !important; font-weight: 700; letter-spacing: .02em; }
.lead-stage { padding: 6px 9px; display: inline-flex; align-items: center; width: fit-content; color: #5c5142; background: #eee8dc; border: 1px solid #ded4c3; border-radius: 6px; font-size: 9px; font-weight: 800; }
.stage-pending, .stage-new { color: #765719; background: #f4e7c7; border-color: #ead29b; }
.stage-whatsapp-sent, .stage-contacted { color: #286078; background: #deedf1; border-color: #c7dfe6; }
.stage-follow-up, .stage-need-to-re-call { color: #8a541e; background: #f7e5d2; border-color: #edcfad; }
.stage-appointment-confirmed, .stage-appointment-completed, .stage-call-booked { color: #4d478b; background: #e9e6f8; border-color: #d5cff1; }
.stage-qualified, .stage-paid, .stage-won { color: #146b49; background: #d9efe5; border-color: #bfe0d2; }
.stage-lost, .stage-not-a-fit { color: #9a3038; background: #f4dde0; border-color: #e9c2c7; }
.status-stack { display: flex !important; align-items: flex-start; gap: 5px !important; }
.status { display: inline-flex; align-items: center; gap: 6px; width: fit-content; min-width: 62px; font-weight: 800; }
.status i { width: 6px; height: 6px; display: block; border-radius: 50%; background: currentColor; }
.status-live { color: #765719; background: #f4e7c7; }
.status-won { color: #146b49; background: #d9efe5; }
.status-lost { color: #9a3038; background: #f4dde0; }
.record-open { padding: 7px 10px; color: var(--gold); background: transparent; border: 1px solid #ccdae4; border-radius: 7px; font-size: 10px; font-weight: 700; }
.crm-empty { padding: 80px 25px; text-align: center; }
.crm-empty > span { width: 52px; height: 52px; margin: auto; display: grid; place-items: center; color: var(--gold); background: #e5efff; border-radius: 50%; }
.crm-empty h3 { margin: 16px 0 8px; font-family: var(--serif); font-size: 26px; }
.crm-empty p { color: var(--muted); }
.crm-empty .button { margin-top: 14px; }
.stage-bars { padding: 24px; display: grid; gap: 18px; }
.stage-bars > div > span { margin-bottom: 8px; display: flex; justify-content: space-between; color: var(--muted); font-size: 11px; }
.stage-bars > div > span b { color: var(--ink); }
.stage-bars i { height: 7px; display: block; overflow: hidden; background: #e2eaf0; border-radius: 99px; }
.stage-bars em { height: 100%; display: block; background: linear-gradient(90deg, var(--gold), var(--gold-light)); border-radius: inherit; }
.crm-drawer-backdrop { position: fixed; z-index: 90; inset: 0; background: rgba(3,7,12,.48); backdrop-filter: blur(3px); }
.crm-drawer { position: fixed; z-index: 91; top: 0; right: 0; bottom: 0; width: min(620px, 100vw); padding: 54px clamp(26px, 4vw, 54px); overflow-y: auto; color: var(--ink); background: #f8fafb; box-shadow: -30px 0 90px rgba(3,12,22,.24); transform: translateX(103%); transition: transform .3s ease; }
.crm-drawer.is-open { transform: none; }
.drawer-close { position: absolute; right: 24px; top: 20px; width: 38px; height: 38px; color: var(--muted); background: white; border: 1px solid #d7e1e8; border-radius: 50%; font-size: 23px; }
.crm-drawer > h2 { margin: 14px 0 4px; font-family: var(--serif); font-size: 42px; letter-spacing: -.05em; }
.detail-location { margin: 0; color: var(--muted); }
.detail-contact { margin: 22px 0; display: flex; gap: 10px; flex-wrap: wrap; }
.detail-contact a { padding: 9px 12px; color: var(--gold); background: white; border: 1px solid #d8e2e8; border-radius: 8px; font-size: 11px; }
.detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.detail-grid > div { padding: 16px; background: white; border: 1px solid #dce4e9; border-radius: 9px; }
.detail-grid dt, .detail-answer span { color: var(--muted); font-size: 8px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.detail-grid dd { margin: 7px 0 0; font-size: 12px; font-weight: 700; }
.attribution-hero { margin-bottom: 14px; padding: 22px; color: #f8f2e8; background: linear-gradient(135deg, #0b0a08, #21180d); border: 1px solid #80622f; border-radius: 11px; }
.attribution-hero span { display: block; color: var(--gold-light); font-size: 8px; font-weight: 800; letter-spacing: .16em; }
.attribution-hero strong { display: block; margin: 8px 0 4px; font-family: var(--serif); font-size: 28px; }
.attribution-hero p { margin: 0; color: #c8bda9; font-size: 11px; line-height: 1.55; }
.attribution-grid { margin-bottom: 10px; }
.click-id-list { display: grid; gap: 7px; margin-top: 12px; }
.click-id-list div { padding: 11px 14px; display: flex; justify-content: space-between; gap: 18px; background: #efe7d9; border-radius: 8px; }
.click-id-list span { color: #786c5c; font-size: 9px; font-weight: 800; text-transform: uppercase; }
.click-id-list code { max-width: 70%; overflow: hidden; color: #342a1d; text-overflow: ellipsis; font-size: 9px; white-space: nowrap; }
.privacy-note { padding: 12px 14px; color: #706454; background: #f3eee6; border-left: 2px solid var(--gold); font-size: 9px; line-height: 1.55; }
.detail-answer { margin-top: 14px; padding: 18px; background: white; border: 1px solid #dce4e9; border-radius: 9px; }
.detail-answer p { margin: 9px 0 0; color: #49535d; font-size: 12px; line-height: 1.65; }
.crm-drawer form { margin-top: 24px; padding-top: 24px; display: grid; gap: 15px; border-top: 1px solid #d7e1e8; }
.crm-drawer form label { display: grid; gap: 7px; color: #3e4954; font-size: 11px; font-weight: 700; }
.record-message { min-height: 18px; margin: 0; color: var(--success); font-size: 11px; }
.mayfair-history { margin-top: 22px; padding: 20px; background: #0d0b08; border: 1px solid rgba(184,137,66,.28); border-radius: 11px; }
.mayfair-history-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; color: var(--gold-light); font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.mayfair-history-heading b { padding: 6px 9px; color: #171109; background: var(--gold-light); border-radius: 99px; font-size: 8px; letter-spacing: .08em; }
.mayfair-history details { border-bottom: 1px solid rgba(230,196,119,.16); }
.mayfair-history details:last-child { border-bottom: 0; }
.mayfair-history summary { padding: 15px 0; display: flex; justify-content: space-between; cursor: pointer; color: white; font-size: 11px; font-weight: 700; list-style: none; }
.mayfair-history summary::-webkit-details-marker { display: none; }
.mayfair-history summary span { color: var(--gold-light); }
.mayfair-history pre { max-height: 360px; margin: 0 0 17px; padding: 15px; overflow: auto; color: rgba(255,255,255,.7); background: rgba(255,255,255,.035); border-radius: 8px; font: 10px/1.65 var(--sans); white-space: pre-wrap; overflow-wrap: anywhere; }

/* Founder CRM workspace */
html { scroll-behavior: smooth; }
.admin-sidebar { overflow-y: auto; }
.admin-sidebar nav { margin-top: 30px; }
.admin-sidebar nav a { padding-block: 10px; }
.portal-admin-link { color: var(--gold-light) !important; border: 1px solid rgba(230,196,119,.25); }
.metric-grid-five { grid-template-columns: repeat(5, 1fr); }
.metric-grid-five article { padding: 17px; }
.crm-add-lead { min-height: 42px; padding: 0 17px; white-space: nowrap; }
.crm-toolbar-actions { display: flex; align-items: end; gap: 12px; }
.button-outline { min-height: 42px; padding: 0 16px; color: var(--ink); background: transparent; border: 1px solid #cfc3b0; }
.crm-section { margin-top: 18px; background: var(--paper); border: 1px solid #ded7ca; border-radius: 13px; overflow: hidden; scroll-margin-top: 20px; }
.task-layout { padding: 20px; }
.compact-form { display: grid; grid-template-columns: minmax(220px, 2fr) 1.1fr .65fr 1fr auto; gap: 9px; }
.compact-form input, .compact-form select, .modal-form input, .modal-form textarea, .drawer-form input, .drawer-form textarea, .drawer-form select { min-width: 0; padding: 12px 13px; color: var(--ink); background: white; border: 1px solid #d6ccbc; border-radius: 8px; outline: 0; font: inherit; }
.task-list { margin-top: 16px; display: grid; gap: 8px; }
.task-row { padding: 12px 14px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; background: #fbf8f2; border: 1px solid #e6ddd0; border-radius: 9px; }
.task-row span { display: grid; gap: 3px; }.task-row b { font-size: 12px; }.task-row small { color: var(--muted); font-size: 9px; }.task-row i { padding: 5px 8px; border-radius: 99px; color: #71634f; background: #eee7db; font-size: 8px; font-style: normal; font-weight: 800; text-transform: uppercase; }.task-row i.priority-high { color: #973a3f; background: #f5dfe1; }.task-row.is-done { opacity: .55; }.task-row.is-done b { text-decoration: line-through; }
.empty-inline { padding: 22px; color: var(--muted); font-size: 11px; text-align: center; }
.crm-two-column { display: grid; grid-template-columns: 1.12fr .88fr; gap: 18px; }
.followup-list { padding: 10px 18px 18px; display: grid; gap: 7px; }
.followup-list button { padding: 10px; display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 12px; color: var(--ink); background: transparent; border: 0; border-bottom: 1px solid #e6ddd0; text-align: left; }
.followup-list time { width: 44px; height: 44px; display: grid; place-items: center; color: #7c5d27; background: #f1e6d2; border-radius: 8px; font-size: 8px; line-height: 1; text-transform: uppercase; }.followup-list time b { font-size: 17px; }.followup-list span { display: grid; gap: 3px; }.followup-list span b { font-size: 11px; }.followup-list small, .followup-list em { color: var(--muted); font-size: 9px; font-style: normal; }
.analytics-grid { padding: 24px; display: grid; gap: 19px; }.analytics-grid span { margin-bottom: 8px; display: flex; justify-content: space-between; color: var(--muted); font-size: 10px; }.analytics-grid span b { color: var(--ink); }.analytics-grid i { height: 7px; display: block; overflow: hidden; background: #e6dfd3; border-radius: 99px; }.analytics-grid em { height: 100%; display: block; background: linear-gradient(90deg, #a87331, #efd58f); border-radius: inherit; }
.member-records { padding: 16px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }.member-records article { padding: 13px; display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 10px; background: #fbf8f2; border: 1px solid #e5dccf; border-radius: 9px; }.member-records article > div { display: grid; gap: 3px; }.member-records article b { font-size: 11px; }.member-records article small { max-width: 130px; overflow: hidden; color: var(--muted); font-size: 8px; text-overflow: ellipsis; }
.crm-modal-backdrop { position: fixed; z-index: 94; inset: 0; background: rgba(3,7,8,.6); backdrop-filter: blur(5px); }.crm-modal { position: fixed; z-index: 95; left: 50%; top: 50%; width: min(620px, calc(100vw - 28px)); max-height: calc(100vh - 28px); padding: 36px; overflow: auto; background: var(--paper); border: 1px solid #ddcfb9; border-radius: 15px; box-shadow: 0 30px 100px rgba(0,0,0,.3); transform: translate(-50%, -50%); }.crm-modal[hidden], .crm-modal-backdrop[hidden] { display: none; }.crm-modal h2 { margin: 9px 0 20px; font-family: var(--serif); font-size: 36px; }.modal-form, .drawer-form { display: grid; gap: 13px; }.modal-form label, .drawer-form label { display: grid; gap: 6px; color: #4c4236; font-size: 10px; font-weight: 800; }.form-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.crm-drawer-wide { width: min(800px, 100vw); }.lead-quick-actions { margin: 18px 0; display: flex; gap: 7px; flex-wrap: wrap; }.lead-quick-actions a { padding: 9px 14px; color: #372912; background: #f1dfb5; border: 1px solid #dcc187; border-radius: 7px; font-size: 10px; font-weight: 800; }.record-tabs { margin: 0 -10px 20px; padding: 0 10px; display: flex; gap: 4px; overflow-x: auto; border-bottom: 1px solid #ded4c4; }.record-tabs button { padding: 11px 10px; color: var(--muted); background: transparent; border: 0; border-bottom: 2px solid transparent; white-space: nowrap; font-size: 9px; font-weight: 800; text-transform: uppercase; }.record-tabs button.is-active { color: #8b6326; border-color: #b88942; }.record-panel { display: none; }.record-panel.is-active { display: block; }.crm-drawer .drawer-form { margin-top: 0; padding-top: 0; border-top: 0; }.proposal-total { padding: 15px; display: flex; justify-content: space-between; align-items: center; background: #0d0b08; border-radius: 9px; color: white; }.proposal-total span { color: var(--gold-light); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }.proposal-total strong { font-size: 20px; }.timeline { margin-top: 20px; display: grid; gap: 0; }.timeline article { min-height: 65px; display: grid; grid-template-columns: 17px 1fr; gap: 12px; }.timeline article > i { position: relative; width: 9px; height: 9px; margin-top: 4px; background: var(--gold); border: 2px solid var(--paper); outline: 1px solid var(--gold); border-radius: 50%; }.timeline article:not(:last-child) > i::after { content: ""; position: absolute; left: 3px; top: 10px; width: 1px; height: 52px; background: #d9cbb7; }.timeline article div { display: grid; align-content: start; gap: 5px; }.timeline b { font-size: 11px; }.timeline p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.5; }.timeline small { color: #9a8a74; font-size: 8px; }

@media (max-width: 1250px) { .metric-grid-five { grid-template-columns: repeat(3, 1fr); }.compact-form { grid-template-columns: 1fr 1fr 1fr; }.member-records { grid-template-columns: 1fr 1fr; } }
@media (max-width: 900px) { .crm-two-column { grid-template-columns: 1fr; }.member-records { grid-template-columns: 1fr; }.admin-tools { width: 100%; flex-wrap: wrap; }.admin-tools label { flex: 1; }.compact-form { grid-template-columns: 1fr 1fr; } }
@media (max-width: 760px) { .admin-sidebar nav { width: 100%; overflow-x: auto; }.admin-sidebar nav a { display: flex !important; flex: 0 0 auto; padding: 9px 11px; }.admin-sidebar .brand { display: none; }.admin-sidebar { height: auto; padding: 10px; flex-direction: column; }.admin-logout { display: none; }.metric-grid-five { grid-template-columns: 1fr 1fr; }.crm-toolbar-actions { align-items: stretch; flex-direction: column; }.compact-form, .form-pair { grid-template-columns: 1fr; }.crm-drawer { padding: 50px 18px 30px; }.record-tabs { position: sticky; top: -50px; z-index: 2; background: var(--paper); }.member-records article { grid-template-columns: auto 1fr auto; }.member-records .lead-stage { display: none; } }

@media (max-width: 1100px) {
  .hero { grid-template-columns: 1fr; }
  .hero-visual { min-height: 560px; }
  .application-shell { grid-template-columns: 1fr; }
  .application-story { min-height: 520px; }
  .metric-grid { grid-template-columns: 1fr 1fr; }
  .admin-grid { grid-template-columns: 1fr; }
  .priorities-panel { display: none; }
  .academy-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 760px) {
  .site-header { height: 68px; }
  .brand-word { display: none; }
  .mobile-toggle { display: block; }
  .main-nav { position: absolute; top: 68px; left: 0; right: 0; padding: 24px; display: none; flex-direction: column; align-items: stretch; background: #0b0e0c; }
  .main-nav.is-open { display: flex; }
  .hero-copy { padding: 72px 25px; }
  .hero-visual { min-height: 450px; }
  .portrait-placeholder { width: 74%; padding: 30px; }
  .proof-strip { grid-template-columns: 1fr; gap: 20px; }
  .proof-item { padding-bottom: 20px; border-right: 0; border-bottom: 1px solid #d8d0c0; }
  .system-section, .results-section { padding: 75px 25px; }
  .system-grid, .testimonial-grid { grid-template-columns: 1fr; }
  .system-card { padding: 32px 0; border-right: 0; }
  .programme-band { padding: 75px 25px; grid-template-columns: 1fr; }
  .site-footer { grid-template-columns: 1fr; }
  .site-footer > div:nth-child(2) { flex-wrap: wrap; }
  .application-header { height: 64px; }
  .secure-label { font-size: 10px; }
  .application-story { min-height: 470px; padding: 70px 25px; }
  .application-card { width: calc(100% - 24px); min-height: 620px; margin: -25px auto 28px; padding: 32px 20px; position: relative; z-index: 2; }
  .form-grid, .choice-grid { grid-template-columns: 1fr; }
  .portal-sidebar, .admin-sidebar { position: static; width: auto; height: 70px; padding: 0 18px; flex-direction: row; align-items: center; justify-content: space-between; }
  .portal-sidebar nav, .admin-sidebar nav { margin: 0; display: flex; }
  .portal-sidebar nav a, .admin-sidebar nav a { display: none; }
  .portal-sidebar nav a.is-active, .admin-sidebar nav a.is-active { display: flex; }
  .sidebar-member, .admin-sidebar blockquote { display: none; }
  .portal-main, .admin-main { margin-left: 0; }
  .member-welcome { padding: 45px 20px 24px; align-items: stretch; flex-direction: column; }
  .continue-card { margin: 0 20px; grid-template-columns: 1fr; }
  .continue-art { min-height: 220px; }
  .academy-section { padding: 50px 20px; }
  .academy-grid, .member-bottom-grid { grid-template-columns: 1fr; }
  .member-bottom-grid { padding: 0 20px 50px; }
  .admin-main { padding: 0 14px 40px; }
  .admin-topbar { align-items: flex-start; flex-direction: column; padding: 26px 0; }
  .admin-tools label { width: calc(100vw - 100px); }
  .metric-grid { grid-template-columns: 1fr; }
  .admin-bottom-grid { grid-template-columns: 1fr; }
  .academy-stat { min-height: 230px; }
  .crm-login-shell { grid-template-columns: 1fr; }
  .crm-login-brand { min-height: 480px; }
  .crm-login-panel { padding: 14px; }
  .crm-toolbar { align-items: stretch; flex-direction: column; }
  .crm-toolbar select { width: 100%; }
  .pipeline-summary { grid-template-columns: 1fr 1fr; }
  .pipeline-total { min-height: 62px; padding: 12px 14px; }
  .pipeline-total strong { font-size: 26px; }
  .pipeline-panel .table-wrap { max-height: 70vh; }
  .detail-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Simple public-site pages */
.home-intro { padding: 110px clamp(24px, 8vw, 130px); display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(50px, 8vw, 120px); background: var(--paper); }
.home-intro-copy h2 { margin: 22px 0; font-family: var(--serif); font-size: clamp(44px, 5vw, 76px); line-height: .97; font-weight: 700; letter-spacing: -.06em; text-transform: uppercase; }
.home-intro-copy p { margin: 0 0 34px; color: var(--muted); font-size: 17px; line-height: 1.75; }
.home-intro-image { height: 620px; margin: 0; overflow: hidden; border-radius: 18px; background: #0b1018; }
.home-intro-image img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center 54%; }
.home-paths { padding: 110px clamp(24px, 8vw, 130px); background: #edf3f7; }
.path-grid { margin-top: 52px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.path-grid a { min-height: 320px; padding: 34px; display: flex; flex-direction: column; border: 1px solid #d8e2e9; border-radius: 14px; background: white; transition: transform .25s, border-color .25s; }
.path-grid a:hover { transform: translateY(-7px); border-color: var(--gold); }
.path-grid span { color: var(--gold); font-size: 10px; font-weight: 800; letter-spacing: .18em; }
.path-grid h3 { margin: auto 0 14px; font-family: var(--serif); font-size: 29px; letter-spacing: -.04em; }
.path-grid p { color: var(--muted); line-height: 1.6; }
.path-grid b { margin-top: 14px; color: var(--gold); font-size: 12px; }
.page-hero { min-height: 620px; padding: 110px clamp(24px, 10vw, 160px); display: flex; flex-direction: column; justify-content: center; align-items: flex-start; color: white; background: radial-gradient(circle at 78% 36%, rgba(42,115,255,.25), transparent 27%), linear-gradient(rgba(100,231,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(100,231,255,.035) 1px, transparent 1px), #07090d; background-size: auto, 52px 52px, 52px 52px, auto; }
.page-hero h1 { max-width: 1050px; margin: 24px 0; font-family: var(--serif); font-size: clamp(56px, 7vw, 105px); line-height: .91; font-weight: 700; letter-spacing: -.065em; text-transform: uppercase; }
.page-hero > p, .page-hero > div > p { max-width: 680px; color: #a9b4c0; font-size: 18px; line-height: 1.7; }
.page-hero .button { margin-top: 24px; }
.page-hero-image { display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 6vw; }
.page-hero-image img { width: 100%; height: 480px; object-fit: cover; border-radius: 18px; border: 1px solid rgba(100,231,255,.16); }
.detail-section { padding: 110px clamp(24px, 8vw, 130px); display: grid; grid-template-columns: 1fr 1fr; gap: 10vw; align-items: start; }
.detail-section h2 { margin: 20px 0 0; font-family: var(--serif); font-size: clamp(40px, 4.5vw, 68px); line-height: 1; letter-spacing: -.055em; text-transform: uppercase; }
.check-list { margin: 0; padding: 0; list-style: none; }
.check-list li { padding: 21px 0; border-bottom: 1px solid #d9e2e8; font-weight: 700; }
.check-list li::before { content: "↗"; margin-right: 15px; color: var(--gold); }
.detail-dark { color: white; background: #090e16; }
.detail-dark > p { color: #9eabb8; font-size: 18px; line-height: 1.8; }
.activity-notice { position: fixed; z-index: 80; left: 22px; bottom: 22px; width: min(390px, calc(100vw - 28px)); padding: 16px 42px 16px 16px; display: grid; grid-template-columns: 44px 1fr; gap: 13px; align-items: center; color: #111720; background: rgba(255,255,255,.96); border: 1px solid #d9e2e8; border-radius: 14px; box-shadow: 0 18px 60px rgba(7,22,38,.18); backdrop-filter: blur(16px); opacity: 0; transform: translateY(18px); pointer-events: none; transition: opacity .35s ease, transform .35s ease; }
.activity-notice.is-visible { opacity: 1; transform: none; pointer-events: auto; }
.activity-avatar { width: 44px; height: 44px; display: grid; place-items: center; color: #061018; background: linear-gradient(135deg, var(--gold-light), #d9f9ff); border-radius: 50%; font-family: var(--serif); font-size: 13px; font-weight: 800; }
.activity-copy p { margin: 0 0 4px; font-size: 12px; font-weight: 700; line-height: 1.4; }
.activity-copy small { color: var(--muted); font-size: 10px; }
.activity-dismiss { position: absolute; top: 8px; right: 10px; padding: 5px; color: #7b8691; background: transparent; border: 0; font-size: 18px; line-height: 1; }

@media (max-width: 900px) {
  .home-intro, .page-hero-image, .detail-section { grid-template-columns: 1fr; }
  .home-intro-image { height: 520px; }
  .path-grid { grid-template-columns: 1fr; }
  .path-grid a { min-height: 240px; }
}

@media (max-width: 760px) {
  .home-intro, .home-paths, .detail-section { padding: 72px 24px; }
  .home-intro-image { height: 420px; }
  .page-hero { min-height: 540px; padding: 80px 24px; }
  .page-hero h1 { font-size: clamp(48px, 15vw, 72px); }
  .page-hero-image img { height: 420px; }
  .activity-notice { left: 14px; bottom: 14px; }
}

/* Futuristic MSD design system */
:root {
  --ink: #07090d;
  --ink-2: #0d1119;
  --forest: #101722;
  --ivory: #eff4f7;
  --paper: #f8fafb;
  --stone: #cfd8df;
  --muted: #66717d;
  --gold: #2a73ff;
  --gold-light: #64e7ff;
  --success: #17b889;
  --alert: #ff5f6d;
  --serif: "Space Grotesk", Arial, sans-serif;
  --sans: "Manrope", Arial, sans-serif;
  --shadow: 0 32px 90px rgba(0, 25, 65, .18);
}

body { letter-spacing: -.01em; }
.signal-bar { height: 32px; display: flex; align-items: center; justify-content: center; gap: 16px; color: #071018; background: var(--gold-light); font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.signal-bar span { width: 5px; height: 5px; border-radius: 50%; background: #071018; animation: pulse 1.8s infinite; }
@keyframes pulse { 50% { opacity: .25; transform: scale(.7); } }
.site-header { top: 0; height: 76px; background: rgba(7,9,13,.82); border-color: rgba(100,231,255,.13); }
.brand-mark { color: var(--gold-light); font-weight: 700; text-shadow: 0 0 24px rgba(100,231,255,.28); }
.brand-word, .main-nav { font-family: var(--sans); font-weight: 700; }
.main-nav { font-size: 12px; letter-spacing: .04em; }
.nav-login { border-color: rgba(100,231,255,.38); background: rgba(100,231,255,.06); border-radius: 999px; }

.hero { position: relative; min-height: calc(100vh - 108px); grid-template-columns: 54% 46%; background:
  linear-gradient(rgba(100,231,255,.035) 1px, transparent 1px),
  linear-gradient(90deg, rgba(100,231,255,.035) 1px, transparent 1px),
  radial-gradient(circle at 72% 40%, rgba(42,115,255,.18), transparent 30%), #07090d;
  background-size: 52px 52px, 52px 52px, auto, auto;
}
.hero::before { content: "MSD / 001"; position: absolute; left: 26px; bottom: 30px; color: rgba(255,255,255,.28); font-size: 8px; letter-spacing: .24em; writing-mode: vertical-rl; }
.hero-copy { padding: 9vh clamp(30px, 7vw, 118px); }
.eyebrow, .kicker { color: var(--gold-light); font-weight: 800; }
.eyebrow::after { width: 70px; background: linear-gradient(90deg, var(--gold-light), transparent); }
.hero h1 { margin: 24px 0; font-size: clamp(54px, 6.2vw, 104px); line-height: .91; font-weight: 700; letter-spacing: -.065em; text-transform: uppercase; }
.hero h1::first-line { color: white; }
.hero-copy > p { max-width: 660px; color: #a9b4c0; font-family: var(--sans); font-size: clamp(17px, 1.4vw, 22px); line-height: 1.7; }
.button { border-radius: 999px; font-family: var(--sans); font-size: 13px; font-weight: 800; letter-spacing: .02em; }
.button-gold { color: #041018; background: linear-gradient(120deg, #64e7ff, #2a73ff); box-shadow: 0 0 38px rgba(42,115,255,.25); }
.text-link { font-family: var(--sans); font-size: 13px; font-weight: 700; }
.hero-trust { margin-top: 46px; display: flex; align-items: center; gap: 12px; color: rgba(255,255,255,.45); font-size: 9px; font-weight: 700; letter-spacing: .16em; }
.hero-trust span { color: var(--gold-light); }
.hero-trust i { width: 32px; height: 1px; background: rgba(255,255,255,.18); }
.hero-visual { min-height: 660px; background:
  radial-gradient(circle at 50% 35%, rgba(100,231,255,.18), transparent 28%),
  linear-gradient(145deg, #151f2d, #080b10 62%); }
.hero-visual::before { background: linear-gradient(90deg, #07090d 0%, transparent 32%), linear-gradient(0deg, rgba(7,9,13,.65), transparent 35%); }
.hero-visual::after { content: ""; position: absolute; width: 72%; aspect-ratio: 1; border: 1px solid rgba(100,231,255,.16); border-radius: 50%; box-shadow: 0 0 0 56px rgba(100,231,255,.025), 0 0 0 112px rgba(100,231,255,.018); }
.portrait-placeholder { width: min(64%, 510px); border: 1px solid rgba(100,231,255,.22); border-radius: 22px; background: linear-gradient(160deg, rgba(42,115,255,.16), rgba(7,9,13,.7)); backdrop-filter: blur(12px); }
.portrait-placeholder::before { content: "MSD"; color: rgba(100,231,255,.06); font-weight: 700; }
.portrait-placeholder span { color: var(--gold-light); font-weight: 700; }
.portrait-placeholder strong { font-size: clamp(34px, 3.5vw, 58px); font-weight: 700; letter-spacing: -.05em; text-transform: uppercase; }
.hero-seal { border-color: rgba(100,231,255,.4); color: var(--gold-light); background: rgba(7,9,13,.86); box-shadow: 0 0 35px rgba(100,231,255,.12); }
.orbit-card { position: absolute; z-index: 3; left: 5%; top: 12%; width: 205px; padding: 18px; display: grid; gap: 8px; color: white; background: rgba(11,17,25,.78); border: 1px solid rgba(100,231,255,.2); border-radius: 14px; backdrop-filter: blur(16px); }
.orbit-card small { color: var(--gold-light); font-size: 8px; letter-spacing: .2em; }
.orbit-card strong { font-size: 13px; line-height: 1.4; }
.orbit-card > span { position: absolute; right: 15px; top: 14px; color: var(--gold-light); }

.proof-strip { padding-block: 30px; color: white; background: #0c1119; border-color: rgba(100,231,255,.12); }
.proof-item { border-color: rgba(255,255,255,.1); }
.proof-item strong { color: var(--gold-light); font-size: 40px; font-weight: 700; }
.proof-item span { color: rgba(255,255,255,.48); font-weight: 700; }
.founder-feature { padding: 120px clamp(24px, 8vw, 130px); display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: clamp(50px, 8vw, 130px); background: #f8fafb; overflow: hidden; }
.founder-collage { position: relative; min-height: 690px; }
.founder-photo { position: absolute; margin: 0; overflow: hidden; border-radius: 18px; background: #0c1119; box-shadow: 0 30px 80px rgba(7,22,38,.18); }
.founder-photo img { width: 100%; height: 100%; display: block; object-fit: cover; }
.founder-photo-main { inset: 0 16% 15% 0; }
.founder-photo-main img { object-position: center 55%; }
.founder-photo-wide { width: 58%; height: 34%; right: 0; bottom: 0; border: 8px solid #f8fafb; }
.founder-index { position: absolute; left: -28px; bottom: 12%; color: var(--gold); font-size: 8px; font-weight: 800; letter-spacing: .2em; transform: rotate(-90deg); }
.founder-copy h2 { max-width: 680px; margin: 24px 0; font-family: var(--serif); font-size: clamp(42px, 4.5vw, 72px); line-height: .98; font-weight: 700; letter-spacing: -.06em; text-transform: uppercase; }
.founder-copy > p { color: var(--muted); font-size: 16px; line-height: 1.8; }
.founder-quote { margin: 38px 0 34px; padding: 24px 0; display: flex; gap: 18px; border-block: 1px solid #d8e1e7; }
.founder-quote > span { color: var(--gold); font-family: var(--serif); font-size: 46px; line-height: .8; }
.founder-quote p { margin: 0; font-weight: 700; line-height: 1.6; }
.system-section, .results-section { padding-block: 120px; }
.section-heading h2, .programme-intro h2, .final-cta h2 { font-weight: 700; letter-spacing: -.055em; text-transform: uppercase; }
.section-heading p, .programme-intro p { font-size: 16px; }
.system-grid { gap: 15px; }
.system-card { min-height: 310px; padding: 34px; border: 1px solid #dce4e9 !important; border-radius: 14px; background: linear-gradient(145deg, #fff, #f0f5f8); transition: transform .25s, border-color .25s; }
.system-card:hover { transform: translateY(-8px); border-color: var(--gold) !important; }
.system-number { border: 0; border-radius: 10px; color: #071018; background: var(--gold-light); font-weight: 800; }
.system-card h3 { margin-top: 56px; font-weight: 700; letter-spacing: -.035em; }
.programme-band { position: relative; color: white; background:
  linear-gradient(rgba(100,231,255,.035) 1px, transparent 1px),
  linear-gradient(90deg, rgba(100,231,255,.035) 1px, transparent 1px), #080c12;
  background-size: 48px 48px; overflow: hidden; }
.programme-band::after { content: "MSD"; position: absolute; right: -30px; bottom: -90px; color: rgba(100,231,255,.04); font-size: 260px; font-weight: 700; letter-spacing: -.08em; }
.programme-list article { position: relative; z-index: 1; }
.programme-list article > span { color: var(--gold-light); font-weight: 700; }
.programme-list h3 { font-weight: 700; }
.results-section { background: #edf3f7; }
.testimonial-grid blockquote { border-radius: 14px; border-color: #dbe5eb; box-shadow: 0 20px 50px rgba(16,42,67,.05); }
.testimonial-grid blockquote p { font-family: var(--sans); font-size: 19px; font-weight: 600; }
.testimonial-grid footer { color: var(--gold); }
.lifestyle-banner { position: relative; min-height: 430px; margin-top: 80px; overflow: hidden; border-radius: 18px; background: #07090d; }
.lifestyle-banner::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,7,12,.94), rgba(4,7,12,.28) 70%, rgba(4,7,12,.05)); }
.lifestyle-banner img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 66%; }
.lifestyle-banner > div { position: relative; z-index: 1; max-width: 650px; padding: clamp(45px, 7vw, 90px); color: white; }
.lifestyle-banner h3 { margin: 20px 0 0; font-family: var(--serif); font-size: clamp(36px, 4vw, 62px); line-height: 1; letter-spacing: -.055em; text-transform: uppercase; }
.final-cta { background: radial-gradient(circle at 50% 0, rgba(42,115,255,.25), transparent 42%), #07090d; }
.site-footer { background: #05070a; }

/* Application, academy and admin inherit the same sharp visual system */
.application-body, .portal-body, .admin-body { background: #edf2f6; }
.application-header, .portal-topbar { background: rgba(248,250,251,.9); border-color: #d8e1e7; backdrop-filter: blur(18px); }
.application-story { background:
  linear-gradient(rgba(100,231,255,.04) 1px, transparent 1px),
  linear-gradient(90deg, rgba(100,231,255,.04) 1px, transparent 1px),
  radial-gradient(circle at 20% 75%, rgba(42,115,255,.25), transparent 28%), #070a10; background-size: 50px 50px, 50px 50px, auto, auto; }
.application-story::after { color: rgba(100,231,255,.035); font-weight: 700; }
.application-story h1 { font-weight: 700; letter-spacing: -.055em; text-transform: uppercase; }
.application-card { border: 1px solid #d8e2e9; border-radius: 18px; box-shadow: 0 35px 100px rgba(17,43,65,.13); }
.form-step h2, .application-success h2 { font-weight: 700; letter-spacing: -.045em; }
.progress-dots i { border-color: #b6c5cf; }
.progress-dots i.is-active, .progress-dots i.is-complete { border-color: var(--gold); background: var(--gold); box-shadow: 0 0 13px rgba(42,115,255,.4); }
.form-grid input, textarea, .choice-grid label > span { border-color: #d2dde4; border-radius: 10px; }
.form-grid input:focus, textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(42,115,255,.1); }
.choice-grid input:checked + span { border-color: var(--gold); background: #edf5ff; box-shadow: inset 3px 0 0 var(--gold); }

.portal-sidebar, .admin-sidebar { background: linear-gradient(180deg, #0d1420, #06080d); border-right: 1px solid rgba(100,231,255,.1); }
.portal-sidebar nav a, .admin-sidebar nav a { font-family: var(--sans); border-radius: 9px; }
.portal-sidebar nav a.is-active, .admin-sidebar nav a.is-active { background: linear-gradient(90deg, rgba(42,115,255,.55), rgba(100,231,255,.08)); }
.sidebar-member > span, .member-avatar { color: #061016; background: var(--gold-light); }
.member-welcome h1, .continue-card h2, .portal-section-heading h2, .member-panel h3, .admin-topbar h1, .panel-heading h2 { font-weight: 700; letter-spacing: -.045em; }
.momentum-card, .continue-card, .course-card, .member-panel, .metric-grid article, .pipeline-panel, .priorities-panel, .revenue-panel, .academy-stat { border-color: #d9e3e9; border-radius: 13px; overflow: hidden; }
.continue-art, .course-art { background: linear-gradient(145deg, #17283d, #071019); }
.course-gold .course-art { background: linear-gradient(145deg, #2a73ff, #132b6a); }
.course-ink .course-art { background: linear-gradient(145deg, #152131, #06090e); }
.progress-track { background: #dce5ea; border-radius: 99px; }
.progress-track i { background: linear-gradient(90deg, var(--gold), var(--gold-light)); }
.member-panel-dark, .next-call { background: #09101a; }
.admin-sidebar blockquote { color: var(--gold-light); border-color: rgba(100,231,255,.2); }
.metric-grid article > span { color: var(--gold); background: #e3efff; }
.status-paid { color: #087255; background: #d8f4ea; }
.status-call-booked { color: #125eb0; background: #dcecff; }
.bar-chart i { background: linear-gradient(180deg, var(--gold-light), var(--gold)); }

@media (max-width: 1100px) {
  .hero { grid-template-columns: 1fr; }
  .hero-copy { min-height: 650px; }
  .founder-feature { grid-template-columns: 1fr; }
  .founder-collage { min-height: 620px; }
}
@media (max-width: 760px) {
  .signal-bar { padding: 0 16px; font-size: 7px; text-align: center; }
  .site-header { top: 0; }
  .hero h1 { font-size: clamp(48px, 14vw, 72px); }
  .hero-trust { flex-wrap: wrap; }
  .orbit-card { display: none; }
  .main-nav { background: #070a10; }
  .founder-feature { padding: 75px 25px; }
  .founder-collage { min-height: 480px; }
  .founder-photo-main { inset: 0 8% 13% 0; }
  .founder-photo-wide { width: 62%; height: 31%; }
  .founder-index { display: none; }
  .lifestyle-banner { min-height: 520px; margin-top: 55px; }
  .lifestyle-banner::after { background: linear-gradient(0deg, rgba(4,7,12,.95), rgba(4,7,12,.18)); }
  .lifestyle-banner > div { position: absolute; left: 0; right: 0; bottom: 0; }
}

/* Build With MSD — black and gold identity */
:root {
  --ink: #0a0a09;
  --ink-2: #14120f;
  --forest: #17130d;
  --ivory: #f3eee4;
  --paper: #fbf8f1;
  --stone: #d8cdbb;
  --muted: #756d61;
  --gold: #b88942;
  --gold-light: #e6c477;
  --shadow: 0 30px 90px rgba(29, 21, 9, .17);
}
.signal-bar { color: #120f09; background: linear-gradient(90deg, #a87331, #efd58f, #a87331); }
.signal-bar span { background: #171109; }
.site-header { background: rgba(7,7,6,.92); border-color: rgba(230,196,119,.14); }
.brand-word { color: #f8f1e3; }
.brand-dark .brand-word { color: var(--ink); }
.main-nav a:hover { color: var(--gold-light); }
.nav-login { border-color: rgba(230,196,119,.45); background: rgba(230,196,119,.06); }
.button-gold { color: #151007; background: linear-gradient(120deg, #f0d993, #b27c35); box-shadow: 0 12px 38px rgba(184,137,66,.24); }
.hero { background: linear-gradient(rgba(230,196,119,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(230,196,119,.035) 1px, transparent 1px), radial-gradient(circle at 72% 40%, rgba(184,137,66,.18), transparent 30%), #080807; background-size: 52px 52px, 52px 52px, auto, auto; }
.hero-visual { background: radial-gradient(circle at 50% 35%, rgba(230,196,119,.2), transparent 28%), linear-gradient(145deg, #251c10, #090806 62%); }
.hero-visual::after { border-color: rgba(230,196,119,.18); box-shadow: 0 0 0 56px rgba(230,196,119,.025), 0 0 0 112px rgba(230,196,119,.018); }
.hero-seal { border-color: rgba(230,196,119,.45); box-shadow: 0 0 35px rgba(230,196,119,.13); }
.orbit-card { background: rgba(14,11,7,.82); border-color: rgba(230,196,119,.22); }
.proof-strip { background: #100e0a; border-color: rgba(230,196,119,.13); }
.home-intro, .founder-feature { background: var(--paper); }
.home-paths, .results-section { background: #f0eadf; }
.path-grid a, .system-card, .testimonial-grid blockquote { border-color: #dfd3c0; background: #fffdf8; box-shadow: 0 18px 50px rgba(57,41,17,.06); }
.page-hero { background: radial-gradient(circle at 78% 36%, rgba(184,137,66,.24), transparent 27%), linear-gradient(rgba(230,196,119,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(230,196,119,.035) 1px, transparent 1px), #080807; background-size: auto, 52px 52px, 52px 52px, auto; }
.page-hero-image img { border-color: rgba(230,196,119,.2); }
.programme-band { background: linear-gradient(rgba(230,196,119,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(230,196,119,.035) 1px, transparent 1px), #0b0a08; background-size: 48px 48px; }
.programme-band::after { color: rgba(230,196,119,.045); }
.final-cta { background: radial-gradient(circle at 50% 0, rgba(184,137,66,.24), transparent 42%), #080807; }
.site-footer { background: #060605; }
.application-body, .portal-body, .admin-body { background: #f0ebe1; }
.application-header, .portal-topbar { background: rgba(251,248,241,.94); border-color: #dfd4c2; }
.application-story { background: linear-gradient(rgba(230,196,119,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(230,196,119,.04) 1px, transparent 1px), radial-gradient(circle at 20% 75%, rgba(184,137,66,.25), transparent 28%), #090806; background-size: 50px 50px, 50px 50px, auto, auto; }
.application-story::after { color: rgba(230,196,119,.04); }
.application-card, .momentum-card, .continue-card, .course-card, .member-panel, .metric-grid article, .pipeline-panel, .priorities-panel, .revenue-panel, .academy-stat { border-color: #ded3c1; background-color: var(--paper); }
.progress-dots i.is-active, .progress-dots i.is-complete { box-shadow: 0 0 13px rgba(184,137,66,.38); }
.form-grid input:focus, textarea:focus { box-shadow: 0 0 0 3px rgba(184,137,66,.11); }
.choice-grid input:checked + span { background: #fbf2df; }
.portal-sidebar, .admin-sidebar { background: linear-gradient(180deg, #15110b, #060605); border-right-color: rgba(230,196,119,.12); }
.portal-sidebar nav a.is-active, .admin-sidebar nav a.is-active { background: linear-gradient(90deg, rgba(184,137,66,.62), rgba(230,196,119,.08)); }
.sidebar-member > span, .member-avatar { color: #171109; background: var(--gold-light); }
.continue-art, .course-art { background: linear-gradient(145deg, #2a2113, #090806); }
.course-gold .course-art { background: linear-gradient(145deg, #c0944e, #5f421d); }
.course-ink .course-art { background: linear-gradient(145deg, #211b12, #070605); }

/* Course player */
.course-player-body { min-height: 100vh; margin: 0; color: #f7f2e9; background: #080705; font-family: var(--sans); }
.member-loading > :not(.member-access-gate) { visibility: hidden; }
.member-access-gate { position: fixed; inset: 0; z-index: 9999; padding: 32px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: #17120b; background: #f0ebe1; }
.member-access-gate-dark { color: #f7f2e9; background: #080705; }
.member-access-gate img { width: 84px; height: 84px; margin-bottom: 25px; }
.member-access-gate > span { color: var(--gold); font-size: 11px; font-weight: 800; letter-spacing: .22em; }
.member-access-gate h1 { max-width: 680px; margin: 15px 0 10px; font-family: var(--display); font-size: clamp(34px, 6vw, 68px); line-height: .98; text-transform: uppercase; }
.member-access-gate p { max-width: 590px; margin: 0 0 25px; color: #7b7060; font-size: 16px; line-height: 1.7; }
.member-access-gate-dark p { color: #aaa092; }
.member-access-status { padding: 7px 10px; color: #8d6431; background: #f5ead9; border-radius: 999px; font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.member-access-status.is-active { color: #17653a; background: #e0f2e7; }
.member-create-form { margin: 24px 0; grid-template-columns: minmax(160px, .7fr) minmax(220px, 1fr) auto; }
.member-create-form > span { grid-column: 1 / -1; color: #6f6658; font-size: 12px; }
@media (max-width: 760px) { .member-create-form { grid-template-columns: 1fr; } }
.course-player-header { position: sticky; top: 0; z-index: 20; height: 74px; padding: 0 32px; display: flex; align-items: center; justify-content: space-between; background: rgba(8,7,5,.94); border-bottom: 1px solid rgba(230,196,119,.17); backdrop-filter: blur(18px); }
.course-player-header .brand-word { color: #f7f2e9; }
.course-header-actions { display: flex; align-items: center; gap: 20px; color: #a79d8c; font-size: 12px; }
.course-header-actions a { padding: 10px 14px; color: var(--gold-light); border: 1px solid rgba(230,196,119,.32); border-radius: 999px; }
.course-shell { min-height: calc(100vh - 74px); display: grid; grid-template-columns: 370px minmax(0, 1fr); }
.course-syllabus { height: calc(100vh - 74px); position: sticky; top: 74px; overflow-y: auto; background: #0d0b08; border-right: 1px solid rgba(230,196,119,.14); }
.course-syllabus-intro { padding: 30px 24px 24px; border-bottom: 1px solid rgba(230,196,119,.13); }
.course-syllabus-intro > span, .lesson-meta, .lesson-notes > span { color: var(--gold-light); font-size: 10px; font-weight: 700; letter-spacing: .18em; }
.course-syllabus-intro h1 { margin: 9px 0 18px; font-family: var(--display); font-size: 24px; }
.course-total-progress { height: 3px; overflow: hidden; background: #29251f; }
.course-total-progress i { display: block; width: 0; height: 100%; background: linear-gradient(90deg, #a8782f, #f0ce7f); transition: width .3s ease; }
.syllabus-module { border-bottom: 1px solid rgba(230,196,119,.12); }
.syllabus-module-heading { width: 100%; padding: 19px 22px; display: grid; grid-template-columns: 1fr auto; gap: 4px 10px; text-align: left; color: #f7f2e9; background: transparent; border: 0; cursor: pointer; }
.syllabus-module-heading span { grid-column: 1 / -1; color: #b68a46; font-size: 9px; letter-spacing: .16em; }
.syllabus-module-heading strong { font-size: 13px; }
.syllabus-module-heading i { color: #7f776c; font-size: 11px; font-style: normal; }
.syllabus-lessons button { width: 100%; padding: 12px 22px; display: grid; grid-template-columns: 28px 1fr; gap: 8px; align-items: start; text-align: left; color: #9d968b; background: transparent; border: 0; cursor: pointer; }
.syllabus-lessons button:hover, .syllabus-lessons button.is-current { color: #fff; background: linear-gradient(90deg, rgba(190,147,74,.22), transparent); }
.syllabus-lessons button:disabled { opacity: .48; cursor: not-allowed; }
.syllabus-lessons button span { color: #c99b52; font-size: 10px; }
.syllabus-lessons button b { font-size: 12px; font-weight: 500; line-height: 1.45; }
.syllabus-lessons button small { grid-column: 2; color: #857a69; font-size: 9px; text-transform: uppercase; letter-spacing: .12em; }
.syllabus-lessons button.is-complete span { color: #e6c477; }
.lesson-stage { width: min(1060px, calc(100% - 64px)); margin: 0 auto; padding: 54px 0 80px; }
.lesson-meta { display: flex; justify-content: space-between; gap: 20px; }
.lesson-meta span:last-child { color: #777065; }
.lesson-stage h2 { margin: 12px 0 28px; max-width: 900px; font-family: var(--display); font-size: clamp(32px, 4vw, 56px); line-height: 1.03; letter-spacing: -.045em; }
.lesson-video-wrap { min-height: 420px; display: grid; place-items: center; overflow: hidden; background: #000; border: 1px solid rgba(230,196,119,.22); border-radius: 14px; box-shadow: 0 34px 90px rgba(0,0,0,.45); }
.lesson-video-wrap video { width: 100%; max-height: 70vh; background: #000; }
.lesson-unavailable { padding: 60px 25px; text-align: center; color: #aaa196; }
.lesson-unavailable strong { display: block; color: #f7f2e9; font-size: 21px; }
.lesson-controls { padding: 22px 0; display: flex; justify-content: space-between; gap: 12px; border-bottom: 1px solid rgba(230,196,119,.13); }
.lesson-controls button { padding: 12px 16px; color: #d9d1c5; background: #14110d; border: 1px solid #30291f; border-radius: 8px; cursor: pointer; }
.lesson-controls button:disabled { opacity: .35; cursor: not-allowed; }
.lesson-controls .complete-lesson { color: #100d08; background: linear-gradient(135deg, #e6c477, #b47d2f); border-color: transparent; font-weight: 700; }
.lesson-notes { margin-top: 34px; }
.lesson-notes textarea { width: 100%; min-height: 140px; margin-top: 12px; padding: 18px; resize: vertical; color: #eee8de; background: #100e0b; border: 1px solid #30291f; border-radius: 10px; font: inherit; }
.lesson-notes small { display: block; margin-top: 7px; color: #6e685e; }
@media (max-width: 900px) {
  .course-player-header { padding: 0 16px; }
  .course-header-actions span { display: none; }
  .course-shell { display: block; }
  .course-syllabus { position: static; height: auto; max-height: 48vh; border-right: 0; border-bottom: 1px solid rgba(230,196,119,.14); }
  .lesson-stage { width: calc(100% - 30px); padding-top: 34px; }
  .lesson-video-wrap { min-height: 220px; }
  .lesson-controls { flex-wrap: wrap; }
}
.progress-track { background: #e4dbcc; }
.member-panel-dark, .next-call { background: #0d0b08; }
.metric-grid article > span { color: var(--gold); background: #f1e5cd; }
.bar-chart i, .stage-bars em, .progress-track i { background: linear-gradient(90deg, #a87331, #efd58f); }
.crm-login-body { background: #080807; }
.crm-login-brand { background: radial-gradient(circle at 25% 75%, rgba(184,137,66,.28), transparent 30%), linear-gradient(rgba(230,196,119,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(230,196,119,.035) 1px, transparent 1px), #080807; background-size: auto, 50px 50px, 50px 50px, auto; }
.crm-login-panel { background: #eee7da; }
.crm-login-card, .crm-drawer { background: var(--paper); }
.crm-import-shell { min-height: 100vh; padding: 70px 24px; display: grid; place-items: center; background: radial-gradient(circle at 50% 20%, rgba(184,137,66,.18), transparent 34%), #080807; }
.crm-import-shell .crm-login-card { width: min(820px, 100%); }
.crm-import-shell textarea { width: 100%; padding: 14px; color: var(--ink); background: white; border: 1px solid #d8cdbb; border-radius: 8px; font: 11px/1.5 monospace; }
.crm-import-shell form { display: grid; gap: 14px; }
.crm-import-shell form label { display: grid; gap: 8px; color: var(--muted); font-size: 11px; }
.crm-import-shell .text-link { margin-top: 22px; color: var(--gold); }
.crm-login-card input:focus { box-shadow: 0 0 0 3px rgba(184,137,66,.11); }
.activity-avatar { color: #171109; background: linear-gradient(135deg, #b88942, #f1db9b); }
.activity-notice { border-color: #dfd3c1; background: rgba(255,253,248,.97); box-shadow: 0 18px 60px rgba(38,27,11,.2); }

/* Homepage cinematic background */
.hero.hero-video { position: relative; min-height: calc(100vh - 108px); display: flex; align-items: center; overflow: hidden; background: #050504; }
.hero-background-video { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; }
.hero-video-tint { position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(3,3,3,.68) 0%, rgba(3,3,3,.38) 48%, rgba(3,3,3,.2) 100%); }
.hero.hero-video::before { z-index: 3; }
.hero.hero-video .hero-copy { position: relative; z-index: 2; width: min(900px, 72%); min-height: auto; padding-block: clamp(90px, 14vh, 155px); text-shadow: 0 3px 28px rgba(0,0,0,.46); }
.hero.hero-video .hero-copy > p { color: rgba(255,255,255,.78); }
.hero.hero-video .button-gold { text-shadow: none; }

@media (max-width: 760px) {
  .hero.hero-video { min-height: calc(100svh - 100px); }
  .hero.hero-video .hero-copy { width: 100%; padding-block: 90px; }
  .hero-video-tint { background: linear-gradient(90deg, rgba(3,3,3,.74), rgba(3,3,3,.4)); }
  .hero-background-video { object-position: 58% center; }
}

/* Shared founder welcome video */
.welcome-section {
  padding: 110px clamp(24px, 9vw, 150px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 480px);
  align-items: center;
  gap: clamp(55px, 9vw, 140px);
  color: #f8f1e3;
  background:
    radial-gradient(ellipse at 78% 72%, rgba(184,137,66,.16), transparent 42%),
    linear-gradient(145deg, #050505 0%, #090806 58%, #0d0a06 100%);
}
.welcome-copy { max-width: 660px; }
.welcome-copy h2 { margin: 24px 0; font-family: var(--serif); font-size: clamp(46px, 5vw, 78px); line-height: .96; letter-spacing: -.06em; text-transform: uppercase; }
.welcome-copy p { max-width: 590px; margin: 0 0 34px; color: rgba(255,255,255,.62); font-size: 17px; line-height: 1.75; }
.welcome-apply-link { color: var(--gold-light); }
.welcome-video-card { position: relative; width: min(100%, 460px); aspect-ratio: 4 / 5.7; margin-inline: auto; overflow: hidden; border: 1px solid rgba(230,196,119,.3); border-radius: 28px; background: #15110b; box-shadow: 0 38px 100px rgba(0,0,0,.46); isolation: isolate; }
.welcome-video-card::after { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(5,5,4,.12), rgba(5,5,4,.1) 42%, rgba(5,5,4,.86)); }
.welcome-video-card video { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; filter: saturate(.85) contrast(1.04); }
.welcome-video-play { position: absolute; z-index: 3; left: 50%; top: 50%; display: grid; justify-items: center; gap: 12px; color: #171109; background: transparent; border: 0; transform: translate(-50%, -50%); }
.welcome-video-play > span { width: 90px; height: 90px; display: grid; place-items: center; padding-left: 5px; border-radius: 50%; background: linear-gradient(135deg, #f0d993, #b27c35); box-shadow: 0 0 0 12px rgba(230,196,119,.1), 0 18px 45px rgba(0,0,0,.35); font-size: 28px; transition: transform .25s, box-shadow .25s; }
.welcome-video-play small { color: white; font-size: 8px; font-weight: 800; letter-spacing: .18em; text-shadow: 0 2px 15px #000; }
.welcome-video-play:hover > span { transform: scale(1.06); box-shadow: 0 0 0 16px rgba(230,196,119,.12), 0 18px 45px rgba(0,0,0,.35); }
.welcome-video-label { position: absolute; z-index: 2; left: 30px; right: 30px; bottom: 28px; display: grid; gap: 8px; color: white; }
.welcome-video-label small { color: var(--gold-light); font-size: 9px; font-weight: 800; letter-spacing: .24em; }
.welcome-video-label strong { font-family: var(--serif); font-size: 24px; letter-spacing: -.03em; }
.welcome-video-status { position: absolute; z-index: 4; left: 18px; right: 18px; top: 18px; margin: 0; padding: 12px 14px; color: #f8edd6; background: rgba(8,7,5,.88); border: 1px solid rgba(230,196,119,.24); border-radius: 10px; font-size: 11px; line-height: 1.5; text-align: center; backdrop-filter: blur(12px); }
.welcome-video-card.is-playing::after, .welcome-video-card.is-playing .welcome-video-play, .welcome-video-card.is-playing .welcome-video-label { opacity: 0; pointer-events: none; }
.welcome-video-card-compact { width: min(100%, 390px); aspect-ratio: 16 / 10; margin: 28px 0; border-radius: 16px; box-shadow: 0 24px 60px rgba(0,0,0,.34); }
.welcome-video-card-compact .welcome-video-play > span { width: 62px; height: 62px; font-size: 20px; }
.welcome-video-card-compact .welcome-video-play small { display: none; }
.welcome-video-card-compact .welcome-video-label { left: 20px; bottom: 17px; gap: 4px; }
.welcome-video-card-compact .welcome-video-label small { font-size: 7px; }
.welcome-video-card-compact .welcome-video-label strong { font-size: 17px; }
.application-welcome-card { width: min(100%, 290px); aspect-ratio: 9 / 16; margin: 32px 0 4px; border-radius: 20px; box-shadow: 0 28px 70px rgba(0,0,0,.4); }
.application-welcome-card .welcome-video-play > span { width: 70px; height: 70px; font-size: 22px; }
.application-welcome-card .welcome-video-label { left: 20px; right: 20px; bottom: 19px; gap: 5px; }
.application-welcome-card .welcome-video-label small { font-size: 7px; }
.application-welcome-card .welcome-video-label strong { font-size: 18px; }
.application-story { justify-content: flex-start; }
.application-story .story-proof { margin-top: auto; }

@media (max-width: 1100px) {
  .welcome-section { grid-template-columns: 1fr; }
  .welcome-copy { margin-inline: auto; text-align: center; }
  .welcome-copy p { margin-inline: auto; }
  .application-story { min-height: auto; }
  .welcome-video-card-compact { width: min(100%, 520px); aspect-ratio: 16 / 9; }
}

@media (max-width: 760px) {
  .welcome-section { padding: 75px 24px; gap: 44px; }
  .welcome-video-card { width: min(100%, 390px); border-radius: 21px; }
  .welcome-video-play > span { width: 74px; height: 74px; font-size: 23px; }
  .welcome-video-card-compact { aspect-ratio: 16 / 10; margin-block: 30px; }
  .application-welcome-card { width: min(100%, 330px); aspect-ratio: 9 / 16; margin: 30px auto 6px; }
  .application-story { padding-bottom: 55px; }
}

/* Expanded content and conversion sections */
.home-skills { padding: 115px clamp(24px, 8vw, 130px); color: white; background: radial-gradient(circle at 85% 12%, rgba(184,137,66,.19), transparent 28%), #0b0a08; }
.home-skills-intro { max-width: 960px; }
.home-skills-intro h2 { max-width: 900px; margin: 22px 0 24px; font-family: var(--serif); font-size: clamp(48px, 6vw, 90px); line-height: .94; letter-spacing: -.065em; text-transform: uppercase; }
.home-skills-intro p { max-width: 760px; margin: 0; color: rgba(255,255,255,.63); font-size: 17px; line-height: 1.75; }
.home-skills-grid { margin: 64px 0 42px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: rgba(230,196,119,.2); border: 1px solid rgba(230,196,119,.2); }
.home-skills-grid article { min-height: 390px; padding: 30px 32px 34px; background: #0b0a08; }
.home-skills-grid article > span { color: var(--gold-light); font-size: 10px; font-weight: 800; letter-spacing: .2em; }
.home-skills-grid h3 { margin: 54px 0 14px; font-family: var(--serif); font-size: 28px; line-height: 1.05; letter-spacing: -.045em; }
.home-skills-grid p { margin: 0; color: rgba(255,255,255,.57); font-size: 13px; line-height: 1.72; }
.home-skills-grid ul, .skill-pillars ul { margin: 24px 0 0; padding: 18px 0 0; list-style: none; border-top: 1px solid rgba(230,196,119,.16); }
.home-skills-grid li, .skill-pillars li { position: relative; padding: 5px 0 5px 16px; color: rgba(255,255,255,.7); font-size: 11px; line-height: 1.5; }
.home-skills-grid li::before, .skill-pillars li::before { content: "↗"; position: absolute; left: 0; color: var(--gold-light); }
.home-value-band { padding: 105px clamp(24px, 8vw, 130px); color: white; background: #0b0a08; }
.home-value-band .section-heading { max-width: 850px; }
.home-value-band .section-heading p { color: rgba(255,255,255,.58); }
.value-grid { margin-top: 55px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: rgba(230,196,119,.16); border: 1px solid rgba(230,196,119,.16); }
.value-grid article { min-height: 520px; overflow: hidden; background: #0b0a08; }
.value-card-image { position: relative; height: 245px; margin: 0; overflow: hidden; background: #17130d; }
.value-card-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,5,4,.06), rgba(5,5,4,.18)); pointer-events: none; }
.value-card-image img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.78) contrast(1.04); transition: transform .7s cubic-bezier(.2,.7,.2,1), filter .4s ease; }
.value-card-image-roadmap img { object-position: center 58%; }
.value-card-image-feedback img { object-position: center 58%; }
.value-card-image-accountability img { object-position: center 45%; }
.value-grid article:hover .value-card-image img { transform: scale(1.035); filter: saturate(.92) contrast(1.06); }
.value-card-copy { min-height: 275px; padding: 30px 38px 38px; }
.value-card-copy > span { color: var(--gold-light); font-size: 10px; font-weight: 800; letter-spacing: .18em; }
.value-grid h3 { margin: 38px 0 14px; font-family: var(--serif); font-size: 26px; letter-spacing: -.04em; }
.value-grid p { margin: 0; color: rgba(255,255,255,.56); font-size: 14px; line-height: 1.7; }

.roadmap-section, .faq-section, .principles-section, .result-method { padding: 115px clamp(24px, 8vw, 130px); background: var(--paper); }
.roadmap-grid { margin-top: 58px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.roadmap-grid article { min-height: 300px; padding: 34px; border: 1px solid #dfd3c0; border-radius: 14px; background: #fffdf8; box-shadow: 0 18px 45px rgba(57,41,17,.045); }
.roadmap-grid article > span { color: var(--gold); font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.roadmap-grid h3 { margin: 72px 0 14px; font-family: var(--serif); font-size: 25px; letter-spacing: -.04em; }
.roadmap-grid p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.72; }
.transferable-skills { padding: 118px clamp(24px, 8vw, 130px); color: white; overflow: hidden; background: radial-gradient(circle at 86% 16%, rgba(184,137,66,.2), transparent 27%), linear-gradient(135deg, #080705 0%, #12100c 58%, #070604 100%); }
.transferable-skills-intro { max-width: 970px; }
.transferable-skills-intro h2 { max-width: 900px; margin: 22px 0 26px; font-family: var(--serif); font-size: clamp(48px, 6.2vw, 94px); line-height: .93; letter-spacing: -.065em; text-transform: uppercase; }
.transferable-skills-intro > p { max-width: 720px; margin: 0; color: rgba(255,255,255,.64); font-size: 17px; line-height: 1.75; }
.skill-pillars { margin-top: 70px; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(230,196,119,.24); border-bottom: 1px solid rgba(230,196,119,.24); }
.skill-pillars article { min-height: 430px; padding: 30px 30px 36px; border-right: 1px solid rgba(230,196,119,.18); border-bottom: 1px solid rgba(230,196,119,.18); }
.skill-pillars article:nth-child(3n) { border-right: 0; }
.skill-pillars article:nth-child(n+4) { border-bottom: 0; }
.skill-pillars article > span { color: var(--gold-light); font-size: 10px; font-weight: 800; letter-spacing: .2em; }
.skill-pillars h3 { margin: 48px 0 16px; font-family: var(--serif); font-size: 25px; line-height: 1.08; letter-spacing: -.04em; }
.skill-pillars p { margin: 0; color: rgba(255,255,255,.56); font-size: 13px; line-height: 1.72; }
.skills-pathways { margin-top: 80px; padding: 62px; display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(50px, 9vw, 140px); color: var(--ink); border-radius: 18px; background: linear-gradient(120deg, #f7f0e5, #fffaf1); box-shadow: 0 30px 90px rgba(0,0,0,.24); }
.skills-pathways h3 { margin: 20px 0; font-family: var(--serif); font-size: clamp(38px, 4vw, 62px); line-height: .98; letter-spacing: -.055em; text-transform: uppercase; }
.skills-pathways p { margin: 0; color: var(--muted); line-height: 1.72; }
.skills-pathways ul { margin: 0; padding: 0; list-style: none; border-top: 1px solid #dacbb4; }
.skills-pathways li { padding: 22px 0; display: grid; grid-template-columns: minmax(155px, .65fr) 1fr; gap: 28px; border-bottom: 1px solid #dacbb4; }
.skills-pathways li b { font-family: var(--serif); font-size: 17px; }
.skills-pathways li span { color: var(--muted); font-size: 13px; line-height: 1.6; }
.skills-disclaimer { max-width: 780px; margin: 26px 0 0; color: rgba(255,255,255,.42); font-size: 11px; line-height: 1.65; }
.support-loop { padding: 110px clamp(24px, 8vw, 130px); display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(50px, 9vw, 135px); color: white; background: radial-gradient(circle at 20% 50%, rgba(184,137,66,.18), transparent 30%), #090806; }
.support-loop h2 { margin: 22px 0; font-family: var(--serif); font-size: clamp(44px, 5vw, 74px); line-height: .96; letter-spacing: -.06em; text-transform: uppercase; }
.support-loop p { color: rgba(255,255,255,.6); font-size: 16px; line-height: 1.75; }
.support-loop ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(230,196,119,.2); }
.support-loop li { padding: 24px 0; display: grid; grid-template-columns: 120px 1fr; gap: 25px; border-bottom: 1px solid rgba(230,196,119,.2); }
.support-loop li b { color: var(--gold-light); font-family: var(--serif); font-size: 20px; }
.support-loop li span { color: rgba(255,255,255,.63); font-size: 14px; line-height: 1.6; }
.faq-section { background: #f0eadf; }
.faq-list { max-width: 980px; margin: 55px auto 0; border-top: 1px solid #d8cbb7; }
.faq-list details { border-bottom: 1px solid #d8cbb7; }
.faq-list summary { padding: 25px 0; display: flex; justify-content: space-between; gap: 25px; cursor: pointer; font-family: var(--serif); font-size: 20px; font-weight: 700; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: var(--gold); font-size: 26px; font-weight: 400; transition: transform .2s; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { max-width: 820px; margin: -5px 0 25px; color: var(--muted); font-size: 14px; line-height: 1.75; }

.founder-timeline { padding: 110px clamp(24px, 8vw, 130px); color: white; background: #090806; }
.timeline-grid { margin-top: 55px; display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid rgba(230,196,119,.2); }
.timeline-grid article { padding: 44px 38px; border-right: 1px solid rgba(230,196,119,.2); }
.timeline-grid article:last-child { border-right: 0; }
.timeline-grid strong { display: block; color: var(--gold-light); font-family: var(--serif); font-size: 62px; letter-spacing: -.06em; }
.timeline-grid span { display: block; margin: 8px 0 22px; color: rgba(255,255,255,.46); font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.timeline-grid p { color: rgba(255,255,255,.62); font-size: 14px; line-height: 1.72; }
.principles-section { background: #f0eadf; }
.principles-grid { margin-top: 50px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.principles-grid article { padding: 38px; background: #fffdf8; border: 1px solid #dfd3c0; border-radius: 14px; }
.principles-grid span, .proof-placeholders article > span { color: var(--gold); font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.principles-grid h3 { margin: 55px 0 13px; font-family: var(--serif); font-size: 25px; }
.principles-grid p { color: var(--muted); font-size: 14px; line-height: 1.7; }

.proof-placeholders { margin-top: 55px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.proof-placeholders article { min-height: 330px; padding: 36px; display: flex; flex-direction: column; background: #fffdf8; border: 1px dashed #cdbb9f; border-radius: 14px; }
.proof-placeholders h3 { margin: 65px 0 14px; font-family: var(--serif); font-size: 26px; letter-spacing: -.04em; }
.proof-placeholders p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
.proof-placeholders b { margin-top: auto; padding-top: 24px; color: #9b8b74; border-top: 1px solid #e3d9c9; font-size: 8px; letter-spacing: .16em; }
.result-method { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; }
.result-method h2 { margin: 20px 0 0; font-family: var(--serif); font-size: clamp(40px, 4.5vw, 68px); line-height: .98; letter-spacing: -.055em; text-transform: uppercase; }
.result-method-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.result-method-grid article { padding: 26px; border: 1px solid #dfd3c0; border-radius: 12px; }
.result-method-grid b { color: var(--gold); font-size: 10px; }
.result-method-grid h3 { margin: 30px 0 10px; font-family: var(--serif); font-size: 20px; }
.result-method-grid p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }

/* Application background video */
.application-story { isolation: isolate; }
.application-background-video { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.application-story > .application-video-tint { position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, rgba(4,4,3,.73), rgba(4,4,3,.58) 48%, rgba(4,4,3,.82)); }
.application-story > div:not(.application-video-tint), .application-expectations, .application-story .story-proof { position: relative; z-index: 2; }
.application-story::after { z-index: 1; }
.application-expectations { width: min(100%, 530px); margin: 36px 0; padding: 0; display: grid; list-style: none; border-top: 1px solid rgba(230,196,119,.3); }
.application-expectations li { padding: 16px 0; display: grid; grid-template-columns: 130px 1fr; gap: 20px; border-bottom: 1px solid rgba(230,196,119,.3); }
.application-expectations b { color: var(--gold-light); font-size: 11px; }
.application-expectations span { color: rgba(255,255,255,.67); font-size: 11px; }
.application-scroll-cta { margin-top: 28px; text-shadow: none; }
#application-form-card { scroll-margin-top: 24px; }
html { scroll-behavior: smooth; }

@media (max-width: 980px) {
  .value-grid, .roadmap-grid, .timeline-grid, .principles-grid, .proof-placeholders { grid-template-columns: 1fr; }
  .home-skills-grid { grid-template-columns: 1fr 1fr; }
  .skill-pillars { grid-template-columns: 1fr 1fr; }
  .skill-pillars article, .skill-pillars article:nth-child(3n) { border-right: 1px solid rgba(230,196,119,.18); border-bottom: 1px solid rgba(230,196,119,.18); }
  .skill-pillars article:nth-child(2n) { border-right: 0; }
  .skill-pillars article:nth-child(n+5) { border-bottom: 0; }
  .skills-pathways { grid-template-columns: 1fr; }
  .value-grid article, .roadmap-grid article { min-height: 240px; }
  .value-card-image { height: clamp(270px, 48vw, 410px); }
  .value-card-copy { min-height: 0; }
  .value-grid h3 { margin-top: 34px; }
  .roadmap-grid h3 { margin-top: 48px; }
  .support-loop, .result-method { grid-template-columns: 1fr; }
  .timeline-grid article { border-right: 0; border-bottom: 1px solid rgba(230,196,119,.2); }
  .timeline-grid article:last-child { border-bottom: 0; }
}

@media (max-width: 760px) {
  .home-skills, .home-value-band, .roadmap-section, .faq-section, .founder-timeline, .principles-section, .result-method, .support-loop, .transferable-skills { padding: 75px 24px; }
  .home-skills-grid { margin-top: 44px; grid-template-columns: 1fr; }
  .home-skills-grid article { min-height: 330px; }
  .skill-pillars { margin-top: 48px; grid-template-columns: 1fr; }
  .skill-pillars article, .skill-pillars article:nth-child(2), .skill-pillars article:nth-child(3n) { min-height: 360px; border-right: 0; border-bottom: 1px solid rgba(230,196,119,.18); }
  .skill-pillars article:last-child { border-bottom: 0; }
  .skill-pillars h3 { margin-top: 50px; }
  .skills-pathways { margin-top: 52px; padding: 34px 24px; }
  .skills-pathways li { grid-template-columns: 1fr; gap: 8px; }
  .value-grid { margin-top: 40px; }
  .support-loop li { grid-template-columns: 88px 1fr; }
  .result-method-grid { grid-template-columns: 1fr; }
  .application-background-video { object-position: 58% center; }
  .application-story > .application-video-tint { background: rgba(4,4,3,.67); }
  .application-expectations li { grid-template-columns: 110px 1fr; }
  .application-scroll-cta { width: 100%; min-height: 56px; justify-content: center; }
  #application-form-card { scroll-margin-top: 12px; }
}
/* Application page — direct-response story sections */
.application-founder-section,
.application-lifestyle-section,
.application-next-steps {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
}

.application-founder-section {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(48px, 7vw, 104px);
  align-items: center;
  padding: 130px 0;
}

.application-founder-visual { position: relative; min-height: 650px; }
.application-founder-visual figure { margin: 0; overflow: hidden; border: 1px solid rgba(203, 164, 80, 0.28); background: #0b0b0b; }
.application-founder-visual img,
.application-lifestyle-image img { width: 100%; height: 100%; display: block; object-fit: cover; }
.application-founder-primary { position: absolute; inset: 0 15% 8% 0; border-radius: 2px; }
.application-founder-primary img { object-position: center 32%; }
.application-founder-primary::after,
.application-lifestyle-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.92)); pointer-events: none; }
.application-founder-primary figcaption,
.application-lifestyle-image figcaption { position: absolute; z-index: 2; left: 28px; right: 28px; bottom: 26px; display: flex; flex-direction: column; gap: 7px; }
.application-founder-primary figcaption span,
.application-lifestyle-image figcaption small { color: var(--gold); letter-spacing: .18em; font-size: .7rem; }
.application-founder-primary figcaption strong,
.application-lifestyle-image figcaption strong { color: #fff; font: 600 1.45rem/1.2 "Space Grotesk", sans-serif; }
.application-founder-secondary { position: absolute; width: 45%; height: 33%; right: 0; bottom: 0; box-shadow: -18px -18px 0 #080808; }
.application-founder-secondary img { object-position: center; }

.application-founder-copy h2,
.application-lifestyle-copy h2,
.application-next-heading h2 { margin: 18px 0 24px; color: #fff; font: 600 clamp(2.3rem, 4.6vw, 4.4rem)/.98 "Space Grotesk", sans-serif; letter-spacing: -.055em; }
.application-founder-copy > p,
.application-lifestyle-copy > p,
.application-next-heading > p { color: #a9a9a9; font-size: 1.02rem; line-height: 1.85; }
.application-founder-copy blockquote { margin: 32px 0; padding: 4px 0 4px 24px; border-left: 2px solid var(--gold); color: #e9e4da; font: 500 1.17rem/1.65 "Space Grotesk", sans-serif; }
.application-founder-stats { display: grid; grid-template-columns: repeat(3, 1fr); margin: 38px 0 30px; border-top: 1px solid rgba(203,164,80,.28); border-bottom: 1px solid rgba(203,164,80,.28); }
.application-founder-stats div { padding: 22px 14px 20px 0; }
.application-founder-stats div + div { border-left: 1px solid rgba(203,164,80,.22); padding-left: 20px; }
.application-founder-stats strong { display: block; color: var(--gold); font: 600 1.45rem/1 "Space Grotesk", sans-serif; }
.application-founder-stats span { display: block; margin-top: 8px; color: #858585; font-size: .76rem; text-transform: uppercase; letter-spacing: .08em; }
.application-story-cta { color: #f2d080; }

.application-lifestyle-section { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr); gap: clamp(48px, 8vw, 120px); align-items: center; padding: 118px 0; border-top: 1px solid rgba(203,164,80,.16); }
.application-lifestyle-image { position: relative; height: 660px; margin: 0; overflow: hidden; border: 1px solid rgba(203,164,80,.35); }
.application-lifestyle-image img { object-position: 48% center; }
.application-value-list { list-style: none; padding: 0; margin: 42px 0 0; }
.application-value-list li { display: grid; grid-template-columns: 48px 1fr; gap: 20px; padding: 25px 0; border-top: 1px solid rgba(255,255,255,.1); }
.application-value-list li > span { color: var(--gold); font: 600 .78rem/1.5 "Space Grotesk", sans-serif; letter-spacing: .14em; }
.application-value-list strong { color: #fff; font: 600 1.15rem/1.3 "Space Grotesk", sans-serif; }
.application-value-list p { margin: 8px 0 0; color: #8f8f8f; line-height: 1.65; }

.application-next-steps { padding: 118px 0 130px; border-top: 1px solid rgba(203,164,80,.16); }
.application-next-heading { max-width: 760px; }
.application-steps { display: grid; grid-template-columns: repeat(3, 1fr); list-style: none; padding: 0; margin: 60px 0; border: 1px solid rgba(203,164,80,.22); }
.application-steps li { padding: 34px; min-height: 240px; }
.application-steps li + li { border-left: 1px solid rgba(203,164,80,.22); }
.application-steps li > span { color: var(--gold); font: 600 .78rem/1 "Space Grotesk", sans-serif; letter-spacing: .15em; }
.application-steps strong { display: block; margin: 55px 0 12px; color: #fff; font: 600 1.22rem/1.25 "Space Grotesk", sans-serif; }
.application-steps p { margin: 0; color: #8f8f8f; line-height: 1.65; }
.application-final-cta { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 34px 38px; background: linear-gradient(120deg, #111, #0b0b0b); border: 1px solid rgba(203,164,80,.35); }
.application-final-cta div { display: flex; flex-direction: column; gap: 8px; }
.application-final-cta small { color: var(--gold); letter-spacing: .15em; }
.application-final-cta strong { color: #fff; font: 600 1.35rem/1.25 "Space Grotesk", sans-serif; }

@media (max-width: 900px) {
  .application-founder-section,
  .application-lifestyle-section { grid-template-columns: 1fr; }
  .application-founder-visual { min-height: 570px; }
  .application-lifestyle-image { height: 560px; }
  .application-lifestyle-copy { order: 1; }
  .application-lifestyle-image { order: 2; }
  .application-steps { grid-template-columns: 1fr; }
  .application-steps li { min-height: 0; }
  .application-steps li + li { border-left: 0; border-top: 1px solid rgba(203,164,80,.22); }
  .application-steps strong { margin-top: 30px; }
}

@media (max-width: 620px) {
  .application-founder-section,
  .application-lifestyle-section,
  .application-next-steps { width: min(100% - 30px, 1180px); padding-top: 82px; padding-bottom: 82px; }
  .application-founder-section { gap: 48px; }
  .application-founder-visual { min-height: 500px; }
  .application-founder-primary { inset: 0 8% 9% 0; }
  .application-founder-secondary { width: 48%; height: 29%; }
  .application-founder-copy h2,
  .application-lifestyle-copy h2,
  .application-next-heading h2 { font-size: clamp(2.15rem, 11vw, 3.15rem); }
  .application-founder-stats { grid-template-columns: 1fr; }
  .application-founder-stats div + div { border-left: 0; border-top: 1px solid rgba(203,164,80,.2); padding-left: 0; }
  .application-lifestyle-image { height: 490px; }
  .application-value-list li { grid-template-columns: 36px 1fr; }
  .application-steps { margin: 42px 0; }
  .application-steps li { padding: 28px 24px; }
  .application-final-cta { align-items: stretch; flex-direction: column; padding: 28px 24px; }
  .application-final-cta .button { width: 100%; text-align: center; }
}
/* Real results and proof library */
.application-proof-section {
  padding: 120px max(24px, calc((100vw - 1180px) / 2));
  background: #0d0d0d;
  border-top: 1px solid rgba(203,164,80,.18);
  border-bottom: 1px solid rgba(203,164,80,.18);
}

.application-proof-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .75fr);
  gap: clamp(40px, 8vw, 120px);
  align-items: end;
  margin-bottom: 54px;
}

.application-proof-heading h2,
.founder-proof-heading h2 {
  margin: 18px 0 0;
  color: #fff;
  font: 600 clamp(2.7rem, 5.6vw, 5.2rem)/.94 "Space Grotesk", sans-serif;
  letter-spacing: -.06em;
}

.application-proof-heading > p {
  margin: 0;
  color: #999;
  font-size: 1rem;
  line-height: 1.8;
}

.application-proof-grid {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  padding: 0 0 18px;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--gold) #1c1c1c;
}

.proof-shot {
  flex: 0 0 clamp(280px, 28vw, 360px);
  margin: 0;
  padding: 10px;
  scroll-snap-align: start;
  background: #151515;
  border: 1px solid rgba(203,164,80,.24);
}

.proof-shot img {
  width: 100%;
  aspect-ratio: 9 / 15;
  display: block;
  object-fit: contain;
  object-position: top;
  background: #080808;
}

.proof-shot figcaption,
.result-evidence figcaption {
  padding: 24px 16px 18px;
}

.proof-shot figcaption span,
.result-evidence figcaption span {
  color: var(--gold);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .16em;
}

.proof-shot figcaption strong,
.result-evidence figcaption strong {
  display: block;
  margin: 10px 0 0;
  color: #fff;
  font: 600 1.25rem/1.25 "Space Grotesk", sans-serif;
}

.proof-shot figcaption p,
.result-evidence figcaption p {
  margin: 11px 0 0;
  color: #8f8f8f;
  font-size: .84rem;
  line-height: 1.6;
}

.application-proof-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  margin-top: 28px;
}

.application-proof-footer p {
  max-width: 680px;
  margin: 0;
  color: #707070;
  font-size: .76rem;
  line-height: 1.6;
}

.application-proof-footer .text-link { flex: 0 0 auto; color: #f2d080; }

.results-proof-library { background: #0c0c0c; }
.results-proof-library .section-heading h2,
.founder-proof-heading h2 { color: #fff; }
.results-proof-library .section-heading p,
.founder-proof-heading p { color: #9a9a9a; }
.results-proof-library .eyebrow-dark { color: var(--gold); }

.results-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 58px;
}

.result-evidence {
  margin: 0;
  padding: 10px;
  background: #141414;
  border: 1px solid rgba(203,164,80,.22);
}

.result-evidence img {
  width: 100%;
  aspect-ratio: 9 / 15;
  display: block;
  object-fit: contain;
  object-position: top;
  background: #080808;
}

.founder-proof-heading {
  max-width: 760px;
  margin-top: 120px;
}

.founder-proof-heading h2 { font-size: clamp(2.7rem, 5vw, 4.8rem); }
.founder-proof-heading p { font-size: 1rem; line-height: 1.75; }

.founder-proof-strip {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  margin-top: 50px;
  padding-bottom: 18px;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--gold) #1c1c1c;
}

.founder-proof-strip .result-evidence {
  flex: 0 0 clamp(250px, 24vw, 320px);
  scroll-snap-align: start;
}

.founder-proof-strip .result-evidence img { aspect-ratio: 9 / 15; }
.results-disclaimer { margin: 34px 0 0; color: #6f6f6f; font-size: .76rem; line-height: 1.65; }

@media (max-width: 900px) {
  .application-proof-heading { grid-template-columns: 1fr; }
  .results-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .application-proof-section { padding: 82px 15px; }
  .application-proof-heading { margin-bottom: 38px; }
  .application-proof-heading h2 { font-size: clamp(2.45rem, 12vw, 3.4rem); }
  .proof-shot { flex-basis: min(82vw, 330px); }
  .application-proof-footer { align-items: flex-start; flex-direction: column; }
  .results-gallery { grid-template-columns: 1fr; gap: 14px; }
  .founder-proof-heading { margin-top: 82px; }
  .result-evidence figcaption { padding: 22px 14px 16px; }
}
/* Application page — lifestyle-led visual pacing */
.application-cinema {
  position: relative;
  min-height: min(86vh, 900px);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  isolation: isolate;
  border-top: 1px solid rgba(203,164,80,.24);
  border-bottom: 1px solid rgba(203,164,80,.24);
}

.application-cinema > img {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1.015);
}

.application-cinema-shade {
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.67) 43%, rgba(0,0,0,.15) 76%), linear-gradient(0deg, rgba(0,0,0,.8), transparent 55%);
}

.application-cinema-content {
  width: min(760px, calc(100% - 48px));
  margin: 0 0 clamp(62px, 8vw, 120px) max(24px, calc((100vw - 1180px) / 2));
}

.application-cinema-content h2 {
  max-width: 720px;
  margin: 22px 0 24px;
  color: #fff;
  font: 600 clamp(3rem, 7.2vw, 7.2rem)/.87 "Space Grotesk", sans-serif;
  letter-spacing: -.07em;
  text-transform: uppercase;
}

.application-cinema-content > p {
  max-width: 610px;
  margin: 0 0 30px;
  color: rgba(255,255,255,.72);
  font-size: 1.04rem;
  line-height: 1.78;
}

.application-cinema-values {
  display: flex;
  gap: 10px;
  margin-bottom: 34px;
}

.application-cinema-values span {
  padding: 9px 13px;
  color: #f0cf7d;
  border: 1px solid rgba(235,198,108,.46);
  background: rgba(0,0,0,.35);
  backdrop-filter: blur(8px);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .18em;
}

.application-cinema-index {
  position: absolute;
  right: max(24px, calc((100vw - 1180px) / 2));
  bottom: clamp(62px, 8vw, 120px);
  display: flex;
  align-items: center;
  gap: 16px;
  color: #fff;
}

.application-cinema-index b { color: var(--gold); font: 600 2.5rem/1 "Space Grotesk", sans-serif; }
.application-cinema-index span { padding-left: 16px; border-left: 1px solid rgba(255,255,255,.4); font-size: .72rem; line-height: 1.55; letter-spacing: .08em; text-transform: uppercase; }

.application-lifestyle-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 410px 230px;
  gap: 12px;
}

.application-lifestyle-gallery .application-lifestyle-image {
  grid-column: 1 / -1;
  height: auto;
}

.application-life-tile {
  position: relative;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(203,164,80,.28);
  background: #0b0b0b;
}

.application-life-tile::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 36%, rgba(0,0,0,.92));
}

.application-life-tile img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.application-life-work img { object-position: center 32%; }
.application-life-standard img { object-position: center 62%; }
.application-life-tile figcaption { position: absolute; z-index: 2; left: 18px; right: 18px; bottom: 16px; }
.application-life-tile figcaption span { display: block; margin-bottom: 5px; color: var(--gold); font-size: .58rem; font-weight: 700; letter-spacing: .16em; }
.application-life-tile figcaption strong { color: #fff; font: 600 .92rem/1.3 "Space Grotesk", sans-serif; }

.application-mobile-sticky { display: none; }

@media (max-width: 900px) {
  .application-cinema { min-height: 760px; }
  .application-cinema-shade { background: linear-gradient(0deg, rgba(0,0,0,.96) 0%, rgba(0,0,0,.58) 60%, rgba(0,0,0,.12)); }
  .application-cinema-content { margin-right: 24px; margin-bottom: 62px; }
  .application-cinema-index { top: 34px; right: 24px; bottom: auto; }
  .application-lifestyle-gallery { grid-template-rows: 470px 250px; }
}

@media (max-width: 620px) {
  .application-body { padding-bottom: 72px; }
  .application-cinema { min-height: 720px; align-items: flex-end; }
  .application-cinema > img { object-position: 62% center; }
  .application-cinema-content { width: auto; margin: 0 18px 44px; }
  .application-cinema-content h2 { font-size: clamp(2.75rem, 14vw, 4.25rem); }
  .application-cinema-content > p { font-size: .92rem; line-height: 1.65; }
  .application-cinema-values { flex-wrap: wrap; }
  .application-cinema-index { top: 24px; right: 18px; }
  .application-cinema-index span { display: none; }
  .application-lifestyle-gallery { grid-template-columns: 1fr; grid-template-rows: 430px 260px 260px; }
  .application-lifestyle-gallery .application-lifestyle-image { grid-column: auto; }
  .application-mobile-sticky {
    position: fixed;
    z-index: 30;
    left: 12px;
    right: 12px;
    bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 14px 18px;
    color: #090909;
    background: linear-gradient(135deg, #f4d58a, #bd8b30);
    box-shadow: 0 14px 38px rgba(0,0,0,.55);
    text-decoration: none;
    text-transform: uppercase;
  }
  .application-mobile-sticky span { font-size: .67rem; letter-spacing: .08em; }
  .application-mobile-sticky strong { font: 700 .82rem/1 "Space Grotesk", sans-serif; }
}
/* Application page — unified dark reading surface */
.application-body {
  background: #0d0d0d;
  color: #f4f1ea;
}

/* Keep the light application form readable against the dark page theme. */
.application-card {
  color: var(--ink);
}

.application-founder-section,
.application-lifestyle-section,
.application-next-steps {
  background: #0d0d0d;
}

.application-founder-copy > p,
.application-lifestyle-copy > p,
.application-next-heading > p {
  color: #b8b8b8;
}

.application-value-list p,
.application-steps p {
  color: #a8a8a8;
}

.application-founder-stats span,
.application-proof-heading > p {
  color: #aaa;
}
/* Homepage path cards — image-led, subtly animated */
.path-grid .path-card {
  position: relative;
  min-height: 520px;
  padding: 0;
  overflow: hidden;
  border-radius: 16px;
  background: #0d0d0d;
  border-color: rgba(176,132,52,.38);
  box-shadow: 0 24px 60px rgba(45,31,10,.13);
  isolation: isolate;
}

.path-grid .path-card::after {
  content: "";
  position: absolute;
  z-index: 3;
  top: -55%;
  left: -65%;
  width: 36%;
  height: 210%;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(255,224,152,.14), transparent);
  transform: rotate(18deg);
  animation: path-card-glint 8s ease-in-out infinite;
}

.path-grid .path-card:nth-child(2)::after { animation-delay: 1.3s; }
.path-grid .path-card:nth-child(3)::after { animation-delay: 2.6s; }

.path-card-media {
  position: relative;
  height: 56%;
  min-height: 286px;
  overflow: hidden;
  background: #080808;
}

.path-card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.04) 40%, rgba(0,0,0,.88));
}

.path-card-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .8s cubic-bezier(.2,.7,.2,1), filter .8s ease;
  animation: path-image-breathe 12s ease-in-out infinite alternate;
}

.path-card-programme .path-card-media img { object-position: center 31%; }
.path-card-results .path-card-media img { object-position: center 23%; }
.path-card-apply .path-card-media img { object-position: 57% center; }

.path-card-media em {
  position: absolute;
  z-index: 2;
  left: 22px;
  bottom: 18px;
  padding: 8px 10px;
  color: #f2cf7b;
  background: rgba(5,5,5,.6);
  border: 1px solid rgba(230,191,99,.36);
  backdrop-filter: blur(8px);
  font-size: .61rem;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .16em;
}

.path-card-media .path-live { display: flex; align-items: center; gap: 7px; }
.path-live i { width: 6px; height: 6px; border-radius: 50%; background: #d6ad52; box-shadow: 0 0 0 0 rgba(214,173,82,.65); animation: path-live-pulse 2s ease-out infinite; }

.path-card-copy {
  position: relative;
  z-index: 2;
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 27px 28px 30px;
  color: #fff;
  background: linear-gradient(145deg, #111, #090909);
}

.path-grid .path-card .path-card-copy > span { color: #d5a94c; }
.path-grid .path-card h3 { margin: 26px 0 10px; color: #fff; font: 600 1.75rem/1.05 "Space Grotesk", sans-serif; }
.path-grid .path-card p { margin: 0; color: #9e9e9e; font-size: .92rem; }
.path-grid .path-card b { margin-top: auto; padding-top: 22px; display: flex; align-items: center; justify-content: space-between; color: #efc96d; font-size: .76rem; text-transform: uppercase; letter-spacing: .08em; }
.path-grid .path-card b i { font-style: normal; font-size: 1.25rem; transition: transform .25s ease; }
.path-grid .path-card:hover { transform: translateY(-9px); border-color: rgba(224,181,83,.8); }
.path-grid .path-card:hover .path-card-media img { transform: scale(1.07); filter: contrast(1.04) saturate(1.08); animation-play-state: paused; }
.path-grid .path-card:hover b i { transform: translateX(5px); }

@keyframes path-image-breathe {
  from { transform: scale(1.01); }
  to { transform: scale(1.055); }
}

@keyframes path-card-glint {
  0%, 62% { left: -65%; opacity: 0; }
  70% { opacity: 1; }
  88%, 100% { left: 135%; opacity: 0; }
}

@keyframes path-live-pulse {
  0% { box-shadow: 0 0 0 0 rgba(214,173,82,.65); }
  70% { box-shadow: 0 0 0 8px rgba(214,173,82,0); }
  100% { box-shadow: 0 0 0 0 rgba(214,173,82,0); }
}

@media (max-width: 900px) {
  .path-grid .path-card { min-height: 500px; }
}

@media (max-width: 620px) {
  .path-grid .path-card { min-height: 480px; }
  .path-card-media { min-height: 260px; }
  .path-card-copy { padding: 24px 22px 26px; }
}

@media (prefers-reduced-motion: reduce) {
  .path-grid .path-card::after,
  .path-card-media img,
  .path-live i { animation: none; }
}
/* Programme page — media-led experience */
.programme-visual-hero {
  position: relative;
  min-height: min(84vh, 860px);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  isolation: isolate;
  background: #070707;
}

.programme-visual-hero > video {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.programme-hero-shade {
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.94) 0%, rgba(0,0,0,.74) 48%, rgba(0,0,0,.28) 100%), linear-gradient(0deg, rgba(0,0,0,.72), transparent 60%);
}

.programme-hero-content { width: min(1200px, 100%); }
.programme-visual-hero h1 { max-width: 1150px; }
.programme-visual-hero p { color: rgba(255,255,255,.72); }

.programme-hero-tags {
  position: absolute;
  right: clamp(24px, 8vw, 130px);
  bottom: clamp(46px, 6vw, 84px);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 9px;
}

.programme-hero-tags span {
  padding: 8px 11px;
  color: #efce7d;
  background: rgba(5,5,5,.58);
  border: 1px solid rgba(226,188,97,.35);
  backdrop-filter: blur(9px);
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .14em;
}

.system-grid .system-card {
  min-height: 500px;
  padding: 0;
  overflow: hidden;
  background: #0e0e0e;
  border-color: rgba(187,142,55,.34) !important;
}

.system-card-media {
  height: 250px;
  overflow: hidden;
  background: #080808;
}

.system-card-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .8s cubic-bezier(.2,.7,.2,1), filter .8s ease;
}

.system-card:nth-child(1) .system-card-media img { object-position: center; }
.system-card:nth-child(2) .system-card-media img { object-position: center 30%; }
.system-card:nth-child(3) .system-card-media img { object-position: center 57%; }
.system-card:hover .system-card-media img { transform: scale(1.065); filter: saturate(1.08) contrast(1.03); }

.system-card-copy { padding: 27px 30px 31px; }
.system-grid .system-number { width: auto; height: auto; display: inline-block; padding: 6px 9px; color: #eac56c; background: transparent; border: 1px solid rgba(218,174,72,.35); border-radius: 0; font: 700 .65rem/1 "Space Grotesk", sans-serif; }
.system-grid .system-card h3 { margin: 28px 0 12px; color: #fff; }
.system-grid .system-card p { color: #aaa; }

.programme-media-story {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(540px, 1.2fr);
  gap: clamp(56px, 8vw, 120px);
  align-items: center;
  padding: 125px clamp(24px, 8vw, 130px);
  background: #0c0c0c;
  border-top: 1px solid rgba(208,164,70,.18);
  border-bottom: 1px solid rgba(208,164,70,.18);
}

.programme-media-copy h2 {
  margin: 20px 0 24px;
  color: #fff;
  font: 600 clamp(2.6rem, 5vw, 5rem)/.94 "Space Grotesk", sans-serif;
  letter-spacing: -.06em;
}

.programme-media-copy > p { color: #aaa; font-size: 1rem; line-height: 1.8; }
.programme-media-copy .text-link { color: #efc96d; }
.programme-media-points { margin: 38px 0 34px; border-top: 1px solid rgba(255,255,255,.1); }
.programme-media-points span { display: flex; align-items: center; gap: 16px; padding: 17px 0; color: #ddd; border-bottom: 1px solid rgba(255,255,255,.1); }
.programme-media-points b { color: var(--gold); font-size: .7rem; }

.programme-media-collage {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  grid-template-rows: 300px 300px;
  gap: 12px;
}

.programme-media-collage figure { position: relative; margin: 0; overflow: hidden; border: 1px solid rgba(205,159,65,.3); background: #090909; }
.programme-media-collage figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 48%, rgba(0,0,0,.88)); pointer-events: none; }
.programme-media-collage img,
.programme-media-collage video { width: 100%; height: 100%; display: block; object-fit: cover; }
.programme-video-frame { grid-row: 1 / 3; }
.programme-video-frame video { object-position: center; }
.programme-image-work img { object-position: center 30%; }
.programme-image-life img { object-position: center 60%; }
.programme-media-collage figcaption { position: absolute; z-index: 2; left: 19px; right: 19px; bottom: 17px; color: #fff; font: 600 .88rem/1.3 "Space Grotesk", sans-serif; }
.programme-media-collage figcaption span { display: block; margin-bottom: 6px; color: var(--gold); font-size: .58rem; letter-spacing: .15em; }
.programme-video-frame figcaption strong { color: #fff; font-size: 1.05rem; }

@media (max-width: 980px) {
  .programme-media-story { grid-template-columns: 1fr; }
  .programme-media-collage { max-width: 760px; }
}

@media (max-width: 700px) {
  .programme-visual-hero { min-height: 760px; }
  .programme-visual-hero > video { object-position: 58% center; }
  .programme-hero-shade { background: linear-gradient(0deg, rgba(0,0,0,.97), rgba(0,0,0,.32)); }
  .programme-hero-tags { left: 24px; right: auto; bottom: 24px; flex-direction: row; flex-wrap: wrap; align-items: flex-start; }
  .programme-hero-tags span { font-size: .56rem; }
  .programme-hero-content { padding-bottom: 120px; }
  .system-grid .system-card { min-height: 470px; }
  .programme-media-story { padding: 82px 24px; }
  .programme-media-collage { grid-template-columns: 1fr 1fr; grid-template-rows: 460px 220px; }
  .programme-video-frame { grid-column: 1 / -1; grid-row: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .programme-visual-hero > video,
  .programme-video-frame video { animation: none; }
}
