:root{--green:#17213f;--green2:#10182f;--yellow:#f4c5d5;--cream:#fff7fa;--ink:#18213a;--coral:#c84f7b;--white:#fff;--sans:"DM Sans",sans-serif;--serif:"Fraunces",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.6 var(--sans);background:#fff}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:#fff;position:relative;z-index:20}.brand{display:flex;gap:12px;align-items:center;line-height:1}.brand>span:last-child{display:flex;flex-direction:column;gap:5px}.brand strong{font:700 1.28rem/1 var(--serif);letter-spacing:-.02em}.brand small{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;font-weight:700}.brand-mark{width:42px;height:42px;border-radius:50% 50% 50% 10%;display:grid;place-items:center;background:var(--green);transform:rotate(-8deg)}.brand-mark i{width:12px;height:22px;border:3px solid var(--yellow);border-top:0;border-left:0;transform:rotate(38deg);display:block}nav{display:flex;align-items:center;gap:2.2rem;font-size:.92rem;font-weight:600}nav a:not(.nav-cta):hover{color:var(--coral)}.nav-cta{background:var(--yellow);padding:12px 20px;border-radius:100px}.menu-toggle{display:none;border:0;background:transparent}.hero{min-height:680px;display:grid;grid-template-columns:46% 54%;background:var(--cream);overflow:hidden}.hero-copy{padding:86px 4vw 60px 8vw;position:relative;z-index:2}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.17em;font-size:.73rem;font-weight:700}.eyebrow{display:flex;align-items:center;gap:9px;color:var(--green)}.eyebrow span{width:8px;height:8px;border-radius:50%;background:var(--coral)}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:.98;margin:24px 0}h1{font-size:clamp(3.8rem,6.2vw,7rem)}h1 em,h2 em{font-weight:600;color:var(--coral)}.hero-copy>p{max-width:510px;font-size:1.12rem;color:#566078}.hero-actions{display:flex;align-items:center;gap:28px;margin:35px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:15px 24px;border-radius:100px;border:0;font:700 .92rem var(--sans);cursor:pointer}.button span{font-size:1.25rem}.primary{background:var(--green);color:#fff}.button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #17213f2b}.text-link{font-weight:700;border-bottom:1px solid;padding:8px 0}.trust-row{display:flex;align-items:center;gap:15px}.trust-row p{font-size:.76rem;line-height:1.4}.avatars{display:flex}.avatars span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;margin-left:-8px;border:3px solid var(--cream);background:var(--yellow);font-weight:700;font-size:.72rem}.avatars span:nth-child(2){background:var(--coral);color:#fff}.avatars span:nth-child(3){background:var(--green);color:#fff}.hero-visual{position:relative;padding:38px 0 0 30px}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:220px 0 0 0;position:relative;z-index:2}.sunburst{position:absolute;right:5%;top:-40px;width:200px;height:200px;background:repeating-conic-gradient(var(--yellow) 0 8deg,transparent 8deg 18deg);border-radius:50%;opacity:.7}.floating-card{position:absolute;left:-35px;bottom:48px;z-index:3;background:#fff;padding:18px 22px;border-radius:18px;box-shadow:0 15px 35px #17213f33;display:flex;gap:12px;align-items:center;line-height:1.3}.spark{font-size:1.8rem;color:var(--coral)}.dots{position:absolute;z-index:4;width:88px;height:62px;right:5vw;bottom:40px;background-image:radial-gradient(var(--yellow) 3px,transparent 4px);background-size:17px 17px}.marquee{background:var(--yellow);overflow:hidden;white-space:nowrap;padding:13px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.marquee div{display:flex;justify-content:space-around}.marquee i{font-style:normal;color:var(--coral)}.section{padding:110px 8vw}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:55px}.section-intro h2{font-size:clamp(2.8rem,5vw,5rem);max-width:680px;margin:0}.kicker{color:var(--coral)}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.principle{min-height:390px;border-radius:28px;padding:28px;display:flex;flex-direction:column}.principle-dark{background:var(--green);color:#fff}.principle-yellow{background:var(--yellow)}.principle-cream{background:#f9edf3}.number{font-size:.75rem;font-weight:700;opacity:.65}.line-icon{font:3rem var(--serif);margin:auto 0;color:var(--coral)}.principle-dark .line-icon{color:var(--yellow)}.principle h3{font:600 1.75rem var(--serif);margin:0 0 10px}.principle p{margin:0;opacity:.8}.programmes{display:grid;grid-template-columns:42% 58%;background:var(--green);color:#fff;padding:110px 8vw;gap:7vw}.programmes-copy h2{font-size:clamp(3rem,5vw,5.5rem)}.programmes-copy h2 em{color:var(--yellow)}.programmes-copy p{color:#d9dcec;max-width:440px}.light{background:#fff;color:var(--green);margin-top:20px}.programme-list{border-top:1px solid #ffffff3d}.programme-list article{padding:30px 0;border-bottom:1px solid #ffffff3d;display:grid;grid-template-columns:1.4fr 1.5fr auto;gap:22px;align-items:center}.programme-list span{color:var(--yellow);font-size:.75rem;font-weight:700}.programme-list h3{font:600 1.5rem var(--serif);margin:3px 0}.programme-list p{font-size:.9rem;color:#d0d4e4;margin:0}.programme-list b{font-size:.74rem;color:#ffffff55}.community{text-align:center;background:#fff}.quote-mark{font:7rem/1 var(--serif);color:var(--yellow);height:65px}.community blockquote{font:600 clamp(2.4rem,4.5vw,5rem)/1.1 var(--serif);max-width:1000px;margin:0 auto;color:var(--green)}.quote-credit{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700;color:var(--coral);margin:28px}.stats{display:grid;grid-template-columns:repeat(3,1fr);max-width:900px;margin:65px auto 0;border-top:1px solid #dfe1eb;padding-top:35px}.stats div{display:flex;flex-direction:column}.stats div+div{border-left:1px solid #dfe1eb}.stats strong{font:600 1.55rem var(--serif)}.stats span{font-size:.8rem;color:#687089}.visit{margin:0 4vw 4vw;border-radius:35px;background:var(--yellow);padding:80px 6vw;display:grid;grid-template-columns:1fr 1fr;gap:8vw;position:relative;overflow:hidden}.visit:after{content:"";position:absolute;width:240px;height:240px;border:40px solid #ffffff45;border-radius:50%;left:-100px;bottom:-130px}.visit h2{font-size:clamp(3rem,5vw,5.2rem)}.visit p{max-width:470px}.visit-form{background:#fff;padding:34px;border-radius:25px;display:grid;gap:16px;position:relative;z-index:2}.visit-form label{font-size:.78rem;font-weight:700;display:grid;gap:6px}.visit-form input,.visit-form select{font:1rem var(--sans);padding:14px;border:1px solid #d6d8e3;border-radius:10px;background:#fff;width:100%}.visit-form input:focus,.visit-form select:focus{outline:3px solid #f4c5d580;border-color:var(--green)}.form-note{font-size:.85rem;margin:0!important;color:var(--green)}footer{background:var(--green2);color:#fff;padding:55px 6vw;display:grid;grid-template-columns:1.5fr 2fr 1fr;gap:25px;align-items:center}footer .brand-mark{background:var(--yellow)}footer .brand-mark i{border-color:var(--green)}footer p{color:#d0d4e4}footer div:nth-child(3){display:flex;flex-direction:column;font-size:.85rem}footer>small{grid-column:1/-1;border-top:1px solid #ffffff22;padding-top:24px;color:#aeb4cb}.menu-toggle span{display:block;width:25px;height:2px;background:var(--green);margin:5px}
@media(max-width:900px){.site-header{height:76px;padding:0 5vw}.menu-toggle{display:block}nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:22px 5vw;flex-direction:column;align-items:stretch;box-shadow:0 16px 25px #0001}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:65px 7vw 45px}.hero-visual{height:500px;padding-left:7vw}.hero-visual img{border-radius:150px 0 0 0}.section-intro{display:block}.section-intro .kicker{display:block;margin-bottom:20px}.approach-grid{grid-template-columns:1fr}.principle{min-height:300px}.programmes{grid-template-columns:1fr}.visit{grid-template-columns:1fr}.stats{gap:15px}.programme-list article{grid-template-columns:1fr auto}.programme-list p{grid-column:1/-1}.marquee div{gap:25px;justify-content:flex-start}footer{grid-template-columns:1fr 1fr}footer p{grid-column:1/-1}}
@media(max-width:560px){h1{font-size:3.35rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-visual{height:380px}.floating-card{left:5vw;bottom:24px}.section,.programmes{padding:80px 6vw}.approach-grid{gap:10px}.visit{margin:0;border-radius:0;padding:70px 6vw}.visit-form{padding:24px}.stats{grid-template-columns:1fr}.stats div+div{border-left:0;border-top:1px solid #dfe1eb;padding-top:20px}.stats{gap:20px}footer{grid-template-columns:1fr}.programme-list article{padding:24px 0}}
@media(prefers-reduced-motion:no-preference){.button,.principle{transition:.2s ease}.principle:hover{transform:translateY(-5px)}}
