:root{color-scheme:light;--cream: #f5f0e4;--paper: #fffaf0;--ink: #25352a;--muted: #687466;--green: #0f4f36;--green-2: #6b8f39;--orange: #d78634;--purple: #6e4a86;--yellow: #d8b246;--line: rgba(37, 53, 42, .16);--shadow: 0 1.2rem 3rem rgba(23, 45, 31, .14);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);line-height:1.65}a{color:var(--green)}main{width:min(1180px,calc(100% - 2rem));margin:0 auto}main>section{margin:4rem 0}.site-header-wrap{background:var(--green);color:#fff}.site-header,.site-footer{width:min(1180px,calc(100% - 2rem));margin:0 auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem 0}.brand{display:grid;min-width:10rem;color:#fff;line-height:.9;text-decoration:none;text-transform:uppercase}.brand-word{font-size:1.25rem;font-weight:900;letter-spacing:.02em}.brand-small{color:#ffffffc2;font-size:.75rem;font-weight:800;letter-spacing:.16em}nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.25rem .6rem}nav a{border-radius:999px;color:#fff;font-size:.86rem;font-weight:800;padding:.45rem .75rem;text-decoration:none}nav a:hover{background:#ffffff21}h1,h2,h3{margin:0;color:var(--green);font-family:Georgia,Times New Roman,serif;line-height:1.05}h1{max-width:12ch;font-size:clamp(3.6rem,10vw,8rem);letter-spacing:-.07em}h2{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.04em}h3{font-size:1.45rem}p{margin:.7rem 0 0}ul{padding-left:1.2rem}.eyebrow{margin:0 0 .7rem;color:var(--orange);font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.lead{max-width:44rem;color:var(--muted);font-size:clamp(1.1rem,2vw,1.4rem)}.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(18rem,.95fr);gap:clamp(1.5rem,4vw,4rem);min-height:34rem;margin-top:0;padding:clamp(3rem,7vw,7rem) 0 4rem}.hero-home{align-items:center}.hero-copy{position:relative;z-index:1}.hero-copy:before{content:"";position:absolute;z-index:-1;inset:-2rem auto auto -2rem;width:11rem;height:11rem;border-radius:999px;background:#d8b24647}.hero-photo-placeholder,.pair-photo-placeholder,.project-image-placeholder{display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#0f4f36b8,#6b8f3999),repeating-linear-gradient(45deg,rgba(255,255,255,.1) 0 10px,transparent 10px 20px);color:#fff;font-weight:900;text-transform:uppercase}.hero-photo-placeholder{min-height:29rem;border-radius:0 0 0 6rem;box-shadow:var(--shadow)}.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.button{display:inline-flex;justify-content:center;border-radius:999px;padding:.85rem 1.15rem;background:var(--green);color:#fff;font-weight:900;text-decoration:none}.button.secondary{background:var(--yellow);color:var(--ink)}.page-intro,.section-split,.blog-card,.contact-strip,.candidate-card,.programme-card{border-radius:0 2.5rem;background:var(--paper);box-shadow:var(--shadow)}.page-intro{padding:clamp(2rem,5vw,4rem)}.dark-intro{background:var(--green)}.dark-intro h1,.dark-intro h2,.dark-intro .lead{color:#fff}.section-heading{margin-bottom:1.5rem}.section-split{display:grid;grid-template-columns:minmax(16rem,.8fr) minmax(0,1.2fr);gap:2rem;padding:clamp(1.5rem,4vw,3rem)}.rich-text{font-size:1.08rem}.grid,.pillar-grid,.project-grid,.team-grid,.achievement-grid{display:grid;gap:1.2rem}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.pillar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pillar-card,.project-tile,.team-pair,.achievement-card{overflow:hidden;border-radius:0 2rem;background:#fff;box-shadow:var(--shadow)}.pillar-card{min-height:18rem;padding:1.5rem}.pillar-card span{display:grid;width:3rem;height:3rem;margin-bottom:1rem;place-items:center;border-radius:999px;background:#ffffff4d;color:#fff;font-weight:900}.pillar-card h2,.pillar-card h3,.pillar-card p{color:#fff}.pillar-card.green{background:var(--green)}.pillar-card.orange{background:var(--orange)}.pillar-card.purple{background:var(--purple)}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-tile{display:grid;grid-template-columns:minmax(9rem,.8fr) minmax(0,1.2fr)}.project-image-placeholder{min-height:16rem}.project-content,.blog-card,.candidate-card,.programme-card{padding:1.4rem}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-pair summary{display:grid;grid-template-columns:minmax(10rem,.75fr) minmax(0,1.25fr);gap:1.2rem;cursor:pointer;list-style:none}.team-pair summary::-webkit-details-marker{display:none}.team-pair summary>div:last-child{padding:1.2rem 1.2rem 1.2rem 0}.team-pair summary span{color:var(--orange);font-weight:900}.pair-photo-placeholder{min-height:14rem}.pair-detail{border-top:1px solid var(--line);padding:1.2rem}.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.achievement-card{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:1rem;align-items:start;padding:1.1rem}.achievement-card span{display:grid;width:2.4rem;height:2.4rem;place-items:center;border-radius:999px;background:var(--green-2);color:#fff;font-weight:900}.contact-form{display:grid;gap:.9rem}.contact-form label{display:grid;gap:.35rem;color:var(--green);font-weight:900}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:.8rem;background:#fff;color:var(--ink);font:inherit;padding:.75rem .9rem}.form-note{color:var(--muted);font-size:.9rem}.profession{color:var(--muted);font-weight:800}.site-footer{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:1.5rem;margin-top:4rem;border-top:.45rem solid var(--green);padding:2rem 0;color:var(--muted);font-size:.9rem}.site-footer strong{color:var(--green);font-family:Georgia,Times New Roman,serif;font-size:1.3rem}.site-footer p{margin:.25rem 0 0}@media(max-width:900px){.site-header,.section-split,.hero,.project-tile,.team-pair summary,.site-footer{grid-template-columns:1fr}.site-header{align-items:flex-start}nav{justify-content:flex-start}.grid,.grid.two,.pillar-grid,.project-grid,.team-grid,.achievement-grid{grid-template-columns:1fr}h1{font-size:clamp(3.2rem,18vw,5.2rem)}.hero-photo-placeholder{min-height:18rem}.team-pair summary>div:last-child{padding:0 1.2rem 1.2rem}}
