/* Homepage scale: preserve the drawings, reduce their visual weight. */
:root{--v2-title:clamp(27px,2.6vw,36px)}
.v2-hero.v4-chapter{min-height:0;padding-bottom:34px}
.v2-hero-copy{padding-top:42px}
.v2-hero h1{font-size:clamp(32px,3.2vw,44px);max-width:28ch;line-height:1.12;font-weight:500}
.v2-hero .v2-eyebrow{margin-bottom:17px}
.v2-hero .v2-lead{font-size:16px;line-height:1.6;margin-top:20px}
.v5-hero-end{display:none}
@media(min-width:860px){
 .v2-hero .v3-radar{max-width:1000px;height:350px;margin-top:30px}
 .v2-hero .v3-radar .v2-radar-card{width:210px;padding:14px 16px}
 .v2-hero .v3-radar .v2-radar-pieces{left:3%;top:152px}
 .v2-hero .v3-radar .v2-radar-point{left:30%;top:62px}
 .v2-hero .v3-radar .v2-radar-source{left:49%;top:244px}
 .v2-hero .v3-radar .v2-radar-action{right:2%;top:146px}
 .v2-hero .v3-radar .v2-radar-card strong{font-size:13px}
 .v2-hero .v3-radar .v2-radar-card small{font-size:12px}
}
@media(max-width:859px){.v2-hero-copy{padding-top:32px}.v2-hero h1{font-size:clamp(30px,4.6vw,38px)}}
@media(max-width:600px){.v2-hero-copy{padding-top:26px}.v2-hero h1{font-size:30px;max-width:22ch}.v2-hero .v2-lead{font-size:15px}.v2-hero .v3-radar .v2-radar-card small{font-size:12px}.v2-hero.v4-chapter{padding-bottom:22px}}

/* Stable, symmetric departure points and an anchored arrival. */
.v2-story figcaption{align-items:center;text-align:center}
.v7-journey .v6-insight{padding-top:clamp(250px,32vh,350px);padding-bottom:clamp(170px,20vh,230px)}
.v6-insight h2{font-size:var(--v2-title)!important;line-height:1.22!important}
.v23-arrival-node{position:absolute;left:50%;top:-23px;width:5px;height:5px;transform:translateX(-50%);border-radius:50%;background:#f0d390;box-shadow:0 0 7px #ecc56c,0 0 22px 5px #ecc56c35;opacity:var(--arrival-light)}
.v7-to-assistant [data-energy-core]{stroke-width:1.6;filter:drop-shadow(0 0 2px #f5d17a80)}
.v7-to-assistant [data-energy-glow]{stroke-width:6;filter:blur(3px);opacity:.4}
@media(max-width:600px){.v7-journey .v6-insight{padding-top:220px;padding-bottom:170px}.v6-insight h2{font-size:27px!important}}

/* Assistant: a smaller symbol, shorter scene, retained reading size. */
.v7-journey .v6-assistant-scene{min-height:0;padding:155px 32px 56px}
.v6-assistant .v4-title h2{font-size:var(--v2-title)!important;max-width:29ch}
.v6-assistant .v4-title p{font-size:16px;margin-top:18px}
.v6-assistant .v4-assistant-art{max-width:960px;margin-top:30px}
.v6-assistant .v4-assistant-principles{max-width:960px;margin-top:25px;padding-top:23px;gap:32px}
.v6-assistant .v4-assistant-principles h3{font-size:18px}
.v6-assistant .v4-assistant-principles p{font-size:14px}
@media(max-width:600px){
 .v7-journey .v6-assistant-scene{padding:115px 24px 42px}
 .v6-assistant .v4-title h2{font-size:28px!important}
 .v6-assistant .v4-title p{font-size:15px;margin-top:16px}
 .v6-assistant .v4-assistant-art{margin-top:22px}
 .v6-assistant .v4-assistant-mobile{height:300px}
 .v6-assistant .v4-mobile-wave{transform:scale(.78);height:42px;min-height:42px}
 .v6-assistant .v4-assistant-principles{margin-top:18px;padding-top:20px;gap:18px}
 .v6-assistant .v4-assistant-principles h3{font-size:16px}
 .v6-assistant .v4-assistant-principles p{font-size:13px}
}

/* Shared memory: same illustration, contained scale and a consequence-led message. */
.v14-memory-wrap{max-width:1240px;aspect-ratio:auto;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:36px;align-items:center;padding:48px 40px;container-type:normal}
.v14-memory-copy{position:static;left:auto;top:auto;width:100%}
.v14-memory h2{font-size:var(--v2-title)!important;line-height:1.17!important;letter-spacing:-.03em!important;margin:0 0 24px;max-width:23ch;text-wrap:pretty}
.v14-memory-copy p{font-size:16px;line-height:1.65;letter-spacing:0;max-width:38ch}
.v14-memory-copy .v14-memory-promise{margin-top:36px;font-size:19px;line-height:1.6;white-space:normal;letter-spacing:-.02em}
.v14-memory-promise:before{width:44px;height:1px;margin-bottom:18px}
.v19-memory-art{position:static;width:100%;max-width:680px;margin:0;left:auto;top:auto}
@media(min-width:761px){.v19-assistant-label{font-size:20px}.v19-knowledge-pin text{font-size:18px}.v19-validation text,.v19-dossier text{font-size:20px}.v19-memory-name text{font-size:20px}}
@media(max-width:1000px) and (min-width:761px){.v14-memory-wrap{padding-inline:28px;gap:22px}.v14-memory h2{font-size:30px!important}.v14-memory-copy p{font-size:15px}.v14-memory-copy .v14-memory-promise{font-size:17px}}
@media(max-width:760px){
 .v14-memory-wrap{display:flex;flex-direction:column;gap:24px;padding:44px 24px 34px}
 .v14-memory-copy{max-width:540px;margin:auto}
 .v14-memory h2{font-size:28px!important;max-width:23ch;margin-bottom:20px}
 .v14-memory-copy p{font-size:15px;line-height:1.65}
 .v14-memory-copy .v14-memory-promise{font-size:17px;margin-top:27px}
 .v19-memory-art{width:100%;max-width:540px;align-self:center}
}

/* Fixed documents remain at the ends; moving points carry the throughput. */
.v7-capacity .v4-scene{max-width:1240px;min-height:0;padding:70px 40px;column-gap:45px}
.v7-capacity .v4-capacity-art{height:390px}
.v7-capacity .v4-capacity-heading h2{font-size:var(--v2-title)!important}
.v23-flow-dot{opacity:0;pointer-events:none}
.v23-traveler-halo{fill:#bc9d55;opacity:.14}
.v23-traveler-core{fill:#9b8146}
.v9-flow-prepared .v23-traveler-core{fill:#a57914}
@media(max-width:859px){.v7-capacity .v4-scene{padding:54px 30px;gap:24px}.v7-capacity .v4-capacity-art{height:340px}}
@media(max-width:600px){.v7-capacity .v4-scene{padding:44px 24px;gap:18px}.v7-capacity .v4-capacity-art{height:310px}.v7-capacity .v4-capacity-heading h2{font-size:28px!important}}
@media(prefers-reduced-motion:reduce){.v23-flow-dot{display:none}}

/* Keep diagram annotations readable between phone and desktop sizes. */
@media(min-width:761px) and (max-width:1000px){
 .v19-assistant-label,.v19-memory-name text{font-size:28px}
 .v19-knowledge-pin text{font-size:26px}
 .v19-validation text,.v19-dossier text{font-size:27px}
}
@media(min-width:601px) and (max-width:1000px){
 .v4-assistant-desktop .v4-assistant-lane text{font-size:20px}
 .v4-assistant-desktop .v4-assistant-name{font-size:20px}
 .v4-assistant-desktop .v4-diagram-label{font-size:16px}
}
