
:root{--ink:#04231e;--paper:#f6f4ec;--green:#5ea075;--yellow:#f9b844;--coral:#fb7040}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}main{max-width:1440px;margin:auto;padding:0 5%}.site-header{display:flex;align-items:center;justify-content:space-between;min-height:108px;gap:24px}.site-header a{display:block}.wordmark{display:block;width:150px!important;height:auto!important;margin:0!important;max-width:100%;animation:enter .8s both}.badge{font-size:.75rem;letter-spacing:1px;text-transform:uppercase;color:#4c6058}.content{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;padding:30px 0 64px;align-items:center}.story{min-width:0}.story-photo{position:relative;min-height:530px;overflow:hidden;background:var(--ink);border-radius:8px 8px 0 0}.story-photo>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:55% 55%;animation:photo-in 1.5s ease-out both}.story-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#04231eb3,transparent 85%)}.photo-copy{position:relative;z-index:1;padding:36px;color:var(--paper);animation:enter .9s .15s both}.pillars,.eyebrow{font-size:.7rem;letter-spacing:1.5px;font-weight:600;line-height:1.6}h1{font-size:clamp(2.6rem,4.5vw,4.3rem);font-weight:500;line-height:1.04;letter-spacing:-2px;margin:28px 0 20px}h1 em{color:var(--yellow);font-family:Georgia,serif;font-weight:400}.photo-copy>p:last-child{font-size:1rem;line-height:1.5}.story-bottom{display:flex;align-items:center;gap:22px;background:var(--ink);color:var(--paper);padding:23px 30px;border-radius:0 0 8px 8px}.story-bottom p{font-size:.875rem;line-height:1.5;margin:0}.mini-bars{display:flex;flex-direction:column;gap:7px}.mini-bars i{width:34px;height:6px;border-radius:10px;background:var(--green)}.mini-bars i:nth-child(2){background:var(--yellow)}.mini-bars i:nth-child(3){background:var(--coral)}.signup{min-width:0;max-width:460px;padding:12px 0;animation:enter .9s .2s both}h2{font-size:clamp(2.4rem,3.7vw,3.6rem);line-height:1.06;font-weight:500;letter-spacing:-1.8px;margin:23px 0}h2 em{font-family:Georgia,serif;font-weight:400;color:#356549}.signup>p:not(.eyebrow){font-size:1rem;line-height:1.6;color:#4c6058}label{display:block;font-size:.875rem;margin:23px 0 10px;font-weight:600}input[type=email]{width:100%;border:1px solid #04231e50;border-radius:999px;padding:16px 22px;font:inherit;background:#fff;color:inherit;min-height:54px}button[type=submit]{appearance:none;-webkit-appearance:none;width:100%;display:block;text-align:center;border:0!important;border-radius:999px!important;background:var(--green);color:var(--ink);padding:17px 26px;font:inherit;font-weight:600;min-height:54px;cursor:pointer;transition:background .2s,transform .2s}button[type=submit]:hover{background:var(--yellow);transform:translateY(-2px)}button[type=submit]:active{background:var(--coral);transform:none}.consent{display:flex;align-items:start;gap:10px;font-size:.8rem;font-weight:400;line-height:1.5;margin:18px 0}.consent input{width:18px;height:18px;flex-shrink:0;accent-color:var(--ink);margin:1px 0}.privacy{font-size:.75rem;color:#4c6058;line-height:1.6;margin:17px 0 0}.privacy a{color:inherit;overflow-wrap:anywhere}#form-status{font-size:.9rem;font-weight:600;line-height:1.5}#form-status:empty{display:none}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #04231e25;padding:18px 0;font-size:.75rem;color:#4c6058}:focus-visible{outline:3px solid #be4c2c;outline-offset:4px}@keyframes enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes photo-in{from{transform:scale(1.04)}to{transform:scale(1)}}@media(max-width:700px){main{padding:0 6%}.site-header{min-height:86px}.wordmark{width:115px!important}.badge{font-size:.65rem}.content{grid-template-columns:1fr;gap:30px;padding:12px 0 35px}.story-photo{min-height:340px}.photo-copy{padding:26px}h1{font-size:3rem}.story-bottom{padding:20px 25px}.signup{max-width:none}h2{font-size:2.7rem}.signup>p:not(.eyebrow){font-size:1rem}footer{flex-direction:column;gap:0}footer p{margin:5px 0}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}button[type=submit]:hover{transform:none}}

/* Signup response pages share the homepage brand, with their own focused layout. */
.response-page main{min-height:100svh;display:flex;flex-direction:column}.response-page .site-header{flex-shrink:0}.response-card{width:100%;max-width:660px;margin:auto; padding:65px 32px 80px;text-align:center;animation:enter .7s both}.response-bars{display:flex;justify-content:center;gap:10px;margin-bottom:34px}.response-bars i{width:58px;height:9px;border-radius:999px;background:var(--green)}.response-bars i:nth-child(2){background:var(--yellow)}.response-bars i:nth-child(3){background:var(--coral)}.response-card .eyebrow{color:#4c6058;text-transform:uppercase}.response-card h1{font-size:clamp(2.3rem,5vw,3.8rem);line-height:1.08;letter-spacing:-1.8px;margin:22px 0}.response-message{max-width:460px;margin:0 auto 32px;color:#4c6058;font-size:1.05rem;line-height:1.7}.response-button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;min-width:205px;padding:16px 30px;border-radius:999px;background:var(--green);color:var(--ink);text-decoration:none;font-size:.95rem;font-weight:600;transition:background .2s,transform .2s}.response-button:hover{background:var(--yellow);transform:translateY(-2px)}.response-button:active{background:var(--coral);transform:none}.response-contact{font-size:.8rem;color:#4c6058;margin:25px 0 0}.response-contact a{color:var(--ink);text-underline-offset:3px}.response-page footer{margin-top:auto}@media(max-width:700px){.response-card{padding:50px 0 65px}.response-card h1{letter-spacing:-1px}.response-message{font-size:1rem}.response-button{width:100%;max-width:320px}}@media(prefers-reduced-motion:reduce){.response-card{animation:none}.response-button{transition:none}.response-button:hover{transform:none}}

/* Shared navigation and programme pages. */
.site-header{flex-wrap:wrap;padding:22px 0}.page-nav{display:flex;flex-wrap:wrap;gap:12px 22px;width:100%;padding:16px 0 0;border-top:1px solid #04231e25}.page-nav a{color:var(--ink);font-size:.875rem;text-decoration:none;padding:6px 0;line-height:1.4}.page-nav a:hover,.page-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--coral)}.page-skip{position:absolute;left:-10000px}.page-skip:focus{left:20px;top:12px;background:var(--paper);padding:12px;z-index:5}.page-hero{max-width:900px;padding:58px 0 45px}.page-hero .eyebrow{color:#356549}.page-hero h1{font-size:clamp(2.6rem,5.5vw,5rem);max-width:850px;line-height:1.08}.page-intro{max-width:700px;font-size:1.2rem;line-height:1.7;color:#4c6058}.page-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-bottom:48px}.page-card{padding:30px;background:#ebece1;border-radius:8px;border-top:6px solid var(--green)}.page-card:nth-child(2){border-color:var(--yellow)}.page-card:nth-child(3){border-color:var(--coral)}.page-card h2{font-size:1.7rem;letter-spacing:-.5px;margin:0 0 18px;line-height:1.2}.page-card p{line-height:1.7;margin:0;overflow-wrap:anywhere}.page-enquiry{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--ink);color:var(--paper);border-radius:8px;padding:36px;margin-bottom:58px}.page-enquiry .eyebrow{color:var(--yellow);margin:0}.page-enquiry h2{font-size:2rem;margin:12px 0 0}.page-enquiry .response-button{background:var(--yellow);text-align:center}.page-enquiry .response-button:hover{background:var(--coral)}@media(max-width:700px){.page-nav{gap:8px 18px}.page-hero{padding:30px 0}.page-intro{font-size:1.05rem}.page-cards{grid-template-columns:1fr;gap:18px;margin-bottom:28px}.page-enquiry{align-items:stretch;flex-direction:column;padding:28px;margin-bottom:35px}.page-enquiry .response-button{width:100%;max-width:none}}
.footer-links{display:flex;gap:10px 20px;flex-wrap:wrap;width:100%;font-size:.75rem}.footer-links a{color:inherit;text-underline-offset:4px}footer{flex-wrap:wrap}
