.journey-note{max-width:760px;margin:0;color:#bdcbd1;font-size:1.08rem}
.journey-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px 14px;list-style:none;margin:32px 0 0;padding:0}
.journey-flow li{position:relative;margin:0;padding:16px 10px;border:1px solid transparent;background:#fff;color:var(--ink);text-align:center;font:500 .8rem/1.25 DM Mono,monospace;letter-spacing:.02em}
.journey-flow li:last-child{outline:2px solid var(--gold);outline-offset:-2px}
.journey-flow li:not(:last-child)::after{content:"→";position:absolute;right:-14px;top:50%;transform:translateY(-50%);color:#bdcbd1;font-size:1rem;z-index:1}
.proposed-mark{display:block;margin-top:6px;color:#8a5a10;font:500 .65rem/1.2 DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase}
.journey-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:28px}
.journey-map article{margin:0;padding:16px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06)}
.journey-map h2{margin:0 0 8px;color:#fff;font:600 1rem/1.3 Manrope,sans-serif;letter-spacing:0}
.journey-map p{margin:0;max-width:none;color:#bdcbd1;font-size:.95rem}
.journey-map .next-stage{border-color:var(--gold)}
.school-title{box-shadow:inset 0 10px 0 var(--paper)}
.school-title h2{max-width:900px;margin:14px 0 0;color:#fff;font:500 clamp(2.4rem,4.6vw,4.4rem)/.98 Newsreader,serif;letter-spacing:-.04em}
.school-copy{max-width:760px}
.school-copy p{margin:0 0 1.05rem;font-size:1.05rem}
.school-copy h2{font:500 clamp(1.8rem,3vw,2.6rem)/1.1 Newsreader,serif;letter-spacing:-.03em;margin:0 0 22px}
.school-flow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:18px 10px;list-style:none;margin:0;padding:0}
.school-flow li{position:relative;margin:0;padding:16px 10px;border:1px solid var(--line);background:#fff;text-align:center;font:500 .78rem/1.25 DM Mono,monospace;letter-spacing:.02em}
.school-flow li:not(:last-child)::after{content:"→";position:absolute;right:-12px;top:50%;transform:translateY(-50%);color:var(--quiet);font-size:1rem;z-index:1}
.school-return{margin:18px 0 0;padding:14px 16px;border-left:3px solid var(--mint);background:#fff;color:var(--ink);font-size:1rem}
.school-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:22px 0 0;padding:0}
.school-rules li{margin:0;padding:16px;border:1px solid var(--line);background:#fff;font-size:.98rem}
.school-rules strong{display:block;margin-bottom:6px}
.school-figure-hint{display:none;margin:0 0 10px;color:var(--quiet);font-size:.95rem}
.school-figure-scroll{max-width:100%}
@media(max-width:1180px){
  .school-flow{grid-template-columns:1fr;max-width:640px;gap:22px}
  .school-flow li:not(:last-child)::after{content:"↓";right:auto;left:50%;top:auto;bottom:-20px;transform:translateX(-50%)}
}
@media(max-width:900px){
  .school-figure-hint{display:block}
  .school-figure-scroll{overflow-x:auto;overscroll-behavior-x:contain;border:1px solid var(--line);background:#fff}
  .school-figure-scroll img{width:1040px;max-width:none;height:auto}
}
@media(max-width:850px){
  .journey-flow{grid-template-columns:1fr;max-width:640px;gap:22px}
  .journey-flow li:not(:last-child)::after,.school-flow li:not(:last-child)::after{content:"↓";right:auto;left:50%;top:auto;bottom:-20px;transform:translateX(-50%)}
  .journey-map,.school-rules{grid-template-columns:1fr}
  .school-title h2{font-size:2.15rem}
}
