/* Latest content and palette: the opening blue continues inside every chapter. */
:root {
 --chrome-green-surface:linear-gradient(135deg,#347a62,#286a53 58%,#20553f);
 --selection-green:#286a53;
 --chrome-muted:#264b68;
}
.story-dialog { background:radial-gradient(ellipse at 100% 0%,#c8eadd 0%,transparent 60%),linear-gradient(125deg,#8dbaf1,#acd3f2 65%,#9ac9e8); }
.story-top,.story-bottom { background:linear-gradient(115deg,#8dbaf1f5,#b3dce5f5); }
.story-location,.footer-caption { color:#234567; }
.home-nav { grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
.nav-link { padding:14px 18px; }
.nav-text { font-size:11px; gap:10px; }
.panel-nav { grid-template-columns:repeat(6,minmax(0,1fr)); gap:5px; }
.footer-caption { display:none; }
/* The demo sits below the film controls, leaving the central payoff clear. */
.demo-band[hidden] { display:none; }
.hero-header { align-items:flex-start; }
.hero-tools { display:grid; grid-template-columns:1fr auto; gap:10px; justify-items:end; }
.hero-tools .hero-demo-cta { grid-column:1 / -1; margin:0; min-height:44px; font-size:11px; padding:11px 17px; gap:14px; }
@media(max-width:700px) {
 .hero-tools { max-width:190px; gap:8px; }
 .hero-tools .hero-demo-cta { font-size:10px; line-height:1.45; padding:10px 12px; gap:8px; text-align:left; }
}
@media(max-height:420px) and (min-width:701px) {
 .hero-tools .hero-demo-cta { min-height:38px; padding:8px 13px; font-size:10px; }
}
/* Darker green selections use light text for clear contrast. */
.demo-cta,.hero-payoff .demo-cta,.demo-cta span,.hero-payoff .demo-cta span,
.glass-button:hover,.icon-button:hover,.nav-link:hover,.nav-link:hover :is(.nav-number,.nav-arrow),
.panel-nav a[aria-current="page"],.dimension-tab[aria-selected="true"],.audience-tab[aria-selected="true"],
.solution-journey .is-current .sj-number,.solution-journey .sj-app-avatar,
.solution-journey .sj-options input:checked + span,.solution-journey .sj-options input:checked + span b,
.solution-journey .sj-checkin-submit:hover:not(:disabled),.film-close:hover,.video-start {
 color:#fff;
}
.demo-cta,.hero-payoff .demo-cta,.panel-nav a[aria-current="page"],
.dimension-tab[aria-selected="true"],.audience-tab[aria-selected="true"],
.nav-link:hover,.film-close:hover { border-color:#205c47; }
.panel-nav a:hover,.dimension-tab:hover,.audience-tab:hover,
.solution-journey .sj-nav a:hover,.solution-journey .sj-nav a[aria-current="step"] {
 background:var(--chrome-green-surface); color:#fff; border-color:#205c47;
}
.solution-journey .sj-nav a:is(:hover,[aria-current="step"]) > span { color:#fff; }
.video-start:hover { color:#fff; background:var(--chrome-blue-surface); }
.close-button:hover .close-x { background:var(--chrome-green-surface); color:#fff; border-color:#205c47; }
.solution-journey .sj-task input:checked + .sj-task-check::after { border-color:#fff; }
.solution-journey .sj-nav { background:#bedcf2f5; }
.solution-journey .sj-stage:nth-of-type(odd) { background:#d1e7f3a8; }
.solution-journey .sj-stage:nth-of-type(even) { background:#c0ddf0a8; }
.solution-content .sj-dynamic-note { border-color:var(--selection-green); }
.solution-content .sj-continuation { border-top-color:var(--selection-green); }
.solution-content .sj-timeline-node { border-color:var(--selection-green); }
/* Vision and Mission, as supplied, with readable live text. */
.events-purpose { display:grid; grid-template-columns:1fr 1fr; gap:clamp(24px,4vw,64px); padding-bottom:30px; }
.purpose-card { padding:clamp(25px,3.3vw,48px); border:1px solid #82abc5; border-radius:24px; background:linear-gradient(130deg,#e8f4ffec,#d8efefe8); box-shadow:inset 0 1px #ffffffa8; }
.purpose-label { font-size:10px; letter-spacing:.16em; font-weight:700; color:#315a78; }
.purpose-card h3 { font:700 clamp(35px,4vw,62px)/1.1 OpenSans,Arial,sans-serif; letter-spacing:-.045em; margin:24px 0 28px; color:#00629e; }
.purpose-card h3::after { content:""; display:block; width:66px; height:4px; background:currentColor; margin-top:20px; }
.purpose-card p { font-size:clamp(16px,1.45vw,21px); line-height:1.85; margin:0 0 24px; color:var(--chrome-navy); }
.purpose-card p:last-child { margin-bottom:0; }
.purpose-vision strong { color:#00629e; }
.purpose-mission h3,.purpose-mission strong { color:var(--selection-green); }
.purpose-mission { background:linear-gradient(130deg,#dceff3f2,#d5e9ddf2); }
@media(min-width:701px) and (max-width:1050px) {
 .home-nav { gap:9px; } .nav-link { padding:12px; }
 .nav-text { font-size:10px; gap:7px; } .nav-arrow { font-size:16px; }
}
@media(max-width:700px) {
 .home-nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .home-nav .nav-link:last-child { grid-column:auto; }
 .nav-link { min-height:45px; padding:11px 13px; }
 .nav-text { font-size:10px; gap:7px; }
 .edge-wave { bottom:205px; }
 .panel-nav { grid-template-columns:repeat(3,minmax(0,1fr)); gap:3px; }
 .panel-nav a { font-size:10px; padding:6px 5px; min-height:44px; justify-content:center; text-align:center; }
 .story-layout { grid-template-rows:68px minmax(0,1fr) 114px; }
 .events-purpose { grid-template-columns:1fr; gap:22px; }
 .purpose-card { padding:27px 23px; border-radius:20px; }
 .purpose-card h3 { font-size:38px; margin-top:20px; }
 .purpose-card p { font-size:16px; }
}
@media(max-width:700px) and (max-height:700px) {
 body:not(.is-loading) { overflow-y:auto; }
 .hero { min-height:640px; }
 .hero-payoff { top:21%; }
 .home-nav { bottom:24px; }
}
@media(forced-colors:active) {
 .story-dialog,.story-top,.story-bottom,.purpose-card { color:CanvasText; background:Canvas; }
 .demo-cta,.hero-payoff .demo-cta { color:ButtonText; }
 .panel-nav a[aria-current="page"],.dimension-tab[aria-selected="true"],.audience-tab[aria-selected="true"],
 .solution-journey .sj-nav a[aria-current="step"] { color:HighlightText; background:Highlight; border-color:Highlight; }
}
