/* The foreground never inherits the graph camera transform. */
:root{--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s6:48px;--s8:64px;--s12:96px;--title-hero:clamp(44px,calc(24.69px + 4.952vw),96px);--title-scene:clamp(34px,calc(25.83px + 2.095vw),56px);--title-module:clamp(24px,calc(22.51px + .381vw),28px);--body-size:clamp(16px,calc(15.63px + .095vw),17px)}
.site-header{position:sticky;top:0;height:80px;z-index:30}.brand{letter-spacing:.18em;line-height:1.5}.brand small{letter-spacing:.18em}.nav-links{font-size:15px}.eyebrow,.label{font-family:Archivo,sans-serif;letter-spacing:0;font-size:12px;font-weight:600;line-height:1.4;text-transform:none}h1,h2,h3{font-family:'Bricolage Grotesque',sans-serif;text-transform:none;font-weight:600;letter-spacing:-.035em;line-height:1.1}h1{font-weight:800}h2{font-size:var(--title-scene)}h3{font-size:var(--title-module)}body{font-size:var(--body-size)}p{max-width:52ch}a:hover{color:var(--ink)}.payment,.library-item small,.nav-links a[aria-current=page]{color:var(--ink)}.nav-links a[aria-current=page]{box-shadow:inset 0 -2px var(--accent)}.page-intro h1,.page-intro.compact h1{font-size:var(--title-hero);line-height:1.04}.page-intro p{font-size:var(--body-size)}.plan h2,.course-copy h3{font-family:'Bricolage Grotesque',sans-serif;font-weight:600}.course-copy h3,.session-row h2,.course-list-item h2{font-size:var(--title-scene)}.plan h2,.workflow-row h3,.catalog-head h2{font-size:var(--title-module)}
#journey{position:relative;background:var(--bg)}#stage{position:relative;isolation:isolate;background:var(--bg)}#world,.journey-dots{display:none;pointer-events:none}.journey-scene{position:relative;padding:var(--s12) var(--space);max-width:1600px;margin:auto;display:grid;grid-template-columns:1fr 1.1fr;gap:var(--s8);align-items:center;min-height:720px}.scene-copy{z-index:2;position:relative;padding-block:var(--s3);background:var(--bg)}.scene-copy>.eyebrow{display:block;color:var(--muted);margin-bottom:var(--s4)}.scene-copy h1{font-size:var(--title-hero);line-height:1.04}.scene-copy h2{font-size:var(--title-scene);line-height:1.1;max-width:10ch}.scene-copy>p{margin-top:var(--s3);color:var(--muted);max-width:36ch}.scene-copy .button{margin-top:var(--s4)}.scene-visual{position:relative;min-width:0}.scene-visual figure{position:relative}.scene-visual img{height:100%;object-fit:cover}.scene-visual figcaption{color:var(--muted);font-size:12px;padding-top:var(--s2)}.panorama{min-height:800px;grid-template-columns:1fr 1fr}.panorama .scene-copy{background:transparent}.panorama .scene-visual{position:absolute;inset:0;z-index:-1}.david-panorama{height:100%;overflow:hidden;background:var(--bg)}.david-panorama img{width:70%;height:100%;margin-left:auto;object-position:50% 29%;filter:saturate(.5);transform:scale(1.35);transform-origin:75% 42%}.david-panorama:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,var(--bg) 29%,var(--mask-heavy) 40%,var(--mask-light) 74%,var(--mask-edge)),linear-gradient(0deg,var(--bg),transparent 22%)}.david-panorama figcaption{position:absolute;right:var(--space);bottom:var(--s12);z-index:2;background:var(--bg);padding:8px 16px}.panorama .scene-copy>p{max-width:32ch}.idea-composition{display:grid;grid-template-columns:1.15fr .85fr;gap:var(--s3);align-items:end}.reference-image{height:420px;background:var(--surface)}.reference-image img{object-position:50% 28%;height:100%;filter:saturate(.5)}.reference-image figcaption{position:absolute;left:16px;bottom:16px;background:var(--bg);padding:8px 16px}.idea-note{background:var(--surface);padding:var(--s3);border-top:2px solid var(--accent);margin-bottom:var(--s6)}.idea-note>p{margin:var(--s3) 0;font-size:var(--body-size)}.idea-note .note{font-size:12px}.journey-status{display:none}.journey-skip{display:inline-flex;gap:16px;margin:24px var(--space);font-size:15px;border-bottom:1px solid var(--hair-strong);padding:8px 0;min-height:44px}.offer-explorer{padding-block:var(--s12);scroll-margin-top:80px}.offer-explorer>h2{margin:24px 0 48px}
.journey-enhanced #spacer{height:770svh}.journey-enhanced #stage{position:fixed;inset:0;overflow:hidden;z-index:1}.journey-enhanced #stage.is-past{position:absolute;top:auto;bottom:0;height:100svh;visibility:hidden;pointer-events:none}.journey-enhanced #world{display:block;position:absolute;left:0;top:0;width:4800px;height:1800px;transform-origin:0 0;will-change:transform}.journey-enhanced .journey-dots{display:block;position:absolute;inset:0;background-image:radial-gradient(var(--dots) 1px,transparent 1px);background-size:32px 32px}.graph-node{position:absolute;width:400px;min-height:248px;border:1px solid var(--graph-line);border-radius:var(--r-node);background:var(--raised);opacity:.24;transition:opacity var(--fast) var(--ease)}.graph-node.live{opacity:.52}.graph-node.done{opacity:.45}.graph-node header{padding:16px 24px;border-bottom:1px solid var(--hair-strong);display:flex;justify-content:space-between;font:14px Archivo,sans-serif}.graph-node small{display:block;margin:24px;font:12px Archivo,sans-serif;color:var(--muted)}.graph-node.live header:before{content:'';width:6px;height:6px;border-radius:var(--r-pill);background:var(--accent);margin-top:4px}.node-ports{display:flex;justify-content:space-between;gap:24px}.port-list{display:grid;gap:24px;padding-block:24px;font:12px Archivo,sans-serif}.port-row{position:relative;min-width:110px;padding-inline:24px}.port-list.output{text-align:right}.port{position:absolute;top:3px;left:-5px;width:9px;height:9px;border:1px solid var(--graph-line);border-radius:var(--r-pill);background:var(--graph-port)}.output .port{left:auto;right:-5px}.port.active{background:var(--accent);border-color:var(--accent)}.graph-cables{position:absolute;inset:0;width:4800px;height:1800px;overflow:visible}.cable-base{stroke:var(--graph-line);opacity:.22;fill:none;stroke-width:1.4}.cable-active{stroke:var(--accent);opacity:.65;fill:none;stroke-width:1.8}.journey-enhanced #foreground{position:absolute;inset:0;pointer-events:none}.journey-enhanced .journey-scene{position:absolute;inset:0;padding-top:128px;padding-bottom:112px;min-height:0;pointer-events:auto}.journey-enhanced .journey-scene[hidden]{display:none}.journey-enhanced .scene-copy{box-shadow:0 0 48px 32px var(--bg)}.journey-enhanced .panorama .scene-copy{box-shadow:none}.journey-enhanced .panorama .scene-visual{inset:80px 0 0}.journey-enhanced .journey-status{position:absolute;left:var(--space);right:var(--space);bottom:24px;display:flex;gap:24px;align-items:center;border-top:1px solid var(--hair);padding-top:16px;font-size:12px;color:var(--muted)}.journey-status>[data-scene-count]{color:var(--ink);font-variant-numeric:tabular-nums}.scroll-hint{margin-left:auto}.journey-enhanced .journey-skip{position:absolute;right:var(--space);top:96px;margin:0;z-index:4;background:var(--bg)}.journey-enhanced #stage.releasing{transform:translateY(var(--release,0px))}.offer-explorer{position:relative;z-index:2;background:var(--bg)}
@media(max-width:1000px){.journey-scene{gap:32px;grid-template-columns:.9fr 1.1fr}.idea-composition{grid-template-columns:1fr}.idea-note{margin:0;position:absolute;right:0;bottom:-24px;max-width:200px}.reference-image{width:82%;height:380px}.scene-copy h2{max-width:11ch}}
@media(max-width:850px){.site-header{height:72px}.nav-links{top:72px}.nav-links.open{font-size:15px}.brand{font-size:11px}.journey-enhanced .panorama .scene-visual{top:72px}}
@media(max-width:600px){.journey-scene{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding:48px 24px;min-height:0}.scene-copy{padding:0}.scene-copy>.eyebrow{margin-bottom:16px}.scene-copy h2{max-width:13ch}.scene-copy>p{margin-top:24px}.scene-copy .button{margin-top:32px}.journey-enhanced .journey-scene{padding:136px 24px 80px;justify-content:center;gap:32px}.journey-enhanced .scene-copy{box-shadow:0 0 24px 16px var(--bg)}.journey-enhanced .journey-skip{top:80px;right:24px;font-size:12px;min-height:40px}.journey-enhanced .journey-status{bottom:16px;gap:16px;padding-top:16px}.scroll-hint{font-size:0}.scroll-hint:after{content:'↓';font-size:16px}.panorama{min-height:720px}.panorama .scene-copy{margin-top:16px}.journey-enhanced .panorama{justify-content:flex-start}.panorama .scene-visual{inset:220px 0 0}.journey-enhanced .panorama .scene-visual{inset:260px 0 0}.david-panorama img{width:100%;object-position:50% 28%;transform:scale(1.15);transform-origin:center 35%}.david-panorama:after{background:linear-gradient(180deg,var(--bg),transparent 28%,transparent 70%,var(--bg))}.david-panorama figcaption{bottom:64px;right:24px;font-size:12px}.panorama .scene-copy>p{max-width:30ch}.panorama .scene-copy .button{margin-top:24px}.idea-composition{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}.reference-image{width:100%;height:280px}.idea-note{position:static;max-width:none;padding:16px;margin-bottom:0}.reference-image figcaption{left:8px;bottom:8px;padding:8px;font-size:12px}.idea-note>p{font-size:15px}.offer-explorer{padding-block:64px}}
@media(prefers-reduced-motion:reduce){.journey-dots,#world{display:none!important}}
/* Scene-specific proportions use the shared type and spacing scales. */
.class-composition{background:var(--surface);padding:24px}.class-poster{height:360px;overflow:hidden;background:var(--bg)}.class-poster img{width:58%;margin-left:auto;object-position:50% 30%;filter:saturate(.5)}.class-poster:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 5%,transparent 80%)}.class-poster>div{position:absolute;z-index:1;left:24px;bottom:32px}.class-poster h3{margin-top:24px;font-size:var(--title-module);line-height:1.15}.class-topics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px;font-size:12px;color:var(--ink)}.class-topics span{padding-top:16px;border-top:1px solid var(--hair-strong)}.visual-note{color:var(--muted);font-size:12px;margin-top:16px}.kit-composition{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:end}.kit-cover{background:var(--ink);color:var(--bg);padding:32px;position:relative;min-height:430px;display:flex;flex-direction:column;justify-content:space-between}.kit-symbol{position:absolute;right:32px;top:72px;font-size:56px;line-height:1}.kit-cover h3{font-size:var(--title-scene);line-height:1.1;margin-top:64px}.kit-flow{display:flex;align-items:center;gap:8px;font-size:12px;margin-top:32px}.kit-flow i{height:1px;background:var(--faint);flex:1;min-width:8px}.kit-contents{background:var(--surface);padding:24px;margin-bottom:32px}.kit-contents>div+div{border-top:1px solid var(--hair-strong);margin-top:32px;padding-top:24px}.kit-contents .eyebrow{color:var(--muted)}.kit-contents p{margin-top:16px}.plan-indication{font-size:12px!important;color:var(--ink)!important;border-left:2px solid var(--accent);padding-left:16px}.practice-header,.practice-footer{display:flex;justify-content:space-between;gap:16px;font-size:12px;color:var(--muted);padding:16px 0}.practice-header{border-top:1px solid var(--hair-strong)}.sampler-preview{height:420px;background:var(--surface);overflow:hidden}.sampler-preview img{object-position:50% 28%;filter:saturate(.5)}#sampler{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}#sampler.ready{opacity:1}.sampler-preview figcaption{position:absolute;right:16px;bottom:16px;background:var(--bg);padding:8px 16px}.mentor-composition{position:relative;padding-right:80px}.mentor-portrait{height:440px}.mentor-portrait img{object-position:50% 30%;filter:saturate(.65)}.mentor-portrait figcaption{position:absolute;left:16px;top:16px;background:var(--bg);padding:8px 16px}.mentor-note{position:absolute;right:0;bottom:32px;padding:24px;background:var(--surface);max-width:240px;font-size:15px}.mentor-note p{color:var(--muted);font-size:12px;margin-top:16px}.community-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:var(--r-pill);margin-right:8px}.scene-copy>.mentor-bio{font-size:15px;max-width:40ch;line-height:1.6}.result .david-panorama img{transform:none;object-fit:contain;object-position:80% center;width:80%;filter:saturate(.5) brightness(var(--result-light,1))}.result .scene-copy h2{max-width:11ch}.result .text-link{margin-top:32px;font-size:15px}.offer-explorer .wrap>h2{margin:24px 0 48px}.offer-tabs{display:flex;gap:48px;border-bottom:1px solid var(--hair-strong);margin-bottom:48px}.offer-tabs a{padding:16px 0;min-height:52px;font-size:15px;color:var(--muted);border-bottom:3px solid transparent}.offer-tabs [aria-selected=true]{border-color:var(--accent);color:var(--ink)}.offer-panel{display:grid;grid-template-columns:1.25fr 1fr;gap:64px;align-items:center;min-height:460px}.offer-visual figure{height:460px;position:relative;overflow:hidden;background:var(--surface)}.offer-visual img{width:100%;height:100%;object-fit:cover}.offer-visual .offer-lab img{object-position:50% 25%;filter:saturate(.5)}.offer-visual .offer-mentor img{object-position:50% 30%;filter:saturate(.65)}.offer-visual figcaption{position:absolute;left:24px;bottom:24px;padding:8px 16px;background:var(--bg);font-size:12px}.offer-copy h3{font-size:var(--title-scene);margin:24px 0}.offer-copy>p{max-width:35ch;color:var(--muted)}.offer-copy .button{margin-top:32px}.image-credit{font-size:12px;color:var(--muted);max-width:90ch;margin-top:32px}.image-credit a{text-decoration:underline;text-underline-offset:3px}html:not(.js) .offer-panel+.offer-panel{margin-top:64px}
/* Transparent image edges leave the active loader visible from frame one. */
.david-panorama{background:transparent}.david-panorama img{mask-image:linear-gradient(90deg,transparent,var(--mask) 46%)}.david-panorama:after{background:linear-gradient(0deg,var(--bg),transparent 22%)}.opening .scene-copy{background:linear-gradient(90deg,var(--bg) 65%,transparent);box-shadow:none}.opening .scene-copy h1{white-space:nowrap}.opening .scene-copy>.eyebrow{background:var(--bg);width:max-content}.panorama .scene-copy>p{background:var(--bg);width:fit-content}.result .scene-copy{background:linear-gradient(90deg,var(--bg) 70%,transparent)}
@media(max-width:1000px){.kit-composition{grid-template-columns:1fr}.kit-cover{min-height:320px;padding:24px}.kit-cover h3{margin-top:32px}.kit-contents{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:24px}.kit-contents>div+div{margin:0;padding:0 0 0 24px;border-top:0;border-left:1px solid var(--hair-strong)}.mentor-composition{padding-right:24px}.mentor-note{bottom:24px;max-width:210px}.offer-panel{gap:32px;grid-template-columns:1.1fr 1fr}.offer-tabs{gap:32px}.offer-visual figure{height:400px}.offer-panel{min-height:400px}.class-poster>div{left:16px;bottom:24px}.class-poster img{width:85%}.class-poster:after{background:linear-gradient(0deg,var(--bg),transparent 85%)}.class-topics{gap:8px}.mentor-bio{font-size:14px!important}}
@media(max-width:600px){.class-composition{padding:16px}.class-poster{height:240px}.class-poster img{width:65%}.class-poster>div{left:16px;bottom:16px}.class-poster h3{margin-top:16px}.class-topics{gap:16px;margin-top:16px}.class-topics span{padding-top:8px}.recordings .scene-copy h2{max-width:12ch}.kit-composition{grid-template-columns:1fr;gap:16px}.kit-cover{min-height:240px;padding:24px}.kit-cover h3{font-size:var(--title-module);margin-top:24px}.kit-symbol{right:24px;top:56px}.kit-flow{margin-top:24px}.kit-contents{padding:16px;gap:16px}.kit-contents>div+div{padding-left:16px}.kit-contents p{font-size:12px;margin-top:8px}.practice .scene-copy h2{max-width:12ch}.sampler-preview{height:280px}.practice-header,.practice-footer{padding:8px 0}.practice .visual-note{margin-top:8px}.practice .scene-copy .plan-indication{margin-top:16px}.mentor-composition{padding-right:48px}.mentor-portrait{height:260px}.mentor-note{bottom:16px;padding:16px;max-width:190px;font-size:12px}.mentor-note p{margin-top:8px}.scene-copy>.mentor-bio{margin-top:16px;font-size:14px}.mentor .scene-copy h2{max-width:13ch}.journey-enhanced .mentor{gap:24px}.result .david-panorama img{width:100%;object-fit:cover;object-position:center 24%;mask-image:linear-gradient(0deg,transparent,var(--mask) 24%)}.journey-enhanced .result .scene-visual{inset:310px 0 0}.result .scene-copy h2{max-width:10ch}.result .scene-copy{background:transparent}.result .text-link{margin-top:16px}.david-panorama img{mask-image:linear-gradient(180deg,transparent,var(--mask) 25%)}.david-panorama:after{background:linear-gradient(0deg,var(--bg),transparent 30%)}.opening .scene-copy{background:transparent}.offer-explorer .wrap>h2{margin:24px 0 32px}.offer-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-bottom:32px}.offer-tabs a{padding:16px 0}.offer-panel{grid-template-columns:1fr;gap:24px;min-height:650px;align-content:start}.offer-visual figure{height:280px}.offer-copy h3{margin:16px 0 24px}.offer-copy .button{margin-top:32px}.offer-copy>p{min-height:78px}.offer-copy{min-height:330px}.offer-visual figcaption{left:16px;bottom:16px;max-width:calc(100% - 32px)}.image-credit{margin-top:32px}.opening .scene-copy h1{white-space:normal}}
@media(prefers-reduced-motion:reduce){.result .david-panorama img{filter:saturate(.5)}#sampler{display:none}}
.opening .scene-copy,.result .scene-copy{background:transparent}.opening .scene-copy>p,.result .scene-copy>p{background:transparent}.opening .david-panorama img{mask-image:linear-gradient(90deg,transparent 0%,transparent 18%,var(--mask) 65%)}.result .david-panorama img{width:76%;object-fit:cover;object-position:50% 27%;mask-image:linear-gradient(90deg,transparent,var(--mask) 45%)}
@media(max-width:600px){.opening .david-panorama img{mask-image:linear-gradient(180deg,transparent,var(--mask) 30%)}.result .david-panorama img{width:100%;object-position:center 24%;mask-image:linear-gradient(0deg,transparent,var(--mask) 24%)}}
.offer-explorer{scroll-margin-top:0}.result .scene-copy>p{background:var(--bg);box-shadow:0 0 24px 16px var(--bg)}
/* Keep the mobile introduction on an opaque reading area, with a closer crop. */
@media(max-width:600px){.journey-enhanced .opening .scene-visual{inset:350px 0 0}.opening .david-panorama img{transform:scale(1.6);transform-origin:55% 35%;mask-image:linear-gradient(180deg,transparent 10%,var(--mask) 36%)}.opening .scene-copy>p{background:var(--bg)}.result .scene-copy>p{box-shadow:none}}
.result .scene-copy{background:var(--bg);box-shadow:0 0 48px 32px var(--bg)}
@media(max-width:600px){.result .scene-copy{box-shadow:0 0 24px 16px var(--bg)}}
.page-intro .eyebrow,.course-copy>.eyebrow,.course-heading .eyebrow{font-size:12px;letter-spacing:0}
/* Soft reading masks protect text without introducing a rectangular card. */
.journey-enhanced .result .scene-copy{background:transparent;box-shadow:none}.result .scene-copy:before{content:'';position:absolute;inset:-32px -16px -32px -64px;background:var(--bg);filter:blur(32px);border-radius:var(--r-card);z-index:-1;pointer-events:none}.result .scene-copy>p{background:transparent;box-shadow:none}
@media(max-width:600px){.journey-enhanced .opening .scene-copy:before{content:'';position:absolute;inset:-16px 24px -16px -32px;background:var(--bg);filter:blur(24px);border-radius:var(--r-card);z-index:-1;pointer-events:none}.result .scene-copy:before{inset:-24px -24px -24px -24px;filter:blur(24px)}.offer-workflows img,.offer-courses img{object-fit:contain}.offer-workflows figcaption,.offer-courses figcaption{position:static;padding:8px 16px;margin:0;background:var(--bg)}.offer-workflows img,.offer-courses img{height:calc(100% - 40px)}}

.home .brand{font-family:'Syncopate',sans-serif}.home .eyebrow,.home .label{font-family:Archivo,sans-serif}.offer-visual figure{border-radius:var(--r-card);border:1px solid var(--hair);box-shadow:var(--float)}.offer-visual img{border-radius:var(--r-media)}
.home{line-height:1.6}
.kit-cover .eyebrow{color:var(--bg)}.class-poster .eyebrow{color:var(--ink);background:var(--bg)}

/* Approved editorial copy: preserve type, media crops and camera geometry. */
.opening .scene-copy h1{white-space:normal}
.scene-copy h2,.recordings .scene-copy h2,.practice .scene-copy h2,.mentor .scene-copy h2,.result .scene-copy h2{max-width:none}
.reveal-copy{margin-top:24px;color:var(--muted);max-width:36ch}
.reveal-copy p+p{margin-top:24px}
.journey-enhanced .reveal-copy{display:grid}
.journey-enhanced .reveal-copy p{grid-area:1/1;margin:0}
.journey-enhanced [data-reveal-initial]{opacity:var(--initial-opacity,1)}
.journey-enhanced [data-reveal-arrival]{opacity:var(--arrival-opacity,0)}
.mentor .text-link{margin-top:24px}
/* Real workflow capture: preserve the complete interface and its existing caption. */
.offer-visual .offer-workflows img{object-fit:contain;height:calc(100% - 64px)}
.offer-visual .offer-courses img{object-fit:contain;height:calc(100% - 64px)}
.class-poster>div{right:24px}
.class-poster h3{margin-top:0}
.class-poster p{margin-top:16px;background:var(--bg)}
.kit-cover h3{margin-top:96px}
@media(max-width:600px){.kit-cover h3{margin-top:80px}}
/* The expanded no-JS menu must not obscure native anchor destinations. */
html:not(.js) .home .site-header{position:relative}

/* Approved artwork and full ComfyUI screenshot inside the existing modules. */
.recordings .class-poster img{width:100%;height:52%;object-fit:contain;object-position:center top;filter:none}
.recordings .class-poster:after{display:none}
.kit-cover .kit-capture{width:100%;height:130px;object-fit:contain;margin-top:16px}
.kit-cover h3{margin-top:20px}
@media(max-width:600px){.recordings .class-poster img{height:42%}.kit-cover .kit-capture{height:96px;margin-top:12px}.kit-cover h3{margin-top:12px}.kit-flow{margin-top:16px}}

/* Final approved scenes: one text block and one complete image. Camera geometry is unchanged. */
.capture-preview{display:block;color:var(--ink);text-decoration:none}
.capture-preview img,.scene-visual .editorial-image img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;filter:none}
.capture-preview img{aspect-ratio:2020/1185;border-radius:var(--r-media)}
.capture-preview>span{display:flex;justify-content:flex-end;align-items:center;gap:10px;min-height:44px;margin-top:8px;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.kit-benefits{margin-top:28px;color:var(--ink);font-size:var(--body-size)}.kit-benefits p+p{margin-top:12px}
.recordings .scene-copy>p,.idea .scene-copy>p,.tools .scene-copy>p{max-width:46ch}
.journey-scene.result{grid-template-columns:1fr;text-align:center}
.result .scene-copy{max-width:960px;margin-inline:auto;background:transparent}
.result .scene-copy:before{inset:-48px;background:var(--bg);opacity:.88}
.result .scene-copy>p{max-width:48ch;margin-inline:auto}
.result .scene-copy>.scene-support{color:var(--ink);font-size:var(--body-size)}
.opening .david-panorama img{width:100%;height:100%;object-fit:cover;object-position:right center;transform:none;filter:none;mask-image:none}
.sampler-preview{height:auto;aspect-ratio:16/9}
.sampler-preview img{width:100%;height:100%;object-fit:contain;object-position:center;filter:none}
#sampler{object-fit:contain}
.offer-visual .offer-lab img{object-fit:contain;height:calc(100% - 64px);filter:none;object-position:center}
.offer-visual .offer-lab figcaption{position:static;padding:8px 24px;margin:0;background:var(--bg)}
.image-dialog{width:min(2100px,calc(100vw - 48px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:16px;border:1px solid var(--hair-strong);border-radius:var(--r-card);background:var(--bg);color:var(--ink);overflow:auto}
.image-dialog::backdrop{background:var(--mask-heavy)}
.image-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}
.image-toolbar a{font-size:15px}.image-toolbar .btn{flex:none}
.image-dialog>img{width:100%;height:auto;max-height:calc(100dvh - 132px);object-fit:contain}
.image-toolbar{flex-wrap:wrap}.image-viewport{overflow:auto;max-height:calc(100dvh - 190px);outline-offset:-2px}
.image-viewport img{width:100%;height:auto;max-height:calc(100dvh - 190px);object-fit:contain}
.image-dialog[data-original=true] .image-viewport img{width:2020px;max-width:none;max-height:none}
@media(min-width:1800px){
 .home{--title-scene:clamp(64px,3.2vw,82px);--title-hero:clamp(100px,5vw,128px);--body-size:clamp(19px,.9vw,23px)}
 .journey-scene{max-width:2160px;gap:96px}.scene-copy>.eyebrow{font-size:16px}
 .result .scene-copy{max-width:1280px}
 .home .offer-explorer .wrap{max-width:1920px}.home .offer-visual figure{height:580px}.home .offer-panel{gap:96px}
}
@media(max-width:1000px) and (min-width:601px){
 .journey-scene.idea,.journey-scene.recordings,.journey-scene.tools{grid-template-columns:1fr;gap:24px;align-content:center}
 .idea .scene-copy,.recordings .scene-copy,.tools .scene-copy{max-width:760px;padding-block:0}
 .idea .scene-visual,.recordings .scene-visual,.tools .scene-visual{width:100%;max-width:760px;margin-inline:auto}
 .scene-visual .editorial-image img{max-height:380px}.capture-preview img{max-height:380px}
}
@media(max-width:600px){
 .journey-enhanced .journey-scene.idea,.journey-enhanced .journey-scene.recordings,.journey-enhanced .journey-scene.tools{gap:24px}
 .kit-benefits{margin-top:24px;font-size:16px}
 .capture-preview>span{font-size:13px}
 .journey-enhanced .journey-scene.result{justify-content:center}
 .result .scene-copy{width:100%}.result .scene-copy h2{font-size:40px}
 .result .scene-copy:before{inset:-24px}
 .opening .david-panorama img{object-position:78% center;mask-image:linear-gradient(180deg,transparent,var(--mask) 24%)}
 .image-dialog{padding:12px}.image-toolbar{gap:8px}.image-toolbar a{font-size:13px}
}

.visual-credits{margin-top:32px;border:0;padding:0;color:var(--muted);font-size:12px}.visual-credits summary{width:max-content;cursor:pointer}.visual-credits p{max-width:80ch;margin-top:16px}.visual-credits a{text-decoration:underline;text-underline-offset:3px}

/* Approved full portraits: natural dimensions, no incompatible crop or face overlay. */
.mentor-composition{padding:0;max-width:420px;margin-inline:auto;display:grid;gap:12px}
.mentor-portrait{height:auto;aspect-ratio:auto}
.mentor-portrait img{display:block;width:100%;height:auto;object-fit:contain;object-position:center;filter:none;transform:none}
.mentor-portrait figcaption{position:static;padding:8px 0 0;background:transparent;text-align:center}
.mentor-note{position:static;max-width:none;padding:16px 20px;font-size:15px}
.mentor-note p{margin-top:4px}
/* A stable media slot keeps tabs in place; each image retains its own full aspect ratio. */
.offer-explorer{--offer-media-height:460px}
.offer-visual{height:var(--offer-media-height);display:grid;place-items:center;min-width:0}
.offer-copy{min-height:calc(var(--offer-media-height) - 80px)}
.home .offer-visual .offer-lab,.home .offer-visual .offer-mentor{width:100%;height:auto;max-height:100%;background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible;display:flex;flex-direction:column;align-items:center}
.offer-visual .offer-lab img,.offer-visual .offer-mentor img{display:block;width:auto;height:auto;max-width:100%;max-height:var(--offer-media-height);object-fit:contain;object-position:center;filter:none;border-radius:0}
.offer-visual .offer-mentor img{max-height:calc(var(--offer-media-height) - 40px)}
.offer-visual .offer-mentor figcaption{position:static;max-width:100%;padding:12px 0 0;background:transparent;color:var(--muted);text-align:center}
@media(min-width:1800px){.mentor-composition{max-width:560px}.offer-explorer{--offer-media-height:580px}}
@media(max-width:600px){
 .mentor-composition{max-width:100%;gap:8px}
 .mentor-portrait{width:200px;max-width:100%;margin-inline:auto}
 .mentor-portrait figcaption{padding-top:4px}
 .mentor-note{padding:10px 16px;font-size:12px;text-align:center}
 .mentor-note p{margin-top:4px}
 .offer-explorer{--offer-media-height:280px}
 .offer-copy{min-height:330px}
}

/* Keep mobile browser-bar changes from stretching the native scroll track. */
.journey-enhanced #spacer{height:var(--journey-scroll-height,770svh)}

/* Normal mobile keeps the canvas. Contained media leave margins around the existing graph. */
@media(max-width:600px){
 .journey-enhanced .journey-scene{overflow-y:auto}
 .journey-enhanced .journey-scene .scene-visual{width:calc(100% - 32px);margin-inline:auto;flex-shrink:0}
 .journey-enhanced .opening .scene-visual{position:relative;inset:auto;z-index:0}
 .journey-enhanced .opening .david-panorama{height:auto;aspect-ratio:auto}
 .journey-enhanced .opening .david-panorama img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;mask-image:none}
 .journey-enhanced .opening .david-panorama:after{display:none}
 .journey-enhanced .opening .david-panorama figcaption{position:static;text-align:right;padding:8px 0;background:transparent}
}
/* Let taller copy scroll within its scene when space is short, with the camera behind it. */
@media(max-height:779px) and (max-width:600px),(max-height:739px) and (pointer:coarse){
 .journey-enhanced .journey-scene{justify-content:flex-start;align-content:start;overflow-y:auto}
}
