/* Pack 03 programme experiences — extends approved Pack 01/02 foundations. */
.programme-hero{position:relative;overflow:hidden;padding-block:clamp(48px,7vw,104px);background:var(--brand-green);color:var(--white)}
.programme-hero::before{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.7%,rgba(255,255,255,.025) 50%,transparent 50.3%);background-size:64px 100%;content:"";pointer-events:none}
.programme-hero .container{position:relative;z-index:1}.programme-hero .breadcrumb{margin-bottom:clamp(36px,5vw,64px)}
.programme-hero__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:center;gap:clamp(48px,8vw,120px)}
.programme-hero__meta{display:flex;align-items:center;gap:18px;margin-bottom:20px}.programme-hero__meta .eyebrow{margin:0;color:var(--brand-gold)}
.programme-hero__meta .status-badge{border-color:#547264;background:#204a39;color:var(--white)}
.programme-hero h1{max-width:900px;margin-bottom:28px;color:var(--white);font-size:clamp(3.2rem,6.4vw,6rem)}
.programme-hero__intro{max-width:800px;color:#dfe9e3;font-size:clamp(1.05rem,1rem + .25vw,1.25rem);line-height:1.65;white-space:pre-line}
.programme-hero__diagram{position:relative;display:grid;width:min(100%,420px);aspect-ratio:1;place-items:center;margin-inline:auto;border:1px solid rgba(211,163,78,.75);border-radius:50%}
.programme-hero__diagram::before,.programme-hero__diagram::after{position:absolute;border-radius:50%;content:""}.programme-hero__diagram::before{inset:15%;border:1px solid rgba(255,255,255,.25)}.programme-hero__diagram::after{inset:31%;background:var(--canvas)}
.programme-hero__diagram strong{z-index:2;color:var(--brand-green);font-family:var(--font-display);font-size:clamp(1.2rem,2vw,2rem);letter-spacing:.12em}
.programme-hero__diagram>span,.programme-hero__diagram>i{position:absolute;z-index:3;width:18px;height:18px;border-radius:50%;background:var(--brand-ruby)}
.programme-hero__diagram>span{top:7%;left:27%}.programme-hero__diagram>i{right:9%;bottom:30%;background:var(--brand-gold)}
.programme-hero--ev .programme-hero__diagram{border-radius:18% 50% 18% 50%;transform:rotate(8deg)}.programme-hero--ev .programme-hero__diagram strong{transform:rotate(-8deg)}
.programme-hero--ai .programme-hero__diagram{border-radius:20px}.programme-hero--ai .programme-hero__diagram::before{border-radius:12px}.programme-hero--ai .programme-hero__diagram::after{border-radius:50%}

.programme-values{display:flex;flex-wrap:wrap;gap:10px;align-content:flex-start}.programme-values span,.audience-grid span{padding:13px 16px;border:1px solid var(--border);border-radius:999px;background:var(--white);color:var(--brand-green);font-size:.9rem;font-weight:700}
.programme-track-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.programme-track-grid--four{grid-template-columns:repeat(2,1fr)}
.programme-track{display:flex;min-height:100%;flex-direction:column;padding:clamp(24px,3vw,36px);border:1px solid var(--border);border-top:4px solid var(--brand-gold);border-radius:var(--radius-card);background:var(--white)}
.programme-track h3{margin-bottom:16px}.programme-track>p:not(.eyebrow):not(.programme-track__note){color:var(--muted)}.programme-track ul{margin:12px 0 0;padding-left:20px}.programme-track li+li{margin-top:6px}
.programme-track__note{margin:auto 0 0;padding-top:20px;border-top:1px solid var(--border);color:var(--brand-ruby);font-size:.88rem;font-weight:700}

.curriculum-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.curriculum-grid--levels .curriculum-group:last-child{grid-column:1/-1}
.curriculum-group{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--white)}
.curriculum-group summary{display:flex;min-height:92px;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;color:var(--brand-green);cursor:pointer;font-family:var(--font-display);font-size:1.35rem;line-height:1.15;list-style:none}
.curriculum-group summary::-webkit-details-marker{display:none}.curriculum-group summary small{display:block;margin-bottom:8px;color:var(--brand-ruby);font-family:var(--font-ui);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.curriculum-group summary>span:last-child{display:grid;width:40px;height:40px;flex:none;place-items:center;border:1px solid var(--border);border-radius:50%;font-family:var(--font-ui);transition:transform var(--motion-micro)}
.curriculum-group[open] summary>span:last-child{transform:rotate(45deg)}.curriculum-group__body{padding:0 26px 26px;border-top:1px solid var(--border)}.curriculum-group__body ul{columns:2;column-gap:36px;margin:24px 0;padding-left:20px}.curriculum-group__body li{break-inside:avoid;margin-bottom:8px}.curriculum-group__body p{margin:20px 0 0;padding:16px;border-left:3px solid var(--brand-gold);background:var(--surface-green)}

.pathway-flow{display:grid;grid-template-columns:repeat(var(--flow-count,6),minmax(0,1fr));margin:64px 0 0;padding:0;border-top:2px solid var(--brand-green);list-style:none}
.pathway-flow li{position:relative;min-width:0;padding:28px 12px 0}.pathway-flow li::before{position:absolute;top:0;left:12px;width:14px;height:14px;border:4px solid var(--white);border-radius:50%;background:var(--brand-gold);box-shadow:0 0 0 2px var(--brand-green);content:"";transform:translateY(-50%)}
.pathway-flow li:not(:last-child)::after{position:absolute;top:-15px;right:4px;color:var(--brand-ruby);content:"→";font-size:1.25rem}.pathway-flow li>span{display:block;margin-bottom:5px;color:var(--muted);font-size:.68rem}.pathway-flow strong{display:block;color:var(--brand-green);font-size:.84rem;line-height:1.35}
.pathway-flow--method{--flow-count:5}.pathway-flow--light{border-color:var(--brand-gold)}.pathway-flow--light li::before{border-color:var(--brand-green);box-shadow:0 0 0 2px var(--brand-gold)}.pathway-flow--light strong{color:var(--white)}.pathway-flow--light li>span{color:#c4d4cc}

.balance-bar{display:grid;grid-template-columns:40fr 60fr;overflow:hidden;margin-top:28px;border-radius:var(--radius-card)}.balance-bar span{display:flex;min-height:110px;align-items:center;justify-content:center;flex-direction:column;padding:18px;background:var(--brand-gold);color:var(--brand-green);font-size:.85rem;text-align:center}.balance-bar span+span{background:var(--brand-green);color:var(--white)}.balance-bar strong{font-family:var(--font-display);font-size:2.4rem;line-height:1}
.assessment-panel{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:24px}.assessment-panel__chart{padding:clamp(24px,4vw,42px);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--white)}
.assessment-panel__chart>div{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(200px,1.3fr);align-items:center;gap:24px}.assessment-panel__chart>div+div{margin-top:18px}.assessment-panel__chart span{display:flex;justify-content:space-between;gap:12px}.assessment-panel__chart small{color:var(--muted)}.assessment-panel meter{width:100%;height:18px;accent-color:var(--brand-green)}
.assessment-panel aside{padding:clamp(24px,4vw,42px);border-radius:var(--radius-card);background:var(--brand-green);color:var(--white)}.assessment-panel aside .eyebrow{color:var(--brand-gold)}.assessment-panel aside p:last-child{color:#dfe9e3}.assessment-panel__score{color:var(--brand-gold);font-family:var(--font-display);font-size:clamp(3.5rem,7vw,6rem);line-height:1}
.boundary-note,.high-voltage-boundary,.legal-boundary{margin-top:24px;padding:clamp(24px,4vw,40px);border-left:5px solid var(--brand-ruby);background:var(--white)}.boundary-note h3,.high-voltage-boundary h3{margin-bottom:10px}.boundary-note p,.high-voltage-boundary p:last-child,.legal-boundary p:last-child{margin-bottom:0}
.legal-boundary{margin:0 0 72px;background:var(--surface-green)}

.audience-grid{display:flex;flex-wrap:wrap;gap:10px}.audience-grid span{border-radius:8px}
.level-pathway{display:grid;grid-template-columns:repeat(5,1fr);margin:64px 0 0;padding:0;list-style:none}.level-pathway li{position:relative;min-height:250px;padding:28px 22px;border-top:4px solid var(--brand-gold);background:var(--surface-green)}.level-pathway li:nth-child(even){margin-top:36px}.level-pathway li+li{border-left:1px solid var(--border)}.level-pathway span{color:var(--brand-ruby);font-size:.7rem;font-weight:700;letter-spacing:.12em}.level-pathway h3{margin:48px 0 12px;font-size:1.45rem}.level-pathway p{margin:0;color:#626b66;font-size:.86rem}.section--soft .fixture-note{color:#626b66}
.safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.safety-tier{padding:30px;border:1px solid #4f6d5e;background:#204a39}.safety-tier__level{margin-bottom:28px;font-size:.72rem;font-weight:700;letter-spacing:.12em}.safety-tier h3{color:var(--white)}.safety-tier p:last-child{margin:0;color:#dfe9e3}.safety-tier--green{border-top:5px solid #79b98f}.safety-tier--amber{border-top:5px solid var(--brand-gold)}.safety-tier--red{border-top:5px solid #d87979}.high-voltage-boundary{background:#102b21}.high-voltage-boundary h3{color:var(--white)}.high-voltage-boundary .eyebrow{color:#f19ba0}
.dual-paths{display:grid;grid-template-columns:1fr 1fr;gap:24px}.dual-paths>article{padding:clamp(24px,4vw,40px);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--white)}.dual-paths .pathway-flow{grid-template-columns:1fr;margin-top:38px;padding-left:10px;border-top:0;border-left:2px solid var(--brand-green)}.dual-paths .pathway-flow li{padding:0 0 30px 32px}.dual-paths .pathway-flow li::before{top:0;left:0;transform:translate(-50%,0)}.dual-paths .pathway-flow li:not(:last-child)::after{display:none}.dual-paths .pathway-flow li:last-child{padding-bottom:0}

.age-track-grid,.two-path-comparison{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:56px}.age-track-grid article{padding:28px;border:1px solid var(--border);border-radius:var(--radius-card);background:var(--white)}.age-track-grid p:last-child{margin-bottom:0;color:var(--muted)}
.two-path-comparison article{padding:clamp(28px,4vw,48px);border:1px solid #4f6d5e;background:#204a39}.two-path-comparison .eyebrow{color:#e0b660}.two-path-comparison h3{color:var(--white)}.two-path-comparison ul{margin:28px 0 0;padding-left:20px;color:#dfe9e3}.two-path-comparison li+li{margin-top:8px}
.teaching-idea{margin-top:72px;padding:clamp(24px,4vw,40px);background:var(--surface-green)}.teaching-idea .pathway-flow{margin-top:36px}
.responsible-ai{background:linear-gradient(135deg,var(--white),var(--surface-green))}.responsibility-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:56px 0 0;padding:0;list-style:none}.responsibility-grid li{display:grid;min-height:110px;place-items:center;padding:18px;border:1px solid var(--border);background:var(--white);color:var(--brand-green);font-weight:700;text-align:center}
.mission-connection{display:grid;grid-template-columns:minmax(0,1.4fr) auto;align-items:center;gap:48px}.mission-connection h2{color:var(--white)}.mission-connection p{color:#dfe9e3}

.pilot-layout{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);align-items:start;gap:clamp(40px,7vw,96px)}.pilot-panel{padding:clamp(28px,4vw,44px);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--brand-green);color:var(--white)}.pilot-panel .eyebrow{color:var(--brand-gold)}.pilot-panel dl{margin:30px 0}.pilot-panel dl div{display:grid;grid-template-columns:1fr 1.2fr;gap:16px;padding-block:14px;border-top:1px solid #486858}.pilot-panel dt{color:#c8d7cf;font-size:.78rem;font-weight:700;text-transform:uppercase}.pilot-panel dd{margin:0;font-weight:700}.pilot-panel>p:last-child{margin:0;color:#dfe9e3;font-size:.88rem}
.programme-method{padding-block:clamp(64px,8vw,96px);background:var(--canvas)}.programme-method>.container>.eyebrow{text-align:center}.programme-method .pathway-flow{max-width:1000px;margin:48px auto 0}.related-links{display:flex;justify-content:space-between;gap:24px;margin-top:64px;padding-top:24px;border-top:1px solid var(--border)}.related-links a{color:var(--brand-green);font-weight:700}

@media (max-width:1180px){.programme-hero__grid{grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr)}.programme-track-grid{grid-template-columns:1fr 1fr}.level-pathway{grid-template-columns:repeat(3,1fr)}.level-pathway li:nth-child(even){margin-top:0}.responsibility-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){
  .programme-hero__grid,.assessment-panel,.pilot-layout,.mission-connection{grid-template-columns:1fr}.programme-hero__diagram{width:min(65vw,360px);order:-1}.programme-hero h1{font-size:clamp(3rem,9vw,5rem)}
  .curriculum-grid,.programme-track-grid,.programme-track-grid--four,.dual-paths{grid-template-columns:1fr}.curriculum-grid--levels .curriculum-group:last-child{grid-column:auto}
  .level-pathway{grid-template-columns:1fr 1fr}.safety-grid{grid-template-columns:1fr}.responsibility-grid{grid-template-columns:repeat(2,1fr)}
  .pathway-flow{grid-template-columns:repeat(3,1fr);row-gap:44px}.pathway-flow li:nth-child(3n):not(:last-child)::after{display:none}.mission-connection .button{justify-self:start}
}
@media (max-width:767px){
  .programme-hero{padding-block:40px 64px}.programme-hero__meta{align-items:flex-start;flex-direction:column}.programme-hero__diagram{width:min(72vw,300px)}.programme-hero h1{font-size:clamp(2.75rem,13vw,4.5rem)}
  .curriculum-group summary{min-height:82px;padding:20px;font-size:1.2rem}.curriculum-group__body{padding:0 20px 20px}.curriculum-group__body ul{columns:1}
  .pathway-flow{grid-template-columns:1fr!important;margin-left:10px;padding-left:0;border-top:0;border-left:2px solid var(--brand-green)}.pathway-flow--light{border-color:var(--brand-gold)}.pathway-flow li{padding:0 0 32px 32px}.pathway-flow li::before{top:0;left:0;transform:translate(-50%,0)}.pathway-flow li:not(:last-child)::after{display:none}.pathway-flow li:last-child{padding-bottom:0}
  .balance-bar{grid-template-columns:1fr}.assessment-panel__chart>div{grid-template-columns:1fr;gap:8px}.assessment-panel__chart span{align-items:flex-end}.assessment-panel meter{height:22px}
  .level-pathway,.age-track-grid,.two-path-comparison{grid-template-columns:1fr}.level-pathway li{min-height:190px}.level-pathway h3{margin-top:30px}.responsibility-grid{grid-template-columns:1fr 1fr}.responsibility-grid li{min-height:90px}
  .pilot-panel dl div{grid-template-columns:1fr}.related-links{align-items:flex-start;flex-direction:column}
}
@media (max-width:430px){.programme-track{padding:22px}.responsibility-grid{grid-template-columns:1fr}.programme-hero__diagram{width:76vw}.assessment-panel__chart,.assessment-panel aside{padding:22px}}
@media (prefers-reduced-motion:reduce){.curriculum-group summary>span:last-child{transition-duration:.01ms}}
