:root{--bg:#f4f0e6;--ink:#1a1713;--accent:#0b5f4b;--muted:#5a544a;--surface:#fffcf6;--line:#d8cfbf;color-scheme:light;font-family:Source Sans\ 3,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(circle at 85% 10%,#d9ebe3 0,transparent 35%),linear-gradient(165deg,#f8f3ea,#ebe3d4);min-height:100%}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{display:flex;flex-direction:column;min-height:100vh}a{color:var(--accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.skip-link{position:absolute;left:-999px;top:0;background:var(--surface);padding:.5rem 1rem;z-index:20}.skip-link:focus{left:.75rem;top:.75rem}.site-header{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent)}.brand{display:grid;grid-gap:.15rem;gap:.15rem;text-decoration:none;color:inherit}.brand:hover .brand-mark{text-decoration:underline}.brand-mark{font-family:Fraunces,Georgia,serif;font-size:1.6rem;font-weight:700;color:var(--accent)}.brand-sub{font-size:.85rem;color:var(--muted)}.site-header nav{display:flex;flex-wrap:wrap;gap:1rem}.site-header nav a{text-decoration:none;font-weight:600}.hero{flex:1 1;width:min(44rem,calc(100% - 3rem));margin:0 auto;padding:4rem 0 3rem}.eyebrow{text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;color:var(--muted);margin:0 0 .75rem}.hero h1{font-family:Fraunces,Georgia,serif;font-size:clamp(2.8rem,8vw,4.5rem);margin:0 0 .75rem;color:var(--accent);line-height:1.05}.lede{font-size:1.15rem;max-width:36rem;color:var(--muted)}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}.cta{display:inline-block;text-decoration:none;background:var(--accent);color:#fff;font-weight:700;padding:.75rem 1.1rem}.cta.secondary{background:transparent;color:var(--accent);border:1px solid var(--accent)}.site-footer{padding:1rem 1.5rem 1.5rem;color:var(--muted);border-top:1px solid var(--line);font-size:.9rem}.footer-inner{width:min(56rem,100%);margin:0 auto;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:flex-start}.footer-inner nav{display:flex;flex-wrap:wrap;gap:.85rem 1.25rem}.footer-inner nav a{font-weight:600;text-decoration:none}.prose h1{font-size:clamp(2rem,5vw,2.75rem);color:var(--accent);margin:0 0 .75rem}.prose h1,.prose h2{font-family:Fraunces,Georgia,serif}.prose h2{font-size:1.35rem;margin:1.75rem 0 .5rem}.prose .lede{margin-top:0}.prose ol,.prose ul{padding-left:1.2rem}.faq-list{display:grid;grid-gap:.75rem;gap:.75rem;margin-top:1.5rem}.faq-item{background:var(--surface);border:1px solid var(--line);padding:.85rem 1rem}.faq-item summary{font-weight:700;cursor:pointer}.faq-item p{margin:.75rem 0 0;color:var(--muted)}.apply-form .cta{border:0;cursor:pointer;justify-self:start}.apply-form .cta:disabled{opacity:.65;cursor:not-allowed}.page{flex:1 1;width:min(44rem,calc(100% - 3rem));margin:0 auto;padding:2.5rem 0}.filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:1.5rem 0;align-items:end}.filters label{display:grid;grid-gap:.35rem;gap:.35rem;font-size:.9rem;font-weight:600}.filters button,.filters input,.filters select{padding:.55rem .65rem;border:1px solid var(--line);background:#fff;font:inherit}.filters button{background:var(--accent);color:#fff;border:0;font-weight:700;cursor:pointer}.programme-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:1rem;gap:1rem}.programme-card{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:1px solid var(--line);background:var(--surface)}.programme-card h2{margin:.25rem 0;font-family:Fraunces,Georgia,serif;font-size:1.35rem}.programme-card a{text-decoration:none}.programme-meta{display:grid;grid-gap:.5rem;gap:.5rem;align-content:start;text-align:right}.detail-block{margin-top:1.75rem}.detail-block h2{font-family:Fraunces,Georgia,serif;margin-bottom:.5rem}.cohort-list,.detail-facts{padding-left:1.1rem}.apply-note{margin-top:.75rem;font-size:.9rem}.apply-wizard{margin-top:1.5rem;display:grid;grid-gap:1rem;gap:1rem}.wizard-steps{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;list-style:none;padding:0;margin:0;color:var(--muted);font-size:.95rem}.wizard-steps .active{color:var(--accent);font-weight:600}.apply-form{grid-gap:1rem;gap:1rem;padding:1.25rem;background:var(--surface)}.apply-form,.apply-form fieldset{display:grid;border:1px solid var(--line)}.apply-form fieldset{padding:1rem;grid-gap:.75rem;gap:.75rem}.apply-form legend{font-family:Fraunces,Georgia,serif;padding:0 .35rem}.apply-form label{display:grid;grid-gap:.35rem;gap:.35rem;font-size:.95rem}.apply-form input,.apply-form select,.apply-form textarea{font:inherit;padding:.55rem .65rem;border:1px solid var(--line);background:#fff}.apply-form .checkbox{display:flex;align-items:flex-start;gap:.6rem}.apply-form .checkbox input{margin-top:.25rem}.form-row{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.form-error{color:#8a1f1f;background:#f8e8e8;border:1px solid #e2b4b4;padding:.75rem 1rem}.apply-success{padding:1.25rem;background:var(--surface);border:1px solid var(--line)}@media (max-width:720px){.site-header{flex-direction:column;align-items:flex-start}}