/* DONDERS V4 · programme editorial system. Loaded after existing design system. */
html{scroll-behavior:smooth}
.don-program-page{background:#fffefa;color:#254a3c}
.don-program-page *{box-sizing:border-box}
.don-program-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding-top:27px;padding-bottom:13px;font-size:.8rem;color:#6d8375}
.don-program-breadcrumb a{color:#446a55;text-decoration:none}
.don-program-breadcrumb a:hover{text-decoration:underline}
.don-program-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.91fr);align-items:stretch;gap:clamp(18px,4vw,75px);padding-top:34px;padding-bottom:65px;min-height:550px}
.don-program-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:25px 0 25px 0}
.don-program-hero .eyebrow,.don-program-chapter .eyebrow{color:#5b846a;font-size:.7rem;letter-spacing:.21em;font-weight:750}
.don-program-hero h1{font-family:var(--serif,Georgia,serif);color:#214838;font-size:clamp(3.5rem,6.3vw,6.55rem);font-weight:400;letter-spacing:-.034em;line-height:1.055;margin:21px 0 25px;max-width:820px;overflow-wrap:break-word}
.don-program-lead{font-size:clamp(1.04rem,1.5vw,1.38rem);line-height:1.65;color:#61766a;max-width:540px;margin:0 0 28px}
.don-program-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px}
.don-prog-primary,.don-prog-secondary,.don-prog-light{display:inline-flex;align-items:center;justify-content:center;gap:17px;min-height:46px;padding:13px 20px;border-radius:2px;font-size:.88rem;font-weight:750;text-decoration:none;transition:filter .2s,background .2s}
.don-prog-primary{background:#254d3b;color:#fff!important;border:1px solid #254d3b}
.don-prog-primary:hover{filter:brightness(1.15)}
.don-prog-secondary{color:#254d3b;border:1px solid #a9b8a9;background:transparent}
.don-prog-secondary:hover{background:#ebf1eb}
.don-program-safety-line{color:#789081;font-size:.76rem;margin:20px 0 0;letter-spacing:.025em}
.don-program-hero-image{align-self:center;position:relative;margin:0;width:100%;background:#e0e8dc;overflow:hidden;border-radius:3px;min-height:400px;max-height:560px;aspect-ratio:1.1/1}
.don-program-featured{display:block;width:100%;height:100%;min-height:400px;max-height:560px;object-fit:cover;object-position:center center}
.don-program-hero-image figcaption{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(0deg,rgba(19,45,34,.80),transparent);color:#fff;padding:37px 18px 14px;font-size:.68rem;line-height:1.45;letter-spacing:.03em}
.don-program-strip{border-block:1px solid #dbe4dc;background:#eef2e9}
.don-program-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-top:18px;padding-bottom:18px;font-size:.78rem;color:#5e7765}
.don-program-strip .wrap span:first-child{font-weight:850;letter-spacing:.14em;font-size:.69rem}
.don-program-strip a{font-weight:750;color:#2e664c;text-decoration:none}
.don-program-main{display:grid;grid-template-columns:minmax(190px,.31fr) minmax(0,1fr);gap:clamp(28px,8vw,135px);padding-top:74px;padding-bottom:95px}
.don-program-chapter-nav{position:sticky;top:26px;align-self:start;display:grid;gap:0;border-top:1px solid #dce4d9}
.admin-bar .don-program-chapter-nav{top:65px}
.don-program-chapter-nav .eyebrow{margin:21px 0 13px;font-size:.65rem;letter-spacing:.16em}
.don-program-chapter-nav a{display:flex;gap:13px;align-items:baseline;padding:12px 4px;border-bottom:1px solid #e6ebe4;text-decoration:none;color:#456352;font-size:.88rem;line-height:1.45}
.don-program-chapter-nav a:hover{color:#173d2e;background:#f4f7f1}
.don-program-chapter-nav small{font-size:.65rem;color:#8aa192;min-width:17px;font-variant-numeric:tabular-nums}
.don-program-chapter{scroll-margin-top:100px;padding-bottom:46px;margin-bottom:46px;border-bottom:1px solid #dce3d8}
.don-program-chapter:last-child{border-bottom:0;margin-bottom:0}
.don-chapter-number{font-size:.73rem;letter-spacing:.2em;color:#789482;font-weight:800;margin-bottom:18px}
.don-program-chapter h2{font-family:var(--serif,Georgia,serif);font-size:clamp(2.25rem,3.6vw,4rem);font-weight:400;line-height:1.13;color:#254838;margin:0 0 19px}
.don-program-prose{max-width:780px;font-size:clamp(1.02rem,1.28vw,1.21rem);line-height:1.88;color:#586f60}
.don-program-prose p{margin:0 0 16px}
.don-program-editorial{padding:25px;background:#f6f7f2}
.don-safeguard-note{margin-top:27px;background:#eff4ed;border-left:3px solid #5f8069;padding:21px 23px;color:#335742}
.don-safeguard-note p{font-size:.91rem;margin:6px 0 0;line-height:1.6}
.don-evidence-note{font-size:.85rem;color:#667d6e}
.don-layer-pills{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 29px}
.don-layer-pills span{padding:8px 12px;border:1px solid #cbdac9;border-radius:100px;background:#f0f4ee;font-size:.76rem;color:#48644e}
.don-related-section{background:#f0f3eb;padding:84px 0 97px;scroll-margin-top:110px}
.don-related-heading{margin-bottom:28px}
.don-related-heading h2{font-family:var(--serif,Georgia,serif);font-size:clamp(2.5rem,4vw,4.5rem);font-weight:400;line-height:1.14;margin:15px 0 10px;color:#244c3b}
.don-related-heading p:last-child{color:#678071;max-width:680px}
.don-program-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.don-program-related-card{background:#fffefa;padding:29px;min-height:236px;text-decoration:none;color:#2a4c3b;border:1px solid #dde5d8;display:flex;flex-direction:column;align-items:flex-start}
.don-program-related-card:hover{border-color:#6a916e}
.don-program-related-card h3{font-family:var(--serif,Georgia,serif);font-size:1.8rem;font-weight:400;margin:15px 0 12px;line-height:1.2}
.don-program-related-card p{color:#718074;font-size:.89rem;line-height:1.65;margin:0 0 18px}
.don-related-more{margin-top:auto;border-bottom:1px solid currentColor;font-size:.82rem;font-weight:750}
.don-related-empty{background:#fffefa;border:1px solid #dce4da;padding:35px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.don-related-empty p{max-width:690px;margin:0;color:#60776a;line-height:1.75}
.don-related-empty a{white-space:nowrap;color:#295a40;font-weight:750}
.don-program-ending{background:#214638;color:#f7f7ed;padding:70px 0 85px}
.don-program-ending-inner{display:flex;gap:35px;align-items:end;justify-content:space-between}
.don-program-ending h2{font-family:var(--serif,Georgia,serif);font-size:clamp(2.6rem,4vw,4.8rem);font-weight:400;margin:12px 0}
.don-program-ending p{color:#d9e4d8;max-width:580px}
.don-program-ending .eyebrow{color:#a6c5ab}
.don-program-ending-buttons{display:flex;gap:12px;flex-wrap:wrap}
.don-program-ending .don-prog-primary{background:#fffefa;border-color:#fffefa;color:#254d3b!important}
.don-prog-light{border:1px solid #d9e4d8;color:#fff!important}
/* Compact generic page and article headers to remove the excessive whitespace seen on screen. */
.page-hero.wrap{padding-top:clamp(55px,6vw,95px);padding-bottom:clamp(45px,6vw,85px)}
.page-hero.wrap h1{font-size:clamp(3.6rem,6vw,6.6rem);line-height:1.08;margin:22px 0 23px}
.page-hero.wrap>p:not(.eyebrow){font-size:clamp(1.02rem,1.4vw,1.25rem);line-height:1.65}
.wide-photo{height:auto;max-height:490px;overflow:hidden}
.wide-photo img{display:block;height:clamp(270px,34vw,490px)!important;width:100%;object-fit:cover;object-position:center 42%}
.single-layout{margin-top:52px}
.don-record-card .don-record-image{height:245px;object-fit:cover}
/* Clearer programme editing fields for nontechnical editors */
.don-program-editor{padding:12px 10px}
.don-program-editor>p{background:#edf5ec;padding:14px 16px;border-left:3px solid #52825d;line-height:1.65}
.don-editor-module{margin:18px 0 24px;border-bottom:1px solid #e0e4df;padding-bottom:20px}
.don-editor-module label{display:block;margin-bottom:9px;color:#25493a;font-size:14px}
.don-editor-module textarea{box-sizing:border-box;width:100%;font:inherit;font-size:14px;line-height:1.7;padding:12px;border:1px solid #b8c9b7;border-radius:5px;background:#fff}
.don-editor-module small{display:block;color:#647666;margin-top:6px}
@media(max-width:1020px){
 .don-program-hero{gap:25px;grid-template-columns:1fr 1fr;min-height:430px}
 .don-program-hero h1{font-size:clamp(3.25rem,5.8vw,5rem)}
 .don-program-main{grid-template-columns:210px 1fr;gap:34px}
 .don-program-hero-image,.don-program-featured{min-height:340px}
}
@media(max-width:760px){
 .don-program-breadcrumb{padding-top:20px}
 .don-program-hero{display:flex;flex-direction:column;gap:12px;padding-top:12px;padding-bottom:33px;min-height:0}
 .don-program-hero-copy{padding:20px 0 16px}
 .don-program-hero h1{font-size:clamp(3.25rem,10vw,5rem);margin:15px 0 18px}
 .don-program-lead{font-size:1.03rem;margin-bottom:22px}
 .don-program-hero-image{height:290px;min-height:290px;max-height:360px;aspect-ratio:auto}
 .don-program-featured{height:100%;min-height:290px;max-height:none}
 .don-program-strip .wrap{justify-content:flex-start;flex-wrap:wrap;gap:8px 16px;font-size:.74rem}
 .don-program-main{display:block;padding-top:30px;padding-bottom:45px}
 .don-program-chapter-nav{position:static;display:flex;overflow-x:auto;gap:8px;margin-bottom:28px;padding-bottom:8px;border-top:0;-webkit-overflow-scrolling:touch}
 .don-program-chapter-nav .eyebrow{display:none}
 .don-program-chapter-nav a{flex-shrink:0;white-space:nowrap;border:1px solid #dce5d9;border-radius:50px;padding:9px 12px;font-size:.75rem}
 .don-program-chapter-nav small{display:none}
 .don-program-chapter{padding-bottom:32px;margin-bottom:34px;scroll-margin-top:70px}
 .don-program-chapter h2{font-size:clamp(2.1rem,8vw,3.4rem)}
 .don-program-prose{font-size:1rem}
 .don-related-section{padding:52px 0 68px}
 .don-program-related-grid{grid-template-columns:1fr}
 .don-related-empty{display:block;padding:24px}
 .don-related-empty a{display:inline-block;margin-top:18px}
 .don-program-ending{padding:55px 0}
 .don-program-ending-inner{display:block}
 .don-program-ending-buttons{margin-top:24px}
 .page-hero.wrap{padding-top:49px;padding-bottom:40px}
 .page-hero.wrap h1{font-size:clamp(3rem,10vw,4.5rem)}
 .wide-photo img{height:clamp(235px,58vw,400px)!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* v4.1 — staff-only shortcut from the public programme page into its actual CMS record. */
.don-program-admin-edit{display:inline-block;margin-top:16px;font-size:.83rem;color:#2f6d50;font-weight:750;text-decoration:underline;text-underline-offset:4px}
.don-program-admin-edit:hover{color:#193c29}
