:root{--aub:#26112f;--aub2:#40194c;--mag:#e63a83;--mint:#8ff5cf;--cream:#fff8ed;--ink:#241827;--muted:#6d5c70;--line:#e4d8e2;color:var(--ink);background:var(--cream);font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;line-height:1.65}a{color:inherit}.skip{position:absolute;top:-5rem}.skip:focus{top:1rem}.site-header{background:var(--aub);color:#fff;justify-content:space-between;align-items:center;min-height:76px;padding:1rem max(20px,50% - 580px);display:flex}.brand{font-size:1.25rem;text-decoration:none}.brand b{background:var(--mag);border-radius:50%;place-items:center;width:40px;height:40px;margin-right:.5rem;display:inline-grid}.site-header nav{align-items:center;gap:1.4rem;display:flex}.site-header nav a{text-decoration:none}.button{background:var(--mint);color:var(--aub);border-radius:999px;padding:.7rem 1rem;font-weight:800}.hero{background:radial-gradient(circle at 85% 20%,#7b285f 0,transparent 30%),var(--aub);color:#fff;padding:clamp(4rem,10vw,8rem) 20px}.hero>div,.layout,.cta,.simple{width:min(1100px,100% - 40px);margin:auto}.hero h1{max-width:900px;margin:.4rem 0 1.5rem;font-size:clamp(3rem,8vw,6rem);line-height:.96}.hero>div>p:not(.eyebrow){color:#eaddec;max-width:720px;font-size:1.25rem}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--mint);font-size:.72rem;font-weight:900}.layout{grid-template-columns:220px 1fr;gap:4rem;padding:4rem 0;display:grid}.layout aside{align-self:start;gap:.6rem;display:grid;position:sticky;top:1rem}.layout aside a{color:var(--muted);font-size:.88rem}.prose{max-width:760px;font-size:1.08rem}.prose h2{margin-top:3.5rem;font-size:2rem;line-height:1.1}.prose blockquote,.program-card{border-radius:18px;margin:2rem 0;padding:1.5rem}.prose blockquote{border-left:5px solid var(--mag);background:#fbe1ed}.program-card{background:var(--aub2);color:#fff;box-shadow:8px 8px 0 var(--mint)}.program-card span{color:var(--mint);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.program-card strong{font-size:1.5rem;display:block}.cta{background:var(--aub);color:#fff;grid-template-columns:1fr 1fr;gap:4rem;width:100%;max-width:none;padding:4rem max(20px,50% - 550px);display:grid}.widget{color:var(--ink);background:#fff;border-radius:20px;padding:1.5rem}.mount{min-height:140px}.simple{max-width:800px;padding:5rem 0}footer{color:#fff;background:#160b1b;width:100%;padding:3rem 20px 7.25rem}.footer-inner{justify-content:space-between;align-items:flex-start;gap:3rem;width:min(1100px,100%);margin:auto;display:flex}.footer-brand{max-width:360px}.footer-brand p{color:#eaddec;margin:.5rem 0 0}.footer-inner nav{flex-wrap:wrap;gap:.75rem 1.5rem;display:flex}.footer-inner nav a{text-decoration:none}.footer-inner nav a:hover{text-decoration:underline}@media (width<=760px){.site-header{align-items:flex-start}.site-header nav{gap:.4rem;display:grid}.layout,.cta{grid-template-columns:1fr}.layout aside{position:static}.hero h1{font-size:clamp(2.7rem,13vw,4.5rem)}.footer-inner{gap:1.5rem;display:grid}.footer-inner nav{gap:.55rem;display:grid}}.widget-load{background:var(--mag);color:#fff;min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:999px;padding:.75rem 1.2rem;font-weight:800}.widget-load:disabled{background:var(--aub2);cursor:default}.mount{min-height:720px;margin-top:1.25rem;overflow:hidden}.mount[hidden]{display:none}.mount iframe{border:0;display:block;width:100%!important;min-height:720px!important;max-height:980px!important}.widget-status,.widget-error{border-left:4px solid var(--mag);background:#fff4f8;padding:1rem}@media (width<=760px){.mount,.mount iframe{min-height:820px!important;max-height:920px!important}}.floating-postcode-cta{z-index:80;color:#fff;backdrop-filter:blur(12px);background:#101b2cf2;border:1px solid #fff3;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;width:min(760px,100% - 28px);padding:.7rem .75rem .7rem 1.1rem;display:flex;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 16px 45px #071a3355}.floating-postcode-cta>span{font-size:.9rem;font-weight:750}.floating-postcode-cta>a{color:#101820;background:#f0b429;border-radius:9px;flex:none;padding:.72rem 1rem;font-weight:900;text-decoration:none}.floating-postcode-cta>a:hover{filter:brightness(1.05)}@media (width<=620px){.floating-postcode-cta>span{display:none}.floating-postcode-cta>a{text-align:center;width:100%}}
