/* Page composition v2: full-width centered content; watch is a background layer. */
body::before { display:none; }
h1,h2,h3 { font-family:var(--f-font); font-weight:600; }
h1,h2 { letter-spacing:-.055em; }
h1 { font-size:clamp(48px,7.8vw,112px); line-height:.99; }
h2 { font-size:clamp(36px,5.5vw,76px); line-height:1.06; }
em { font:inherit; color:#929298; }
.f-journey { position:relative; isolation:isolate; }
.f-content { width:100%; }
.watch-layout .f-content { width:100%; }
.f-section + .f-section { border-top:0; }
.f-section { padding-block:var(--f-section); }
.f-eyebrow { font-size:13px; letter-spacing:.1em; color:var(--f-muted); font-weight:500; margin-bottom:24px; }
.f-lede { font-size:clamp(17px,1.6vw,21px); line-height:1.55; margin-top:26px; }
.f-center { text-align:center; }
.f-center .f-lede { margin-inline:auto; max-width:540px; }
.f-center h2 { max-width:980px; margin-inline:auto; }
.f-stack { margin-top:64px; }
.f-button { border-radius:999px; min-height:50px; padding:13px 25px; font-size:15px; font-weight:500; gap:14px; }
.f-button--small { min-height:38px; padding:9px 18px; font-size:12px; }
.site-header { background:#0b0b0df5; }
.site-nav { height:72px; }
.brand { font-weight:600; font-size:15px; }
.brand img { width:29px; height:29px; }
.nav-links { gap:30px; }
.f-card { border:0; background:var(--f-surface); border-radius:var(--f-radius); }
.f-media-stage { border:0; background:#141416; border-radius:24px; }
.f-media-stage img { filter:saturate(.85); }
.f-media figcaption:empty { display:none; }
.f-media--mockup .f-media-stage { aspect-ratio:1; background:#0b0b0d; }
.f-media--mockup .f-media-stage img { object-fit:contain; filter:none; }
.f-media--portrait .f-media-stage { border-radius:24px; }
.f-play { width:76px; height:76px; color:#f5f5f7; border:1px solid #ffffff3d; background:#ffffff06; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.hero { padding-top:210px; padding-bottom:90px; text-align:center; }
.hero .f-content { max-width:1040px; margin:auto; }
.hero h1 { position:relative; }
.hero h1 em { display:block; }
.hero .f-lede { margin:30px auto 0; max-width:490px; font-size:20px; }
.hero-actions { display:flex; justify-content:center; align-items:center; gap:24px; margin-top:34px; }
.price-inline { display:flex; gap:8px; align-items:baseline; font-size:15px; color:var(--f-muted); }
.price-inline strong { color:var(--f-ink); font-weight:500; }
.hero-film { padding-bottom:60px; position:relative; z-index:2; }
.hero-film .f-media-stage { aspect-ratio:16/9; background:#141416; }
.hero-film .f-media-placeholder { display:grid; justify-items:center; gap:20px; }
.f-media-placeholder p { font:15px var(--f-font); color:var(--f-muted); }
#transformation .transformation-takeaway { margin:48px auto 0; max-width:960px; font-size:clamp(36px,5.5vw,72px); font-weight:600; line-height:1.06; letter-spacing:-.055em; text-wrap:balance; }
.transformation-track { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:60px; text-align:left; margin-top:70px; }
.transformation-step { border-top:1px solid var(--f-line); padding-top:28px; }
.transformation-step span { font-size:13px; color:var(--f-muted); }
.transformation-step h3 { font-size:30px; margin-top:24px; }
.transformation-step p { color:var(--f-muted); font-size:17px; line-height:1.6; margin-top:16px; }
.outcome-title .f-muted { display:block; }
.steps-grid { gap:0; text-align:left; margin-top:80px; }
.step-card { padding:0 44px; background:none; border-radius:0; }
.step-card:first-child { padding-left:0; }
.step-card:last-child { padding-right:0; }
.step-card + .step-card { border-left:1px solid var(--f-line); }
.step-number { font-size:64px; font-weight:500; letter-spacing:-.07em; color:var(--f-brass); }
.step-card h3 { font-size:23px; margin-top:30px; font-weight:600; }
.step-card p { font-size:17px; margin-top:16px; line-height:1.6; }
.proof-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; max-width:960px; margin-inline:auto; }
.proof-grid .f-media-stage { aspect-ratio:4/5; }
.proof-grid .f-media-stage img { object-position:center; filter:none; }
.arm-lock { margin-top:24px; max-width:960px; margin-inline:auto; }
.arm-lock .f-media-stage { aspect-ratio:21/9; }
.arm-lock-note { margin:24px auto 0; text-align:center; color:var(--f-muted); font-size:14px; max-width:590px; }
.includes-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:80px; align-items:center; }
.includes-list { padding:0; margin:0; list-style:none; }
.includes-list li { padding:16px 0; border-bottom:1px solid var(--f-line); font-size:17px; }
.includes-list li:first-child { border-top:1px solid var(--f-line); }
.trust-note { color:var(--f-muted); margin-top:28px; font-size:15px; line-height:1.6; }
.section-cta { margin-top:30px; }
.timeline { list-style:none; padding:0; margin:80px 0 0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.timeline li { position:relative; border-top:1px solid #48434a; padding:32px 32px 0 0; }
.timeline li::before { content:''; position:absolute; top:-4px; left:0; width:7px; height:7px; background:#c6a779; border-radius:50%; }
.timeline span { font-size:12px; color:var(--f-muted); }
.timeline h3 { margin-top:20px; font-size:22px; }
.timeline p { font-size:16px; line-height:1.6; color:var(--f-muted); margin-top:14px; }
.fit-grid { max-width:960px; margin-inline:auto; gap:24px; }
.fit-card { padding:44px; text-align:left; }
.fit-card h3 { font-size:24px; }
.fit-card ul { list-style:none; padding:0; margin:28px 0 0; }
.fit-card li { color:var(--f-muted); padding:18px 0; border-top:1px solid var(--f-line); font-size:17px; }
.instructor-grid { max-width:960px; margin-inline:auto; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.instructor-grid h2 { font-size:64px; }
.instructor-grid .f-media-stage { aspect-ratio:4/4.5; }
.experience-stat { margin-top:35px; font-size:15px; color:var(--f-muted); }
.experience-stat strong { font-size:52px; font-weight:500; display:block; color:var(--f-ink); line-height:1.2; letter-spacing:-.05em; }
.instructor-still-link { color:var(--f-purple-light); font-size:15px; margin-top:28px; display:inline-block; padding-block:8px; text-decoration:none; }
.guarantee { text-align:center; max-width:1000px; margin:auto; }
.guarantee-number { display:block; font-size:clamp(100px,14vw,180px); font-weight:600; letter-spacing:-.08em; line-height:1; color:var(--f-ink); margin-bottom:30px; }
.guarantee h2 { font-size:clamp(36px,5vw,64px); }
.guarantee p { color:var(--f-muted); font-size:20px; margin:25px auto 0; max-width:520px; }
.final-purchase { position:relative; z-index:3; padding-block:var(--f-section); background:#111113; }
.purchase-card { max-width:1000px; margin:auto; }
.purchase-heading { display:grid; grid-template-columns:1fr auto; gap:48px; align-items:center; }
.purchase-card h2 { font-size:clamp(40px,5.5vw,68px); }
.purchase-cost { text-align:right; }
.purchase-price { font-size:72px; font-weight:600; letter-spacing:-.075em; line-height:1; }
.purchase-price span { font-size:36px; vertical-align:top; line-height:1.5; }
.purchase-card .f-small { font-size:15px; margin-top:12px; }
.learning-map { margin-top:56px; }
.learning-map h3 { font-size:25px; letter-spacing:-.025em; }
.learning-intro { font-size:17px; color:var(--f-muted); margin-top:8px; }
.learning-rows { list-style:none; padding:0; margin:24px 0 0; border-top:1px solid var(--f-line); }
.learning-rows li { display:grid; grid-template-columns:42px minmax(0,1fr); gap:24px; padding:26px 0; border-bottom:1px solid var(--f-line); align-items:baseline; }
.learning-number { color:var(--f-purple-light); font-size:14px; font-variant-numeric:tabular-nums; }
.learning-rows h4 { font-size:20px; line-height:1.35; font-weight:600; letter-spacing:-.025em; margin:0; }
.learning-rows p { font-size:16px; line-height:1.55; color:var(--f-muted); margin:0; }
.learning-responses { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.learning-responses strong { display:block; font-size:15px; font-weight:600; color:var(--f-ink); margin-bottom:4px; }
.purchase-action { margin-top:32px; display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.purchase-action .f-small { margin:0; }
@media(max-width:760px) {
 .purchase-heading { gap:24px; }
 .purchase-price { font-size:56px; }
 .purchase-price span { font-size:28px; }
 .purchase-cost .f-small { font-size:13px; max-width:110px; }
 .learning-rows li { grid-template-columns:30px minmax(0,1fr); gap:10px 16px; padding:24px 0; }
 .learning-rows li > p,.learning-responses { grid-column:2; }
 .learning-rows h4 { font-size:19px; }
}
@media(max-width:560px) {
 .purchase-heading { grid-template-columns:1fr; gap:24px; }
 .purchase-cost { text-align:left; display:flex; align-items:center; gap:20px; }
 .purchase-cost .f-small { margin:0; max-width:none; }
 .learning-map { margin-top:40px; }
 .learning-responses { grid-template-columns:1fr; gap:14px; }
 .purchase-action { align-items:flex-start; flex-direction:column; gap:16px; }
}
.faq-layout { max-width:820px; margin:auto; }
.faq-layout h2 { text-align:center; margin-bottom:56px; }
.f-faq summary { font-size:18px; min-height:84px; }
.f-faq details p { font-size:17px; }
.f-faq summary::after { color:var(--f-muted); }
.f-footer { border-top:1px solid #242427; }
.footer-bottom { font-size:12px; }
/* A full-page decorative layer. No column, no reserved horizontal space. */
pocket-watch-scroll { display:block; position:absolute; inset:0; z-index:0; pointer-events:none; overflow:clip; }
.pocket-watch-rig { position:absolute; inset:0 0 auto; height:900px; pointer-events:none; }
.watch-chain { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.watch-head { position:absolute; width:180px; max-width:none; transform-origin:50% 4%; filter:drop-shadow(0 12px 20px #0005); }
.watch-static { position:absolute; top:5px; left:19%; width:175px; opacity:.6; transform:rotate(25deg); }
.watch-static img { width:100%; }
.watch-static::before { content:''; display:block; position:absolute; border:2px dotted #c6a779; border-radius:50%; width:85px; height:35px; transform:rotate(-25deg); left:-46px; top:-10px; }
.watch-layout .f-content h1,.watch-layout .f-content h2,.watch-layout .f-content h3,.watch-layout .f-content p { text-shadow:0 2px 18px var(--f-bg); }
.checkout-shell { min-height:calc(100svh - 72px); display:grid; place-items:center; padding-block:80px; }
.checkout-card { max-width:680px; width:100%; }
.checkout-card h1 { font-size:clamp(38px,5vw,60px); margin-top:16px; }
.checkout-card .f-button { margin-top:32px; }
.checkout-card p { margin-top:24px; color:var(--f-muted); }
@media(max-width:1099px) {
 .hero { padding-top:190px; }
 .hero h1 { font-size:clamp(56px,8.5vw,88px); }
 .includes-grid,.instructor-grid { gap:44px; }
 .step-card { padding-inline:28px; }
 .watch-static { width:120px; left:22%; }
}
@media(max-width:760px) {
 .hero { padding-top:145px; padding-bottom:56px; }
 .hero h1 { font-size:clamp(42px,8.3vw,62px); }
 .hero .f-lede { font-size:17px; max-width:440px; }
 .hero-actions { flex-direction:column; gap:18px; }
 .hero-film { padding-bottom:24px; }
 .hero-film .f-media-stage { aspect-ratio:16/9; border-radius:18px; }
 .f-stack { margin-top:40px; }
 .f-eyebrow { font-size:12px; margin-bottom:20px; }
 .f-center .f-lede { max-width:440px; }
 .transformation-track { gap:28px; margin-top:46px; }
 .transformation-step h3 { font-size:23px; }
 .transformation-step p { font-size:15px; }
 .steps-grid { grid-template-columns:1fr; gap:32px; }
 .step-card,.step-card:first-child,.step-card:last-child { padding:0 0 30px; border:0; display:grid; grid-template-columns:80px 1fr; column-gap:24px; }
 .step-card + .step-card { border-left:0; border-top:1px solid var(--f-line); padding-top:30px; }
 .step-number { font-size:52px; grid-row:span 2; line-height:1; }
 .step-card h3 { margin:0; }
 .step-card p { grid-column:2; margin-top:12px; font-size:16px; }
 .timeline { grid-template-columns:repeat(2,minmax(0,1fr)); gap:44px 0; margin-top:50px; }
 .timeline h3 { font-size:20px; }
 .proof-grid { gap:16px; }
 .proof-grid .f-media-stage { border-radius:16px; }
 .arm-lock .f-media-stage { aspect-ratio:16/9; }
 .fit-card { padding:30px; }
 .instructor-grid h2 { font-size:48px; }
 .f-play { width:54px; height:54px; }
 .watch-static { width:100px; top:0; left:calc(50% - 105px); }
 .site-nav { height:64px; gap:10px; }
 .brand { font-size:13px; }
 .nav-links { gap:0; }
 .f-button--small { min-height:38px; font-size:12px; padding:8px 15px; }
}
@media(max-width:560px) {
 .transformation-track { grid-template-columns:1fr; gap:24px; }
 .transformation-step { display:grid; grid-template-columns:30px 1fr; gap:12px; padding-top:24px; }
 .transformation-step h3 { margin:0; }
 .transformation-step p { grid-column:2; margin:0; font-size:16px; }
 .proof-grid { grid-template-columns:1fr; }
 .proof-grid .f-media-stage { aspect-ratio:4/5; }
 .includes-grid,.instructor-grid { grid-template-columns:1fr; gap:36px; }
 .includes-grid .f-media { max-width:420px; margin:auto; }
 .instructor-grid .f-media-stage { aspect-ratio:1; }
 .instructor-grid { max-width:440px; }
 .includes-list li { font-size:16px; }
 .fit-grid { gap:16px; }
 .timeline p { font-size:15px; }
 .f-faq summary { font-size:16px; }
 .f-faq details p { font-size:16px; }
 .footer-bottom { gap:12px; }
 .brand img { width:25px; height:25px; }
}
@media(prefers-reduced-motion:reduce) {
 pocket-watch-scroll[data-animated] .pocket-watch-rig { display:none; }
 .f-content { transform:none!important; }
}

/* Workshop invitation: laptop artwork and a focused editorial column. */
.unlock-workshop { padding-block:clamp(88px,9vw,140px); overflow:clip; background:radial-gradient(ellipse at 0% 48%,#77237870,transparent 48%),radial-gradient(ellipse at 46% 90%,#66402d26,transparent 48%),#09090b; }
.unlock-workshop .f-container { width:min(1280px,calc(100% - var(--f-gutter) * 2)); }
#includes .f-content { z-index:auto; }
.unlock-workshop-grid { display:grid; grid-template-columns:1.25fr 1fr; gap:clamp(40px,6vw,90px); align-items:center; min-height:600px; }
.unlock-artwork { min-width:0; margin-inline:-64px -24px; mix-blend-mode:lighten; }
.unlock-artwork media-proof { display:block; }
#includes .f-media--mockup .f-media-stage { aspect-ratio:4/3; background:transparent; border-radius:0; overflow:visible; }
#includes .f-media--mockup .f-media-stage img { object-fit:contain; filter:none; mix-blend-mode:lighten; }
.unlock-copy { min-width:0; }
.unlock-copy .f-eyebrow { font-size:11px; letter-spacing:.23em; line-height:1.7; color:#c4c0c7; margin-bottom:24px; }
.unlock-copy h2 { font-size:clamp(56px,6.4vw,96px); line-height:1; letter-spacing:-.055em; }
.unlock-copy h2 em { color:#a43aaf; background:linear-gradient(110deg,#b739ab,#65217f); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.unlock-description { margin-top:30px; color:#b3afb9; font-size:clamp(18px,1.6vw,23px); line-height:1.55; max-width:530px; }
.unlock-cta { margin-top:32px; min-height:62px; padding:16px 34px; font-size:18px; gap:22px; background:linear-gradient(110deg,#8f2b91,#792481); }
.unlock-cta:hover { background:linear-gradient(110deg,#a133a3,#8b2c94); }
.unlock-cta > span { font-size:25px; line-height:1; }
.unlock-availability { margin:12px 0 0; color:#b3afb9; font-size:12px; }
.unlock-disclosure { margin:24px 0 0; max-width:480px; color:#a4a0aa; font-size:13px; line-height:1.65; }
.watch-layout .unlock-copy h2,.watch-layout .unlock-copy p { text-shadow:none; }
@media(max-width:1000px) {
 .unlock-workshop-grid { gap:36px; min-height:0; }
 .unlock-artwork { margin-inline:-36px -12px; }
 .unlock-copy h2 { font-size:clamp(48px,6vw,72px); }
 .unlock-copy .f-eyebrow { font-size:10px; letter-spacing:.17em; }
 .unlock-description { font-size:18px; margin-top:24px; }
 .unlock-cta { font-size:16px; min-height:54px; padding:14px 24px; }
}
@media(max-width:760px) {
 .unlock-workshop { padding-block:72px; background:radial-gradient(ellipse at 0% 22%,#77237860,transparent 52%),#09090b; }
 .unlock-workshop-grid { grid-template-columns:1fr; gap:36px; max-width:560px; margin-inline:auto; }
 .unlock-artwork { margin-inline:-18px; }
 .unlock-copy h2 { font-size:clamp(48px,9vw,68px); }
 .unlock-copy .f-eyebrow { margin-bottom:20px; }
 .unlock-description { max-width:480px; }
 .unlock-disclosure { max-width:440px; }
}
/* Qualification section. */
#for-you .fit-grid { gap:24px; margin-top:52px; align-items:stretch; }
#for-you .fit-action { margin-top:40px; text-align:center; }
#for-you .fit-action .f-button { min-height:56px; padding:14px 30px; font-size:16px; gap:18px; }
#for-you .fit-action .f-button > span { font-size:23px; line-height:1; }
#for-you .fit-card { padding:36px; border:1px solid; display:grid; grid-template-rows:auto 1fr; }
#for-you .fit-card--yes { background:#efeee8; border-color:#d3d8cc; color:#17251e; }
#for-you .fit-card--no { background:#1b191e; border-color:#49424e; color:#f5f2f7; }
#for-you .fit-card h3 { font-size:clamp(23px,2.2vw,28px); line-height:1.2; letter-spacing:-.035em; text-shadow:none; }
#for-you .fit-card ul { display:grid; grid-template-rows:repeat(3,1fr); margin-top:28px; }
#for-you .fit-card li { display:grid; grid-template-columns:28px minmax(0,1fr); gap:14px; padding:22px 0; font-size:16px; color:inherit; }
#for-you .fit-card li:last-child { padding-bottom:0; }
#for-you .fit-card--yes li { border-color:#bac7bb; }
#for-you .fit-card--no li { border-color:#49424e; }
#for-you .fit-mark { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; margin-top:1px; }
#for-you .fit-mark svg { width:17px; height:17px; stroke:currentColor; stroke-width:2.3; stroke-linecap:round; stroke-linejoin:round; }
#for-you .fit-card--yes .fit-mark { background:#d5e3d7; color:#1d6345; }
#for-you .fit-card--no .fit-mark { background:#442b32; color:#efb2b6; }
#for-you .fit-copy strong { display:block; font-size:17px; line-height:1.35; font-weight:600; letter-spacing:-.015em; }
#for-you .fit-copy p { font-size:15px; line-height:1.55; margin:7px 0 0; text-shadow:none; }
#for-you .fit-card--yes .fit-copy p { color:#3e5046; }
#for-you .fit-card--no .fit-copy p { color:#d1cbd5; }
@media(max-width:760px) {
 #for-you .fit-grid { grid-template-columns:1fr; gap:20px; margin-top:36px; }
 #for-you .fit-card { padding:28px; }
 #for-you .fit-card ul { grid-template-rows:none; margin-top:24px; }
 #for-you .fit-card li { padding:20px 0; }
}
@media(max-width:380px) {
 #for-you .fit-card { padding:24px 20px; }
 #for-you .fit-card li { grid-template-columns:26px minmax(0,1fr); gap:11px; }
 #for-you .fit-mark { width:26px; height:26px; }
}

/* Public prelaunch state: purchase stays closed until the paid training is ready. */
.hero .launch-note { margin:20px auto 0; max-width:490px; color:#ddd5bd; font-size:15px; line-height:1.5; }
.launch-closed:disabled { cursor:default; background:#514056; color:#eee8ef; opacity:1; }
.launch-closed:disabled:hover { transform:none; background:#514056; }
