/* Open Path: one opening scene and clear, reader-focused content. */
.horizon-hero{padding:34px 0 0}.horizon-heading{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.85fr);gap:55px;align-items:end;padding:12px 0 44px}.horizon-hero h1,html[lang=en] .horizon-hero h1{font-size:clamp(54px,5.8vw,90px);line-height:1.05;letter-spacing:-.065em;margin:22px 0 0;max-width:none}.horizon-hero h1 em{font-style:normal;color:var(--blue)}.horizon-intro{padding-bottom:4px}.horizon-intro>p{font-size:16px;line-height:1.75;margin:0 0 23px;max-width:440px}.horizon-intro .hero-actions{gap:18px;align-items:center}.horizon-intro .primary{padding:17px 20px;font-size:13px}.horizon-intro .quiet-link{font-size:12px}.horizon-visual{margin:0;position:relative;overflow:hidden;background:#d8d3c7;border-radius:2px}.horizon-visual img{display:block;width:100%;height:auto;aspect-ratio:2.4;object-fit:cover}.horizon-visual figcaption{position:absolute;bottom:22px;left:24px;display:flex;gap:30px;align-items:center;background:var(--cream,#f7f5ee);padding:12px 17px;color:var(--ink);font-size:10px;letter-spacing:.09em;font-weight:800}.horizon-visual figcaption span:last-child{color:var(--blue);font-size:22px;line-height:1}.horizon-places{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:80px}.horizon-places>div{position:relative;padding:27px 18px 0 32px}.horizon-places>div+div{border-left:1px solid var(--line)}.horizon-places b{position:absolute;left:0;top:30px;font-size:10px;color:var(--blue)}.horizon-places>div+div b{left:20px}.horizon-places>div+div{padding-left:50px}.horizon-places strong{display:block;font-size:16px;line-height:1.4}.horizon-places span{display:block;font-size:12px;color:var(--muted);margin-top:7px;line-height:1.5}
.possibilities{background:#203ee6;color:#fff;padding:76px 0 80px}.possibilities-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:20px 70px;align-items:end}.possibilities-intro .eyebrow{grid-column:1/-1;color:#d4dcff}.possibilities h2{font-size:clamp(36px,3.75vw,58px);font-weight:650;letter-spacing:-.045em;line-height:1.12;white-space:pre-line;margin:0}.possibilities-intro>p{font-size:16px;line-height:1.8;margin:0;max-width:540px;color:#edf0ff}.continuity-explorer{display:grid;grid-template-columns:.8fr 1.65fr;gap:65px;margin-top:52px;align-items:start}.context-picker>span{display:block;font-size:10px;font-weight:800;letter-spacing:.1em;padding-bottom:15px;color:#d4dcff}.context-picker button{display:flex;width:100%;gap:16px;align-items:center;border:0;border-bottom:1px solid #ffffff40;color:#fff;background:transparent;text-align:left;font:600 17px/1.4 Manrope,sans-serif;padding:21px 5px;min-height:68px;cursor:pointer}.context-picker button b{font-size:10px;color:#c7d1ff}.context-picker button span:last-child{margin-left:auto;opacity:0}.context-picker button[aria-pressed=true]{border-bottom-color:#fff}.context-picker button[aria-pressed=true] span:last-child{opacity:1}.context-picker button[aria-pressed=true] b{color:#fff}.context-picker button:focus-visible{outline:3px solid #fff;outline-offset:5px}.context-picker>p{font-size:12px;line-height:1.7;max-width:260px;color:#d4dcff;margin-top:24px}.path-canvas{padding:32px 36px;background:#f8f7f2;color:var(--ink);border-radius:3px}.path-meta{display:flex;justify-content:space-between;font-size:9px;font-weight:800;letter-spacing:.11em;color:var(--blue);margin-bottom:22px}.path-canvas h3{font-size:30px;line-height:1.2;letter-spacing:-.04em;margin:0 0 13px}.path-canvas>p{font-size:14px;line-height:1.75;color:var(--muted);margin:0;max-width:650px}.continuity-path{list-style:none;margin:30px 0 25px;padding:0}.continuity-path li{position:relative;display:flex;gap:20px;padding-bottom:24px}.continuity-path li:last-child{padding-bottom:0}.continuity-path li:not(:last-child):before{content:'';position:absolute;left:17px;top:34px;bottom:0;width:1px;background:#b9c4fa}.path-dot{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:35px;height:35px;border:1px solid #b9c4fa;background:#f8f7f2;border-radius:50%;font-size:10px;font-weight:800;color:var(--blue)}.continuity-path li:last-child .path-dot{background:var(--blue);border-color:var(--blue);color:white}.continuity-path strong{display:block;font-size:15px;line-height:1.5;padding:5px 0 3px}.continuity-path p{font-size:12px;line-height:1.65;margin:0;color:var(--muted)}.path-link{display:flex;gap:20px;justify-content:space-between;border-top:1px solid var(--line);padding:19px 0 0;font-size:12px;font-weight:800;text-decoration:none;color:var(--blue);min-height:44px}.path-link span:last-child{font-size:19px}
.examples-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:18px 80px;padding:90px 0 35px;align-items:end}.examples-heading .eyebrow{grid-column:1/-1}.examples-heading h2{font-size:clamp(34px,3.8vw,56px);line-height:1.12;letter-spacing:-.045em;margin:0;white-space:pre-line}.examples-heading p{font-size:15px;line-height:1.8;margin:0;max-width:420px}.scenario-index{margin-bottom:65px}.scope-strip{font-size:10px;line-height:1.9;font-weight:800;letter-spacing:.065em;color:var(--blue);border-top:1px solid var(--line);padding-top:20px;margin-top:27px;max-width:510px}.scenario-content h2{max-width:560px}.scenario-content .scenario-lead{max-width:500px}.scenario{gap:85px;padding-bottom:90px}.scenario .water-lesson,.scenario .aac-board,.scenario .sequence-demo,.scenario .teacher-workspace{box-shadow:0 18px 50px #14212909;border-radius:8px}.scenario-boundary{max-width:490px}.adaptive-scenario{padding-bottom:100px}.scenario-reverse .scenario-story{order:initial}.scenario-reverse .scenario-demo{order:initial}
@media(min-width:1600px){.horizon-hero h1,html[lang=en] .horizon-hero h1{font-size:91px}}
@media(max-width:1200px){.horizon-heading{gap:32px;grid-template-columns:1.6fr 1fr}.horizon-hero h1,html[lang=en] .horizon-hero h1{font-size:clamp(48px,5.9vw,74px)}.horizon-intro>p{font-size:14px}.horizon-intro .hero-actions{gap:12px}.horizon-places strong{font-size:14px}.possibilities-intro{gap:20px 40px}.continuity-explorer{gap:40px;grid-template-columns:.85fr 1.5fr}.path-canvas{padding:28px}.scenario{gap:50px}}
@media(max-width:900px){.horizon-hero{padding-top:24px}.horizon-heading{grid-template-columns:1fr;gap:25px;padding-bottom:30px}.horizon-hero h1,html[lang=en] .horizon-hero h1{font-size:clamp(52px,8vw,75px)}.horizon-intro{display:flex;gap:30px;align-items:center;justify-content:space-between}.horizon-intro>p{margin:0;max-width:380px}.horizon-intro .hero-actions{min-width:160px;flex-direction:column;align-items:flex-start}.horizon-places{margin-bottom:55px}.horizon-places>div{padding-right:12px}.horizon-places>div+div{padding-left:35px}.horizon-places>div+div b{left:12px}.horizon-places strong{font-size:12px}.horizon-places span{font-size:11px}.possibilities{padding:56px 0}.possibilities-intro{grid-template-columns:1fr;gap:20px}.possibilities h2{font-size:43px}.possibilities-intro>p{font-size:15px;max-width:650px}.continuity-explorer{grid-template-columns:.8fr 1.3fr;gap:25px;margin-top:35px}.context-picker button{font-size:14px;padding:20px 2px;gap:10px}.path-canvas{padding:25px}.path-canvas h3{font-size:27px}.path-canvas>p{font-size:13px}.continuity-path li{gap:13px}.continuity-path strong{font-size:14px}.examples-heading{gap:20px 35px;padding-top:65px}.examples-heading h2{font-size:37px}.examples-heading p{font-size:13px}.scenario{gap:32px}.scope-strip{font-size:9px}}
@media(max-width:740px){.horizon-hero{padding-top:15px}.horizon-heading{gap:23px;padding-bottom:27px}.horizon-hero h1,html[lang=en] .horizon-hero h1{font-size:clamp(40px,9.1vw,65px);line-height:1.09;margin-top:17px;letter-spacing:-.055em}.horizon-intro{display:block}.horizon-intro>p{font-size:15px;max-width:520px;margin-bottom:22px}.horizon-intro .hero-actions{flex-direction:row;align-items:center;gap:20px}.horizon-visual img{aspect-ratio:1.65;object-fit:cover;object-position:center}.horizon-visual figcaption{bottom:12px;left:12px;padding:8px 10px;font-size:8px;gap:15px}.horizon-places{grid-template-columns:1fr;margin-bottom:40px}.horizon-places>div,.horizon-places>div+div{border-left:0;border-bottom:1px solid var(--line);padding:17px 0 17px 30px}.horizon-places b,.horizon-places>div+div b{top:20px;left:0}.horizon-places strong{font-size:14px}.horizon-places span{font-size:11px;margin-top:3px}.possibilities{padding:40px 0}.possibilities h2{font-size:36px}.possibilities-intro>p{font-size:14px;line-height:1.85}.continuity-explorer{grid-template-columns:1fr;gap:25px;margin-top:30px}.context-picker button{font-size:16px;min-height:54px;padding:14px 3px}.context-picker>p{max-width:none;margin:16px 0 0}.path-canvas{padding:23px}.path-canvas h3{font-size:28px}.path-canvas>p{font-size:14px}.continuity-path p{font-size:12px}.continuity-path strong{font-size:15px}.examples-heading{grid-template-columns:1fr;gap:20px;padding-top:50px;padding-bottom:27px}.examples-heading h2{font-size:37px}.examples-heading p{font-size:15px;max-width:560px}.scenario-index{margin-bottom:47px}.scenario{gap:24px;padding-bottom:60px}.scope-strip{margin-top:18px;padding-top:15px;font-size:9px}.scenario-content h2{font-size:35px}.adaptive-scenario{padding-bottom:65px}.scenario-boundary{font-size:12px}}
@media(max-width:360px){.horizon-hero h1,html[lang=en] .horizon-hero h1{font-size:35px}.horizon-intro .hero-actions{gap:13px;align-items:flex-start;flex-direction:column}.possibilities h2{font-size:32px}.path-canvas{padding:18px}.path-canvas h3{font-size:25px}.examples-heading h2{font-size:33px}.horizon-hero .eyebrow{font-size:8px}}

/* A single unbroken view; keep the pupil and Maltipoo in frame at every width. */
.calm-hero-art{margin:0 0 88px;overflow:hidden;border-radius:8px;background:#e9e6dc}
.calm-hero-art img{display:block;width:100%;height:auto}
.support-scene{max-width:380px;margin:28px 0 0;overflow:hidden;border-radius:8px;background:#e9e6dc}
.support-scene img,.university-scene img{display:block;width:100%;height:auto}
.university-scene{max-width:490px;margin:0;overflow:hidden;border-radius:8px;background:#e9e6dc}
.university-scene figcaption{padding:22px 0 0;background:var(--paper);line-height:1.6}
.university-scene strong{display:block;font-size:17px}
.university-scene figcaption span{display:block;font-size:12px;color:var(--muted);margin-top:5px}
@media(max-width:900px){.calm-hero-art{margin-bottom:64px}}
@media(max-width:740px){.calm-hero-art{margin-bottom:48px;border-radius:5px}.calm-hero-art img{aspect-ratio:1.35;object-fit:cover;object-position:92% center}.support-scene{max-width:100%;margin-top:22px}.university-scene{max-width:100%}.university-scene figcaption{padding-top:16px}}

/* User-selected Open Path illustrations, kept intact in relevant lesson sections. */
.retained-scene{margin:26px 0 0;overflow:hidden;border-radius:10px;border:1px solid #deded5;background:#e8e5dd}
.retained-scene img{display:block;width:100%;height:auto}
.retained-math{max-width:1000px;margin:0 auto 24px}
.retained-math>img{height:auto}
.retained-math figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;background:#f7f5ee}
.retained-math figcaption span{font-size:10px;font-weight:800;letter-spacing:.08em;color:var(--blue)}
.retained-math figcaption a{font-size:12px;font-weight:800;color:var(--blue);text-underline-offset:4px;min-height:44px;display:flex;align-items:center}
@media(max-width:740px){.retained-scene{margin-top:22px}.retained-math{margin-top:0}.retained-math>img{max-height:none;object-fit:contain}.retained-math figcaption{align-items:flex-start;flex-direction:column;gap:6px;padding:16px 18px}.retained-math figcaption span{font-size:9px}}

/* Content cleanup: remove gaps left by decorative labels and catalogue numbers. */
.horizon-hero h1,html[lang=en] .horizon-hero h1{margin-top:0}
.section-heading{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:48px}
.section-heading p{grid-column:auto;max-width:510px}
.service-group li{display:block;font-size:15px;line-height:1.7}
.continuity-path li:not(:last-child):before{display:none}
.continuity-path li{display:block;padding-bottom:20px}
.context-picker>span{font-size:14px;letter-spacing:0;font-weight:650}
.sequence-top{justify-content:flex-end;margin-bottom:12px}
.student-preview>span{font-size:12px;letter-spacing:0;font-weight:650}
.sequence-steps b{text-transform:none;font-size:12px}
.retained-math figcaption{justify-content:flex-start}
.access-help{font-size:14px;line-height:1.7;color:var(--muted);margin-top:24px}
footer{font-size:12px}
@media(max-width:900px){.section-heading{gap:28px}.context-picker>span{font-size:13px}}
@media(max-width:740px){.section-heading{grid-template-columns:1fr;gap:20px}.section-heading p{grid-column:auto}.service-group li{font-size:15px}}
