@font-face{font-family:Cormorant;src:url("assets/cormorant-garamond.woff2") format("woff2");font-display:swap}
:root{--ink:#1e1e1c;--paper:#f7f3ea;--gold:#c89b4a;--muted:#68655e;--line:#e1dfdb;--white:#fffdf7;--page:1200px;--reading:980px;--serif:Cormorant,"Cormorant Garamond",Georgia,serif;--sans:Inter,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.62 var(--sans)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;z-index:20;background:var(--paper);padding:10px}
.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{max-width:var(--page);margin:auto;min-height:154px;padding:28px 56px;display:flex;justify-content:space-between;align-items:center}.brand-lockup{display:flex;align-items:center;gap:12px;min-width:225px}.brand-lockup img{width:38px;height:48px;object-fit:contain}.brand-name{display:block;margin:0;font:600 18px/1.02 var(--serif);letter-spacing:.04em}.brand-acronym{display:block;margin:2px 0 0;font:600 10px/1 var(--sans);letter-spacing:.14em;color:var(--gold)}.brand-word{font:600 32px/1 var(--serif);letter-spacing:.04em}.nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:30px;font-size:12px;font-weight:600;letter-spacing:.04em}.nav-list a{padding:10px 0;border-bottom:1px solid transparent}.nav-list a:hover,.nav-list a[aria-current="page"]{border-color:var(--gold)}.nav-list .nav-cta{padding:10px 14px;border:1px solid var(--ink);border-radius:999px}.nav-list .nav-cta:hover{background:var(--ink);color:var(--paper)}.menu-toggle{display:none;border:0;background:none;color:var(--ink);font:inherit;cursor:pointer}
.eyebrow{margin:0;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.15em;line-height:1.2}.display{margin:0;font-family:var(--serif);font-weight:500;letter-spacing:-.025em;line-height:.99}.display--xl{font-size:clamp(50px,6.5vw,84px)}.display--lg{font-size:clamp(48px,5.35vw,72px)}.display--md{font-size:clamp(40px,4.4vw,60px)}.lead{margin:0;color:#42403c;font-size:18px;line-height:1.55}.button{display:inline-flex;align-items:center;justify-content:center;min-height:41px;padding:12px 20px;border:1px solid var(--ink);border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.04em;line-height:1;transition:background .2s,color .2s}.button:hover{background:var(--ink);color:var(--paper)}.button--plain{border-color:transparent;padding-left:0}.button--plain:hover{background:transparent;color:var(--gold)}
.home{background:var(--ink);color:var(--white)}.home .site-header{background:var(--ink);border:0}.home .header-inner{padding-left:16px;padding-right:16px}.home .brand-name,.home .nav-list a{color:var(--white)}.home .brand-lockup img{width:72px;height:72px}.home .nav-list .nav-cta{border:0;border-radius:0;background:var(--gold);color:var(--ink);padding:12px 16px}.home .nav-list .nav-cta:hover{background:var(--white);color:var(--ink)}.home-hero{min-height:1170px;padding:200px 56px 230px;text-align:center;display:grid;place-items:start center}.home-hero__inner{max-width:940px;display:grid;justify-items:center;gap:28px}.hero-emblem{width:150px;height:150px;object-fit:contain}.home-hero .lead{max-width:620px;color:rgba(255,253,247,.76)}.home-hero__motto{max-width:620px;margin:0;color:rgba(255,253,247,.64);font:italic 24px/1.42 var(--serif)}.home-hero .display{color:var(--white)}.home-hero .button{border-color:var(--white);color:var(--white)}.home-hero .button:hover{background:var(--white);color:var(--ink)}.hero-actions{display:flex;gap:14px;margin-top:4px}.work{padding:145px 56px 120px;max-width:var(--page);margin:auto}.home .work .eyebrow{color:var(--white);margin-bottom:76px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px}.home .work-card{border-color:rgba(255,253,247,.35)}.work-card{padding-top:22px}.work-card__number{margin:0 0 12px;font-size:12px;font-weight:700;color:var(--gold)}.work-card h2{margin:0 0 18px;font:500 36px/1.05 var(--serif)}.work-card p{margin:0;color:#55524c}.home .work-card p{color:rgba(255,253,247,.68)}.manifesto{background:var(--paper);color:var(--ink);padding:150px 56px;text-align:center}.manifesto p{max-width:820px;margin:0 auto 24px;font:500 clamp(40px,4vw,60px)/1.05 var(--serif);letter-spacing:-.02em}.manifesto a{color:var(--gold);font-size:13px;font-weight:700;letter-spacing:.04em}.site-footer{background:var(--ink);color:var(--white)}.footer-inner{max-width:var(--page);min-height:122px;margin:auto;padding:38px 56px;display:flex;align-items:end;justify-content:space-between;border-top:1px solid rgba(255,253,247,.2)}.footer-title{margin:0;font:600 22px/1 var(--serif);letter-spacing:.04em}.footer-slogan{margin:7px 0 0;color:rgba(255,253,247,.7);font-size:11px}.footer-link,.copyright{font-size:11px;color:rgba(255,253,247,.62)}.footer-link{color:var(--gold)}
.page-header .header-inner{min-height:86px}.simple-brand{font:600 30px/1 var(--serif);letter-spacing:.04em}.back-link{font-size:12px;font-weight:600;letter-spacing:.1em}.about-intro,.content-intro{max-width:var(--reading);margin:auto;padding:132px 56px 112px}.about-intro{display:grid;gap:28px}.about-intro .lead{max-width:680px}.reality-band{background:var(--ink);color:var(--white);padding:100px max(56px,calc((100vw - 1200px)/2 + 56px));display:grid;gap:24px}.reality-band .lead{max-width:780px;color:var(--white);font-family:var(--serif);font-size:44px;line-height:1.08}.response{max-width:var(--reading);margin:auto;padding:112px 56px;display:grid;gap:22px}.response p{max-width:700px;margin:0;font-size:18px}.principles{max-width:var(--page);margin:auto;border-top:1px solid var(--line);padding:90px 56px 100px}.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);margin-top:34px}.principle{padding:24px 20px 24px 0;border-bottom:1px solid var(--line);font:500 27px/1.15 var(--serif)}
.content-intro{display:grid;gap:20px;padding-top:118px;padding-bottom:110px}.content-intro .lead{max-width:620px}.programmes{max-width:var(--page);margin:auto;padding:0 56px 110px}.programme{display:grid;grid-template-columns:140px 1fr 420px;gap:64px;padding:28px 0 58px;border-top:1px solid var(--ink)}.programme__number{font-size:12px;font-weight:700;color:var(--gold)}.programme h2{margin:0;font:500 42px/1.05 var(--serif)}.programme p{margin:0;color:#504d47}.community-page,.contact-page,.not-found{min-height:calc(100vh - 86px);display:grid;place-items:start center;text-align:center;padding:138px 56px}.community-page__inner,.contact-page__inner,.not-found__inner{max-width:820px;display:grid;justify-items:center;gap:22px}.community-page .lead,.contact-page .lead{max-width:620px}.coming-soon{margin-top:36px;max-width:456px;padding:32px;border:1px solid var(--line);display:grid;gap:7px}.coming-soon strong{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.coming-soon p{margin:0}.contact-page{min-height:calc(100vh - 86px)}.contact-email{margin:35px 0 0;border-top:1px solid var(--line);padding-top:28px}.contact-email span{display:block;color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.15em}.contact-email a{display:block;margin-top:8px;font:500 31px/1.2 var(--serif);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:6px}.contact-note{margin:0;color:var(--muted);font-size:13px}.privacy-intro{padding-bottom:68px}.privacy-content{max-width:var(--reading);margin:auto;padding:0 56px 112px;display:grid;gap:42px}.privacy-section{display:grid;gap:12px}.privacy-section h2{margin:0;font:600 32px/1.05 var(--serif)}.privacy-section p{margin:0;color:#42403c}.privacy-section--last{border-top:1px solid var(--line);padding-top:32px}.not-found{min-height:100vh;padding-top:120px}.not-found__number{margin:0;color:var(--gold);font:500 clamp(110px,16vw,190px)/.7 var(--serif)}
@media(max-width:809px){.header-inner{min-height:86px;padding:18px 24px}.home .header-inner{padding-left:24px;padding-right:24px}.brand-lockup{min-width:0}.brand-lockup img{width:30px;height:38px}.home .brand-lockup img{width:48px;height:48px}.brand-name{font-size:14px}.brand-acronym{font-size:8px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;z-index:10;left:0;right:0;top:86px;background:var(--paper);border-bottom:1px solid var(--line);padding:14px 24px 24px}.home .site-nav{background:var(--ink);border-color:rgba(255,253,247,.2)}.site-nav.is-open{display:block}.nav-list{display:grid;gap:0}.nav-list li{border-top:1px solid var(--line)}.home .nav-list li{border-color:rgba(255,253,247,.2)}.nav-list a{display:block;padding:16px 0}.nav-list .nav-cta{display:inline-flex;margin-top:16px;padding:11px 14px}.home-hero{min-height:auto;padding:120px 24px 130px}.home-hero__inner{gap:22px}.hero-emblem{width:120px;height:120px}.home-hero .lead{font-size:16px}.home-hero__motto{font-size:21px}.hero-actions{flex-wrap:wrap;justify-content:center}.work{padding:86px 24px 76px}.work .eyebrow{margin-bottom:40px}.work-grid{grid-template-columns:1fr;gap:40px}.work-card h2{font-size:32px}.manifesto{padding:90px 24px}.manifesto p{font-size:42px}.footer-inner{padding:32px 24px;display:grid;align-items:start;gap:18px}.page-header .header-inner{min-height:70px;padding:20px 22px}.simple-brand{font-size:28px}.about-intro,.content-intro{padding:76px 22px 46px}.about-intro{gap:18px}.reality-band{padding:76px 22px}.reality-band .lead{font-size:34px}.response{padding:76px 22px}.response p{font-size:16px}.principles{padding:70px 22px}.principles-grid{grid-template-columns:1fr;margin-top:26px}.principle{font-size:26px}.content-intro{gap:18px}.programmes{padding:0 22px 70px}.programme{grid-template-columns:1fr;gap:14px;padding:22px 0 40px}.programme h2{font-size:36px}.community-page,.contact-page{padding:80px 22px;min-height:calc(100vh - 70px)}.coming-soon{margin-top:24px;padding:25px 22px}.contact-email a{font-size:25px;overflow-wrap:anywhere}.privacy-content{padding:0 22px 76px;gap:32px}.privacy-section h2{font-size:28px}.privacy-section p{font-size:15px}.not-found{padding:100px 22px}.not-found__number{font-size:132px}}
@media(min-width:810px) and (max-width:1199px){.header-inner,.work,.principles,.programmes{padding-left:36px;padding-right:36px}.home-hero{padding-left:36px;padding-right:36px}.about-intro,.content-intro,.response,.privacy-content{padding-left:36px;padding-right:36px}.reality-band{padding-left:36px;padding-right:36px}.programme{grid-template-columns:90px 1fr 300px;gap:38px}.work-grid{gap:32px}}
/* Contact enquiry form */
.enquiry-section{width:100%;margin-top:56px;padding-top:52px;border-top:1px solid var(--line);text-align:left}.enquiry-section h2{margin:0 0 12px;font-size:48px}.enquiry-section>p{max-width:620px;margin:0;color:#42403c}.enquiry-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:34px}.form-field{display:grid;gap:8px}.form-field:nth-of-type(5),.form-field:nth-of-type(6),.form-field:nth-of-type(7){grid-column:1/-1}.form-field label{font-size:12px;font-weight:700;letter-spacing:.06em}.form-field small{margin-left:6px;color:var(--muted);font-size:11px;font-weight:400;letter-spacing:0}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #aaa69e;border-radius:0;background:transparent;color:var(--ink);padding:12px 13px;font:16px/1.4 var(--sans);transition:border-color .2s,background .2s}.form-field textarea{resize:vertical;min-height:154px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid var(--gold);outline-offset:2px;border-color:var(--ink);background:#fffdf7}.is-hidden{display:none}.honeypot{position:absolute;left:-9999px}.enquiry-submit{justify-self:start;margin-top:2px}.form-status{grid-column:1/-1;min-height:26px;margin:0;font-size:14px}.form-status[data-state="success"]{color:#315c3b}.form-status[data-state="error"]{color:#8b2e23}.form-status[data-state="sending"]{color:var(--muted)}
@media(max-width:809px){.enquiry-section{margin-top:42px;padding-top:40px}.enquiry-section h2{font-size:39px}.enquiry-form{grid-template-columns:1fr;gap:18px}.form-field:nth-of-type(5),.form-field:nth-of-type(6),.form-field:nth-of-type(7){grid-column:auto}}
/* Interactive About principles */
.principles-grid{grid-template-columns:1fr}.principle{padding:0;border-bottom:1px solid var(--line);font:inherit}.principle-toggle{display:block;width:100%;margin:0;padding:24px 0;border:0;background:transparent;color:var(--ink);cursor:pointer;text-align:left;font:500 30px/1.15 var(--serif);transition:color .18s ease,opacity .18s ease}.principle-toggle:hover{color:#5e4a27}.principle-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:-4px}.principle-description{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .22s ease,opacity .18s ease}.principle-description>p{min-height:0;overflow:hidden;margin:0;color:#56534c;font-size:16px;line-height:1.55}.principle-toggle[aria-expanded="true"]+.principle-description{grid-template-rows:1fr;opacity:1}.principle-toggle[aria-expanded="true"]+.principle-description>p{padding:0 0 24px}@media (hover:hover){.principle:hover .principle-description{grid-template-rows:1fr;opacity:1}.principle:hover .principle-description>p{padding:0 0 24px}}
@media(max-width:809px){.principle-toggle{padding:20px 0;font-size:27px}.principle-description>p{font-size:15px}}
/* Larger, click-led principle disclosures */
.principle-toggle{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:31px 0;font-size:clamp(36px,3.75vw,52px);line-height:1.02}.principle-toggle::after{content:"+";flex:0 0 auto;color:var(--gold);font:400 32px/1 var(--serif);transition:transform .2s ease}.principle-toggle[aria-expanded="true"]::after{transform:rotate(45deg)}.principle-description>p{max-width:680px;font:400 18px/1.55 var(--sans)}.principle-toggle[aria-expanded="true"]+.principle-description>p{padding:0 0 30px}@media (hover:hover){.principle:hover .principle-toggle[aria-expanded="false"]+.principle-description{grid-template-rows:0fr;opacity:0}.principle:hover .principle-toggle[aria-expanded="false"]+.principle-description>p{padding:0}}@media(max-width:809px){.principle-toggle{padding:24px 0;font-size:clamp(32px,9vw,40px)}.principle-toggle::after{font-size:28px}.principle-description>p{font-size:16px}.principle-toggle[aria-expanded="true"]+.principle-description>p{padding-bottom:24px}}
