*{box-sizing:border-box}:root{--bg:#f4f2eb;--ink:#27382e;--muted:#666d60;--line:#d3d7ca;--accent:#954832;--card:#fffef9;color:var(--ink);background:var(--bg);font-family:Arial,Helvetica,sans-serif}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit;color:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.skip-link{position:absolute;left:-10000px;z-index:20;background:var(--bg);padding:1rem}.skip-link:focus{left:1rem;top:1rem}.wrap{max-width:1280px;margin:auto;padding:0 5vw}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.8rem 0;border-bottom:1px solid var(--line)}.brand{font:1.35rem Georgia,serif;text-decoration:none}nav{display:flex;gap:clamp(.8rem,3vw,1.5rem);flex-wrap:wrap;font-size:.85rem}nav a{text-decoration:none}nav [aria-current=page]{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:6px}.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:4rem;padding:5rem 0 3.5rem;align-items:end}.eyebrow{text-transform:uppercase;font-size:.7rem;letter-spacing:.17em;color:var(--accent)}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(3rem,6.4vw,5.6rem);line-height:1.05;letter-spacing:-.05em;margin:1rem 0 0}h2{font-size:2rem;line-height:1.25;margin:0}h3{font-size:1.5rem}.intro{color:var(--muted);line-height:1.8}.hero-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.5rem;font-size:.85rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;border:1px solid var(--line);border-radius:3px;padding:.8rem 1rem;background:transparent;color:var(--ink);text-decoration:none;font-size:.85rem;cursor:pointer;line-height:1.4}.button:hover{background:#e3e8da}.button.primary{background:var(--ink);border-color:var(--ink);color:white}.button.primary:hover{background:#3b4d40}.research-summary{display:grid;grid-template-columns:repeat(3,1fr) 1.6fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 0;gap:1rem}.research-summary p{display:flex;flex-direction:column;gap:.5rem;margin:.5rem 0}.research-summary strong{font:2rem Georgia,serif}.research-summary span{font-size:.8rem;color:var(--muted)}.research-summary .checked{align-items:flex-end;justify-content:center}.research-summary .checked strong{font-size:1.2rem}.research-summary .checked .eyebrow{font-size:.65rem;color:var(--accent)}.research-note{margin:2rem 0 3rem;padding:1.1rem 1.5rem;background:#e8ecdf;border-left:3px solid #8b967c;font-size:.88rem;line-height:1.8}.research-note p{margin:.5rem 0}.section-heading{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:1rem}.section-heading p{font-size:.8rem;color:var(--muted)}.filters{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(150px,1fr) minmax(160px,1.15fr) auto;gap:1rem;align-items:end;margin:1.5rem 0 2rem}.filters label{display:block;font-size:.8rem;min-width:0}.filters input,.filters select{display:block;width:100%;min-width:0;margin-top:.5rem;padding:.85rem;border:1px solid #bac2b1;background:var(--card);border-radius:3px}.filters .button{padding:.85rem 1rem}.programme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:1.5rem}.programme-card{background:var(--card);border:1px solid var(--line);padding:1.7rem;min-width:0;align-self:start;overflow-wrap:anywhere}.card-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem}.number{font:italic 1.7rem Georgia,serif;color:#74826a}.tag{font-size:.65rem;letter-spacing:.06em;text-transform:uppercase;margin:0;text-align:right;color:var(--muted);max-width:80%}.first-priority{color:#315f40;font-weight:bold}.programme-card h2{font-size:1.65rem}.programme-name{font-size:1rem;line-height:1.5;margin:.6rem 0}.location{font-size:.8rem;color:var(--muted);line-height:1.6;margin:.5rem 0 1.4rem}.essentials{margin:0}.essentials div{margin:1rem 0}dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:.4rem}dd{font-size:.85rem;line-height:1.65;margin:0}.window{background:#f0f1e8;padding:1rem}.window dd{color:var(--ink)}.card-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1.5rem 0}.programme-link{font-size:.8rem}details{border-top:1px solid var(--line);padding-top:1rem}summary{font-size:.85rem;line-height:1.6;cursor:pointer}.requirements div{margin:1rem 0}.sources{font-size:.75rem;line-height:2}.no-results{border:1px dashed #b5bdab;padding:2.5rem;margin:1.5rem 0;text-align:center}.no-results p{color:var(--muted);font-size:.9rem}.next-steps{border-top:1px solid var(--line);padding:3rem 0 2rem;margin-top:4rem;display:grid;grid-template-columns:1fr 1.6fr;gap:3rem}.next-steps h2{font-size:2.2rem}.next-steps ol{padding-left:1.3rem;margin:0 0 1.5rem;line-height:1.8;font-size:.9rem}.next-steps li{padding-left:.5rem;margin-bottom:.7rem}.small,.coverage{font-size:.8rem;color:var(--muted);line-height:1.8}.coverage{margin:0 0 3rem;max-width:900px}footer{border-top:1px solid var(--line);padding:2rem 0;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.75rem;color:var(--muted)}footer>span{display:flex;gap:1.4rem;flex-wrap:wrap}
@media(max-width:850px){.hero{grid-template-columns:1fr;gap:1rem;padding:3rem 0}.filters{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.programme-grid{grid-template-columns:1fr}.next-steps{grid-template-columns:1fr;gap:1.5rem}.research-summary .checked strong{font-size:1rem}}
@media(max-width:500px){.research-summary{grid-template-columns:repeat(3,1fr)}.research-summary .checked{grid-column:1/-1;align-items:flex-start;border-top:1px solid var(--line);padding-top:1rem}.filters{grid-template-columns:1fr}.search-field{grid-column:auto}.programme-card{padding:1.25rem}.research-note{padding:1rem}.hero-actions{align-items:flex-start;flex-direction:column}.programme-card h2{font-size:1.5rem}}
@media print{body{background:white;color:black}.wrap{max-width:none;padding:0}.site-header nav,.filters,.reset-all,.hero-actions,footer{display:none!important}.hero{padding:1rem 0;display:block}h1{font-size:30pt}.programme-grid{display:block}.programme-card{break-inside:avoid;margin-bottom:1rem}.button.primary{background:transparent;color:black}.next-steps{display:block;break-before:page}.research-note{background:transparent}.programme-card a{color:black}}
