/* Homepage programme finder only; retain the shared site design elsewhere. */
#supporters .programme-picker { margin:0 0 56px; }
#supporters .programme-picker-heading { display:grid; grid-template-columns:1.1fr 1fr; gap:48px; align-items:center; margin-bottom:36px; }
#supporters .programme-eyebrow { margin:0 0 14px; color:#c91c3c; font-size:12px; font-weight:700; letter-spacing:2px; }
#supporters .programme-picker h2 { margin:0; padding:0; font-size:clamp(34px,3.7vw,52px); font-weight:800; line-height:1.1; letter-spacing:-1.3px; text-align:left; text-transform:none; }
#supporters .programme-picker h2 span { color:#d91d40; }
#supporters .programme-intro { max-width:460px; margin:0 0 0 auto; color:#545d70; font-size:17px; line-height:1.8; }
#supporters .programme-group-label { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin:0 0 14px; }
#supporters .programme-group-label p { margin:0; color:#0e1b4d; font-weight:700; font-size:16px; }
#supporters .programme-group-label > span { color:#646d7e; font-size:13px; }
#supporters .programme-children-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
#supporters a.programme-tile { display:flex; flex-direction:column; min-width:0; padding:25px 23px 20px; border:1px solid #e0e5f0; border-radius:14px; background:#fff; box-shadow:0 4px 18px rgba(14,27,77,.035); color:#2f3138; text-decoration:none; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
#supporters a.programme-tile:hover { transform:translateY(-4px); border-color:#e99aad; box-shadow:0 12px 28px rgba(14,27,77,.09); }
#supporters a.programme-tile:focus-visible,#supporters .programme-help a:focus-visible { outline:3px solid #d91d40; outline-offset:4px; }
#supporters .programme-tile-top { display:flex; gap:8px; justify-content:space-between; align-items:center; margin-bottom:24px; }
#supporters .programme-age { display:inline-block; padding:6px 9px; border-radius:6px; background:#fff0f3; color:#a71330; font-size:11px; line-height:1.3; font-weight:700; }
#supporters .programme-tile-top i { color:#c52244; font-size:23px; line-height:1; }
#supporters .programme-tile h3 { color:#0e1b4d; font-size:22px; font-weight:800; line-height:1.2; margin:0 0 12px; letter-spacing:-.35px; }
#supporters .programme-strap { color:#303e5f; font-size:13px; font-weight:700; margin:0 0 10px; }
#supporters .programme-description { color:#596274; font-size:14px; line-height:1.7; margin:0 0 24px; }
#supporters .programme-link { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:16px; border-top:1px solid #e9edf5; color:#b41a38; font-size:13px; font-weight:700; }
#supporters .programme-link > span { font-size:20px; line-height:1; }
#supporters .programme-second-label { margin-top:28px; }
#supporters .programme-options-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
#supporters a.programme-option { flex-direction:row; gap:16px; padding:24px; }
#supporters .programme-option-copy { min-width:0; display:flex; flex-direction:column; flex:1; }
#supporters .programme-option-icon { width:36px; height:36px; flex:0 0 36px; display:grid; place-items:center; border-radius:10px; color:#0e1b4d; background:#edf0f8; font-size:19px; }
#supporters .programme-stage { display:block; margin:0 0 9px; color:#626a7b; font-size:11px; font-weight:600; }
#supporters .programme-option h3 { font-size:20px; }
#supporters .programme-option .programme-description { margin-bottom:16px; }
#supporters a.programme-supported { background:#0e1b4d; border-color:#0e1b4d; }
#supporters .programme-supported h3,#supporters .programme-supported .programme-link { color:#fff; }
#supporters .programme-supported .programme-description,#supporters .programme-supported .programme-stage { color:#d1d8ed; }
#supporters .programme-supported .programme-option-icon { background:rgba(255,255,255,.12); color:#fff; }
#supporters .programme-supported .programme-link { border-color:rgba(255,255,255,.18); }
#supporters .programme-help { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:24px; padding:20px 24px; background:#eceff8; border-radius:10px; }
#supporters .programme-help strong { color:#0e1b4d; font-size:14px; }
#supporters .programme-help div > span { color:#596274; font-size:14px; margin-left:12px; }
#supporters .programme-help a { color:#ac1538; font-weight:700; font-size:14px; text-decoration:none; padding:6px 0; }
#supporters .programme-help a > span { margin-left:14px; }
@media(max-width:1199px){#supporters .programme-children-grid{grid-template-columns:repeat(2,minmax(0,1fr));}#supporters .programme-options-grid{grid-template-columns:1fr;}#supporters .programme-option .programme-link{align-self:flex-start;gap:30px;}#supporters .programme-option .programme-description{margin-bottom:12px;}}
@media(max-width:767px){#supporters .programme-picker-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px;}#supporters .programme-intro{margin:0;max-width:none;font-size:15px;}#supporters .programme-children-grid{gap:12px;}#supporters a.programme-tile{padding:20px 16px;}#supporters .programme-tile h3{font-size:20px;}#supporters .programme-tile-top{margin-bottom:20px;}#supporters .programme-tile-top i{display:none;}#supporters .programme-help{align-items:flex-start;flex-direction:column;gap:10px;}#supporters .programme-help div > span{display:block;margin:5px 0 0;}#supporters .programme-group-label>span{display:none;}}
@media(max-width:379px){#supporters .programme-children-grid{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){#supporters a.programme-tile{transition:none;}#supporters a.programme-tile:hover{transform:none;}}
