/* A connected architectural story, shared across the audience routes. */
:root { --story-space: clamp(1.25rem, 5vw, 5.5rem); }
.story-site { font-size: 1rem; }
.story-site main > section { position: relative; scroll-margin-top: 92px; }
.story-site h1 { line-height: 1.01; }
.story-site h2 { font-size: clamp(2.25rem, 4.1vw, 4.5rem); line-height: 1.08; letter-spacing: -.045em; }
.story-site h3 { line-height: 1.2; }
.story-site em { color: var(--magenta); font-style: normal; }
.story-site .section-index,.story-site .kicker { font-size: .8rem; }
.story-site .section-motion > small { display: none; }
.story-site .section-motion-rail { opacity: .3; }
.story-site .section-motion-corner { opacity: .45; }
.story-site .site-header { grid-template-columns: auto 1fr auto; gap: 1.75rem; padding-inline: 2rem; }
.story-site #site-nav { justify-content: center; gap: clamp(.8rem,1.3vw,1.4rem); font-size: .875rem; white-space: nowrap; }
.story-site .brand img { width: 150px; }
.story-site .header-actions { gap: .5rem; }
.story-site .theme-toggle { padding-inline: .65rem; }
.story-site .theme-toggle .toggle-label { display: none; }
.story-site .hero-promise { max-width: 24ch; font-size: clamp(1.35rem, 1.8vw, 1.9rem); line-height: 1.25; }
.story-site .lede { font-size: 1.0625rem; line-height: 1.7; }
.story-site .page-section { padding-block: clamp(3rem,6vw,6rem); }
.story-site .section-lead > p,.story-site .section-lead p:not(.section-index) { max-width: 48rem; font-size: 1.0625rem; }
.story-hero { grid-template-columns: .9fr 1.15fr; gap: 2rem; min-height: min(840px,calc(100svh - 78px)); padding: 3.5rem var(--story-space) 4.5rem; }
.story-hero .hero-copy { grid-area: auto; width: 100%; margin: 0; padding: 2rem 0; border: 0; box-shadow: none; background: none; backdrop-filter: none; }
.story-hero .hero-copy::before,.story-hero .hero-copy::after { display: none; }
.story-hero h1 { font-size: clamp(2.75rem,4.45vw,5.15rem); }
.story-hero .hero-art { grid-area: auto; width: 112%; min-height: 0; margin: 0 -7% 0 0; transform: rotate(-1.2deg); }
.story-hero .hero-art img { height: auto; min-height: 0; aspect-ratio: 1.1; object-fit: cover; object-position: 60% center; }
.story-hero .script-note { margin: -.2rem 0 1.7rem; line-height: 1.15; }
.story-hero .hero-note { font-size: .8rem; }
html[data-theme="dark"] .story-hero .hero-copy { background: none; box-shadow: none; border: 0; }
.customer-journey { padding: 5rem var(--story-space) 4rem; border-bottom: 1px solid var(--line); background: color-mix(in srgb,var(--surface) 70%,transparent); }
.journey-intro { display: grid; grid-template-columns: 1.2fr 1fr; gap: 3rem; align-items: end; margin-bottom: 2.5rem; }
.journey-intro h2 { margin-bottom: 0; }
.journey-intro > div > p:not(.section-index) { max-width: 36rem; color: var(--muted); font-size: 1.1rem; }
.journey-intro .case-note { font-size: .8rem; line-height: 1.5; margin: 1rem 0 0; }
.journey-stage-nav { scroll-margin-top: 92px; display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--line); border-bottom: 0; }
.journey-tab { position: relative; display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: .15rem 1rem; padding: 1.25rem 1.5rem; text-align: left; background: var(--paper); color: var(--ink); border: 0; border-right: 1px solid var(--line); cursor: pointer; }
.journey-tab:last-child { border-right: 0; }
.journey-tab > span { grid-row: 1/3; color: var(--magenta); font-family: ui-monospace,monospace; font-size: .875rem; }
.journey-tab strong { font-size: 1.2rem; }
.journey-tab small { color: var(--muted); font-size: .875rem; }
.journey-tab.is-active { background: var(--ink); color: var(--paper); box-shadow: inset 0 4px 0 var(--magenta); }
.journey-tab.is-active small { color: var(--paper); opacity: .8; }
.journey-panels { border: 1px solid var(--line); box-shadow: 10px 12px 0 color-mix(in srgb,var(--magenta) 9%,transparent); }
.journey-panel { display: grid; grid-template-columns: 1.2fr 1fr; align-items: stretch; }
.journey-world { position: relative; min-width: 0; overflow: hidden; background: var(--paper); border-right: 1px solid var(--line); }
.journey-world .world-image { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; object-position: center; }
.world-caption { position: absolute; left: 1rem; bottom: 1rem; max-width: calc(100% - 2rem); padding: .65rem .8rem; font-size: .8rem; color: var(--ink); background: var(--paper); border: 1px solid var(--line); }
.journey-copy { min-width: 0; padding: clamp(1.5rem,3vw,3.2rem); background: var(--surface); min-height: 500px; }
.chapter-label { display: block; margin-bottom: 1.2rem; color: var(--magenta); font: .75rem/1.5 ui-monospace,monospace; letter-spacing: .035em; }
.journey-copy h3 { font-size: clamp(1.65rem,2.2vw,2.5rem); letter-spacing: -.04em; margin-bottom: 1rem; }
.journey-copy p { color: var(--muted); font-size: 1rem; line-height: 1.65; }
.journey-next { margin-top: 1.5rem; border: 0; border-bottom: 1px solid currentColor; background: none; color: var(--ink); cursor: pointer; font: inherit; font-weight: 650; text-align: left; }
.process-ribbon { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem; padding: 1rem 0; margin-bottom: .5rem; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: .875rem; font-weight: 650; }
.process-ribbon i { color: var(--magenta); font-style: normal; }
.evidence-detail { border-block: 1px solid var(--line); margin: 1.3rem 0; }
.evidence-detail summary { padding: .85rem 0; font-size: .9375rem; font-weight: 650; cursor: pointer; }
.evidence-detail p { margin: 0 0 1rem; font-size: .9375rem; }
.finding-reveals { border-top: 1px solid var(--line); }
.finding-reveals details { border-bottom: 1px solid var(--line); }
.finding-reveals summary { padding: .85rem 0; cursor: pointer; font-size: .9375rem; font-weight: 650; }
.finding-reveals summary span { display: inline-block; margin-right: .5rem; color: var(--magenta); font: .8rem ui-monospace,monospace; }
.finding-reveals p { font-size: .9375rem; padding-left: 1.5rem; }
.delivery-artifacts { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: 1.5rem 0; }
.delivery-artifacts > div { padding: 1rem; border: 1px solid var(--line); box-shadow: 4px 4px 0 color-mix(in srgb,var(--line) 30%,transparent); }
.delivery-artifacts strong { display: block; font-size: .9375rem; margin: .9rem 0 .5rem; }
.delivery-artifacts small { color: var(--muted); font-size: .8125rem; }
.artifact-state { display: inline-block; padding: .15rem .45rem; background: var(--magenta); color: white; font: .75rem/1.5 ui-monospace,monospace; }
.artifact-state.outline { background: none; border: 1px solid var(--magenta); color: var(--magenta); }
.journey-copy .journey-result { color: var(--ink); font-weight: 650; }
.product-peek { margin-top: 2rem; border: 1px solid var(--line); background: var(--surface); }
.product-peek > summary { display: flex; align-items: center; gap: 1.5rem; padding: 1.25rem 1.5rem; cursor: pointer; font-size: .9375rem; }
.product-peek > summary span { font-weight: 700; color: var(--magenta); }
.product-peek > summary b { margin-left: auto; font-size: 1.5rem; }
.peek-layout { display: grid; grid-template-columns: .7fr 1.3fr; gap: 2rem; padding: 0 1.5rem 1.5rem; align-items: center; }
.peek-layout h3 { font-size: 1.7rem; }
.peek-layout p { color: var(--muted); }
.peek-layout img { width: 100%; height: auto; border: 1px solid var(--line); }
.audience-section { padding: 5rem var(--story-space); }
.audience-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.6rem; }
.audience-card { display: flex; flex-direction: column; border-bottom: 2px solid var(--line); transition: border-color .25s; }
.audience-card:hover { border-color: var(--magenta); }
.audience-card figure { margin: 0; overflow: hidden; border: 1px solid var(--line); transform: rotate(-1deg); box-shadow: 6px 8px 0 color-mix(in srgb,var(--magenta) 8%,transparent); }
.audience-card:nth-child(2) figure { transform: rotate(1deg); }
.audience-card img { width: 100%; height: auto; aspect-ratio: 1.4; object-fit: cover; transition: transform .6s; }
.audience-card:hover img { transform: scale(1.035); }
.audience-card > div { padding: 1.5rem 0 2rem; }
.audience-card span,.editorial-resource > span:not(.text-link) { font: .8rem/1.5 ui-monospace,monospace; color: var(--magenta); }
.audience-card h3 { font-size: clamp(1.4rem,2vw,2rem); margin: .8rem 0 1rem; letter-spacing: -.025em; }
.audience-card p { color: var(--muted); max-width: 33ch; }
.audience-card strong { font-size: .9375rem; }
.story-site .app-lab { padding-block: 4rem; }
.story-site .app-lab-heading { margin-bottom: 2.5rem; }
.story-site .app-lab-layout { grid-template-columns: .8fr 1.2fr; }
.story-site .app-chapter small { font-size: .9375rem; }
.story-site .sandbox-heading { font-size: .8125rem; }
.story-site .app-chapter > span { font-size: .75rem; }
.story-site .app-window { min-height: 0; }
.story-site .app-stat-row small,.story-site .app-bar,.story-site .sandbox-feedback { font-size: .875rem; }
.story-site .app-table { font-size: .875rem; }
.story-site .app-governance { font-size: .9375rem; }
.story-site .app-lab::before { display: none; }
.editorial-resources { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2rem; }
.editorial-resource figure { margin: 0 0 1.2rem; overflow: hidden; border: 1px solid var(--line); }
.editorial-resource img { aspect-ratio: 1.9; object-fit: cover; width: 100%; height: auto; transition: transform .6s; }
.editorial-resource:hover img { transform: scale(1.04); }
.editorial-resource h3 { font-size: clamp(1.25rem,1.7vw,1.7rem); margin: .8rem 0 1.2rem; }
.story-site .section-actions { display: flex; flex-wrap: wrap; gap: 2rem; margin-top: 2rem; }
.closing-scene { min-height: 580px; display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; overflow: hidden; border-block: 1px solid var(--line); background: var(--surface); }
.closing-scene figure { position: relative; margin: 0; height: 100%; min-width: 0; }
.closing-scene .world-image { height: 100%; width: 100%; object-fit: cover; object-position: 27% center; }
.closing-copy { padding: 3rem var(--story-space) 3rem 3rem; }
.closing-copy p:not(.section-index) { color: var(--muted); line-height: 1.7; }
.closing-copy .button { margin-top: 1rem; }
.role-hero { display: grid; grid-template-columns: 1fr 1fr; align-items: center; padding: 3.5rem var(--story-space) 4rem; min-height: 650px; gap: 2.5rem; border-bottom: 1px solid var(--line); }
.role-hero h1 { font-size: clamp(2.75rem,4.5vw,5.5rem); letter-spacing: -.055em; }
.role-hero-copy { position: relative; z-index: 2; }
.role-hero .hero-promise { max-width: 28ch; }
.role-hero-art { margin: 0 -3rem 0 0; position: relative; transform: rotate(-1deg); border: 1px solid var(--line); box-shadow: 10px 12px 0 color-mix(in srgb,var(--magenta) 10%,transparent); }
.role-hero-art .world-image { width: 100%; height: auto; aspect-ratio: 1.15; object-fit: cover; }
.work-scenes { padding-inline: var(--story-space); }
.work-scene { display: grid; grid-template-columns: 1.15fr 1fr; gap: clamp(2rem,6vw,6rem); align-items: center; padding-block: 4rem; border-bottom: 1px solid var(--line); }
.work-scene:last-child { border-bottom: 0; }
.work-scene:nth-child(even) { grid-template-columns: 1fr 1.15fr; }
.work-scene:nth-child(even) > figure { order: 2; }
.work-scene figure { margin: 0; border: 1px solid var(--line); box-shadow: 8px 10px 0 color-mix(in srgb,var(--magenta) 9%,transparent); }
.work-scene figure img { width: 100%; height: auto; aspect-ratio: 1.3; object-fit: cover; }
.work-scene-copy h2 { font-size: clamp(2rem,3.3vw,3.7rem); }
.work-scene-copy > p:not(.section-index) { font-size: 1.0625rem; color: var(--muted); line-height: 1.7; }
.work-scene-copy .text-link { margin: .5rem 0; }
.developer-route { padding: 4rem var(--story-space); }
.dev-flow,.platform-chain { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid var(--line); margin: 2rem 0; }
.dev-flow > div,.platform-chain > div { position: relative; padding: 2rem; border-right: 1px solid var(--line); }
.dev-flow > div:last-child,.platform-chain > div:last-child { border-right: 0; }
.dev-flow span,.platform-chain span { color: var(--magenta); font: .8rem/1.5 ui-monospace,monospace; }
.dev-flow h3,.platform-chain h3 { font-size: 1.5rem; margin: 1.5rem 0 1rem; }
.dev-flow p,.platform-chain p { color: var(--muted); margin-bottom: 0; }
.story-site .dark-panel .platform-chain p { color: #d1c3ce; }
.wide-product { margin: 0; padding: 1rem; border: 1px solid var(--line); background: var(--surface); box-shadow: 10px 10px 0 color-mix(in srgb,var(--magenta) 8%,transparent); }
.wide-product img { width: 100%; height: auto; max-height: 680px; object-fit: cover; object-position: top; }
.wide-product figcaption { font-size: .8125rem; padding: 1rem 0 .2rem; color: var(--muted); }
.platform-control { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
.platform-control figure { margin: 0; }
.platform-control img { width: 100%; height: auto; }
.platform-control p:not(.section-index) { color: var(--muted); }
.story-site .product-demo .product-dashboard-window { height: auto; min-height: 0; aspect-ratio: 1363 / 810; }
.story-site .product-shot-panel img { width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.story-site .product-dashboard-plate figcaption { font-size: .875rem; }
.story-site .product-dashboard-plate figcaption span { font-size: .8rem; }
.story-site .page-tag,.story-site .resource-type { font-size: .8125rem; }
.story-site .view-card { min-height: 0; padding: 2rem; }
.story-site .view-card h3 { margin-top: 2rem; font-size: 1.65rem; }
.story-site .resource-feature:has(.resource-art) { grid-template-columns: 1fr 1fr; gap: 2rem; padding: 1.5rem; min-height: 0; align-items: center; }
.story-site .resource-feature .resource-art { width: 100%; height: 100%; min-height: 330px; object-fit: cover; }
.story-site .resource-feature:has(.resource-art) h3 { margin-top: 1.5rem; font-size: clamp(1.8rem,2.7vw,3rem); }
.story-site .resource-feature:has(.resource-art) .resource-arrow { display: none; }
.story-site .resource-feature:has(.resource-art) p { font-size: 1rem; }
.story-site .resource-card { min-height: 280px; }
.story-site .resource-card h3 { margin-top: 1.8rem; font-size: 1.7rem; }
.story-site .story-footer { display: block; padding: 3rem var(--story-space); background: var(--surface); }
.footer-top { display: flex; flex-wrap: wrap; gap: 2rem; align-items: center; }
.footer-top p { margin: 0; color: var(--muted); font-size: .9375rem; }
.footer-links { display: flex; flex-wrap: wrap; gap: 1rem 1.75rem; margin: 2rem 0; font-size: .9375rem; }
.story-footer > small { font-size: .75rem; color: var(--muted); }
html[data-theme="dark"] .customer-journey { background: radial-gradient(ellipse at 30% 45%,#32112755,transparent 65%),#0b0a10; }
html[data-theme="dark"] .journey-tab.is-active { background: linear-gradient(120deg,#541136,#201021); color: white; }
html[data-theme="dark"] .journey-tab.is-active small { color: #e5d5e0; }
html[data-theme="dark"] .journey-copy { background: linear-gradient(135deg,#18121d,#100d16); }
html[data-theme="dark"] .role-hero { background: radial-gradient(ellipse at 75% 45%,#65113b3d,transparent 70%); }
html[data-theme="dark"] .closing-scene { background: radial-gradient(ellipse at 80% 40%,#4b123438,transparent 70%),#100c14; }
html[data-theme="dark"] .story-footer { background: #09070d; }
@media (max-width: 1250px) {
 .story-site .site-header { grid-template-columns: 1fr auto; padding-inline: 1.25rem; }
 .story-site .menu-toggle { display: inline-flex; align-items: center; }
 .story-site #site-nav { position: absolute; inset: 100% 0 auto; display: none; flex-direction: column; justify-content: flex-start; gap: 0; border-bottom: 1px solid var(--line); background: var(--surface); white-space: normal; }
 .story-site #site-nav.is-open { display: flex; }
 .story-site #site-nav a { padding: .8rem 1.5rem; border-top: 1px solid var(--line); }
 .story-site #site-nav a::after { display: none; }
 .story-site .header-actions { grid-column: 2; }
 .journey-panel { grid-template-columns: 1fr 1fr; }
 .journey-copy { padding: 1.5rem; }
 .story-site .app-lab-layout { grid-template-columns: .85fr 1.15fr; }
}
@media (max-width: 900px) {
 .story-hero { grid-template-columns: 1fr; padding-top: 2rem; min-height: auto; gap: 1rem; }
 .story-hero .hero-copy { max-width: 44rem; padding: 1rem 0; }
 .story-hero h1 { font-size: clamp(2.7rem,7vw,4.4rem); }
 .story-hero .hero-art { width: 100%; margin: 0; }
 .story-hero .hero-art img { aspect-ratio: 1.6; }
 .journey-intro { grid-template-columns: 1fr; gap: 1rem; }
 .journey-panel { grid-template-columns: 1fr; }
 .journey-world { border-right: 0; border-bottom: 1px solid var(--line); }
 .journey-world .world-image { height: auto; aspect-ratio: 1.65; object-fit: cover; }
 .journey-copy { min-height: 0; }
 .journey-tab { padding: 1rem; gap: .3rem .6rem; }
 .journey-tab small { font-size: .8125rem; }
 .audience-grid { gap: 1rem; }
 .audience-card img { aspect-ratio: 1.05; }
 .role-hero { grid-template-columns: 1fr; padding-block: 3rem; min-height: 0; }
 .role-hero-art { margin: 0; }
 .role-hero-art .world-image { aspect-ratio: 1.7; }
 .role-hero h1 { font-size: clamp(2.8rem,7vw,4.5rem); }
 .work-scene,.work-scene:nth-child(even) { grid-template-columns: 1fr 1fr; gap: 2rem; }
 .work-scene figure img { aspect-ratio: 1; }
 .closing-scene { grid-template-columns: 1fr; min-height: 0; }
 .closing-scene figure { height: auto; }
 .closing-scene .world-image { height: auto; aspect-ratio: 1.9; object-position: center; }
 .closing-copy { padding: 2.5rem var(--story-space) 3rem; }
 .platform-control { grid-template-columns: 1fr; gap: 2rem; }
 .story-site .three-view-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .story-site .view-card { padding: 1.3rem; }
 .story-site .view-card h3 { font-size: 1.4rem; }
 .dev-flow > div,.platform-chain > div { padding: 1.4rem; }
}
@media (max-width: 650px) {
 .story-site h2 { font-size: 2.3rem; }
 .story-site .kicker,.story-site .section-index { font-size: .75rem; letter-spacing: .055em; }
 .story-site .site-header { gap: .5rem; padding-inline: 1rem; }
 .story-site .brand img { width: 135px; }
 .story-site .header-actions .small { display: none; }
 .story-hero .hero-art img { aspect-ratio: 1.3; }
 .story-hero .hero-art figcaption { font-size: .75rem; left: .5rem; bottom: .5rem; }
 .customer-journey,.audience-section { padding: 3rem 1.25rem; }
 .journey-tab { display: flex; align-items: flex-start; flex-direction: column; padding: .85rem .6rem; }
 .journey-tab strong { font-size: 1rem; }
 .journey-tab small { display: none; }
 .journey-copy { padding: 1.4rem 1.15rem; }
 .journey-world .world-image { aspect-ratio: 1.3; }
 .world-caption { left: .5rem; bottom: .5rem; font-size: .75rem; }
 .product-peek > summary { display: grid; grid-template-columns: 1fr auto; gap: .3rem .8rem; font-size: .875rem; padding: 1rem; }
 .product-peek > summary span { grid-column: 1/-1; }
 .peek-layout { grid-template-columns: 1fr; padding: 0 1rem 1rem; gap: 1rem; }
 .audience-grid,.editorial-resources { grid-template-columns: 1fr; gap: 2rem; }
 .audience-card { display: grid; grid-template-columns: .9fr 1.1fr; gap: 1.2rem; align-items: start; }
 .audience-card figure { margin: .4rem 0 1rem; }
 .audience-card img { aspect-ratio: .75; object-position: 38% center; }
 .audience-card > div { padding: 0 0 1.4rem; }
 .audience-card h3 { font-size: 1.25rem; }
 .audience-card p { font-size: .9375rem; }
 .audience-card strong { font-size: .875rem; }
 .editorial-resource { border-bottom: 1px solid var(--line); padding-bottom: 1.5rem; }
 .editorial-resource h3 { font-size: 1.5rem; }
 .story-site .app-lab-layout { grid-template-columns: 1fr; }
 .story-site .app-sandbox { min-width: 0; padding-inline: .7rem; }
 .story-site .app-table p { grid-template-columns: .8fr 1.15fr auto; gap: .3rem; }
 .work-scene,.work-scene:nth-child(even) { grid-template-columns: 1fr; gap: 2rem; padding-block: 2.5rem; }
 .work-scene:nth-child(even) > figure { order: 0; }
 .work-scene figure img { aspect-ratio: 1.4; }
 .role-hero-art .world-image { aspect-ratio: 1.3; }
 .dev-flow,.platform-chain,.story-site .three-view-grid { grid-template-columns: 1fr; }
 .dev-flow > div,.platform-chain > div { border-right: 0; border-bottom: 1px solid var(--line); }
 .dev-flow > div:last-child,.platform-chain > div:last-child { border-bottom: 0; }
 .dev-flow h3,.platform-chain h3 { margin-top: .8rem; }
 .story-site .product-demo .product-dashboard-window { aspect-ratio: 1.2; }
 .story-site .product-shot-panel img { object-fit: contain; }
 .story-site .product-demo-tabs { grid-template-columns: repeat(2,1fr); }
 .story-site .product-demo-tab { font-size: .875rem; min-width: 0; }
 .story-site .resource-feature:has(.resource-art) { grid-template-columns: 1fr; gap: 1.3rem; padding: 1rem; }
 .story-site .resource-feature .resource-art { min-height: 0; height: auto; aspect-ratio: 1.6; }
 .closing-scene .world-image { aspect-ratio: 1.3; }
}
@media (prefers-reduced-motion: reduce) {
 .story-site *, .story-site *::before, .story-site *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
 .story-site .product-scan,.story-site .section-motion-scan { display: none; }
}

/* Field notes use content diagrams rather than repeating the mascot story. */
.resource-graphic { position: relative; min-height: 260px; padding: clamp(1.25rem,2.5vw,2.5rem); display: flex; flex-direction: column; justify-content: space-between; gap: 1.5rem; border: 1px solid var(--line); overflow: hidden; background-color: var(--surface); background-image: linear-gradient(var(--draft-line) 1px,transparent 1px),linear-gradient(90deg,var(--draft-line) 1px,transparent 1px); background-size: 24px 24px; }
.resource-graphic .cover-kicker { font: .75rem/1.4 ui-monospace,monospace; letter-spacing: .08em; color: var(--magenta); }
.resource-graphic > strong { font-family: 'Turbobase Headline',sans-serif; font-size: clamp(1.65rem,2.25vw,2.5rem); line-height: 1.05; letter-spacing: -.045em; }
.cover-steps { display: flex; flex-wrap: wrap; gap: .45rem; }
.cover-steps > span { padding: .35rem .55rem; border: 1px solid currentColor; font-size: .75rem; }
.release-graphic { background-color: #d81b78; color: #fff; background-image: repeating-linear-gradient(135deg,transparent 0 23px,#fff1 23px 24px); border-color: #d81b78; }
.release-graphic .cover-kicker { color: #fff; }
.context-graphic { background-color: #211522; color: #fff8ed; background-image: linear-gradient(#fff1 1px,transparent 1px),linear-gradient(90deg,#fff1 1px,transparent 1px); }
.context-graphic .cover-kicker { color: #ff9cca; }
.editorial-resource > .resource-graphic { margin-bottom: 1.25rem; }
.story-site .resource-feature:has(.resource-graphic) { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; padding: 1.5rem; align-items: center; min-height: 0; }
.story-site .resource-feature:has(.resource-graphic) h3 { font-size: clamp(1.8rem,2.7vw,3rem); margin-top: 1.5rem; }
.story-site .resource-feature:has(.resource-graphic) .resource-arrow { display: none; }
.story-site .resource-feature .resource-graphic { min-height: 340px; height: 100%; }
.story-site .work-scene .audience-product-shot { aspect-ratio: 1.46; object-fit: contain; background: var(--surface); }
.product-evidence-caption { margin: 0; padding: .8rem; font-size: .8125rem; color: var(--muted); border-top: 1px solid var(--line); background: var(--surface); }
.story-site .closing-brief { display: block; min-height: 0; background: radial-gradient(ellipse at 85% 50%,#d81b7815,transparent 65%),var(--surface); }
.closing-brief .closing-copy { padding: 3.5rem var(--story-space); max-width: 68rem; }
@media (max-width: 650px) {
 .resource-graphic { min-height: 245px; }
 .story-site .resource-feature:has(.resource-graphic) { grid-template-columns: 1fr; gap: 1rem; padding: 1rem; }
 .story-site .resource-feature .resource-graphic { min-height: 260px; }
}

/* Keep the complete action in frame: the crane, shared plan, and inherited machine. */
.story-site .role-hero-art .audience-scene,
.story-site .audience-card .audience-scene { aspect-ratio: 1.5; height: auto; object-fit: contain; }
@media (max-width: 650px) {
 .story-site .audience-card { display: block; }
 .story-site .audience-card figure { margin-bottom: 1.3rem; }
 .story-site .audience-card h3 { font-size: 1.5rem; }
 .story-site .audience-card p { max-width: none; }
}

/* The frame stays put while the content moves between states. */
.panel-transition-region { position: relative; overflow: hidden; isolation: isolate; }
.panel-snapshot { z-index: 2; pointer-events: none !important; transform-origin: center center; }
.panel-transition-region > [role="tabpanel"] { transform-origin: center center; }
.partner-panels .panel-snapshot,.journey-panels .panel-snapshot { background: var(--surface); }
@media (prefers-reduced-motion: reduce) { .panel-snapshot { display: none !important; } }
/* No page-wide scroll, parallax, progress rail, or ambient scanning. */
html { scroll-behavior: auto; }
.story-site .motion-progress,.story-site .section-motion,.story-site .product-scan { display: none; }
.story-site .hero-art img,.story-site .flow-node::before,.story-site .diagnostic-screen::after { animation: none; }
.story-site .app-window::after { display: none; }
.story-site .app-sandbox,.story-site .workflow-intro { position: relative; top: auto; }


.audience-pair { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2.5rem; }
.operator-context-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; }
.operator-context-grid h2 { font-size: clamp(1.7rem,2.6vw,2.7rem); }
.operator-context-grid p:not(.section-index) { color: var(--muted); max-width: 45ch; }
.partner-tabs { display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--line); border-bottom: 0; }
.partner-tab { padding: 1.15rem; background: var(--surface); border: 0; border-right: 1px solid var(--line); color: var(--ink); cursor: pointer; font-size: 1rem; }
.partner-tab:last-child { border-right: 0; }
.partner-tab.is-active { color: var(--magenta); box-shadow: inset 0 -2px 0 var(--magenta); background: var(--paper); }
.partner-panels { border: 1px solid var(--line); }
.partner-panel { display: grid; grid-template-columns: 1.1fr 1fr; background: var(--surface); }
.partner-panel figure { margin: 0; min-width: 0; align-self: center; }
.partner-panel figure img { width: 100%; height: auto; aspect-ratio: 1.5; object-fit: contain; }
.partner-panel-copy { padding: clamp(1.5rem,3vw,3rem); min-height: 440px; }
.partner-panel-copy h3 { font-size: clamp(1.7rem,2.3vw,2.5rem); margin: 0 0 1.2rem; letter-spacing: -.03em; }
.partner-panel-copy > p { color: var(--muted); }
.partner-panel-copy .text-link { font-size: .9375rem; }
@media (max-width: 900px) {
 .partner-panel { grid-template-columns: 1fr; }
 .partner-panel-copy { min-height: 0; }
 .operator-context-grid { gap: 2rem; }
}
@media (max-width: 650px) {
 .audience-pair,.operator-context-grid { grid-template-columns: 1fr; }
 .partner-tab { font-size: .875rem; padding: 1rem .5rem; }
}
@media (prefers-reduced-motion: reduce) { .scan-reactive::after { display: none !important; } }

.character-note { border-left: 3px solid #d81b78; padding: .25rem 0 .25rem 1rem; margin-bottom: 1.5rem; }
.character-note>span { display:block; font-size:.75rem; letter-spacing:.12em; color:var(--muted); }
.character-note>strong { display:block; font-size:1.2rem; margin:.5rem 0; }
.character-note p { font-size:.95rem; margin:0; }
.scene-investigate { position:absolute; bottom:3.5rem; left:1.25rem; max-width:calc(100% - 2.5rem); padding:.8rem 1rem; border:1px solid #d81b78; border-radius:4px; background:var(--surface); color:var(--ink); cursor:pointer; font:inherit; box-shadow:0 4px 20px #d81b7826; }
.discovery-dossier { margin:1.5rem 0; border:1px solid var(--line); background:var(--surface); }
.discovery-dossier summary { padding:1rem; cursor:pointer; font-weight:600; }
.discovery-dossier summary>span { float:right; color:#d81b78; }
.discovery-grid { padding:0 1rem 1rem; display:grid; gap:1rem; }
.discovery-grid article { border-top:1px solid var(--line); padding-top:1rem; }
.discovery-grid article>span { color:#d81b78; font-size:.85rem; }
.discovery-grid h4 { margin:.25rem 0; font-size:1.1rem; }
.discovery-grid p { margin:0; font-size:1rem; }
.guided-product { padding:clamp(1rem,3vw,2rem); }
.tour-controls { display:flex; flex-wrap:wrap; gap:.5rem; margin:1rem 0 2rem; }
.tour-controls button { background:var(--surface); color:var(--ink); border:1px solid var(--line); padding:.8rem 1rem; font:inherit; cursor:pointer; }
.tour-controls button[aria-pressed=true] { background:#d81b78; color:white; border-color:#d81b78; }
.guided-product figure { margin:0; min-width:0; }
.guided-product figcaption { font-size:.85rem; margin-top:.75rem; }
.tour-explanation li { margin-bottom:.75rem; }
@media(max-width:700px){.scene-investigate{bottom:2.5rem;font-size:.875rem}.character-note{margin-bottom:1rem}}

/* Full-frame plates preserve the character's feet, props, and connected world. */
.story-site img[src*="turbie-"] { object-fit: contain; object-position: center; }
.story-hero .premise-story { width: 100%; margin: 0; min-width: 0; transform: rotate(-.6deg); background: var(--paper); }
.premise-panels { position: relative; isolation: isolate; }
.premise-panel[hidden] { display: none; }
.premise-panel figure { margin: 0; position: relative; }
.story-hero .premise-panel img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; }
.story-hero .premise-panel figcaption { position: static; inset: auto; display: block; margin: 0; min-height: 5.5rem; padding: 1rem 1.2rem; max-width: none; font-size: 1rem; line-height: 1.5; border: 0; border-top: 1px solid var(--line); background: var(--paper); color: var(--ink); }
.premise-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--line); }
.premise-tabs button { border: 0; border-right: 1px solid var(--line); background: var(--surface); color: var(--ink); font: inherit; font-size: .875rem; padding: 1rem .5rem; cursor: pointer; }
.premise-tabs button:last-child { border-right: 0; }
.premise-tabs button span { color: var(--magenta); }
.premise-tabs button[aria-selected="true"] { box-shadow: inset 0 3px var(--magenta); background: var(--paper); font-weight: 700; }
.premise-tabs button:focus-visible { outline: 2px solid var(--magenta); outline-offset: -4px; }
.premise-hint { padding: .65rem 1rem; margin: 0; border-top: 1px solid var(--line); color: var(--muted); font-size: .875rem; }
.story-site .journey-world { display: flex; flex-direction: column; justify-content: center; }
.story-site .journey-world img[src*="turbie-"] { width: 100%; height: auto; aspect-ratio: 3 / 2; }
.story-site .journey-world .world-caption { position: static; margin: .75rem 1rem; max-width: none; font-size: .875rem; }
.story-site .journey-world .scene-investigate { position: static; align-self: flex-start; margin: 0 1rem 1rem; }
.story-site .role-hero-art img[src*="turbie-"],.story-site .work-scene img[src*="turbie-"],.story-site .audience-card img[src*="turbie-"] { aspect-ratio: 3 / 2; height: auto; }
.story-site .closing-scene img[src*="turbie-"] { object-fit: contain; }
@media(max-width: 700px) { .story-hero .premise-story { transform: none; } .premise-tabs button { min-height: 3.5rem; } }

/* Three-beat subpage heroes use the same fixed-frame animation language as Home. */
.subpage-story { display: grid; grid-template-rows: minmax(0,1fr) auto auto; min-width: 0; overflow: hidden; background: var(--paper); }
.subpage-story-panels { display: grid; min-height: 0; overflow: hidden; background: #f4e8d9; }
.subpage-story-panel { grid-area: 1 / 1; min-width: 0; opacity: 0; visibility: hidden; pointer-events: none; }
.subpage-story-panel.is-current,.subpage-story-panel.is-transitioning { visibility: visible; }
.subpage-story-panel.is-current { opacity: 1; }
.subpage-story-panel img { display: block; width: 100%; height: 100%; min-height: 0; aspect-ratio: 16 / 9; object-fit: cover; object-position: center; }
.subpage-story-caption { position: static !important; display: grid; grid-template-columns: minmax(8rem,.35fr) 1fr auto; gap: 1rem; align-items: baseline; min-height: 4.5rem; padding: .85rem 1rem !important; border: 0 !important; border-top: 1px solid var(--line) !important; background: var(--paper) !important; color: var(--ink) !important; font: inherit !important; letter-spacing: normal !important; text-transform: none !important; }
.subpage-story-caption strong { font: 700 .78rem/1.4 ui-monospace,monospace; color: var(--magenta); text-transform: uppercase; letter-spacing: .05em; }
.subpage-story-caption span { font-size: .875rem; line-height: 1.45; }
.subpage-story-pause { padding: .35rem .55rem; border: 1px solid var(--line); background: transparent; color: var(--muted); font: 700 .68rem/1 ui-monospace,monospace; text-transform: uppercase; letter-spacing: .05em; cursor: pointer; }
.subpage-story-pause:hover,.subpage-story-pause:focus-visible { border-color: var(--magenta); color: var(--magenta); }
.subpage-story-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--line); }
.subpage-story-tabs button { min-width: 0; padding: .75rem .6rem; border: 0; border-right: 1px solid var(--line); background: var(--surface); color: var(--ink); font: 700 .72rem/1.3 ui-monospace,monospace; text-align: left; cursor: pointer; }
.subpage-story-tabs button:last-child { border-right: 0; }
.subpage-story-tabs button span { display: block; margin-bottom: .25rem; color: var(--magenta); }
.subpage-story-tabs button[aria-selected="true"] { background: var(--paper); box-shadow: inset 0 3px var(--magenta); }
.role-hero .subpage-story { min-height: 540px; margin-right: -3rem; transform: rotate(-.7deg); border: 1px solid var(--line); box-shadow: 10px 12px 0 color-mix(in srgb,var(--magenta) 10%,transparent); }
.role-hero .subpage-story-panel img { aspect-ratio: auto; }
.page-hero .subpage-story { min-height: 620px; }
.security-hero:has(.subpage-story) { grid-template-columns: minmax(360px,.92fr) minmax(500px,1.08fr); }
.security-hero:has(.subpage-story)::before,.security-hero:has(.subpage-story)::after { display: none; }
.security-hero:has(.subpage-story) .page-hero-copy { max-width: none; padding-right: clamp(2rem,6vw,6.5rem); }
.security-hero:has(.subpage-story) .security-axis { z-index: 4; right: calc(54% + 2rem); }

/* Two-beat illustration loops load their second frame only when the story begins. */
.story-pair-stage { position: relative; display: grid; width: 100%; min-width: 0; overflow: hidden; background: #f4e8d9; }
.story-pair-stage > img { grid-area: 1 / 1; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.story-pair-stage .story-pair-secondary { opacity: 0; visibility: hidden; pointer-events: none; }
.story-pair-stage .story-pair-secondary.is-current,.story-pair-stage .story-pair-secondary.is-transitioning { visibility: visible; }
.story-pair-stage .story-pair-primary:not(.is-current):not(.is-transitioning) { visibility: hidden; }
.closing-scene figure .story-pair-stage { height: 100%; }
.closing-scene figure .story-pair-stage > img { height: 100%; }

@media (max-width: 900px) {
  .role-hero .subpage-story { width: 100%; min-height: 0; margin: 0; transform: none; }
  .role-hero .subpage-story-panel img { aspect-ratio: 16 / 9; }
  .page-hero .subpage-story { min-height: 0; }
  .security-hero:has(.subpage-story) { grid-template-columns: 1fr; }
  .security-hero:has(.subpage-story) .security-axis { display: none; }
}

@media (max-width: 620px) {
  .subpage-story-caption { grid-template-columns: 1fr; gap: .25rem; }
  .subpage-story-tabs button { font-size: .65rem; }
}

@media (prefers-reduced-motion: reduce) {
  .subpage-story-panel,.story-pair-stage > img { transition: none; }
  .subpage-story-pause { display: none; }
}

/* Supplied hero sequence: identical canvases and a layout-stable dissolve. */
.story-hero .premise-panels { display: grid; overflow: hidden; background: #f7ebdc; }
.story-hero .premise-panel,
.story-hero .premise-panel[hidden] { display: block; grid-area: 1 / 1; opacity: 0; visibility: hidden; pointer-events: none; }
.story-hero .premise-panel.is-current,
.story-hero .premise-panel.is-transitioning { visibility: visible; }
.story-hero .premise-panel.is-current { opacity: 1; pointer-events: auto; }
.story-hero .premise-panel figure { display: grid; grid-template-rows: auto minmax(5.5rem,auto); height: 100%; }
.story-hero .premise-panel img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; background: #f7ebdc; }
.premise-playback { display: flex; align-items: center; justify-content: space-between; gap: .75rem; border-top: 1px solid var(--line); }
.premise-playback .premise-hint { border-top: 0; }
.premise-pause { flex: none; margin-right: .8rem; padding: .45rem .75rem; border: 1px solid var(--line); background: var(--surface); color: var(--ink); font: inherit; font-size: .875rem; cursor: pointer; }
.premise-pause:focus-visible { outline: 2px solid var(--magenta); outline-offset: 3px; }
.premise-pause[hidden] { display: none; }

/* Approved animal stories stay on one uncropped paper canvas in both themes. */
.role-hero .subpage-story,.page-hero .subpage-story { min-height: 0; align-self: center; grid-template-rows: auto auto auto; }
.subpage-story-panels { aspect-ratio: 16 / 9; background: #f3ece2; }
.subpage-story .subpage-story-panel img { width: 100%; height: 100%; aspect-ratio: 16 / 9; object-fit: contain; }
.subpage-story-caption { min-height: 6rem; }
.subpage-story-caption strong,.subpage-story-pause,.subpage-story-tabs button { font-size: .875rem; }
.story-pair-stage { background: #f3ece2; }
.story-site .story-pair-stage > img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.closing-scene figure .story-pair-stage { height: auto; align-self: center; }
.story-pair-stage:focus-visible { outline: 3px solid var(--magenta); outline-offset: 4px; }
@media(max-width:620px) { .subpage-story-caption { min-height: 9rem; } .subpage-story-tabs button { font-size: .875rem; } }

.story-pair-stage .story-pair-secondary.is-current { opacity: 1; }

/* Illustration-first stories: compact controls, no caption band or page dragging. */
.story-hero .premise-panel figure { display: block; height: auto; }
.premise-controls,.subpage-story-controls { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .55rem .8rem; border-top: 1px solid var(--line); background: var(--paper); }
.premise-controls .premise-tabs,.subpage-story-controls .subpage-story-tabs { display: flex; gap: .35rem; border: 0; }
.premise-controls .premise-tabs button,.subpage-story-controls .subpage-story-tabs button { width: 2.6rem; min-height: 2.6rem; padding: .5rem; border: 1px solid transparent; border-radius: 50%; background: transparent; font: .875rem/1.3 ui-monospace,monospace; text-align: center; box-shadow: none; }
.premise-controls .premise-tabs button[aria-selected=true],.subpage-story-controls .subpage-story-tabs button[aria-selected=true] { border-color: var(--magenta); background: color-mix(in srgb,var(--magenta) 7%,var(--paper)); }
.subpage-story-controls .subpage-story-tabs button span { margin: 0; }
.premise-playback { border: 0; }
.premise-pause { margin: 0; }
.subpage-story-controls .subpage-story-pause { font-size: .875rem; padding: .6rem; text-transform: none; }
.role-hero .subpage-story,.page-hero .subpage-story { grid-template-rows: auto auto; }
.story-site .audience-card { display: flex; flex-direction: column; gap: 0; }
.story-site .audience-card > h3 { font-size: clamp(2.75rem,5vw,5rem); line-height: 1.05; margin: 0 0 1.3rem; }
.story-site .audience-card h4 { font-family: inherit; font-size: clamp(1.25rem,1.8vw,1.65rem); line-height: 1.25; margin: 0 0 .8rem; }
.story-site .audience-card p { max-width: 44ch; }
.story-site .audience-card:hover img { transform: none; }
.story-site .audience-card .audience-scene { aspect-ratio: 16 / 9; }
.story-site .support-product-image { width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; }
.story-site .journey-world:has(.support-product-image) { padding: 1.25rem; gap: 1rem; }
.product-evidence-caption { color: var(--muted); font-size: .875rem; padding: .75rem 1rem; margin: 0; }

/* Story captions explain the role and action; labels replace numbered controls. */
.story-site .hero-story-caption { display: flex; align-items: center; min-height: 5rem; margin: 0; padding: 1rem 1.25rem; border-top: 1px solid var(--line); background: var(--paper); color: var(--ink); font-size: 1rem; line-height: 1.5; }
.story-hero .premise-panel figure { display: grid; grid-template-rows: auto minmax(5rem,auto); }
.role-hero .subpage-story,.page-hero .subpage-story { grid-template-rows: auto auto auto; }
.premise-controls,.subpage-story-controls { align-items: stretch; gap: .5rem; }
.premise-controls .premise-tabs,.subpage-story-controls .subpage-story-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); flex: 1; min-width: 0; gap: .35rem; }
.premise-controls .premise-tabs button,.subpage-story-controls .subpage-story-tabs button { width: auto; min-width: 0; min-height: 3rem; padding: .65rem .5rem; border-radius: 0; font: inherit; font-size: .875rem; line-height: 1.3; text-transform: none; letter-spacing: 0; overflow-wrap: anywhere; }
.subpage-story-controls .subpage-story-tabs button span,.premise-controls .premise-tabs button span { display: block; margin: 0; font: inherit; color: inherit; }
.premise-playback { align-self: center; }
.team-knowledge-art { margin: 1.5rem 0 0; border: 1px solid var(--line); }
.team-knowledge-art img { display: block; width: 100%; height: auto; }
@media(max-width:620px) {
 .story-site .hero-story-caption { min-height: 6.5rem; padding: .85rem 1rem; }
 .story-hero .premise-panel figure { grid-template-rows: auto minmax(6.5rem,auto); }
 .premise-controls,.subpage-story-controls { flex-wrap: wrap; }
 .premise-controls .premise-tabs,.subpage-story-controls .subpage-story-tabs { flex-basis: 100%; }
 .premise-playback,.subpage-story-controls .subpage-story-pause { margin-left: auto; }
}

/* One narrative caption, with simple manual controls instead of a tab row. */
.hero-story-navigation { display: flex; align-items: center; justify-content: flex-end; gap: .65rem; padding: .25rem 1.1rem .8rem; background: var(--paper); }
.hero-story-navigation button { min-width: 2.5rem; min-height: 2.5rem; margin: 0; padding: .4rem .6rem; border: 0; background: transparent; color: var(--ink); font: inherit; font-size: .875rem; cursor: pointer; }
.hero-story-navigation button:first-child,.hero-story-navigation button:last-child { font-size: 1.25rem; }
.hero-story-navigation button:hover { color: var(--magenta); }
.hero-story-navigation button:focus-visible { outline: 2px solid var(--magenta); outline-offset: 2px; }
.story-site .hero-story-caption { min-height: 6.5rem; padding-bottom: .5rem; }
.story-hero .premise-panel figure { grid-template-rows: auto minmax(6.5rem,auto); }
.journey-world .product-reveal { position: relative; display: grid; grid-template-rows: auto auto; width: 100%; height: auto; padding: 0; border: 0; border-radius: 0; background: var(--paper); color: var(--ink); cursor: pointer; text-align: left; }
.product-reveal-canvas { display: grid; width: 100%; min-width: 0; aspect-ratio: 1363 / 936; overflow: hidden; }
.story-site .product-reveal-canvas > img { grid-area: 1 / 1; display: block; width: 100%; height: 100%; min-height: 0; aspect-ratio: 1363 / 936; object-fit: contain; background: var(--paper); }
.product-reveal .product-reveal-screen { opacity: 0; transition: opacity .55s ease; }
.product-reveal.is-revealed .product-reveal-screen { opacity: 1; }
.product-reveal-label { grid-row: 2; padding: .75rem 1rem; font: .875rem/1.4 ui-sans-serif,system-ui,sans-serif; color: var(--muted); background: var(--paper); border-top: 1px solid var(--line); }
.product-reveal:focus-visible { outline: 3px solid var(--magenta); outline-offset: -3px; }
@media(max-width:620px) {
 .story-site .hero-story-caption { min-height: 9.5rem; }
 .story-hero .premise-panel figure { grid-template-rows: auto minmax(9.5rem,auto); }
 .journey-world .product-reveal { min-height: 0; }
}
@media(prefers-reduced-motion:reduce) { .product-reveal .product-reveal-screen { transition: none; } }

/* Drafting-sheet sequence marks stay attached to each illustration. */
.premise-panel,.subpage-story-panel { position: relative; }
 .story-slide-number {
  position: absolute; top: clamp(.65rem,1.5vw,1.2rem); left: clamp(.65rem,1.5vw,1.2rem); z-index: 2;
  display: grid; place-items: center; width: clamp(2.6rem,4vw,3.5rem); aspect-ratio: 1;
  color: #6b5147; background: transparent; border: 1px solid #6b514780; border-radius: 48% 52% 46% 54%;
  box-shadow: none; mix-blend-mode: multiply; font-family: "Turbobase Script","Segoe Print",cursive;
  font-style: italic; font-weight: 400; font-size: clamp(1.7rem,2.7vw,2.35rem); line-height: 1;
  transform: rotate(-6deg); pointer-events: none;
}
.story-slide-number::after { content: none; }
.role-hero.partner-hero h1 { font-size: clamp(2.5rem,3.75vw,4.25rem); text-wrap: balance; }

/* Capacity is a core outcome, with a specific customer discovery proof point. */
.capacity-proof { display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(2rem,6vw,7rem);padding:4rem var(--story-space);border-block:1px solid var(--line); }
.capacity-copy h2 { font-size:clamp(2rem,3.5vw,4rem);margin:1rem 0; }
.capacity-copy > p:not(.section-index) { max-width:46ch;color:var(--muted);font-size:1.0625rem;line-height:1.7; }
.capacity-evidence { align-self:center;border-left:1px solid var(--line);padding-left:clamp(2rem,4vw,5rem); }
.capacity-count { display:block;color:var(--magenta);font-family:"Turbobase Headline",sans-serif;font-size:clamp(4rem,8vw,8.5rem);line-height:1.1;letter-spacing:-.06em;font-variant-numeric:tabular-nums; }
.capacity-metric { font-size:clamp(1.2rem,1.7vw,1.6rem);line-height:1.35;font-weight:650;margin:.5rem 0 1rem; }
.capacity-context { max-width:43ch;font-size:.9375rem;line-height:1.6;color:var(--muted); }
.capacity-outcomes { margin:1.6rem 0; }
.capacity-outcomes > div { padding:1rem 0;border-top:1px solid var(--line); }
.capacity-outcomes dt { font-weight:700;font-size:1.1rem;margin-bottom:.35rem; }
.capacity-outcomes dd { margin:0;color:var(--muted);font-size:1rem;line-height:1.6;max-width:46ch; }
.journey-intro .case-note { font-size:.875rem; }
@media(max-width:760px) { .capacity-proof {grid-template-columns:1fr;gap:2rem;padding-block:3rem;} .capacity-evidence {border-left:0;border-top:1px solid var(--line);padding:2rem 0 0;} }

.partner-hero .subpage-story-panels,.partner-hero .subpage-story-panel img { aspect-ratio:3 / 2; }

.partner-hero .role-hero-art > img { aspect-ratio:3 / 2; height:auto; object-fit:contain; }

.capacity-accessible { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
