/* Your Journey: clear stages, concrete work, continued mentor feedback. */
.program-page{--journey-line:#dce5ed;--journey-ink:#203d59;--journey-muted:#586f85}
.program-page .journey-hero{padding:56px 0 52px;background:white;border-bottom:1px solid var(--journey-line)}
.journey-hero-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:64px;align-items:center}
.program-page .journey-hero h1{font-size:clamp(37px,3.7vw,53px);line-height:1.15;letter-spacing:-.045em;max-width:620px;text-wrap:balance}
.journey-hero h1 em{font-style:normal;color:#527562}
.program-page .journey-hero .lead{font-size:17px;line-height:1.85;margin:24px 0 0;max-width:525px}
.journey-map{margin:0;background:radial-gradient(ellipse at center,#f5f9fb,transparent 70%)}
.journey-map svg{width:100%;height:auto;display:block;overflow:visible}
.journey-svg-text{font-family:inherit;fill:#60788d;font-size:14px}.journey-svg-stage{font-size:17px;font-weight:600;fill:#284f6f}.journey-svg-support{fill:#567760;font-size:14px}
.program-page main>.section{padding:58px 0}
.program-page .section-intro{margin-bottom:27px}
.program-page .section-intro h2,.journey-live h2,.readiness-intro h2{font-size:clamp(28px,2.5vw,35px);line-height:1.25;letter-spacing:-.035em;text-wrap:balance}
.program-page .section-intro p{font-size:16px;line-height:1.8;max-width:780px}
.journey-stages,.journey-week,.journey-ready{background:#f6f8fb}
.journey-browser{border:1px solid #d7e3ed;background:white;border-radius:11px;overflow:hidden}
.journey-tabs{display:grid;grid-template-columns:repeat(4,1fr);background:#f8fafc;border-bottom:1px solid var(--journey-line)}
.journey-tabs button{position:relative;display:flex;align-items:center;gap:14px;background:transparent;border:0;border-right:1px solid var(--journey-line);padding:21px;color:#385771;text-align:left;font:inherit;cursor:pointer;transition:background .2s}
.journey-tabs button:last-child{border-right:0}.journey-tabs button[aria-selected=true]{background:#edf4fb;box-shadow:inset 0 -3px #2a608d}.journey-tabs button:hover{background:#eff4f9}
.journey-tabs img{height:43px;width:37px;object-fit:contain;flex:none;transition:transform .25s}.journey-tabs button:hover img{transform:translateY(-3px)}
.journey-tabs small{font-size:12px;color:#607c93;display:block;margin-bottom:4px}.journey-tabs b{font-size:15px;line-height:1.5;display:block;font-weight:600}
.journey-panel{padding:28px 30px 0}.journey-panel[hidden]{display:none!important}
.stage-heading h3{font-size:27px;line-height:1.3;letter-spacing:-.025em;color:var(--journey-ink);margin:0 0 9px;text-wrap:balance}
.stage-heading p{font-size:16px;line-height:1.75;color:var(--journey-muted);margin:0}
.stage-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:25px 0}
.stage-column{padding:0 22px;border-right:1px solid var(--journey-line)}.stage-column:first-child{padding-left:0}.stage-column:last-child{padding-right:0;border-right:0}
.journey-panel h4{font-size:14px;color:#284e71;letter-spacing:0;text-transform:none;line-height:1.6;margin:0 0 13px;font-weight:600}
.stage-column h4{display:flex;gap:9px;align-items:center}.stage-column h4 span{width:22px;height:22px;border:1px solid #d5e0ea;border-radius:50%;display:grid;place-items:center;font-size:11px;color:#58738b;flex:none}
.journey-panel ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.journey-panel li{position:relative;padding-left:15px;font-size:14px;line-height:1.75;color:var(--journey-muted)}
.journey-panel ul li:before{content:'';position:absolute;left:0;top:10px;width:4px;height:4px;border-radius:50%;background:#8ea9bc}
.stage-assignment{border:1px solid var(--journey-line);border-radius:8px;overflow:hidden}
.assignment-title{padding:13px 18px;display:flex;gap:20px;align-items:baseline;border-bottom:1px solid var(--journey-line);background:#fafbfd}
.assignment-title>span{font-size:12px;color:#667d90;flex:none}.assignment-title h4{font-size:15px;margin:0;color:#2a4660}
.assignment-flow{display:grid;grid-template-columns:1fr 34px 1fr;align-items:stretch;background:linear-gradient(90deg,#f7f9fb 50%,#f0f5fc 50%)}
.assignment-flow>div{padding:18px}.assignment-flow b{font-size:12px;color:#536b82}.assignment-flow p{font-size:14px;line-height:1.8;color:#4c657d;margin:7px 0 0}.assignment-mentor b{color:#26578a}.assignment-mentor p{color:#385f87}
.assignment-arrow{display:grid;place-items:center;color:#7795b0;font-size:20px;background:#f0f5fc}
.stage-outcome{display:flex;gap:12px;align-items:center;margin:15px 0 0;padding:13px 17px;background:#eff6f1;border:1px solid #d7e7db;border-radius:7px}
.stage-outcome>span{color:#587f62}.stage-outcome p{font-size:14px;line-height:1.7;color:#456b51;margin:0}.stage-outcome b{margin-right:14px;font-size:12px}
.stage-details{margin-top:18px;border-top:1px solid var(--journey-line);padding:17px 0}
.stage-details summary{font-size:14px;line-height:1.7;color:#335f85;font-weight:600;cursor:pointer}.stage-details summary>span{font-size:12px;font-weight:400;color:#6b7f91;margin-left:12px}
.stage-details>p{font-size:15px;line-height:1.85;color:var(--journey-muted);margin:17px 0}
.details-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:25px 0}
.journey-topics{display:flex;flex-wrap:wrap;gap:7px}.journey-topics span{font-size:12px;color:#54728c;padding:4px 9px;border:1px solid #dce7ef;border-radius:5px;background:#f8fafc;line-height:1.6}
.stage-week-detail{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:0;margin:0 0 8px}.stage-week-detail li{padding:0}.stage-week-detail b{display:block;color:#355e7e;margin-bottom:6px}
.journey-live-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center}
.journey-caption{display:block;color:#58758e;font-size:12px;margin-bottom:15px}.journey-live h2{margin:0 0 22px}.journey-live-grid>div>p{font-size:16px;line-height:1.85;color:var(--journey-muted)}
.review-example{border:1px solid var(--journey-line);border-radius:9px;overflow:hidden;background:#fff}
.example-heading{padding:20px 23px;border-bottom:1px solid var(--journey-line)}.example-heading b{font-size:16px;color:var(--journey-ink);display:block}.example-heading>span{display:block;font-size:12px;color:#6b8091;margin-top:7px;line-height:1.7}
.review-evidence{position:relative;display:flex;gap:15px;padding:15px 23px;background:#f7f9fb}.review-evidence.mentor{background:#f0f5fc}.review-evidence.correction{background:#eff6f1}
.review-dot{margin-top:5px;width:11px;height:11px;border-radius:50%;border:1px solid #9bb3c6;background:#fff;flex:none}.review-evidence:not(.correction):after{content:'';position:absolute;left:28px;top:32px;bottom:-20px;border-left:1px dashed #b5c9d7;z-index:1}.correction .review-dot{border-color:#90b69d;background:#e0eee4}
.review-evidence small{font-size:12px;color:#416383;font-weight:600}.review-evidence p{font-size:14px;line-height:1.8;color:#526b80;margin:5px 0 0}.correction :is(p,small){color:#456e53}
.review-example-link{font:inherit;font-size:13px;color:#335f85;font-weight:600;background:#fff;border:0;width:100%;padding:15px 23px;text-align:left;cursor:pointer}.review-example-link span{float:right}.review-example-link:hover{background:#f7fafc}
.weekly-overview{border:1px solid var(--journey-line);border-radius:9px;background:#fff;overflow:hidden}.weekly-head,.weekly-overview article{display:grid;grid-template-columns:.75fr 1.25fr 1.2fr;gap:25px;padding:19px 25px}.weekly-head{background:#f0f4f9;padding-top:12px;padding-bottom:12px;color:#62798e;font-size:12px;font-weight:600}.weekly-overview article+article{border-top:1px solid var(--journey-line)}
.week-time{display:flex;gap:12px;align-items:flex-start}.week-time>span{flex:none;width:24px;height:24px;display:grid;place-items:center;border:1px solid #ccdae5;border-radius:50%;font-size:12px;color:#53748d;margin-top:2px}.week-time h3{font-size:15px;line-height:1.7;margin:0;color:#305474}.weekly-overview article b{display:block;font-size:14px;line-height:1.7;color:#304f6b;font-weight:600}.weekly-overview p{font-size:14px;line-height:1.8;color:var(--journey-muted);margin:5px 0 0}.weekly-overview article>div:last-child p{margin:0}.weekly-overview article small{display:none}
.journey-week-note{font-size:13px;color:#667f93;line-height:1.8;margin:17px 0 0;max-width:880px}
.program-page #layers .layers3{max-width:none;gap:16px;grid-template-columns:repeat(3,1fr)}.program-page #layers .layers3>div.ly-arrow{display:none!important}.program-page #layers .layers3>div{background:#fff;border:1px solid var(--journey-line);border-radius:8px;padding:24px}.program-page #layers .layers3>div.hi{background:#eff6f1!important;border-color:#d2e4d8}.program-page #layers .ly-n{font-size:12px;color:#668198}.program-page #layers .layers3 b{font-size:19px;line-height:1.4}.program-page #layers .layers3 p{font-size:15px;line-height:1.75}.program-page #layers .layers3 small{font-size:14px;line-height:1.8}.program-page #layers .concept-svg{margin:20px 0;height:auto;max-height:120px}
.readiness-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center}.readiness-intro h2{margin:0 0 22px;max-width:430px}.readiness-intro>p{font-size:16px;line-height:1.85;color:var(--journey-muted)}.readiness-visual{margin-top:15px;max-width:330px}.readiness-visual svg{display:block;width:100%;height:auto}.readiness-visual p{font-size:12px;text-align:center;color:#587762;line-height:1.7;margin:0}.readiness-checks{list-style:none;display:grid;gap:12px;padding:0;margin:0}.readiness-checks li{display:flex;gap:16px;border:1px solid var(--journey-line);border-radius:8px;background:white;padding:20px}.readiness-checks li>span{width:26px;height:26px;flex:none;display:grid;place-items:center;border:1px solid #cbded3;border-radius:50%;background:#f0f7f2;font-size:12px;color:#51745e}.readiness-checks h3{font-size:17px;line-height:1.5;margin:0 0 7px;color:#294d6a}.readiness-checks p{font-size:14px;line-height:1.8;color:var(--journey-muted);margin:0}
#stages,#livefire,#week,#layers,#gate{scroll-margin-top:95px}.journey-panel:focus-visible{outline:2px solid #82a8c7;outline-offset:-4px}
@media(max-width:1000px){.journey-hero-grid{gap:30px}.journey-tabs button{padding:17px 14px;gap:9px}.journey-tabs img{width:30px;height:36px}.journey-tabs b{font-size:14px}.journey-panel{padding:25px 25px 0}.stage-column{padding:0 15px}.stage-column h4{align-items:flex-start}.journey-live-grid,.readiness-grid{gap:32px}.weekly-head,.weekly-overview article{gap:20px;padding-left:20px;padding-right:20px}.program-page #layers .layers3{grid-template-columns:1fr}.program-page #layers .layers3>div{display:grid;grid-template-columns:1fr 1fr;gap:7px 25px}.program-page #layers .layers3 :is(.ly-n,b,p,small){grid-column:1}.program-page #layers .layers3 p,.program-page #layers .layers3 small{margin:0}.program-page #layers .layers3 svg{grid-column:2;grid-row:1/5;max-height:150px;margin:0;align-self:center}.journey-svg-text{font-size:16px}.journey-svg-stage{font-size:19px}}
@media(max-width:760px){.journey-hero-grid,.journey-live-grid,.readiness-grid{grid-template-columns:1fr}.program-page .journey-hero{padding:36px 0}.program-page .journey-hero h1{font-size:42px;max-width:600px}.journey-map{max-width:430px;margin:0 auto;width:100%}.program-page main>.section{padding:42px 0}.journey-tabs button{display:block;padding:15px}.journey-tabs img{margin-bottom:8px}.journey-tabs b{font-size:13px}.journey-tabs small{font-size:11px}.stage-heading h3{font-size:25px}.stage-overview{grid-template-columns:1fr;gap:19px}.stage-column{padding:0 0 18px!important;border:0;border-bottom:1px solid var(--journey-line)}.stage-column:last-child{padding-bottom:0!important;border:0}.journey-panel h4{font-size:15px;margin-bottom:10px}.journey-panel li{font-size:15px}.stage-column h4 span{display:none}.stage-overview ul{gap:7px}.assignment-title{display:block}.assignment-title>span{display:block;margin-bottom:6px}.assignment-title h4{margin:0}.assignment-flow{grid-template-columns:1fr;background:none}.assignment-student{background:#f7f9fb}.assignment-mentor{background:#f0f5fc}.assignment-arrow{display:none}.assignment-flow p{font-size:15px}.stage-outcome p{font-size:15px}.stage-outcome b{display:block}.stage-details summary>span{display:block;margin:4px 0 0 17px}.details-columns,.stage-week-detail{grid-template-columns:1fr;gap:23px}.weekly-head{display:none}.weekly-overview article{grid-template-columns:1fr 1fr;gap:14px 24px;padding:22px}.week-time{grid-column:1/-1}.weekly-overview article small{display:block;font-size:11px;color:#658099;margin:0 0 7px}.weekly-overview article>div:last-child p{margin:0}.weekly-overview article>div:last-child{padding-left:18px;border-left:1px solid var(--journey-line)}.readiness-visual{max-width:280px;margin:15px auto 0}.journey-svg-text{font-size:17px}.journey-svg-stage{font-size:20px}.journey-svg-support{font-size:16px}}
@media(max-width:430px){.program-page .journey-hero h1{font-size:35px}.program-page .journey-hero .lead{font-size:16px;margin-top:20px}.journey-tabs{grid-template-columns:1fr 1fr}.journey-tabs button{display:flex;gap:12px;padding:15px}.journey-tabs img{margin:0;width:28px;height:34px}.journey-tabs button:nth-child(2){border-right:0}.journey-tabs button:nth-child(-n+2){border-bottom:1px solid var(--journey-line)}.journey-panel{padding:21px 20px 0}.stage-heading h3{font-size:24px}.stage-heading p{font-size:15px}.stage-outcome{padding:13px}.weekly-overview article{grid-template-columns:1fr;gap:15px}.week-time{grid-column:auto}.weekly-overview article>div:last-child{padding:13px 15px;border:0;border-radius:5px;background:#f0f5fc}.weekly-overview article b,.weekly-overview p{font-size:15px}.program-page #layers .layers3>div{display:block;padding:23px}.program-page #layers .layers3 svg{margin:18px 0;max-height:none}.program-page #layers .layers3 p{margin-top:9px}.program-page #layers .layers3 small{display:block;margin-top:17px}.readiness-grid{gap:25px}}
@media(prefers-reduced-motion:reduce){.journey-tabs img,.journey-tabs button{transition:none}}
