/*
Theme Name: The Adjutant
Author: The Adjutant
Description: The Adjutant public website: military wealth, veterans benefits, and life after service.
Version: 0.2.0
Requires PHP: 8.0
Text Domain: the-adjutant
*/

.adjutant-approved-logo { width: 72px; height: 72px; object-fit: contain; flex: 0 0 72px; border-radius: 4px; }
@media (max-width: 600px) { .adjutant-approved-logo { width: 52px; height: 52px; flex-basis: 52px; } }

:root {
  --navy: #07111f;
  --navy-soft: #0e1c2e;
  --ink: #101722;
  --cream: #f4f0e8;
  --paper: #fcfaf6;
  --gold: #c9a45e;
  --gold-bright: #e2c27f;
  --muted: #aab4c3;
  --line: rgba(201, 164, 94, .28);
  --max: 1180px;
  --background: #fcfaf6;
  --foreground: #101722;
  --primary: #c9a45e;
  --primary-foreground: #07111f;
  --border: #d3d7dc;
  --input: #c4c9d0;
  --ring: #c9a45e;
  --radius: .25rem;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; }
img { display: block; max-width: 100%; }
button, input { font: inherit; }
.wrap { width: min(calc(100% - 40px), var(--max)); margin-inline: auto; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 100; padding: 12px 18px; background: #fff; color: var(--navy); font-weight: 800; }
.skip-link:focus { top: 16px; }

.site-header { position: absolute; inset: 0 0 auto; z-index: 10; color: #fff; border-bottom: 1px solid rgba(255,255,255,.11); }
.nav { min-height: 86px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { text-decoration: none; display: flex; align-items: center; gap: 13px; }
.brand-mark { width: 34px; aspect-ratio: 1; display: grid; place-items: center; border: 1px solid var(--gold); transform: rotate(45deg); }
.brand-mark span { transform: rotate(-45deg); color: var(--gold-bright); font: 700 18px/1 Georgia, serif; }
.brand-name { font: 700 18px/1.05 Georgia, "Times New Roman", serif; letter-spacing: .14em; }
.brand-name small { display: block; margin-top: 6px; color: var(--muted); font: 600 10px/1 sans-serif; letter-spacing: .22em; }
.nav-links { display: flex; align-items: center; gap: 26px; }
.nav-links > a:not(.button) { text-decoration: none; color: #dce3eb; font-size: .92rem; font-weight: 650; }
.nav-links a:hover, .nav-links a:focus-visible { color: var(--gold-bright); }

.hero { position: relative; min-height: 760px; display: grid; align-items: center; overflow: hidden; color: #fff; background: var(--navy); }
.hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,12,23,.98) 0%, rgba(4,12,23,.9) 43%, rgba(4,12,23,.28) 70%, rgba(4,12,23,.2) 100%), linear-gradient(0deg, rgba(4,12,23,.72), transparent 45%), url("assets/hero-executive-v2.png") center center / cover no-repeat; transform: scale(1.015); }
.hero::after { content: ""; position: absolute; inset: auto 0 0; height: 4px; background: linear-gradient(90deg, transparent, var(--gold), transparent); }
.hero-content { position: relative; z-index: 1; padding: 160px 0 92px; max-width: 760px; }
.eyebrow { margin: 0 0 22px; color: #8a692f; font-size: .78rem; font-weight: 800; letter-spacing: .22em; text-transform: uppercase; }
.hero .eyebrow, .briefing .eyebrow, .cta .eyebrow { color: var(--gold-bright); }
h1, h2, h3 { margin-top: 0; font-family: Georgia, "Times New Roman", serif; line-height: 1.08; }
h1 { margin-bottom: 26px; font-size: clamp(3.35rem, 7.3vw, 6.8rem); font-weight: 500; letter-spacing: -.045em; }
h1 em { color: var(--gold-bright); font-style: normal; }
.hero-copy { max-width: 670px; margin: 0 0 36px; color: #dce3eb; font-size: clamp(1.08rem, 1.8vw, 1.28rem); }
.actions { display: flex; flex-wrap: wrap; gap: 14px; }
.button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 0 23px; border: 1px solid var(--gold); border-radius: 0; text-decoration: none; font-weight: 800; font-size: .94rem; letter-spacing: .02em; transition: .2s ease; }
.button-primary { background: var(--gold); color: #091321; }
.button-primary:hover, .button-primary:focus-visible { background: var(--gold-bright); transform: translateY(-2px); }
.button-ghost { color: #fff; border-color: rgba(255,255,255,.48); }
.button-ghost:hover, .button-ghost:focus-visible { border-color: #fff; background: rgba(255,255,255,.08); }
.credentials { margin: 48px 0 0; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.15); color: var(--muted); font-size: .9rem; letter-spacing: .055em; }

section { padding: 105px 0; }
.section-heading { max-width: 760px; margin-bottom: 54px; }
.section-heading h2 { margin-bottom: 18px; font-size: clamp(2.45rem, 5vw, 4.5rem); font-weight: 500; letter-spacing: -.04em; }
.section-heading p { margin: 0; color: #536071; font-size: 1.08rem; }
.channel-intro { background: var(--cream); }
.channel-intro-wrap { max-width: 960px; }
.channel-intro .section-heading { max-width: 800px; margin: 0 auto 34px; text-align: center; }
.channel-intro .section-heading .eyebrow { color: #7d602c; margin-bottom: 16px; font-size: .78rem; }
.channel-intro .section-heading h2 { font-size: clamp(2.2rem, 4.5vw, 3.8rem); }
.channel-intro-player { aspect-ratio: 16 / 9; background: var(--navy); border: 1px solid var(--line); }
.channel-intro-player iframe { display: block; width: 100%; height: 100%; border: 0; }
.channel-intro-actions { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 20px; margin-top: 28px; }
.channel-intro-watch { color: #5b4828; font-weight: 750; text-underline-offset: 4px; }
.pillars { background: var(--paper); }
.pillar-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #cdd2d8; border-bottom: 1px solid #cdd2d8; }
.pillar { padding: 42px 34px 46px; }
.pillar + .pillar { border-left: 1px solid #cdd2d8; }
.pillar-number { color: #8b6c31; font: 800 .78rem/1 sans-serif; letter-spacing: .2em; }
.pillar h3 { margin: 28px 0 18px; font-size: 1.75rem; font-weight: 600; }
.pillar p { margin: 0; color: #5b6572; }

.about { background: var(--cream); }
.about-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(50px, 9vw, 120px); align-items: start; }
.about-label { position: sticky; top: 40px; }
.about-label .rule { width: 70px; height: 2px; margin: 0 0 28px; background: var(--gold); }
.about-label p { max-width: 280px; margin: 0; color: #6d655b; font-size: .95rem; }
.about-copy h2 { margin-bottom: 26px; font-size: clamp(2.5rem, 5vw, 4.6rem); font-weight: 500; letter-spacing: -.045em; }
.about-copy .lead { color: #283342; font: 500 clamp(1.25rem, 2.3vw, 1.65rem)/1.45 Georgia, serif; }
.about-copy p { color: #4f5864; }
.proof { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-top: 44px; background: rgba(16,23,34,.18); border: 1px solid rgba(16,23,34,.18); }
.proof div { min-height: 130px; padding: 24px; background: var(--cream); }
.proof strong { display: block; color: #7d602c; font: 600 1.55rem/1.1 Georgia, serif; }
.proof span { display: block; margin-top: 10px; color: #5b6470; font-size: .88rem; }

.membership-preview { position: relative; overflow: hidden; background: #0a1727; color: #fff; }
.membership-preview::after { content: ""; position: absolute; width: 430px; height: 430px; right: -180px; bottom: -250px; border: 1px solid var(--line); border-radius: 50%; box-shadow: 0 0 0 75px rgba(201,164,94,.035), 0 0 0 150px rgba(201,164,94,.02); }
.membership-preview-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.4fr .6fr; gap: clamp(45px, 8vw, 110px); align-items: center; }
.membership-preview-copy h2 { max-width: 760px; margin-bottom: 22px; font-size: clamp(2.7rem, 5.3vw, 5rem); font-weight: 500; letter-spacing: -.045em; }
.membership-preview-copy > p:not(.eyebrow) { max-width: 670px; color: #c8d1dc; font-size: 1.08rem; }
.membership-preview-list { display: grid; gap: 12px; margin: 28px 0 36px; padding: 0; list-style: none; color: #edf0f4; }
.membership-preview-list li { display: flex; gap: 10px; align-items: center; }
.membership-preview-list svg { color: var(--gold-bright); flex: 0 0 auto; }
.membership-preview-price { padding: 38px 34px; border: 1px solid var(--line); border-top: 4px solid var(--gold); background: rgba(255,255,255,.035); }
.membership-preview-price > span { display: block; color: var(--gold-bright); font-size: .76rem; font-weight: 850; letter-spacing: .17em; text-transform: uppercase; }
.membership-preview-price strong { display: block; margin: 22px 0 2px; font: 500 clamp(4.3rem, 8vw, 6.2rem)/1 Georgia, serif; }
.membership-preview-price strong sup { font-size: 1.5rem; vertical-align: top; }
.membership-preview-price strong small { margin-left: 5px; color: #aeb8c5; font: 600 .95rem/1 sans-serif; }
.membership-preview-price p { margin: 0; color: #d5dce5; }
.membership-preview-price em { display: block; margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.13); color: #9ca8b6; font-size: .85rem; font-style: normal; }

.briefing { position: relative; overflow: hidden; color: #fff; background: linear-gradient(135deg, #0e1c2e, #07111f 68%); }
.briefing::before { content: ""; position: absolute; width: 560px; height: 560px; border: 1px solid var(--line); border-radius: 50%; left: -330px; bottom: -350px; box-shadow: 0 0 0 80px rgba(201,164,94,.035), 0 0 0 160px rgba(201,164,94,.02); }
.briefing-grid { position: relative; display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(48px, 8vw, 110px); align-items: center; }
.briefing-copy h2 { margin-bottom: 24px; font-size: clamp(2.7rem, 5.3vw, 5rem); font-weight: 500; letter-spacing: -.045em; }
.briefing-copy > p:not(.eyebrow) { max-width: 620px; color: #c9d1dc; font-size: 1.1rem; }
.briefing-promises { display: grid; gap: 12px; margin: 30px 0 0; padding: 0; list-style: none; color: #e7ebf0; }
.briefing-promises li { display: flex; align-items: center; gap: 11px; }
.briefing-promises svg { color: var(--gold-bright); flex: 0 0 auto; }
.signup-card { padding: clamp(28px, 4vw, 44px); background: var(--paper); color: var(--ink); border-top: 4px solid var(--gold); box-shadow: 0 28px 80px rgba(0,0,0,.28); }
.form-intro h3, .signup-success h3 { margin: 4px 0 28px; font-size: clamp(1.65rem, 3vw, 2.25rem); }
.signup-kicker { margin: 0; color: #7d602c; font-size: .75rem; font-weight: 850; letter-spacing: .17em; text-transform: uppercase; }
.form-description { margin: -16px 0 24px; color: #5b6572; font-size: .94rem; line-height: 1.55; }
.field-grid { display: grid; gap: 18px; }
.field label { display: block; margin-bottom: 7px; color: #333d49; font-size: .88rem; font-weight: 750; }
.field input { height: 50px; border: 1px solid #abb3bd; border-radius: 0; background: #fff; color: var(--ink); padding: 0 14px; }
.field input:focus-visible { border-color: #8b6c31; outline: 3px solid rgba(201,164,94,.2); }
.honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.consent-row { display: grid; grid-template-columns: 18px 1fr; gap: 10px; align-items: start; margin: 19px 0; color: #535e6b; font-size: .82rem; line-height: 1.45; }
.consent-row input { width: 17px; height: 17px; margin: 2px 0 0; accent-color: #8b6c31; }
.submit-button { width: 100%; min-height: 52px; border-radius: 0; background: var(--gold); color: var(--navy); font-weight: 850; }
.submit-button:hover { background: var(--gold-bright); }
.submit-button:disabled { opacity: .65; }
.form-note { margin: 14px 0 0; color: #697482; font-size: .76rem; text-align: center; }
.form-note a { text-underline-offset: 3px; }
.form-message { margin: 15px 0 0; font-size: .86rem; font-weight: 700; }
.error-message { color: #a62929; }
.signup-success svg { color: #7d602c; margin-bottom: 18px; }
.signup-success p:last-child { color: #536071; }
.success-actions { display: grid; gap: 13px; margin-top: 24px; }
.success-actions .button { width: 100%; }
.success-actions .button svg { margin: 0; color: currentColor; }
.success-link { color: #5b4828; font-size: .9rem; font-weight: 750; text-align: center; text-underline-offset: 4px; }
.unsubscribe-card form { margin-top: 28px; }
.unsubscribe-card .button { border: 0; cursor: pointer; }
.unsubscribe-success { margin-top: 26px; padding: 18px; background: #eaf1e7; color: #274426 !important; border-left: 4px solid #65865f; font-weight: 750; }

.guide-page { min-height: 100vh; background: var(--paper); }
.guide-wrap { width: min(calc(100% - 40px), 1040px); margin-inline: auto; }
.guide-hero { position: relative; overflow: hidden; padding: 72px 0 88px; background: var(--navy); color: #fff; }
.guide-hero::after { content: ""; position: absolute; width: 520px; height: 520px; right: -220px; top: -280px; border: 1px solid var(--line); border-radius: 50%; box-shadow: 0 0 0 70px rgba(201,164,94,.035), 0 0 0 140px rgba(201,164,94,.025); }
.guide-hero .guide-wrap { position: relative; z-index: 1; }
.guide-hero .eyebrow { color: var(--gold-bright); }
.guide-back { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 76px; color: #cbd4df; font-size: .9rem; font-weight: 750; text-decoration: none; }
.guide-back:hover { color: var(--gold-bright); }
.guide-hero h1 { max-width: 800px; font-size: clamp(3.1rem, 7vw, 6.2rem); }
.guide-hero > div > p:not(.eyebrow) { max-width: 720px; margin: 0 0 34px; color: #d7dfe8; font-size: 1.18rem; }
.guide-content { padding: 96px 0; }
.guide-intro { max-width: 860px; }
.guide-intro h2, .guide-plan h2 { margin-bottom: 20px; font-size: clamp(2.4rem, 5vw, 4.5rem); font-weight: 500; letter-spacing: -.04em; }
.guide-intro > p:not(.eyebrow) { max-width: 780px; color: #536071; font-size: 1.08rem; }
.guide-intro blockquote { margin: 34px 0 68px; padding: 25px 30px; background: var(--cream); border-left: 4px solid var(--gold); color: var(--navy); font: 500 1.45rem/1.4 Georgia, serif; }
.decision-list { display: grid; gap: 0; border-top: 1px solid #cdd2d8; }
.decision-card { display: grid; grid-template-columns: 80px 1fr; gap: 20px; padding: 30px 0; border-bottom: 1px solid #cdd2d8; }
.decision-card > span { color: #8b6c31; font-size: .82rem; font-weight: 850; letter-spacing: .18em; }
.decision-card h3 { margin-bottom: 8px; font-size: 1.45rem; }
.decision-card p { max-width: 760px; margin: 0; color: #596574; }
.guide-plan { padding: 96px 0; background: var(--cream); }
.plan-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; margin: 42px 0 54px; background: #cfc9bd; border: 1px solid #cfc9bd; }
.plan-grid article { min-height: 220px; padding: 30px; background: var(--paper); }
.plan-grid span { color: #8b6c31; font-size: .75rem; font-weight: 850; letter-spacing: .16em; text-transform: uppercase; }
.plan-grid h3 { margin: 16px 0 12px; font-size: 1.42rem; }
.plan-grid p { margin: 0; color: #596574; }
.guide-download-card { display: grid; grid-template-columns: auto 1fr auto; gap: 22px; align-items: center; padding: 30px; background: var(--navy); color: #fff; }
.guide-download-card > svg { color: var(--gold-bright); }
.guide-download-card h3 { margin: 0 0 5px; font-size: 1.42rem; }
.guide-download-card p { margin: 0; color: #bfc9d5; }
.guide-disclaimer { max-width: 820px; margin: 28px 0 0; color: #6f746f; font-size: .78rem; }

.membership-page { min-height: 100vh; background: var(--paper); }
.membership-wrap { width: min(calc(100% - 40px), 1120px); margin-inline: auto; }
.membership-hero { position: relative; overflow: hidden; padding: 72px 0 92px; background: var(--navy); color: #fff; }
.membership-hero::after { content: ""; position: absolute; width: 600px; height: 600px; right: -230px; top: -330px; border: 1px solid var(--line); border-radius: 50%; box-shadow: 0 0 0 85px rgba(201,164,94,.035), 0 0 0 170px rgba(201,164,94,.022); }
.membership-hero .membership-wrap { position: relative; z-index: 1; }
.membership-hero h1 { max-width: 900px; margin-bottom: 24px; font-size: clamp(3.2rem, 7vw, 6.3rem); }
.membership-hero h1 em { color: var(--gold-bright); font-style: normal; }
.membership-hero > div > p:not(.eyebrow) { max-width: 790px; margin: 0; color: #d3dbe5; font-size: 1.18rem; }
.membership-price-line { display: flex; flex-wrap: wrap; gap: 14px 22px; align-items: baseline; margin-top: 35px; }
.membership-price-line strong { color: var(--gold-bright); font: 600 1.5rem/1 Georgia, serif; }
.membership-price-line span { color: #abb6c4; font-size: .92rem; }
.membership-body { padding: 100px 0; }
.membership-layout { display: grid; grid-template-columns: 1fr 390px; gap: clamp(50px, 8vw, 95px); align-items: start; }
.membership-main > h2, .membership-enroll > h2 { margin-bottom: 20px; font-size: clamp(2.6rem, 5vw, 4.6rem); font-weight: 500; letter-spacing: -.045em; }
.membership-lead { max-width: 720px; color: #536071; font-size: 1.08rem; }
.benefit-list { margin: 48px 0 82px; border-top: 1px solid #ccd1d7; }
.benefit-list article { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 28px 0; border-bottom: 1px solid #ccd1d7; }
.benefit-list article > span { color: #8b6c31; font-size: .78rem; font-weight: 850; letter-spacing: .16em; }
.benefit-list h3 { margin-bottom: 8px; font-size: 1.45rem; }
.benefit-list p { margin: 0; color: #596574; }
.scope-panel { padding: clamp(28px, 5vw, 48px); background: var(--cream); border-top: 4px solid var(--gold); }
.scope-panel > div:first-child > svg { margin-bottom: 18px; color: #7d602c; }
.scope-panel h2 { max-width: 720px; margin-bottom: 34px; font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 500; }
.scope-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 34px; }
.scope-columns h3 { display: flex; align-items: center; gap: 9px; margin-bottom: 15px; font-size: 1.15rem; }
.scope-columns h3 svg { color: #7d602c; flex: 0 0 auto; }
.scope-columns ul { margin: 0; padding-left: 20px; color: #596574; }
.scope-columns li + li { margin-top: 7px; }
.scope-note { margin: 30px 0 0; padding-top: 22px; border-top: 1px solid #d2ccc0; color: #686c6f; font-size: .82rem; }
.membership-enroll { position: sticky; top: 28px; padding: 34px; background: #0b1828; color: #fff; border-top: 4px solid var(--gold); box-shadow: 0 24px 70px rgba(7,17,31,.18); }
.membership-enroll .eyebrow { color: var(--gold-bright); }
.membership-enroll > h2 { font-size: 2.5rem; }
.enroll-intro { color: #c2ccd8; }
.price-options { display: grid; gap: 14px; }
.price-option { position: relative; display: grid; padding: 22px; border: 1px solid #344253; color: #fff; text-decoration: none; transition: .2s ease; }
.price-option:hover, .price-option:focus-visible { border-color: var(--gold); transform: translateY(-2px); }
.price-option.recommended { border-color: var(--gold); }
.price-option > em { position: absolute; top: -11px; right: 13px; padding: 4px 8px; background: var(--gold); color: var(--navy); font-size: .67rem; font-weight: 850; font-style: normal; text-transform: uppercase; letter-spacing: .08em; }
.price-option > span { color: #c8d1dc; font-size: .8rem; font-weight: 800; text-transform: uppercase; letter-spacing: .13em; }
.price-option > strong { margin-top: 9px; font: 500 2.7rem/1 Georgia, serif; }
.price-option > small { margin-top: 5px; color: #99a6b5; }
.price-option > b { display: flex; justify-content: space-between; align-items: center; margin-top: 20px; padding-top: 15px; border-top: 1px solid #344253; color: var(--gold-bright); font-size: .88rem; }
.enroll-note { margin: 22px 0 0; color: #929faf; font-size: .75rem; line-height: 1.5; }
.enroll-note a { color: #dce3eb; text-underline-offset: 3px; }
.member-existing { margin: 14px 0 0; color: #b2bdca; font-size: .78rem; line-height: 1.5; }
.member-existing a { color: var(--gold-bright); text-underline-offset: 3px; }
.interest-form { margin-top: 25px; }
.interest-form .field label { color: #dce3eb; }
.interest-form .field input { width: 100%; }
.interest-form .consent-row { color: #aeb9c6; }
.plan-choice { display: grid; gap: 9px; margin: 2px 0 0; padding: 0; border: 0; }
.plan-choice legend { margin-bottom: 7px; color: #dce3eb; font-size: .88rem; font-weight: 750; }
.plan-choice label { display: flex; align-items: center; gap: 8px; color: #c8d1dc; font-size: .9rem; }
.plan-choice input { accent-color: var(--gold); }
.interest-success { margin-top: 28px; padding: 24px; border: 1px solid var(--line); background: rgba(255,255,255,.04); }
.interest-success svg { color: var(--gold-bright); }
.interest-success h3 { margin: 14px 0 8px; font-size: 1.55rem; }
.interest-success p { margin: 0; color: #c3cdd8; }

.member-welcome-page { min-height: 100vh; display: grid; place-items: center; padding: 45px 20px; background: radial-gradient(circle at 85% 10%, rgba(201,164,94,.12), transparent 30%), var(--navy); }
.member-welcome-card { width: min(100%, 800px); padding: clamp(34px, 7vw, 76px); background: var(--paper); border-top: 5px solid var(--gold); box-shadow: 0 30px 90px rgba(0,0,0,.32); }
.member-welcome-icon { margin-bottom: 24px; color: #7d602c; }
.member-welcome-card h1 { margin-bottom: 22px; font-size: clamp(3rem, 7vw, 5.6rem); }
.member-welcome-lead { max-width: 680px; color: #4f5b68; font-size: 1.12rem; }
.member-next-steps { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin: 34px 0; background: #cdd2d8; border: 1px solid #cdd2d8; }
.member-next-steps article { display: grid; grid-template-columns: auto 1fr; gap: 16px; padding: 26px; background: var(--cream); }
.member-next-steps svg { color: #7d602c; }
.member-next-steps h2 { margin: 0 0 7px; font-size: 1.25rem; }
.member-next-steps p { margin: 0; color: #596574; font-size: .94rem; }
.member-help { margin: 0 0 30px; color: #697482; font-size: .9rem; }
.member-help a, .member-welcome-lead a { color: #5b4828; text-underline-offset: 3px; }

.member-room-page { min-height: 100vh; background: var(--paper); }
.member-room-wrap { width: min(calc(100% - 40px), 1120px); margin-inline: auto; }
.member-room-hero { position: relative; overflow: hidden; padding: 68px 0 76px; background: var(--navy); color: #fff; }
.member-room-hero::after { content: ""; position: absolute; width: 560px; height: 560px; right: -250px; top: -300px; border: 1px solid var(--line); border-radius: 50%; box-shadow: 0 0 0 78px rgba(201,164,94,.035), 0 0 0 156px rgba(201,164,94,.02); }
.member-room-hero .member-room-wrap { position: relative; z-index: 1; }
.member-room-hero h1 { max-width: 900px; margin-bottom: 20px; font-size: clamp(3.1rem, 7vw, 6rem); }
.member-room-hero h1 em { color: var(--gold-bright); font-style: normal; }
.member-room-hero > div > p:not(.eyebrow) { max-width: 720px; color: #cbd5df; font-size: 1.12rem; }
.member-status { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.member-status span { padding: 7px 11px; border: 1px solid rgba(255,255,255,.19); color: #ccd6e1; font-size: .76rem; text-transform: capitalize; }
.member-status .status-active { border-color: #c9a45e; color: var(--gold-bright); }
.member-status .status-inactive { border-color: #ad6a67; color: #f2b0ac; }
.member-room-body { padding: 92px 0; }
.member-room-grid { display: grid; grid-template-columns: 1fr 355px; gap: clamp(50px, 8vw, 90px); align-items: start; }
.member-room-grid > div > h2, .member-question-section h2 { margin-bottom: 18px; font-size: clamp(2.5rem, 5vw, 4.4rem); font-weight: 500; letter-spacing: -.04em; }
.member-room-lead { max-width: 710px; color: #536071; font-size: 1.07rem; }
.member-resource-card { display: grid; grid-template-columns: auto 1fr auto; gap: 20px; align-items: center; margin-top: 34px; padding: 26px; background: var(--cream); border-left: 4px solid var(--gold); }
.member-resource-card > svg { color: #7d602c; }
.member-resource-card h3 { margin: 0 0 6px; font-size: 1.25rem; }
.member-resource-card p { margin: 0; color: #596574; font-size: .9rem; }
.member-question-section { margin-top: 70px; padding-top: 54px; border-top: 1px solid #ccd1d7; }
.member-question-section > svg { margin-bottom: 20px; color: #7d602c; }
.member-question-section > p:not(.eyebrow) { max-width: 700px; color: #596574; }
.member-question-form { display: grid; margin-top: 30px; padding: 30px; background: var(--cream); border-top: 4px solid var(--gold); }
.member-question-form label { margin: 0 0 8px; color: #333d49; font-size: .9rem; font-weight: 800; }
.member-question-form select, .member-question-form textarea { width: 100%; margin-bottom: 20px; padding: 13px 14px; border: 1px solid #aeb6c0; border-radius: 0; background: #fff; color: var(--ink); font: inherit; }
.member-question-form select:focus-visible, .member-question-form textarea:focus-visible { border-color: #8b6c31; outline: 3px solid rgba(201,164,94,.2); }
.member-question-form > p { margin: -2px 0 18px; color: #67717d; font-size: .78rem; }
.member-question-success { margin-top: 30px; padding: 28px; background: #eaf1e7; border-left: 4px solid #65865f; }
.member-question-success svg { color: #496b45; }
.member-question-success h3 { margin: 12px 0 7px; }
.member-question-success p { color: #3f5840; }
.member-question-success button { padding: 0; border: 0; background: transparent; color: #304f2e; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.member-room-aside { display: grid; gap: 18px; }
.member-room-aside section { padding: 30px; background: #0b1828; color: #fff; }
.member-room-aside section > svg { margin-bottom: 18px; color: var(--gold-bright); }
.member-room-aside .eyebrow { color: var(--gold-bright); }
.member-room-aside h2 { margin-bottom: 16px; font-size: 1.75rem; }
.member-room-aside p, .member-room-aside li { color: #bdc8d4; font-size: .9rem; }
.member-room-aside ol { margin: 0; padding-left: 20px; }
.member-room-aside li + li { margin-top: 10px; }
.member-room-aside a { color: var(--gold-bright); font-weight: 800; text-underline-offset: 3px; }
.member-room-aside section > a { display: block; margin-top: 14px; }
.member-private-note { display: flex; gap: 9px; align-items: flex-start; margin: 0; padding: 16px; background: var(--cream); color: #666c72; font-size: .78rem; }
.member-private-note svg { flex: 0 0 auto; color: #7d602c; }
.member-access-note { padding: 18px; background: #f4e6e5; border-left: 4px solid #9f5b57; color: #663936 !important; font-weight: 750; }

.cta { position: relative; overflow: hidden; background: var(--paper); color: var(--ink); }
.cta::before { content: ""; position: absolute; width: 440px; height: 440px; right: -180px; top: -210px; border: 1px solid rgba(125,96,44,.15); border-radius: 50%; box-shadow: 0 0 0 70px rgba(201,164,94,.035), 0 0 0 140px rgba(201,164,94,.025); }
.cta .eyebrow { color: #7d602c; }
.cta-inner { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: end; }
.cta h2 { max-width: 780px; margin-bottom: 18px; font-size: clamp(2.7rem, 5.5vw, 5.1rem); font-weight: 500; letter-spacing: -.045em; }
.cta p { max-width: 690px; margin: 0; color: #596574; font-size: 1.08rem; }

footer { padding: 42px 0; background: #030a13; color: #8e9aaa; }
.footer-inner { display: grid; grid-template-columns: auto auto 1fr; gap: 34px; align-items: center; }
.footer-brand strong { display: block; color: #fff; font-family: Georgia, serif; letter-spacing: .09em; }
.footer-brand span { display: block; margin-top: 5px; font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; }
.social-links { display: flex; gap: 9px; }
.social-links a { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid #2a3644; color: #d7dee6; transition: .2s ease; }
.social-links a:hover, .social-links a:focus-visible { border-color: var(--gold); color: var(--gold-bright); transform: translateY(-2px); }
.social-links span { font-size: .72rem; font-weight: 900; letter-spacing: .02em; }
footer p { justify-self: end; max-width: 650px; margin: 0; font-size: .78rem; text-align: right; }
footer p a { color: #d7dee6; text-underline-offset: 3px; }

.legal-page { min-height: 100vh; padding: 72px 20px; background: var(--cream); }
.legal-card { width: min(100%, 820px); margin: 0 auto; padding: clamp(30px, 6vw, 70px); background: var(--paper); border-top: 4px solid var(--gold); box-shadow: 0 20px 65px rgba(7,17,31,.1); }
.legal-card h1 { font-size: clamp(2.8rem, 7vw, 5rem); }
.legal-card h2 { margin: 35px 0 10px; font-size: 1.5rem; }
.legal-card p { color: #4f5a67; }
.legal-back { display: inline-block; margin-bottom: 45px; color: #5b4828; font-weight: 750; text-underline-offset: 4px; }
.legal-updated { font-size: .9rem; }

@media (max-width: 900px) {
  .nav-links > a:not(.nav-cta) { display: none; }
  .hero { min-height: 720px; }
  .hero::before { background: linear-gradient(90deg, rgba(4,12,23,.95), rgba(4,12,23,.52)), linear-gradient(0deg, rgba(4,12,23,.68), transparent), url("assets/hero-executive-v2.png") 76% center / cover no-repeat; }
  .hero-content { padding-top: 150px; }
  .pillar-grid { grid-template-columns: 1fr; }
  .pillar + .pillar { border-left: 0; border-top: 1px solid #cdd2d8; }
  .about-grid, .briefing-grid, .membership-preview-grid, .membership-layout { grid-template-columns: 1fr; }
  .member-room-grid { grid-template-columns: 1fr; }
  .about-label { position: static; }
  .proof { grid-template-columns: 1fr; }
  .cta-inner { grid-template-columns: 1fr; align-items: start; }
  .footer-inner { grid-template-columns: 1fr; }
  footer p { justify-self: start; text-align: left; }
  .guide-download-card { grid-template-columns: auto 1fr; }
  .guide-download-card .button { grid-column: 1 / -1; }
  .membership-enroll { position: static; }
}

@media (max-width: 520px) {
  .wrap { width: min(calc(100% - 28px), var(--max)); }
  .brand-name { font-size: 15px; }
  .nav-cta { padding-inline: 15px; min-height: 44px; font-size: .84rem; }
  h1 { font-size: clamp(3.15rem, 16vw, 4.7rem); }
  section { padding: 78px 0; }
  .pillar { padding-inline: 10px; }
  .credentials { font-size: .78rem; }
  .signup-card { padding: 25px 20px; }
  .guide-wrap { width: min(calc(100% - 28px), 1040px); }
  .membership-wrap { width: min(calc(100% - 28px), 1120px); }
  .guide-hero { padding-top: 44px; }
  .guide-back { margin-bottom: 56px; }
  .decision-card { grid-template-columns: 54px 1fr; gap: 10px; }
  .plan-grid { grid-template-columns: 1fr; }
  .guide-download-card { grid-template-columns: 1fr; }
  .guide-download-card .button { grid-column: auto; }
  .scope-columns { grid-template-columns: 1fr; }
  .membership-enroll { padding: 27px 20px; }
  .member-next-steps { grid-template-columns: 1fr; }
  .member-room-wrap { width: min(calc(100% - 28px), 1120px); }
  .member-resource-card { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; }
}
.preview-notice{padding:18px 22px;background:#fff6e1;color:#2d2415;border-left:4px solid #c9a45e;margin:20px 0} .preview-notice a{font-weight:700}


/* Portrait fidelity and cinematic evening coffee scene. */
.hero-portrait img{object-position:50% 35%}
.adj-coffee{background:radial-gradient(ellipse at 80% 50%,#182536 0,#07111f 65%);color:#f4f0e8;border-top:1px solid #c9a45e55;overflow:hidden}
.adj-coffee-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:center}
.adj-coffee-kicker{color:#e2c27f;font-size:.75rem;letter-spacing:.19em;font-weight:750;text-transform:uppercase}
.adj-coffee h2{font:400 clamp(2.4rem,4vw,4rem)/1.08 Georgia,serif;letter-spacing:-.035em;color:#fcfaf6;margin:18px 0 24px}
.adj-coffee-body{font-size:1.06rem;line-height:1.8;color:#cbd5e1}
.adj-coffee-note{font-size:.82rem;line-height:1.7;color:#b9c4d1;margin-top:24px}
.adj-coffee-button{display:inline-flex;gap:18px;align-items:center;justify-content:center;min-height:54px;margin-top:14px;padding:15px 24px;background:#c9a45e;color:#07111f!important;border:1px solid #e2c27f;border-radius:4px;font:750 .95rem/1.4 system-ui;text-decoration:none}
.adj-coffee-button:hover{background:#e2c27f}
.adj-coffee-art{position:relative;min-width:0;filter:drop-shadow(0 25px 30px #0005)}
.adj-coffee-art svg{display:block;width:100%;height:auto;border-radius:8px}
.adj-coffee-pause{position:absolute;right:132px;top:15px;z-index:2;accent-color:#c9a45e;width:16px;height:16px}
.adj-coffee-motion-label{position:absolute;right:18px;top:12px;z-index:2;color:#d5deea;background:#07111fbb;border-radius:4px;padding:3px 5px;font-size:11px}
.cf-vapor{transform-box:fill-box;transform-origin:50% 100%;animation:cf-rise 7s ease-in-out infinite}
.cf-vapor-two{animation-delay:-2.8s;animation-duration:9s}
.cf-vapor-three{animation-delay:-5s;animation-duration:8s}
@keyframes cf-rise{0%{transform:translate(-4px,16px) scale(.86, .84);opacity:0}20%{opacity:.65}55%{transform:translate(8px,-12px) scale(1.08,1.04);opacity:.8}100%{transform:translate(-9px,-44px) scale(1.25,1.14);opacity:0}}
.adj-coffee-pause:checked~svg .cf-vapor{animation-play-state:paused}
@media(max-width:800px){.adj-coffee-grid{grid-template-columns:1fr;gap:32px}.adj-coffee-art{max-width:620px;width:100%;margin:auto}}
@media(prefers-reduced-motion:reduce){.cf-vapor{animation:none!important;opacity:.45}.adj-coffee-pause,.adj-coffee-motion-label{display:none}}

/* November 2026 approved celestial refresh. */
:root{--paper:#fffdf9;--cream:#f4f0e8;--gold:#c6a15d;--gold-bright:#f0ce8c}
.site-header{box-shadow:0 8px 32px #0002}
.adjutant-approved-logo{border-radius:50%;filter:drop-shadow(0 0 12px #d6ad5d33)}
.button{border-radius:6px;box-shadow:0 4px 14px #0001}
.home .hero{background:radial-gradient(ellipse at 92% 15%,#71603e66,transparent 40%),radial-gradient(ellipse at 15% 75%,#25435d88,transparent 65%),#06111f!important}
.home .hero:before{display:block!important;background:radial-gradient(1px 1px at 12% 23%,#f0ce8c 99%,transparent),radial-gradient(1px 1px at 76% 18%,#fff 99%,transparent),radial-gradient(2px 2px at 47% 68%,#f0ce8c88 99%,transparent);background-size:237px 201px,331px 281px,487px 377px;opacity:.4;pointer-events:none}
.hero-layout{position:relative;z-index:1}
.hero-portrait{border-radius:16px!important;border-color:#e2c27f66!important;box-shadow:0 30px 80px #0005!important}
.pillar,.adj-resource-card,.signup-card,.membership-preview-price,.scope-panel,.legal-card{border-radius:12px!important}
.home .pillar{border-top:3px solid #c9a45e!important;box-shadow:0 12px 32px #07111f08}
.channel-intro{background:linear-gradient(135deg,#fcfaf6,#eee7db)}
.channel-intro-player{border-radius:12px!important;box-shadow:0 20px 45px #07111f20!important}
.membership-hero,.guide-hero,.membership-preview,.briefing,.adj-coffee{background:radial-gradient(ellipse at top right,#34415b88,transparent 55%),radial-gradient(ellipse at bottom left,#755d342e,transparent 55%),#07111f}
.about-copy{max-width:760px}.about-copy p{line-height:1.85}
footer{border-top:1px solid #c9a45e55;background:radial-gradient(ellipse at top left,#1b2b40,#030a13 70%)}
@media(max-width:700px){.hero-portrait{border-radius:12px!important}.button{min-height:48px}.home .hero:before{opacity:.25}}
/* October 2026 public-site refresh: editorial navy, warm paper, accessible gold. */
.home .site-header{position:relative;background:#07111f}
.home .nav{min-height:88px}
.home .hero{padding:54px 0 64px;min-height:0;background:radial-gradient(ellipse at 90% 20%,#1c3047 0,transparent 65%),#07111f}
.home .hero::before{display:none}
.hero-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:54px;align-items:center}
.home .hero-content{padding:30px 0;max-width:none;min-width:0}
.home .hero h1{font-size:clamp(3.4rem,5.4vw,5.5rem);max-width:680px;line-height:1.02}
.home .hero-copy{font-size:1.12rem;max-width:540px}
.hero-portrait{position:relative;margin:0;min-width:0;align-self:stretch;min-height:530px;border:1px solid rgba(226,194,127,.45);border-radius:5px;overflow:hidden;box-shadow:0 25px 65px #0005}
.hero-portrait img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 35%}
.hero-portrait figcaption{position:absolute;inset:auto 0 0;padding:65px 28px 25px;background:linear-gradient(transparent,#07111fee);color:white;font:500 1.8rem/1.3 Georgia,serif}
.hero-portrait figcaption span{display:block;color:#e2c27f;font:700 .65rem/2 system-ui;letter-spacing:.22em}
.home .credentials{font-size:.72rem;line-height:1.8;margin-top:32px}
.home section:not(.hero){padding-top:88px;padding-bottom:88px}
.home .button{border-radius:4px}
.home .channel-intro-wrap{max-width:1180px;display:grid;grid-template-columns:1fr 1fr;gap:24px 64px;align-items:center}
.home .channel-intro .section-heading{text-align:left;margin:0;grid-row:span 2}
.home .channel-intro .section-heading h2{font-size:clamp(2.4rem,3.7vw,3.6rem)}
.home .channel-intro-player{overflow:hidden;border-radius:5px;box-shadow:0 14px 32px #07111f18}
.home .channel-intro-actions{margin-top:0;justify-content:flex-start}
.trailer-play{width:100%;height:100%;border:0;display:flex;gap:24px;align-items:center;justify-content:center;padding:30px;color:#fff;background:radial-gradient(ellipse at top right,#29415d,#07111f 75%);cursor:pointer;text-align:left}
.play-symbol{width:64px;height:64px;flex:0 0 64px;display:grid;place-items:center;border-radius:50%;background:#e2c27f;color:#07111f;font-size:22px}
.trailer-play>span:last-child{font:500 clamp(1.3rem,2.2vw,2rem)/1.25 Georgia,serif}
.trailer-play small,.trailer-play em{display:block;font:600 .75rem/1.5 system-ui}
.trailer-play small{letter-spacing:.16em;color:#e2c27f;margin-bottom:12px}
.trailer-play em{margin-top:15px;color:#cbd5e1}
.trailer-play:hover .play-symbol{background:#fff}
.home .pillar-grid{gap:20px;border:0}
.home .pillar{padding:32px;background:#fff;border:1px solid #ded9ce;border-radius:5px;box-shadow:0 8px 26px #07111f05}
.home .pillar+.pillar{border:1px solid #ded9ce}
.home .pillar h3{font-size:1.65rem}
.home .pillar a{display:inline-block;margin-top:24px;color:#634a20;font-weight:700;text-underline-offset:4px}
.home .section-heading{margin-bottom:38px}
.home .section-heading .eyebrow{color:#755824;font-size:.78rem}
.home .about-grid{grid-template-columns:.65fr 1.35fr}
.home .about-label p{font:500 1.8rem/1.35 Georgia,serif;color:#26374a;max-width:330px}
.home .proof{background:none;border:0;gap:16px}
.home .proof div{padding:24px 0;border-top:2px solid #b28b48;min-height:0}
.home .membership-preview .eyebrow{color:#e2c27f}
.home .membership-platform-note{font-size:.88rem!important;max-width:550px;margin-top:20px}
.home .membership-preview-price,.home .signup-card{border-radius:5px}
.home .signup-card h3{margin-top:16px;font-size:1.9rem}
.home footer{color:#b3becb}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #ac7c24;outline-offset:5px}
.home .site-header :focus-visible,.home .hero :focus-visible,.trailer-play:focus-visible{outline-color:#f2cf89}
@media(max-width:1000px){
.home .nav{flex-wrap:wrap;gap:12px;padding-block:20px}
.home .nav-links{flex-wrap:wrap;gap:12px 24px}
.home .nav-links>a:not(.nav-cta){display:inline-flex;min-height:44px;align-items:center}
.hero-layout{gap:30px}
.hero-portrait{min-height:490px}
.home .hero h1{font-size:3.65rem}
}
@media(max-width:700px){
.home .nav{display:block}
.home .brand{width:max-content;max-width:100%;margin-bottom:16px}
.home .nav-links{gap:4px 18px}
.home .nav-links>a{font-size:.85rem}
.home .nav-cta{min-height:44px;padding:0 12px}
.home .hero{padding:30px 0 40px}
.hero-layout{grid-template-columns:1fr;gap:28px}
.home .hero-content{padding:10px 0 0}
.home .hero h1{font-size:clamp(3rem,11.8vw,4.5rem)}
.home .hero .eyebrow{font-size:.68rem;letter-spacing:.15em}
.hero-portrait{min-height:330px;aspect-ratio:1.2}
.home .hero-copy{font-size:1.04rem}
.home .channel-intro-wrap{grid-template-columns:1fr;gap:28px}
.home .channel-intro .section-heading{grid-row:auto}
.home .about-grid{grid-template-columns:1fr;gap:36px}
.home section:not(.hero){padding-block:60px}
.home .pillar{padding:28px}
.home .proof{grid-template-columns:1fr}
.home .proof div{padding:18px 0}
.home .actions .button{width:100%}
.home .section-heading h2,.home .about h2,.home .briefing h2,.home .membership-preview h2,.home .cta h2{font-size:clamp(2.3rem,9vw,3.2rem)}
}
