.journey-main{--journey-cream:#faf5ee;font:400 18px/1.8 var(--font-body);padding:72px 32px 88px;color:var(--brown)}
.journey-reading{max-width:660px;margin:0 auto 88px}
.journey-main h1,.journey-main h2,.journey-main h3{font:400 clamp(28px,3vw,40px)/1.4 var(--font-heading);color:var(--garnet);margin:0 0 28px;text-wrap:balance}
.journey-main h1{font-size:clamp(36px,4vw,54px)}
.journey-main p{margin:0 0 22px}
.journey-main .journey-label{font:400 12px/1.6 var(--font-ui);letter-spacing:2px;color:var(--oxblood);margin-bottom:20px}
.journey-opening{max-width:1000px;margin:0 auto 48px;font-size:17px;line-height:1.7}
.journey-opening-lead{max-width:660px;margin:0 auto 32px}
.journey-opening h1{font-size:clamp(36px,3.3vw,45px);margin-bottom:24px}
.journey-opening p{margin-bottom:16px}
.journey-opening .journey-opening-statement{font-size:21px;line-height:1.6;margin-bottom:14px}
.journey-approach{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
.journey-approach p:last-child{margin-bottom:0}
.journey-opening .journey-opening-closing{max-width:740px;margin:28px auto 0;text-align:center;font-size:20px;line-height:1.6}
.journey-moons-intro{font-size:17px;line-height:1.7;margin-bottom:24px}
.journey-moons-intro p{margin-bottom:16px}
.journey-flexibility{margin-top:28px}
@media(max-width:700px){.journey-approach{grid-template-columns:1fr;gap:22px}.journey-opening{margin-bottom:36px}.journey-opening-lead{margin-bottom:24px}.journey-opening .journey-opening-statement{font-size:20px}.journey-opening .journey-opening-closing{font-size:19px;margin-top:24px}}
.journey-aspects{max-width:1120px;margin:0 auto 100px}
.journey-aspects .journey-reading{margin-bottom:12px}
.aspects-art{display:block;width:100%;height:auto;margin:0 auto 12px}
.aspects-labels{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin:0}
.aspects-labels dt{font:400 12px/1.6 var(--font-ui);letter-spacing:1.2px;color:var(--oxblood);margin-bottom:12px}
.aspects-labels dd{margin:0;font-size:16px;line-height:1.65}
.journey-main .thread-note{font-size:16px;max-width:660px;margin:40px auto 0;text-align:center;font-style:italic}
.journey-interactive{max-width:1180px;margin:0 auto 100px}
.journey-section-heading{text-align:center;margin-bottom:40px}
.journey-section-heading h2{margin-bottom:14px}
.journey-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:start}
.journey-map{position:relative;color:var(--oxblood);width:100%;aspect-ratio:640/610}
.journey-map svg{display:block;width:100%;height:100%}
.moon-point{position:absolute;transform:translate(-50%,-50%);width:48px;height:48px;display:grid;place-items:center;border-radius:50%}
.moon-point span{display:grid;place-items:center;width:33px;height:33px;border:3px solid var(--parchment);border-radius:50%;background:var(--oxblood);color:var(--parchment);font:400 13px/1 var(--font-ui)}
.moon-point[aria-current] span{background:var(--garnet);box-shadow:0 0 0 3px var(--oxblood)}
.moon-point:focus-visible{outline:2px solid var(--garnet);outline-offset:1px}

.moon-card{background:var(--journey-cream);border-radius:12px;padding:30px;min-width:0}
.moon-card h3{font-size:clamp(23px,2.3vw,30px);text-transform:none;line-height:1.5}
.moon-card h4{font:400 12px/1.7 var(--font-ui);letter-spacing:1.2px;text-transform:uppercase;color:var(--oxblood);margin:28px 0 14px}
.moon-card ul{padding-left:20px;margin:0}.moon-card li{margin-bottom:10px}
.moon-controls{display:flex;justify-content:flex-end;gap:10px;margin-bottom:20px}
.moon-controls[hidden],.moon-panel[hidden]{display:none}
.moon-controls button{width:48px;height:44px;border:1px solid var(--oxblood);border-radius:24px;color:var(--garnet);background:transparent;cursor:pointer;font-size:22px}
.moon-controls button:disabled{opacity:.35;cursor:default}
.moon-panel+.moon-panel{margin-top:56px}
.moon-panel[hidden]+.moon-panel{margin-top:0}
.journey-cta-link{max-width:660px;margin:-60px auto 0}
.journey-button{display:inline-block;font:400 16px/1.6 var(--font-ui);border-bottom:1px solid var(--oxblood);padding:12px 0;color:var(--oxblood)}
.journey-button[aria-disabled]{opacity:.65}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:800px){.journey-layout{grid-template-columns:1fr;gap:24px}.journey-map{max-width:560px;margin:auto}.aspects-labels{grid-template-columns:1fr;gap:22px;max-width:660px;margin:auto}.aspects-labels dt{margin-bottom:4px}.journey-aspects{margin-bottom:72px}.moon-card{max-width:660px;width:100%;margin:auto}}
@media(max-width:600px){.journey-main{padding:44px 22px 64px;font-size:17px}.journey-reading{margin-bottom:64px}.journey-main h2{font-size:28px}.journey-interactive{margin-bottom:68px}.moon-card{padding:24px 20px}.moon-point span{width:29px;height:29px;font-size:11px}.journey-section-heading{margin-bottom:18px}.journey-cta-link{margin-top:-40px}.aspects-art{margin-block:12px 28px}}
.journey-main .journey-moons-intro{margin-bottom:24px}


/* Care Journey editorial refinement; interactive spiral styles are unchanged. */
.journey-aspects{margin-bottom:72px}.journey-aspects .journey-reading{max-width:760px;font-size:17px;line-height:1.7;margin-bottom:20px}.aspects-art{max-width:1120px;margin-bottom:28px}.journey-main h2.journey-label{font:400 12px/1.6 var(--font-ui);letter-spacing:2px;color:var(--oxblood);margin-bottom:18px;text-wrap:initial}.aspects-labels{gap:24px}.journey-opening-lead{max-width:760px}.journey-approach{gap:40px}.journey-approach p{margin-bottom:0}
@media(max-width:700px){.journey-approach{gap:22px}.journey-aspects{margin-bottom:52px}}

/* Open editorial desktop composition, approved 29 October 2026. */
.journey-main{max-width:1380px;margin-inline:auto;padding-inline:clamp(22px,4vw,50px)}
.journey-opening{max-width:none;margin:0 0 44px;font-size:17px;line-height:1.75}
.journey-opening-lead{max-width:900px;margin:0}
.journey-opening h1{max-width:900px}
.journey-opening p{margin-bottom:18px}
.journey-opening p:last-child{margin-bottom:0}
.journey-opening .journey-opening-statement{font-size:22px;margin-bottom:18px}
.journey-aspects{max-width:none;margin:0 0 64px}
.journey-aspects .journey-reading{max-width:900px;margin:0 0 18px}
.aspects-art{max-width:1280px;width:100%;height:auto}
.journey-interactive{max-width:none}
.journey-moons-intro{max-width:900px;margin-left:0;margin-right:auto}
@media(max-width:700px){.journey-main{padding-inline:22px}.journey-opening{margin-bottom:36px}.journey-opening .journey-opening-statement{font-size:20px}.journey-aspects{margin-bottom:52px}}
/* Moon navigation follows the reading content. */
.moon-controls{margin:28px 0 0}
/* Keep short final lines with the paragraph while preserving its reading width. */
.journey-opening-lead>p:not(.journey-label):not(.journey-opening-statement){text-wrap:pretty}
/* Slightly tighter reading rhythm inside the interactive moon panel. */
.moon-card{line-height:1.65}
/* More compact moon-panel rhythm after visual review. */
.moon-card{line-height:1.5}
.moon-card p{margin-bottom:16px}
.moon-card li{margin-bottom:7px}
.moon-card h4{margin-top:22px;margin-bottom:12px}
/* Stack the spiral above its reading panel at every viewport width. */
.journey-layout{grid-template-columns:minmax(0,1fr);gap:28px}
.journey-map{max-width:560px;margin-inline:auto}
.moon-card{max-width:900px;width:100%;margin-inline:auto}
/* Frame out empty transparent canvas without resizing or altering the artwork. */
.aspects-art-frame{position:relative;width:100%;aspect-ratio:1679/410;overflow:hidden;margin:24px auto 28px}
.aspects-art-frame .aspects-art{position:absolute;top:-68.292683%;left:0;width:100%;max-width:none;height:auto;margin:0}
/* Coordinated reading alignment and section rhythm. */
.journey-main{max-width:1300px}
.journey-opening,.journey-aspects,.journey-moons-intro,.journey-interactive,.journey-main>section[aria-labelledby="journey-cta"],.journey-cta-link{max-width:1000px;margin-left:auto;margin-right:auto}
.journey-opening-lead,.journey-aspects .journey-reading{max-width:900px}
.journey-opening{margin-bottom:42px}
.journey-aspects{margin-bottom:48px}
.aspects-art-frame{max-width:1000px;margin:20px 0 22px}
.aspects-labels{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.aspects-labels dt{min-height:40px;letter-spacing:.8px;margin-bottom:8px}
.aspects-labels dd{font-size:16px;line-height:1.65}
.journey-main .journey-moons-intro{max-width:1000px;margin-bottom:14px}
.journey-moons-intro>p:not(.journey-label){max-width:900px}
.journey-moons-intro h2{max-width:850px}
.journey-section-heading{text-align:left;margin-bottom:0}
.journey-section-heading p{margin-bottom:0}
.journey-layout{gap:18px}
.journey-map{max-width:460px}
.moon-card{max-width:none;width:100%;background:var(--journey-cream);border-radius:8px;padding:32px 40px}
.moon-panel{max-width:850px}
.journey-interactive{margin-bottom:52px}
.journey-main>section[aria-labelledby="journey-cta"]{margin-bottom:24px}
.journey-main>section[aria-labelledby="journey-cta"] p{max-width:850px}
.journey-cta-link{margin-top:0}
@media(max-width:1000px){.aspects-labels{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 28px}.aspects-labels dt{min-height:0}}
@media(max-width:700px){.aspects-labels{grid-template-columns:1fr;gap:22px}.journey-opening{margin-bottom:34px}.journey-aspects{margin-bottom:40px}.moon-card{padding:26px 22px}.journey-map{max-width:420px}.journey-interactive{margin-bottom:40px}}
/* Keep each caption with its artwork when the five-column strip wraps. */
.aspects-labels dt{font-size:11px;letter-spacing:.6px}
.aspects-labels dd{font-size:15px;line-height:1.6}
.aspect-symbol{display:none}
@media(max-width:1000px){
 .aspects-art-frame{display:none}
 .aspects-labels{gap:32px 24px;margin-top:24px}
 .aspect-symbol{display:block;width:100%;height:150px;margin:0 auto 16px;overflow:hidden}
}
@media(max-width:700px){
 .aspects-labels{grid-template-columns:repeat(2,minmax(0,1fr))}
 .aspect-symbol{height:140px}
}
@media(max-width:440px){
 .aspects-labels{grid-template-columns:minmax(0,1fr);gap:30px;max-width:320px}
 .aspect-symbol{height:170px;margin-bottom:12px}
}
