/* ==========================================================================
   Positioned for your next move — The Founding Circle
   Static rebuild of the Claude Design handover (20 Sept 2026).
   Tokens are copied verbatim from the handover's _ds/tokens/*.css.
   ========================================================================== */

:root{
  --teal-900:#0D3D42;
  --teal-800:#25454A;
  --gold-500:#C9A87C;
  --gold-700:#7E5F33;
  --plum-600:#833E62;
  --plum-700:#6E3351;   /* hover: plum 88% + black in oklab, precomputed (no color-mix dependency) */
  --plum-800:#5C2A44;   /* active: plum 78% + black, precomputed */
  --field-border:#8A8279; /* 3.5:1 on paper: bone-400 measured 1.4:1 and failed WCAG 1.4.11 */
  --bone-100:#EFE9E1;
  --bone-200:#E2DBD3;
  --bone-300:#DED7CF;
  --bone-400:#D8D0C7;
  --paper-50:#FAF7F3;
  --paper-0:#FFFDFB;
  --ink-600:#635E58;
  --ink-900:#2A2622;
  --on-dark-muted:#B3BFBE;
  --on-dark-rule:#385E62;

  --font-display:"Poppins",system-ui,sans-serif;
  --font-body:"Inter",system-ui,sans-serif;
  --font-quote:"Lora",Georgia,serif;

  --radius-sm:8px;
  --radius-md:12px;
  --radius-lg:16px;
  --radius-btn:10px;
  --radius-pill:999px;

  --shadow-card:0 1px 2px rgba(13,61,66,0.06), 0 8px 24px rgba(13,61,66,0.08);
  --shadow-portrait:0 12px 32px rgba(13,61,66,0.16);

  --container:1120px;
  --gutter:32px;
  --section-y:96px;
  --header-h:80px;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper-50);color:var(--ink-600);font-family:var(--font-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
h1,h2,h3,p,ul,ol,dl,dd,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
a{color:var(--plum-600);text-decoration:underline;text-underline-offset:3px}
a:hover{color:var(--plum-800)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--teal-900);outline-offset:2px}
.on-teal a:focus-visible,.on-teal button:focus-visible{outline-color:var(--gold-500)}
[id]{scroll-margin-top:var(--header-h)}
[hidden]{display:none !important}

.skip-link{position:absolute;left:16px;top:-60px;z-index:40;padding:10px 16px;background:var(--teal-900);color:var(--paper-50);border-radius:var(--radius-sm)}
.skip-link:focus{top:12px;color:var(--paper-50)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Layout ---------- */
.section{padding:var(--section-y) var(--gutter)}
.section--flush-top{padding-top:0}
.section--bone{background:var(--bone-100)}
.section--teal{background:var(--teal-900);color:var(--paper-50)}
.container{max-width:var(--container);margin:0 auto}
.stack{display:flex;flex-direction:column}
.gap-16{gap:16px}.gap-20{gap:20px}.gap-24{gap:24px}.gap-40{gap:40px}.gap-48{gap:48px}
.intro{max-width:720px;display:flex;flex-direction:column;gap:16px}
.intro--wide{max-width:760px}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:48px 64px;align-items:start}
.split--center{align-items:center}

/* ---------- Type ---------- */
.eyebrow{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.5;letter-spacing:0.12em;text-transform:uppercase;font-weight:600;color:var(--gold-700)}
.eyebrow::before{content:"";flex:none;width:24px;height:2px;margin-top:.7em;background:var(--plum-600)}
.on-teal .eyebrow::before{background:var(--gold-500)}
.eyebrow--plum{color:var(--plum-600)}
.on-teal .eyebrow,.eyebrow--on-teal{color:var(--gold-500)}
h1,h2,h3{font-family:var(--font-display);font-weight:600;color:var(--teal-900);text-wrap:pretty}
h1{font-size:clamp(38px,5vw,60px);line-height:1.1;letter-spacing:-0.01em}
h2{font-size:clamp(30px,3.6vw,42px);line-height:1.15;letter-spacing:-0.01em}
.h2--lg{font-size:clamp(32px,3.8vw,46px);line-height:1.1}
.h2--xl{font-size:clamp(32px,4.2vw,52px);line-height:1.1}
.on-teal h2,.on-teal h3{color:var(--paper-50)}
p{text-wrap:pretty}
.lead{font-size:18px}
.small{font-size:14px}
.text-teal{color:var(--teal-900)}
.fw-500{font-weight:500}
.rule{display:block;width:48px;height:1px;background:var(--gold-500)}
.rule--plum{background:var(--plum-600)}
.note-rule{padding:16px 20px;border-left:2px solid var(--plum-600);font-size:15px;color:var(--teal-900)}

/* Placeholder copy still to be supplied — deliberately loud so it cannot ship by accident */
.todo{background:#FCE9B8;color:#4A3500;padding:0 4px;border-radius:3px;font-style:normal}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 24px;border-radius:var(--radius-btn);border:1px solid transparent;font-family:var(--font-display);font-weight:500;font-size:15px;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color 120ms ease,color 120ms ease,border-color 120ms ease}
.btn--sm{min-height:40px;padding:9px 18px;font-size:14px}
.btn--lg{min-height:48px;padding:13px 28px;font-size:16px}
.btn--primary{background:var(--plum-600);color:var(--paper-50)}
.btn--primary:hover{background:var(--plum-700);color:var(--paper-50)}
.btn--primary:active{background:var(--plum-800)}
.btn--secondary{background:transparent;color:var(--teal-900);border-color:var(--teal-900)}
.btn--secondary:hover{background:var(--teal-900);color:var(--paper-50)}
.btn--ghost{background:transparent;color:var(--teal-900);border-color:var(--bone-400)}
.btn--ghost:hover{background:var(--bone-100);color:var(--teal-900)}
.btn--gold{background:var(--gold-500);color:var(--teal-900)}
.btn--gold:hover{background:var(--paper-50);color:var(--teal-900)} /* never darken gold: teal text drops to 3.8:1 */
.btn[aria-disabled="true"]{opacity:.6;cursor:progress}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:20;background:var(--paper-50);border-bottom:1px solid var(--bone-300)}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--gutter)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{height:44px;width:auto}
.brand__name{display:block;font-family:var(--font-display);font-weight:600;font-size:17px;line-height:1.2;color:var(--teal-900)}
.brand__tag{display:block;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-600)}
.site-nav{display:flex;align-items:center;gap:24px}
.site-nav__links{display:flex;align-items:center;gap:24px}
.site-nav__links a{font-size:14px;font-weight:500;color:var(--teal-900);text-decoration:none}
.site-nav__links a:hover{color:var(--plum-600)}
.nav-toggle{display:none;min-height:40px;padding:8px 14px;border-radius:var(--radius-btn);border:1px solid var(--bone-400);background:transparent;color:var(--teal-900);font:500 14px var(--font-display);cursor:pointer}

/* ---------- Hero ---------- */
.hero{padding:48px var(--gutter) 0}
.hero__panel{background:var(--bone-100);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-wrap:wrap}
.hero__copy{flex:3 1 340px;min-width:0;display:flex;flex-direction:column;gap:20px;padding:56px 48px}
.hero__sub{font-family:var(--font-quote);font-style:italic;font-size:26px;line-height:1.3;color:var(--teal-800)}
.hero__lead{font-size:18px;color:var(--teal-900)}
.hero__for{font-size:15px}
.hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:8px}
.hero__cta a:not(.btn){font-size:15px;font-weight:500}
.hero__photo{flex:2 1 260px;min-height:360px;position:relative}
.hero__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.facts{flex:1 1 100%;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--bone-300);border-top:1px solid var(--bone-300)}
.facts > div{background:var(--paper-0);padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.facts dt{font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-600)}
.facts dd{font-weight:500;color:var(--teal-900)}
.facts dd small{display:block;font-size:13px;font-weight:400;color:var(--ink-600)}
.hero__note{margin-top:12px;font-size:14px}

/* ---------- Recognition ---------- */
.recognition{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:16px}
.recognition li{display:flex;flex-direction:column;gap:14px;padding:28px 28px 32px;border-radius:var(--radius-md);background:var(--teal-900);color:var(--paper-50);font-size:17px;line-height:1.55;text-wrap:pretty}
.recognition li::before{content:"";width:28px;height:1px;background:var(--gold-500)}
.pullquote{max-width:980px;padding-top:24px;display:flex;gap:20px;align-items:flex-start}
.pullquote__mark{flex:none;font-family:var(--font-quote);font-size:96px;line-height:0.7;color:var(--gold-500)}
.pullquote p{font-family:var(--font-quote);font-style:italic;font-size:clamp(26px,3.2vw,38px);line-height:1.3;color:var(--teal-900)}

/* ---------- Outcomes ---------- */
.statement{margin-top:12px;padding-top:24px;border-top:1px solid var(--gold-500);font-family:var(--font-quote);font-style:italic;font-size:22px;line-height:1.4}
.link-gold{align-self:flex-start;font-size:15px;font-weight:500;color:var(--gold-500)}
.link-gold:hover{color:var(--paper-50)}
.checklist li{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid var(--on-dark-rule);font-size:16px;line-height:1.55}
.tick{flex:none;width:20px;height:20px;margin-top:2px;border-radius:50%;border:1px solid var(--gold-500);display:grid;place-items:center;color:var(--gold-500)}
.tick svg{width:10px;height:10px}

/* ---------- Career Wealth panel ---------- */
.key-line{margin-top:20px;font-family:var(--font-display);font-weight:600;font-size:20px;line-height:1.4;color:var(--teal-900)}
.panel-teal{position:relative;overflow:hidden;background:var(--teal-900);color:var(--paper-50);border-radius:var(--radius-lg);padding:48px 40px;display:flex;flex-direction:column;gap:20px}
.panel-teal--wide{padding:64px 48px;gap:40px}
.arc{position:absolute;border:1px solid var(--gold-500);border-radius:50%;pointer-events:none}
.arc--tr{right:-60px;top:-60px;width:240px;height:240px;opacity:.6;clip-path:inset(0 0 40% 0)}
.arc--br{right:-80px;bottom:-120px;width:320px;height:320px;opacity:.5;clip-path:inset(0 0 45% 0)}
.panel-teal__mark{font-family:var(--font-quote);font-size:72px;line-height:0.6;color:var(--gold-500)}
.panel-teal__statement{font-family:var(--font-display);font-weight:600;font-size:clamp(22px,2.4vw,28px);line-height:1.3}

/* ---------- Cards ---------- */
.card{background:var(--paper-0);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:32px}
.num{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:600;font-size:14px;letter-spacing:0.08em;color:var(--plum-600)}
.num::after{content:"";flex:1;height:1px;background:var(--plum-600)}

.dimension{padding:32px 36px;display:grid;grid-template-columns:minmax(72px,100px) minmax(200px,1.1fr) minmax(220px,1.4fr) minmax(220px,1.2fr);gap:24px 32px;align-items:start}
.dimension .num{font-size:15px;padding-top:6px}
.dimension h3{font-size:26px;line-height:1.2}
.dimension p{font-size:16px}
.dimension__q{padding-left:20px;border-left:1px solid var(--plum-600);font-family:var(--font-quote);font-style:italic;font-size:17px !important;line-height:1.5;color:var(--teal-800)}

.callout{background:var(--paper-0);border:1px solid var(--plum-600);border-radius:var(--radius-lg);padding:40px 48px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.callout > div{flex:1 1 420px;display:flex;flex-direction:column;gap:8px}
.callout h3{font-size:24px}
.callout p{font-size:16px;max-width:640px}

.included{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:20px}
.included .card{display:flex;flex-direction:column;gap:14px}
.included h3{font-size:20px;line-height:1.3}
.included p{font-size:15px}

/* ---------- Journey ---------- */
.weeks > li{display:grid;grid-template-columns:150px minmax(0,1fr) 260px;gap:24px 40px;padding:36px 0;border-top:1px solid var(--bone-300)}
.week__label{display:flex;flex-direction:column;gap:12px;padding-top:6px;font-family:var(--font-display);font-weight:500;font-size:13px;letter-spacing:0.1em;text-transform:uppercase;color:var(--plum-600)}
.week__label::after{content:"";width:28px;height:1px;background:var(--plum-600)}
.week__body{display:flex;flex-direction:column;gap:12px}
.week__body h3{font-size:24px;line-height:1.25}
.week__body p{font-size:16px}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.tags li{font-size:13px;font-weight:500;padding:6px 12px;border-radius:var(--radius-pill);background:var(--plum-600);color:var(--paper-50)}

/* ---------- Implementation ---------- */
.steps{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:32px}
.steps > div{display:flex;flex-direction:column;gap:12px;padding-top:20px;border-top:1px solid var(--gold-500)}
.steps span{font-size:13px;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold-500)}
.steps h3{font-size:22px}
.steps p{font-size:16px}
.closing-italic{font-family:var(--font-quote);font-style:italic;font-size:20px;line-height:1.45;max-width:720px}

/* ---------- About ---------- */
.about{display:flex;flex-wrap:wrap;gap:48px 64px;align-items:start}
.about__photo{flex:2 1 260px;max-width:400px;aspect-ratio:4/5;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-portrait)}
.about__photo img{width:100%;height:100%;object-fit:cover}
.about__copy{flex:3 1 340px;min-width:0;display:flex;flex-direction:column;gap:20px}
.credentials{margin-top:8px;display:flex;flex-direction:column;gap:10px;font-size:15px;color:var(--teal-900)}
.credentials li{display:flex;gap:12px;align-items:center}
.credentials li::before{content:"";flex:none;width:24px;height:1px;background:var(--gold-500)}

/* ---------- Bullet lists ---------- */
.dots{display:flex;flex-direction:column;gap:12px;font-size:16px;line-height:1.55}
.dots li{display:flex;gap:14px}
.dots li::before{content:"";flex:none;width:8px;height:8px;margin-top:9px;border-radius:50%;background:var(--plum-600)}
.dots--teal li::before{background:var(--teal-900)}
.dots--outline li::before{background:transparent;border:1px solid var(--ink-600)}
.two-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:20px}
.two-cards .card{padding:36px;display:flex;flex-direction:column;gap:20px}
.two-cards h3{font-size:22px}
.fit-col{display:flex;flex-direction:column;gap:16px}
.fit-col h3{font-size:18px;padding-bottom:12px;border-bottom:2px solid var(--plum-600)}
.fit-col--not h3{border-bottom-color:var(--bone-400)}
.quote-block{max-width:820px;padding-left:24px;border-left:2px solid var(--plum-600);font-family:var(--font-quote);font-style:italic;font-size:24px;line-height:1.4;color:var(--teal-900)}
.quote-block span{font-size:40px;line-height:0;vertical-align:-8px;margin-right:4px;color:var(--gold-500)}

/* Labelled placeholder where a photo is still to be supplied */
.image-slot{min-height:320px;border-radius:var(--radius-lg);border:2px dashed var(--plum-600);background:var(--bone-100);display:grid;place-items:center;padding:32px;text-align:center;font-size:14px;color:var(--ink-600)}
.section--bone .image-slot{background:var(--paper-50)}
.image-slot--tall{min-height:420px}
.image-slot strong{display:block;margin-bottom:6px;font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold-700)}

/* ---------- Details ---------- */
.details{padding:8px 32px}
.details > div{display:grid;grid-template-columns:minmax(120px,160px) minmax(0,1fr);gap:16px;padding:16px 0;border-bottom:1px solid var(--bone-300);font-size:15px;line-height:1.5}
.details > div:last-child{border-bottom:0}
.details dt{color:var(--ink-600)}
.details dd{color:var(--teal-900);font-weight:500}
.cta-stack{display:flex;flex-direction:column;gap:12px;margin-top:8px;align-items:flex-start}
.cta-stack p{font-size:14px;max-width:460px}

/* ---------- Apply ---------- */
.apply__intro{position:sticky;top:104px;display:flex;flex-direction:column;gap:20px}
.apply__intro a{color:var(--gold-500)}
.apply__intro a:hover{color:var(--paper-50)}
.form-card{background:var(--paper-50);color:var(--ink-600);border-radius:var(--radius-lg);padding:40px;display:flex;flex-direction:column;gap:24px}
.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field label,.field legend{font-size:15px;font-weight:500;line-height:1.5;color:var(--teal-900);padding:0}
fieldset.field{margin:0;padding:0;border:0;gap:10px}
fieldset.field legend{margin-bottom:6px}
.field input[type="text"],.field input[type="email"],.field input[type="url"],.field select,.field textarea{width:100%;font:inherit;font-size:16px;line-height:1.5;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--field-border);background:var(--paper-0);color:var(--ink-900)}
.field ::placeholder{color:var(--ink-600);opacity:1}
.field textarea{resize:vertical}
.field [aria-invalid="true"]{border-color:var(--plum-600)}
.error{font-size:14px;color:var(--plum-600)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{font:inherit;font-size:14px;font-weight:500;min-height:44px;padding:10px 16px;border-radius:var(--radius-pill);border:1px solid var(--field-border);background:var(--paper-0);color:var(--teal-900);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--teal-900);border-color:var(--teal-900);color:var(--paper-50)}
.radios{display:flex;gap:24px;font-size:15px;color:var(--ink-900)}
.radios label,.consent label{display:flex;gap:8px;align-items:center;cursor:pointer;font-weight:400;color:var(--ink-900)}
.radios input,.consent input{flex:none;width:18px;height:18px;accent-color:var(--teal-900)}
.consent{display:flex;flex-direction:column;gap:16px;padding-top:16px;border-top:1px solid var(--bone-300)}
.consent label{align-items:flex-start;gap:10px;font-size:14px;line-height:1.5}
.consent input{margin-top:2px}
.form-alert{padding:12px 16px;border-radius:var(--radius-sm);background:var(--bone-100);border:1px solid var(--plum-600);font-size:14px;color:var(--plum-600)}
.form-foot{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.form-foot p{font-size:13px;line-height:1.5}
.hp{position:absolute;left:-9999px}
.thanks{background:var(--paper-50);color:var(--ink-600);border-radius:var(--radius-lg);padding:48px 40px;display:flex;flex-direction:column;gap:20px}
.thanks__mark{font-family:var(--font-quote);font-size:64px;line-height:0.6;color:var(--gold-500)}
.thanks h3{font-size:30px;line-height:1.15;color:var(--teal-900)}

/* ---------- FAQ ---------- */
.faq-wrap{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:40px}
.faq{border-top:1px solid var(--bone-300)}
.faq__item{border-bottom:1px solid var(--bone-300)}
.faq__item h4{margin:0;font-size:inherit}
.faq__q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;background:none;border:0;cursor:pointer;text-align:left;font-family:var(--font-display);font-weight:600;font-size:18px;line-height:1.35;color:var(--teal-900)}
.faq__sign{flex:none;width:28px;height:28px;border-radius:50%;border:1px solid var(--gold-500);display:grid;place-items:center;font-family:var(--font-body);font-weight:300;font-size:20px;line-height:1;color:var(--gold-700)}
.faq__sign::before{content:"+"}
.faq__q[aria-expanded="true"] .faq__sign::before{content:"\2013"}
.faq__a{max-width:68ch;padding:0 48px 24px 0;font-size:16px;line-height:1.65}

/* ---------- Closing + footer ---------- */
.closing{max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px}
.closing__cta{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:8px}
.closing__cta a:not(.btn){font-size:15px;font-weight:500}
.site-footer{padding:48px var(--gutter);background:var(--teal-900);color:var(--paper-50)}
.site-footer__top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:32px 48px;align-items:flex-start}
.site-footer__about{display:flex;flex-direction:column;gap:16px;max-width:460px}
.site-footer__about img{height:56px;width:auto;align-self:flex-start}
.site-footer__about p{font-size:15px;color:var(--on-dark-muted)}
.site-footer nav{display:flex;flex-direction:column;gap:12px;font-size:15px}
.site-footer nav a{color:var(--paper-50)}
.site-footer nav a:hover{color:var(--gold-500)}
.site-footer__legal{margin-top:32px;padding-top:24px;border-top:1px solid var(--on-dark-rule);font-size:13px;color:var(--on-dark-muted)}

/* ---------- Responsive ---------- */
@media (max-width:1000px){
  .weeks > li{grid-template-columns:120px minmax(0,1fr)}
  .week__leave{grid-column:2}
  .dimension{grid-template-columns:minmax(72px,100px) minmax(0,1fr);}
  .dimension h3{grid-column:2}
  .dimension p{grid-column:2}
}
@media (max-width:900px){
  .apply__intro{position:static}
  .nav-toggle{display:inline-flex;align-items:center}
  .site-nav__links{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gutter) 16px;background:var(--paper-50);border-bottom:1px solid var(--bone-300)}
  .site-nav__links.is-open{display:flex}
  .site-nav__links a{padding:12px 0;font-size:16px;border-bottom:1px solid var(--bone-300)}
  .site-nav__links a:last-child{border-bottom:0}
}
@media (max-width:760px){
  :root{--gutter:20px;--section-y:64px;--header-h:72px}
  body{font-size:16px}
  .hero{padding-top:24px}
  .hero__copy{padding:36px 24px}
  .hero__photo{min-height:0;aspect-ratio:4/5;flex-basis:100%}
  .hero__sub{font-size:22px}
  .panel-teal,.panel-teal--wide{padding:40px 24px}
  .callout{padding:32px 24px}
  .form-card,.thanks{padding:28px 20px}
  .details{padding:4px 20px}
  .details > div{grid-template-columns:1fr;gap:4px}
  .dimension{padding:28px 24px;grid-template-columns:1fr;gap:14px}
  .dimension h3,.dimension p{grid-column:1}
  .weeks > li{grid-template-columns:1fr;gap:16px;padding:28px 0}
  .week__leave{grid-column:1}
  .facts{grid-template-columns:1fr 1fr}
  .pullquote{gap:12px}
  .pullquote__mark{font-size:64px}
  .faq__a{padding-right:0}
  .brand__tag{display:none}
  .site-nav{gap:10px}
  .site-nav .btn--sm{padding:9px 14px;font-size:13px}
}
@media (max-width:420px){
  .brand__name{display:none}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none !important;animation:none !important}
}
@media print{
  .site-header,.nav-toggle,.apply__form-col,.skip-link{display:none}
  .section{padding:24px 0}
}

/* ==========================================================================
   Positioned. additions, 20 Sept 2026: name change, proof, shorter form, and
   the updated plum rule. Plum FILLS are buttons only. Elsewhere plum appears
   as punctuation, numerals, hairlines, bullets, borders and quote marks,
   none of which read as clickable.
   ========================================================================== */
h1 .dot{color:var(--plum-600)}
.hero__reassure{font-size:14px;margin-top:-4px}
.h3--sm{font-size:18px;margin-top:8px}
.show-sm{display:none}

.testimonials{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:20px}
.testimonial{margin:0;display:flex;flex-direction:column;gap:16px;border-top:2px solid var(--plum-600)}
.testimonial__mark{font-family:var(--font-quote);font-size:56px;line-height:.6;padding-top:12px;color:var(--plum-600)}
.testimonial blockquote{font-family:var(--font-quote);font-style:italic;font-size:18px;line-height:1.55;color:var(--teal-900)}
.testimonial figcaption{margin-top:auto;padding-top:8px;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--plum-600)}

.week__label{gap:0}
.week__label small{display:block;margin-top:4px;font-family:var(--font-body);font-weight:400;font-size:13px;letter-spacing:0;text-transform:none;color:var(--ink-600)}
.week__label::after{margin-top:12px}
.week__body p{max-width:68ch}
.week__leave{padding-top:6px}
.week__leave > p{font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-900);padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid var(--plum-600)}
.week__leave ul{display:flex;flex-direction:column;gap:8px;font-size:15px;line-height:1.45;color:var(--teal-900)}
.week__leave li{display:flex;gap:10px}
.week__leave li::before{content:"";flex:none;width:6px;height:6px;margin-top:8px;border-radius:50%;background:var(--plum-600)}

.fee-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 32px;padding:24px 32px;background:var(--paper-0);border-radius:var(--radius-md);border-left:3px solid var(--plum-600);box-shadow:var(--shadow-card)}
.fee-band dl{display:flex;flex-wrap:wrap;gap:16px 48px;margin:0}
.fee-band dt{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-600)}
.fee-band dd{font-weight:500;color:var(--teal-900)}

.photo-frame{aspect-ratio:4/5;max-width:480px;width:100%;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-portrait)}
.photo-frame img{width:100%;height:100%;object-fit:cover}
.figures{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0}
.figures > div{padding-top:14px;border-top:2px solid var(--plum-600)}
.figures dt{font-family:var(--font-display);font-weight:600;font-size:clamp(24px,2.6vw,32px);line-height:1.1;color:var(--plum-600)}
.figures dd{margin-top:4px;font-size:14px;line-height:1.4;color:var(--teal-900)}

.details-card{padding:32px 32px 8px}
.details-card h3{font-size:22px;line-height:1.3;padding-bottom:20px;border-bottom:2px solid var(--plum-600)}
.details-card .details{padding:0}
.details__fee dd{font-family:var(--font-display);font-weight:600;font-size:22px}

.next-steps{counter-reset:step;display:flex;flex-direction:column;gap:14px;font-size:16px;line-height:1.55}
.next-steps li{counter-increment:step;position:relative;padding-left:44px}
.next-steps li::before{content:counter(step);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;border:1px solid var(--gold-500);display:grid;place-items:center;font-family:var(--font-display);font-weight:600;font-size:13px;color:var(--gold-500)}
.next-steps strong{font-weight:600}

.form-note{font-size:14px}
.form-heading{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-900);padding-bottom:10px;border-bottom:1px solid var(--plum-600)}
.hint{font-size:14px;color:var(--ink-600)}
.optional{font-weight:400;color:var(--ink-600)}
.consent{border-top:0;padding-top:0}

.faq-group{display:flex;flex-direction:column;gap:8px}
.faq-group__title{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--plum-600)}
.faq-wrap{gap:36px}

.sticky-cta{display:none}
@media (max-width:760px){
  .hide-sm{display:none}
  .show-sm{display:inline}
  .hero__photo{order:-1}
  .figures{gap:12px}
  .fee-band{padding:20px}
  .details-card{padding:24px 20px 4px}
  .sticky-cta:not([hidden]){position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--paper-0);border-top:2px solid var(--plum-600);box-shadow:0 -4px 16px rgba(13,61,66,.12)}
  .sticky-cta p{display:flex;flex-direction:column;font-size:13px;line-height:1.35;color:var(--ink-600)}
  .sticky-cta strong{font-size:14px;font-weight:600;color:var(--teal-900)}
  body.has-sticky-cta{padding-bottom:64px}
}
@media (max-width:420px){
  .figures{grid-template-columns:1fr 1fr}
}
@media (max-width:480px){
  .facts{grid-template-columns:1fr}
  .facts > div{padding:14px 20px}
}

.fee-band__cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.fee-band__cta p{font-size:14px}

/* ---- 27 Sept 2026: Positioned. three-area structure ---- */
.pillar{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px 48px;padding:36px 40px}
.pillar__head{grid-column:1 / -1;display:flex;flex-direction:column;gap:12px}
.pillar__head .num{font-size:14px}
.pillar__head h3{font-family:var(--font-quote);font-style:italic;font-weight:400;font-size:clamp(22px,2.4vw,28px);line-height:1.3;color:var(--teal-900)}
.pillar__body{display:flex;flex-direction:column;gap:14px}
.pillar__body p{font-size:16px;max-width:60ch}
.pillar__list > p{font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-900);padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid var(--plum-600)}
.pillar__list ul{display:flex;flex-direction:column;gap:8px;font-size:15px;line-height:1.45;color:var(--teal-900)}
.pillar__list li{display:flex;gap:10px}
.pillar__list li::before{content:"";flex:none;width:6px;height:6px;margin-top:8px;border-radius:50%;background:var(--plum-600)}
.weeks--2 > li{grid-template-columns:150px minmax(0,1fr)}
.weeks--2 .week__body p{max-width:68ch}
.assets{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;font-size:17px;line-height:1.5}
.assets li{display:flex;gap:10px}
.assets li::before{content:"";flex:none;width:6px;height:6px;margin-top:11px;border-radius:50%;background:var(--gold-500)}
.steps > div > span{line-height:1.4}
@media (max-width:1000px){ .weeks--2 > li{grid-template-columns:120px minmax(0,1fr)} }
@media (max-width:760px){
  .pillar{grid-template-columns:1fr;padding:28px 24px;gap:20px}
  .weeks--2 > li{grid-template-columns:1fr}
  .assets{grid-template-columns:1fr}
}

.h3--md{font-size:clamp(20px,2vw,24px);line-height:1.3}
.details__fee small{display:block;font-family:var(--font-body);font-weight:400;font-size:14px;color:var(--ink-600);margin-top:2px}

.phases{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.phases li{padding-top:14px;border-top:2px solid var(--plum-600);display:flex;flex-direction:column;gap:8px}
.phases__label{font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--plum-600)}
.phases p{font-size:16px;line-height:1.55;color:var(--teal-900)}
@media (max-width:760px){.phases{grid-template-columns:1fr}}

.image-slot--wide{min-height:0;aspect-ratio:16/7;max-width:100%}
@media (max-width:760px){.image-slot--wide{aspect-ratio:4/3}}
.image-slot span{max-width:52ch}

/* Photos placed 28 Sept 2026 */
.photo-band{margin:0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-portrait);aspect-ratio:16/7;max-width:100%}
.photo-band img{width:100%;height:100%;object-fit:cover;object-position:55% 35%}
.photo-frame--landscape{aspect-ratio:4/3;max-width:560px;margin:0}
@media (max-width:760px){.photo-band{aspect-ratio:4/3}.photo-band img{object-position:52% 30%}}

/* ---- 28 Sept 2026: Claude chat feedback, part 1 ---- */
.facts__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}
.facts__list li{position:relative;padding-left:14px}
.facts__list li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--plum-600)}
.facts dd .facts__note{margin-top:6px;font-size:13px;line-height:1.45;color:var(--ink-600)}
.familiar{margin:4px 0 8px}
.familiar li{font-size:17px}
.attention{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,5.5fr);gap:40px 64px;align-items:center}
.attention .pullquote{padding-top:0}
.options{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0;padding:0;list-style:none}
.options li{background:var(--paper-0);border-radius:var(--radius-md);box-shadow:var(--shadow-card);border-top:2px solid var(--plum-600);padding:20px 22px;display:flex;flex-direction:column;gap:6px}
.options strong{font-family:var(--font-display);font-weight:600;font-size:17px;color:var(--teal-900)}
.options span{font-size:15px;line-height:1.5;color:var(--ink-600)}
.about__emphasis{font-family:var(--font-quote);font-style:italic;font-size:19px;line-height:1.55;color:var(--teal-900);padding-left:18px;border-left:2px solid var(--plum-600)}
.about__credentials{margin-top:4px;font-size:14px;font-weight:500;line-height:1.6;color:var(--teal-900)}
.about__credentials span{color:var(--plum-600);margin:0 4px}
.card__note{margin-top:8px;padding-top:10px;border-top:1px solid var(--bone-300);font-size:13px !important;line-height:1.5;color:var(--ink-600)}
@media (max-width:900px){.attention{grid-template-columns:1fr}}
@media (max-width:560px){.options{grid-template-columns:1fr}}

.closing__quiz{font-size:15px;color:var(--ink-600)}
.closing__quiz a{font-weight:500}

/* 28 Sept evening: attention section as photo + options, italic reassurance */
.hero__reassure{font-style:italic}
.attention__intro{max-width:760px;display:flex;flex-direction:column;gap:16px}
.attention{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}
.attention .photo-frame--landscape{max-width:100%}
.attention__note{font-size:17px;font-weight:500;color:var(--teal-900)}
@media (max-width:900px){.attention{grid-template-columns:1fr}}

/* 29 Sept: quiz line, light checklist in the details card */
.quiz-line{font-size:16px;line-height:1.6;color:var(--ink-600);padding:16px 20px;border-left:2px solid var(--plum-600);background:var(--bone-100)}
.quiz-line a{font-weight:500}
.checklist--light li{border-bottom:1px solid var(--bone-300);color:var(--teal-900);font-size:15px;padding:10px 0}
.checklist--light .tick{border-color:var(--plum-600);color:var(--plum-600)}
.details-card .checklist--light{margin-bottom:20px}

/* 29 Sept (2): quiz banner, investment panel, dates layout */
.quiz-band{background:var(--teal-900);color:var(--paper-50);padding:40px var(--gutter)}
.quiz-band__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px}
.quiz-band__text{max-width:640px;font-size:17px;line-height:1.55;color:var(--on-dark-muted)}
.quiz-band__text span{display:block;font-family:var(--font-display);font-weight:600;font-size:clamp(22px,2.4vw,28px);line-height:1.25;color:var(--paper-50);margin-bottom:6px}
.invest{background:var(--teal-900);color:var(--paper-50);border-radius:var(--radius-lg);padding:28px 32px;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden}
.invest__label{font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--gold-500)}
.invest__price{font-family:var(--font-display);font-weight:600;font-size:clamp(34px,4vw,44px);line-height:1.1;color:var(--paper-50)}
.invest__alt{font-size:16px;color:var(--paper-50)}
.invest__note{font-size:14px;color:var(--on-dark-muted)}
.invest__close{margin-top:12px;padding-top:14px;border-top:1px solid var(--on-dark-rule);font-size:15px;font-weight:500;color:var(--paper-50)}
.invest__close span{display:block;font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--gold-500);margin-bottom:2px}
.dates{padding-top:4px}
.dates__title{font-family:var(--font-display);font-weight:600;font-size:18px;color:var(--teal-900)}
.dates__time{font-size:15px;color:var(--ink-600);margin:2px 0 12px}
.dates__list{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;margin:0 0 14px}
.dates__list li{display:flex;flex-direction:column;padding:12px 14px;background:var(--bone-100);border-radius:var(--radius-sm);font-size:15px;color:var(--teal-900)}
.dates__list strong{font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--plum-600)}
.dates__group{font-size:15px;font-weight:500;color:var(--teal-900)}
.dates__note{margin:18px 0 24px;font-size:13px;line-height:1.55;color:var(--ink-600)}
.details-card{padding:32px}
@media (max-width:420px){.dates__list{grid-template-columns:1fr}.invest{padding:24px}}

/* 30 Sept: shorter page */
.pillar--compact{grid-template-columns:1fr}
.pillar--compact .pillar__body p{max-width:68ch}
.details-card h3{margin-bottom:16px}

/* 30 Sept (2): section 2 as first-person thoughts */
.thoughts{display:flex;flex-direction:column;gap:12px;margin:4px 0 8px;padding:0;list-style:none}
.thoughts li{position:relative;padding-left:22px;font-family:var(--font-quote);font-style:italic;font-size:19px;line-height:1.5;color:var(--teal-900)}
.thoughts li::before{content:"";position:absolute;left:0;top:.72em;width:8px;height:8px;border-radius:50%;background:var(--plum-600)}
.details-card .dates__list{margin-bottom:16px}

/* The full stop in "Positioned." is always plum */
.dot{color:var(--plum-600)}
.on-teal .dot{color:var(--gold-500)}

/* 30 Sept (3): Calendly apply card sits on teal, so its heading needs dark text */
.on-teal .form-card h3{color:var(--teal-900)}
/* Talk-first option inside the apply card */
.talk-first{border-top:1px solid var(--bone-400);padding-top:24px;display:flex;flex-direction:column;gap:12px}
/* 1 Oct: less space above the pull quote; pricing now sits inside What you get */
.attention__intro .pullquote{padding-top:0}
.h3--lg{font-size:clamp(22px,2.4vw,28px)}
#details{align-items:start}
.section:has(> .container > .attention__intro){padding-top:56px}
.faq__a p + p{margin-top:12px}
/* Who it is for now sits under the pull quote */
.fit-intro{display:flex;flex-direction:column;gap:16px;margin-top:24px}
