/* Course-specific styles, loaded last with a content version in the URL. */
.programme-detail{background:#edf2f8;color:#142b4d}
.programme-detail .pd-hero{background:#142b4d;color:#f5f8fc;padding:32px 0 52px;position:relative;overflow:hidden}
.pd-hero:after{content:"";position:absolute;width:410px;height:410px;right:-190px;top:-210px;border:64px solid #2355dc;border-radius:50%;pointer-events:none}
.pd-hero>.wrap{position:relative;z-index:1}
.pd-back{color:#cad7e9;font-size:12px;text-decoration:none;display:inline-block;padding:8px 0;margin-bottom:30px}
.pd-back:hover{text-decoration:underline}
.programme-detail .pd-hero .eyebrow{color:#d4ee88;margin:0 0 18px;font-size:10px;line-height:1.7;letter-spacing:.13em}
.programme-detail .pd-hero h1{font-size:clamp(32px,3.4vw,50px);line-height:1.1;letter-spacing:-.035em;max-width:1040px;margin:0 0 24px;font-weight:650;overflow-wrap:anywhere}
.programme-detail .pd-lead{font-size:16px;line-height:1.8;color:#d5dfec;max-width:770px;margin:0 0 28px}
.pd-meta{display:flex;flex-wrap:wrap;gap:10px}
.pd-meta span{border:1px solid #476080;border-radius:6px;padding:9px 13px;font-size:11px;color:#e3ebf5}
.pd-meta span:first-child{background:#d4ee88;color:#142b4d;border-color:#d4ee88;font-weight:700}
.programme-detail .pd-shell{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:54px;padding-top:38px;padding-bottom:72px;align-items:start}
.pd-main{min-width:0}
.programme-detail .pd-nav{display:flex;position:static;width:auto;flex-direction:row;align-items:center;gap:5px;flex-wrap:nowrap;overflow-x:auto;border:0;border-bottom:1px solid #b8c8dd;padding:0 0 18px;margin:0 0 6px;background:transparent}
.programme-detail .pd-nav a{font-size:11px;font-weight:700;text-decoration:none;color:#375576;border-radius:5px;padding:10px 12px}
.programme-detail .pd-nav a:first-child,.programme-detail .pd-nav a:hover{background:#214dcc;color:#fff}
.pd-section{padding:31px 0;border-bottom:1px solid #c3d0e1;scroll-margin-top:160px}
.programme-detail .pd-section .eyebrow{font-size:9px;color:#43618b;letter-spacing:.15em;margin:0 0 12px}
.programme-detail .pd-section h2{font-size:27px;line-height:1.2;letter-spacing:-.035em;margin:0 0 20px;font-weight:650}
.programme-detail .pd-section p,.programme-detail .pd-section li{font-size:14px;line-height:1.85;color:#405775}
.pd-section p+p{margin-top:18px}
.pd-section>.text-link{margin-top:22px}
.programme-detail .pd-notice{background:#e3ebf5;border-left:3px solid #214dcc;padding:15px 18px;font-size:12px!important;line-height:1.7!important}
.pd-outcomes{list-style:none;display:grid;gap:12px;padding:0;margin:0}
.pd-outcomes li{display:flex;gap:12px;align-items:baseline}
.pd-outcomes li:before{content:"↗";color:#214dcc;font-weight:700;flex:none}
.pd-module{border:1px solid #bacbe0;border-radius:8px;overflow:hidden;margin-bottom:12px;background:#e6edf7}
.pd-module summary{display:flex;align-items:center;gap:14px;cursor:pointer;list-style:none;padding:18px;font-size:14px;font-weight:700;line-height:1.5}
.pd-module summary::-webkit-details-marker{display:none}
.pd-module summary:hover{background:#dce7f6}
.pd-module .pd-number{color:#214dcc;font-size:11px;flex:none}
.pd-plus{margin-left:auto;font-size:20px;font-weight:400}
.pd-module[open] .pd-plus{transform:rotate(45deg)}
.pd-module[open] summary{border-bottom:1px solid #c1cfe2}
.pd-module ul{padding:17px 26px 19px 48px;margin:0}
.pd-module li+li{margin-top:8px}
.programme-detail .pd-source{font-size:11px!important;line-height:1.7!important;margin-top:22px;color:#526c8b}
.pd-source a{display:inline-block;color:#214dcc;text-underline-offset:3px}
.programme-detail .pd-booking{background:#d4ee88;color:#142b4d;border-radius:12px;padding:28px;position:sticky;top:145px}
.programme-detail .pd-booking>.eyebrow{font-size:9px;letter-spacing:.14em;color:#365523;margin:0 0 18px}
.programme-detail .pd-booking h2{font-size:36px;line-height:1.05;letter-spacing:-.045em;margin:0 0 20px;color:#142b4d}
.programme-detail .pd-booking>p:not(.eyebrow){font-size:13px;line-height:1.8;color:#344d30;margin:0 0 22px}
.programme-detail .pd-booking dl{margin:0 0 25px}
.programme-detail .pd-booking dl>div{border-top:1px solid #a8bf76;padding:13px 0;display:flex;justify-content:space-between;gap:18px}
.programme-detail .pd-booking dt{font-size:11px;color:#3f552e;line-height:1.6;margin:0}
.programme-detail .pd-booking dd{font-size:12px;font-weight:750;line-height:1.6;text-align:right;margin:0;max-width:170px}
.programme-detail .pd-booking .button{background:#142b4d;color:#f3f7fc;min-height:50px;padding:14px 16px;font-size:11px;line-height:1.5;display:flex;justify-content:space-between;border-radius:6px}
.pd-contact{display:block;text-align:center;color:#142b4d;font-size:11px;margin-top:18px;overflow-wrap:anywhere;text-underline-offset:4px}
.pd-team{border-top:1px solid #a8bf76;padding-top:22px;margin-top:25px}
.pd-team strong{font-size:13px}
.pd-team p{font-size:12px;line-height:1.8;margin:10px 0 0;color:#344d30}
.pd-module-body{padding:22px}.programme-detail .pd-module-body h3{font-size:14px;letter-spacing:0;line-height:1.5;margin:22px 0 12px}.programme-detail .pd-module-body>p{margin:0}.pd-module-body ul{padding:0 0 0 20px}.pd-module-body li+li{margin-top:12px}.pd-exercise{background:#d8e7c1;border-left:3px solid #63862d;margin-top:24px;padding:16px 18px}.programme-detail .pd-exercise h3{margin:0 0 8px}.programme-detail .pd-exercise p{font-size:13px;line-height:1.8;margin:0}.pd-references{padding:24px 0}.pd-references ul{padding-left:18px}.pd-references li{margin:8px 0}
.programme-detail a:focus-visible,.pd-module summary:focus-visible{outline:3px solid #2355dc;outline-offset:4px}
.pd-hero a:focus-visible{outline-color:#d4ee88}
@media(min-width:1500px){.programme-detail .wrap{max-width:1180px}}
@media(max-width:1000px){.programme-detail .pd-shell{grid-template-columns:minmax(0,1fr) 290px;gap:28px}.programme-detail .pd-booking{padding:24px}}
@media(max-width:760px){.programme-detail .pd-shell{grid-template-columns:1fr;padding-top:24px;gap:30px;padding-bottom:42px}.programme-detail .pd-booking{position:static}.programme-detail .pd-hero{padding:20px 0 34px}.pd-back{margin-bottom:24px}.programme-detail .pd-hero h1{font-size:32px}.programme-detail .pd-lead{font-size:14px}.pd-meta{gap:8px}.pd-meta span{font-size:10px}.pd-nav{gap:2px;flex-wrap:nowrap;overflow:auto}.pd-nav a{flex:none;font-size:10px;padding:10px 9px}.pd-section{padding:27px 0;scroll-margin-top:110px}.programme-detail .pd-section h2{font-size:25px}.pd-module summary{font-size:13px;padding:16px;gap:10px}.programme-detail .pd-booking h2{font-size:32px}.programme-detail .pd-booking dd{max-width:190px}}
@media(prefers-reduced-motion:reduce){.programme-detail *{scroll-behavior:auto;animation:none;transition:none}}
@media print{.pd-hero{background:none!important;color:#000!important}.pd-booking,.pd-nav{display:none!important}.programme-detail .pd-shell{display:block}.pd-module::details-content{display:block!important}}
