@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@500;600;650;700;750;800&display=swap');
:root{--navy:#111f39;--surface:#172943;--surface-light:#1d304c;--orange:#ee8735;--text:#f2f4f7;--muted:#b6c2d2;--border:#ffffff20;--heading:'Manrope',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--navy);color:var(--text);font:15px/1.75 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);line-height:1.25;letter-spacing:-.035em;font-weight:650}h1{font-size:clamp(30px,3.2vw,42px)}h2{font-size:23px}h3{font-size:17px}p{color:var(--muted)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:5px}.wrap{width:min(1140px,calc(100% - 80px));margin:auto}.arrow{width:19px;height:19px;flex-shrink:0;vertical-align:middle}.read-link,.back-link{display:inline-flex;align-items:center;gap:12px;color:var(--orange);font-size:13px;font-weight:550;padding:4px 0}.read-link:hover,.back-link:hover{color:#ffb57c;text-decoration:underline;text-underline-offset:5px}.eyebrow{display:block;color:var(--orange);font-size:10px;font-weight:650;letter-spacing:.12em;line-height:1.6}.meta{color:#aebed3;font-size:11px}.skip{position:fixed;top:-100px;padding:8px 16px;background:var(--orange);color:var(--navy);z-index:100}.skip:focus{top:0}
header{height:104px;position:sticky;top:0;z-index:30;background:var(--navy);border-bottom:1px solid var(--border)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:45px}.brand{width:137px;flex-shrink:0}.brand img{height:80px;object-fit:contain;filter:brightness(0) saturate(100%) invert(63%) sepia(96%) saturate(1819%) hue-rotate(337deg) brightness(98%) contrast(93%)}nav{display:flex;gap:31px;align-items:center}nav a{font-size:13px;color:#e2e8f0;position:relative;padding:9px 0}nav a:hover,nav a[aria-current]{color:var(--orange)}nav a[aria-current]:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--orange)}.menu-toggle{display:none;flex-direction:column;gap:6px;background:none;border:0;padding:9px}.menu-toggle span{height:2px;width:25px;background:var(--text);transition:transform .2s}
.village-banner{height:330px;position:relative;overflow:hidden;background:#6d91ac}.banner-photo{position:absolute;inset:0;background:url('assets/photo-1.webp') center 48%/cover;animation:gentle-pan 25s ease-in-out infinite alternate;transform-origin:70% 50%}.banner-caption{position:absolute;left:max(40px,calc((100vw - 1140px)/2));bottom:18px;background:#111f39b3;color:white;backdrop-filter:blur(5px);padding:5px 11px;border-radius:3px;font-size:10px}.motion{position:absolute;right:max(40px,calc((100vw - 1140px)/2));bottom:18px;display:flex;gap:7px;align-items:center;background:#111f39b3;color:white;backdrop-filter:blur(5px);border:1px solid #ffffff55;border-radius:3px;padding:5px 9px;font-size:10px}.motion svg{width:12px;height:12px}.motion-paused .banner-photo{animation-play-state:paused}@keyframes gentle-pan{from{transform:scale(1)}to{transform:scale(1.05)}}
.home-content{padding-bottom:60px}.welcome{display:grid;grid-template-columns:1fr 1fr;gap:75px;padding:42px 0 38px;border-bottom:1px solid var(--border);align-items:start}.welcome h1{font-size:34px;margin-top:13px;max-width:400px}.welcome p{font-size:14px;line-height:1.85}.welcome .read-link{margin-top:9px}.home-columns{display:grid;grid-template-columns:1.65fr 1fr;gap:65px;padding-top:35px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:4px}.section-heading h2{font-size:22px}.section-heading .read-link{font-size:12px;gap:9px}.section-heading .arrow{width:16px}.news-row{display:grid;grid-template-columns:85px 1fr 20px;gap:20px;align-items:start;padding:23px 0;border-bottom:1px solid var(--border)}.news-row .meta{padding-top:2px;font-size:10px}.news-row h3{font-size:17px}.news-row p{font-size:12px;line-height:1.7;margin-top:6px}.news-row>.arrow{margin-top:3px;color:var(--orange);width:17px}.news-row:hover h3{color:var(--orange)}.news-row:last-child{border-bottom:0}.notice{background:var(--surface);padding:23px 26px;border-radius:4px;align-self:start;border:1px solid #ffffff0b}.calendar-line{display:flex;align-items:center;gap:18px;margin:16px 0}.calendar-date{font-family:var(--heading);font-size:34px;line-height:1.15;letter-spacing:-.04em;display:block;padding-right:17px;border-right:1px solid #ffffff35}.calendar-date>span{display:block;font:550 9px var(--body);letter-spacing:.12em;margin-top:6px}.calendar-line h2{font-size:18px}.calendar-line p{font-size:12px;margin-top:5px}.notice>p{font-size:12px}.notice>.read-link{font-size:12px;margin-top:7px}.aside-divider{height:1px;background:var(--border);margin:19px 0}
footer{border-top:1px solid var(--border);background:#0e1b31}.footer-inner{display:grid;grid-template-columns:1.2fr .65fr 1fr;gap:50px;padding:34px 0 30px}.footer-inner h2{font-family:var(--body);font-size:13px;letter-spacing:0;font-weight:600;margin-bottom:8px}.footer-inner p{font-size:11px;line-height:1.8}.copyright{display:block;font-size:9px;color:#92a3bb;margin-top:17px}.footer-links{display:grid;align-content:start;gap:5px}.footer-links a,.footer-email,.footer-social{font-size:11px;color:#b6c2d2}.footer-links a:hover,.footer-email:hover,.footer-social:hover{color:var(--orange)}.footer-email{display:block;color:#e8edf4;margin-bottom:7px}.footer-social{display:inline-block;margin-top:9px}
.page-content{padding-top:46px;padding-bottom:65px;min-height:calc(100vh - 300px)}.page-title{padding-bottom:30px;max-width:760px}.page-title h1{margin-top:13px}.page-title p{margin-top:15px;font-size:15px;line-height:1.8}.programme-notice{background:var(--surface);border-left:2px solid var(--orange);padding:12px 27px 22px;margin-bottom:39px}.programme-notice>.calendar-line{margin:12px 0}.programme-notice h2{font-size:21px}.programme-notice>p{font-size:13px}.page-section>h2{margin-bottom:10px}.section-intro{font-size:13px;margin-bottom:30px}.activity-list{display:grid;gap:30px}.activity-item{display:grid;grid-template-columns:300px 1fr;gap:35px;border-bottom:1px solid var(--border);padding-bottom:30px}.activity-item>img{height:210px;border-radius:4px}.activity-item h3{font-size:23px;margin-bottom:13px}.activity-item p,.activity-item ul{font-size:14px;color:var(--muted);line-height:1.8}.activity-item ul{padding-left:19px;margin-bottom:0}.activity-item p+p{margin-top:12px}.text-note{margin-top:35px;max-width:740px}.text-note h2{font-size:22px;margin-bottom:12px}.text-note p{font-size:14px;margin-bottom:10px}.page-content>.news-rows{max-width:900px}.page-content>.news-rows .news-row{padding:28px 0;grid-template-columns:100px 1fr 20px}.page-content>.news-rows h3{font-size:23px}.page-content>.news-rows p{font-size:14px}.page-content>.news-rows .meta{font-size:11px}
.gallery-filters{display:flex;gap:10px;margin:0 0 25px;flex-wrap:wrap}.gallery-filters button{border:1px solid #ffffff2e;background:none;padding:7px 13px;border-radius:3px;font-size:12px;color:#bdc8d8}.gallery-filters button:hover{border-color:#ffffff75}.gallery-filters button.active{background:#243b5a;border-color:#70839d;color:var(--text);box-shadow:inset 0 -2px var(--orange)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.gallery button{border:0;background:none;text-align:left;padding:0}.gallery img{aspect-ratio:1.5;border-radius:4px;transition:filter .2s}.gallery button:hover img{filter:brightness(1.1)}.gallery button>span{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;padding-top:10px;color:#c5cede}.gallery button .arrow{width:17px;color:var(--orange)}.gallery [hidden]{display:none}.content-columns{display:grid;grid-template-columns:1.6fr 1fr;gap:85px}.prose{max-width:730px}.prose h2{font-size:23px;margin-top:35px;margin-bottom:15px}.prose h2:first-child{margin-top:0}.prose p{font-size:15px;line-height:1.9;margin-bottom:15px}.prose .read-link{margin-top:4px}.prose .source-note{font-size:12px;margin-top:30px;color:#95a7bf}.board{margin:0}.board>div{display:grid;grid-template-columns:155px 1fr;border-bottom:1px solid var(--border);padding:13px 0;font-size:13px}.board dt{color:#aabbcf}.board dd{margin:0;color:#e2e8f0}.sidebar>img{height:230px;border-radius:4px}.sidebar-box{background:var(--surface);padding:24px;margin-top:22px;border-radius:4px}.sidebar-box h2{font-size:20px;margin-bottom:12px}.sidebar-box p{font-size:13px;line-height:1.8}.sidebar-box .read-link{font-size:12px;margin-top:9px}.narrow{max-width:820px}.contact-columns{display:grid;grid-template-columns:1fr 1fr;gap:90px;margin-top:10px}.contact-columns h2{margin-bottom:20px}.email-address{font-size:20px;color:var(--orange);overflow-wrap:anywhere}.contact-info>p{margin:24px 0;font-size:14px;line-height:1.9}.topic-link{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--border);font-size:14px}.topic-link .arrow{color:var(--orange);width:17px}.topic-link:hover{color:var(--orange)}.article-page{max-width:900px}.back-link{font-size:12px;margin-bottom:25px}.back-link .arrow{transform:rotate(180deg);order:-1;width:17px}.article-page article>.meta{display:block;margin-bottom:13px}.article-page h1{max-width:800px}.article-image{margin:28px 0;max-height:330px;object-position:50% 55%;border-radius:4px}.article-page .prose{max-width:720px}
dialog{width:min(1080px,calc(100% - 26px));max-height:calc(100% - 30px);border:1px solid #ffffff30;border-radius:5px;padding:0;background:var(--navy);color:var(--text);box-shadow:0 30px 100px #0008}dialog::backdrop{background:#071225e6;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:12px;top:12px;z-index:3;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid #ffffff60;background:#111f39cc}.dialog-close svg{width:24px;height:24px}.dialog-close:hover{background:#294365}#large-photo{width:100%;max-height:76vh;object-fit:contain;min-height:100px}.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 20px}.photo-controls button{display:grid;place-items:center;flex-shrink:0;background:#ffffff0c;color:var(--text);width:35px;height:35px;border:1px solid var(--border);border-radius:3px}.photo-controls span{font-size:12px;text-align:center}#photo-prev svg{transform:rotate(180deg)}body:has(dialog[open]){overflow:hidden}
@media(min-width:1550px){.village-banner{height:380px}}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.header-inner{gap:25px}nav{gap:23px}.welcome{gap:40px}.welcome h1{font-size:30px}.home-columns{gap:35px;grid-template-columns:1.4fr 1fr}.news-row{grid-template-columns:70px 1fr 17px;gap:13px}.banner-caption{left:28px}.motion{right:28px}.footer-inner{gap:30px}.activity-item{grid-template-columns:260px 1fr;gap:25px}.content-columns{gap:50px}.contact-columns{gap:50px}.gallery{gap:20px}.board>div{grid-template-columns:125px 1fr}}
@media(max-width:760px){html{scroll-padding-top:90px}header{height:86px}.brand{width:115px}.brand img{height:68px}.menu-toggle{display:flex}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}nav{display:none;position:absolute;top:85px;left:0;right:0;padding:12px 28px 20px;background:var(--surface);box-shadow:0 15px 25px #06112760}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{font-size:14px;padding:11px 0;border-bottom:1px solid var(--border)}nav a[aria-current]:after{display:none}.village-banner{height:285px}.banner-photo{background-position:58% 50%}.welcome{gap:30px;padding-top:32px;padding-bottom:30px}.welcome h1{font-size:29px}.welcome p{font-size:13px}.home-columns{grid-template-columns:1fr;gap:28px;padding-top:28px}.notice{display:grid;grid-template-columns:1fr 1fr;column-gap:30px;padding:22px}.notice>.eyebrow,.notice>.calendar-line{grid-column:1;grid-row:auto}.notice>.calendar-line{margin-bottom:0}.notice>p:first-of-type{grid-column:2;grid-row:1/3;align-self:center}.notice>.read-link:first-of-type{grid-column:2;margin:0}.notice>.aside-divider{grid-column:1/-1;margin:20px 0 14px}.notice>p:last-of-type{grid-column:1}.notice>.read-link:last-of-type{grid-column:2;justify-self:start;align-self:center;margin:0}.footer-inner{grid-template-columns:1fr 1fr}.footer-inner>div:last-child{grid-column:1/-1}.footer-inner{gap:25px}.activity-item{grid-template-columns:220px 1fr;gap:25px}.activity-item h3{font-size:21px}.activity-item p,.activity-item ul{font-size:13px}.content-columns{grid-template-columns:1fr 0.85fr;gap:35px}.board>div{grid-template-columns:1fr;gap:4px}.sidebar-box{padding:19px}.sidebar-box h2{font-size:18px}.sidebar>img{height:210px}.gallery{grid-template-columns:1fr 1fr}.contact-columns{gap:35px}.email-address{font-size:17px}.contact-help h2{font-size:21px}}
@media(max-width:520px){.wrap{width:calc(100% - 40px)}.village-banner{height:230px}.banner-photo{background-position:56% 52%}.banner-caption{left:15px;bottom:12px;font-size:9px;padding:4px 8px}.motion{right:15px;bottom:12px;padding:4px 7px;font-size:9px}.welcome{grid-template-columns:1fr;gap:18px;padding:27px 0}.welcome h1{font-size:29px;max-width:310px;margin-top:10px}.welcome p{font-size:14px;line-height:1.85}.eyebrow{font-size:9px}.welcome .read-link{margin-top:8px}.home-content{padding-bottom:35px}.section-heading h2{font-size:21px}.section-heading .read-link{font-size:11px;gap:6px}.news-row{grid-template-columns:1fr 18px;gap:7px 12px;padding:21px 0}.news-row>.meta{grid-column:1;grid-row:1;font-size:10px}.news-row>div{grid-column:1;grid-row:2}.news-row>.arrow{grid-column:2;grid-row:2}.news-row h3{font-size:18px;line-height:1.4}.news-row p{font-size:12px;margin-top:7px}.notice{display:block;padding:21px}.notice>.calendar-line{margin-top:14px;margin-bottom:13px}.notice>.read-link:first-of-type{margin-top:8px}.notice>.read-link:last-of-type{margin-top:7px}.calendar-line h2{font-size:19px}.notice>p{font-size:13px}.footer-inner{gap:24px 30px;padding:27px 0}.footer-inner h2{font-size:12px;line-height:1.5;max-width:190px}.footer-inner p{font-size:11px}.footer-links a{font-size:11px}.copyright{font-size:8px;line-height:1.8}.page-content{padding-top:30px;padding-bottom:40px}.page-title{padding-bottom:25px}.page-title h1{font-size:30px;margin-top:10px;line-height:1.3}.page-title p{font-size:14px;margin-top:13px}.programme-notice{padding:10px 18px 20px;margin-bottom:30px}.programme-notice h2{font-size:19px}.programme-notice p{font-size:12px}.activity-list{gap:26px}.activity-item{grid-template-columns:1fr;gap:19px;padding-bottom:26px}.activity-item>img{height:210px}.activity-item h3{font-size:23px}.activity-item p,.activity-item ul{font-size:14px}.section-intro{font-size:13px}.page-section>h2{font-size:23px}.text-note{margin-top:28px}.text-note h2{font-size:22px}.text-note p{font-size:14px}.page-content>.news-rows .news-row{grid-template-columns:1fr 18px;padding:23px 0}.page-content>.news-rows h3{font-size:22px}.page-content>.news-rows p{font-size:13px}.page-content>.news-rows .meta{font-size:10px}.gallery{gap:20px 13px}.gallery img{aspect-ratio:1.25}.gallery button>span{font-size:11px;line-height:1.5;align-items:flex-start;padding-top:9px}.gallery button .arrow{width:15px}.gallery-filters{gap:7px;margin-bottom:22px}.gallery-filters button{font-size:11px;padding:6px 10px}.content-columns{grid-template-columns:1fr;gap:32px}.prose h2{font-size:23px;margin-top:29px}.prose p{font-size:14px}.board>div{grid-template-columns:135px 1fr;gap:12px;font-size:12px}.sidebar>img{height:230px}.sidebar-box{padding:22px}.sidebar-box h2{font-size:21px}.sidebar-box p{font-size:14px}.sidebar-box .read-link{font-size:13px}.contact-columns{grid-template-columns:1fr;gap:32px}.email-address{font-size:18px}.contact-columns h2{margin-bottom:15px}.contact-info>p{margin:20px 0}.article-page h1{font-size:30px}.article-image{margin:22px 0;max-height:230px}.photo-controls{gap:10px;padding:10px}.photo-controls span{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.banner-photo{animation:none}*{transition:none!important}}

/* A single natural photograph welcomes visitors. */
.village-banner{height:340px;background:#111f39}.banner-photo{position:static;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 42%;background:none;animation:none;transform:none}
@media(min-width:1550px){.village-banner{height:390px}}
@media(max-width:760px){.village-banner{height:285px}.banner-photo{object-position:50% 42%}}
@media(max-width:520px){.village-banner{height:230px}.banner-photo{object-position:50% 44%}}

.supporter{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:23px 25px;margin-top:27px;background:var(--surface);border-left:2px solid var(--orange);border-radius:3px}
.supporter h2{font-size:20px;line-height:1.4;max-width:720px}.supporter p{font-size:13px;margin-top:7px;line-height:1.8}
.supporter-button{display:inline-flex;align-items:center;justify-content:center;gap:17px;flex-shrink:0;padding:8px 15px;border:1px solid #ee873590;border-radius:3px;font-size:13px;font-weight:550;color:var(--orange);background:transparent}
.supporter-button:hover{background:#ee873511;border-color:var(--orange)}.supporter-button .arrow{width:17px}
@media(max-width:760px){.supporter{gap:23px;padding:20px}.supporter h2{font-size:18px}}
@media(max-width:520px){.supporter{align-items:flex-start;flex-direction:column;gap:16px;padding:19px;margin-top:23px}.supporter h2{font-size:19px}.supporter p{font-size:13px}.supporter-button{padding:8px 15px}}
