:root{--ink:#263f32;--green:#294d3b;--green-dark:#203b2e;--sage:#e5eadb;--cream:#faf9f4;--paper:#fff;--line:#dce1d6;--muted:#687268;--yellow:#e4c979;--radius:5px}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:4px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #a57b27;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:Georgia,"Times New Roman",serif;line-height:1.06;letter-spacing:-.035em}h1{font-size:clamp(42px,5.5vw,78px);margin-bottom:26px}h2{font-size:clamp(32px,3.7vw,48px);margin-bottom:24px}h3{font-family:Georgia,"Times New Roman",serif;font-size:27px;line-height:1.25;margin-bottom:14px}p{margin-bottom:22px}svg{display:block;width:100%;height:100%}img{display:block;max-width:100%;object-fit:cover}[hidden]{display:none!important}.wrap{width:min(1200px,calc(100% - 88px));margin-inline:auto}.section{padding-block:84px}.eyebrow{display:block;font-size:11px;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;font-weight:650;margin-bottom:20px}.tiny-line{display:inline-block;width:25px;height:1px;background:currentColor;vertical-align:middle;margin-right:10px}.lead{font-size:18px;line-height:1.75;max-width:660px;color:#586558}.muted,.field-hint{color:var(--muted);font-size:14px}.button,.secondary,.quiet,.danger{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:47px;padding:11px 20px;border:1px solid transparent;border-radius:var(--radius);font-size:13px;font-weight:600;text-decoration:none;line-height:1.6}.button{background:var(--green);color:white}.button:hover{background:var(--green-dark)}.button>span{font-size:20px;line-height:1}.secondary{background:white;color:var(--green);border-color:var(--line)}.secondary:hover{background:#f0f3e9}.quiet{background:transparent;color:var(--muted);padding-inline:8px}.danger{color:#943c32;border-color:#dec9c5;background:white}.button-row{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.text-link{display:inline-block;font-size:13px;font-weight:600;text-decoration:none}.text-link:hover{text-decoration:underline}.text-link span{margin-left:18px}.skip-link{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip-link:focus{top:12px}.preview-bar{background:#e9dcae;color:#3d3d28;text-align:center;font-size:12px;line-height:1.4;padding:7px 14px}.preview-bar a{margin-left:15px;font-weight:600}.site-header{border-bottom:1px solid var(--line);background:var(--cream)}.header-inner{min-height:112px;max-width:1360px;padding:20px 44px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:34px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.brand-mark{width:45px;height:56px}.brand>span:last-child{display:flex;align-items:center;gap:14px}.brand strong{font-family:Georgia,serif;font-size:35px;font-weight:400;line-height:1;letter-spacing:-.04em}.brand small{border-left:1px solid #c5cdbd;padding-left:14px;line-height:1.4;font-size:10px;letter-spacing:.02em}.site-header nav{display:flex;align-items:center;gap:23px}.site-header nav a{font-size:12px;white-space:nowrap;text-decoration:none;padding-block:12px;border-bottom:1px solid transparent}.site-header nav a:hover,.site-header nav a[aria-current]{border-bottom-color:var(--green)}.site-header nav a:last-child{border:1px solid var(--line);padding:9px 14px;border-radius:var(--radius)}.menu-toggle{display:none}.announcement{background:var(--sage);padding:10px 30px;text-align:center;font-size:14px}.hero{display:grid;grid-template-columns:1.03fr 1fr;gap:60px;padding-top:64px;padding-bottom:60px;align-items:center}.hero-copy{padding-block:20px}.hero h1{max-width:490px}.hero .lead{font-size:16px;max-width:460px;margin-bottom:30px}.hero .button-row{gap:24px}.hero .eyebrow{font-size:9px;letter-spacing:.11em}.hero-footnote{display:flex;align-items:center;gap:12px;font-size:11px;line-height:1.5;margin-top:45px;color:var(--muted)}.little-sprig{width:31px;height:39px;transform:rotate(-15deg)}.hero-art{position:relative;isolation:isolate;height:500px;overflow:hidden;background:#dfe6d3;border-radius:100px 4px 4px 4px}.hero-art.has-photo{background:var(--sage)}.hero-art>img{width:100%;height:100%}.art-sun{position:absolute;top:50px;right:58px;width:100px;height:100px;background:#e4cb81;border-radius:50%}.art-hill{position:absolute;width:140%;height:290px;border-radius:50% 50% 0 0;left:-20%;bottom:-80px;transform:rotate(-10deg)}.hill-back{background:#b5c6a8;bottom:65px;left:0;transform:rotate(18deg)}.hill-front{background:#809c79}.village-houses{position:absolute;left:80px;bottom:205px;display:flex;gap:10px;align-items:flex-end;transform:rotate(0)}.village-houses i{position:relative;display:block;width:55px;height:60px;background:#f4edda;border-bottom:5px solid #748b69}.village-houses i:before{position:absolute;content:'';width:0;height:0;border-left:34px solid transparent;border-right:34px solid transparent;border-bottom:30px solid #657d62;top:-29px;left:-7px}.village-houses i:after{content:'';position:absolute;left:24px;bottom:0;background:#62795f;width:12px;height:28px}.village-houses i:nth-child(2){width:72px;height:83px;background:#e9d8b5}.village-houses i:nth-child(2):before{border-left-width:43px;border-right-width:43px}.village-houses i:nth-child(3){height:47px;background:#e8e9d7}.art-tree{position:absolute;right:35px;bottom:120px;color:#45694e;width:130px;height:180px;transform:rotate(10deg)}.art-label{position:absolute;bottom:37px;left:35px;color:white}.art-label span{display:block;font-size:8px;letter-spacing:.17em;margin-bottom:12px}.art-label strong{font-family:Georgia,serif;font-size:33px;font-weight:400;line-height:1.13}.illustration-note{position:absolute;right:14px;bottom:10px;color:#f3f6ee;font-size:9px}.community-strip{padding:20px 44px;background:var(--sage);display:flex;gap:50px;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:19px}.community-strip span:nth-child(even){font-family:Arial,sans-serif;color:#839574;font-size:20px}.intro-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.intro-section .prose{font-size:15px;line-height:1.9}.intro-section h2{margin-bottom:0}.soft-section{background:#f0f1e8;border-block:1px solid #e5e7dc}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:32px}.section-heading h2{margin-bottom:0}.section-heading .eyebrow{margin-bottom:14px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.news-card{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.news-card>img{width:100%;height:220px}.news-card>div{padding:28px}.news-card .eyebrow{font-size:9px;letter-spacing:.07em;margin-bottom:16px}.news-card h3 a{text-decoration:none}.news-card h3 a:hover{text-decoration:underline}.news-card p{font-size:14px;color:var(--muted)}.empty-state{padding:42px;text-align:center;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff65}.empty-state .empty-mark{display:block;font-size:25px;color:#8a9c72;margin-bottom:12px}.empty-state h3{font-size:25px;margin-bottom:10px}.empty-state p{font-size:14px;color:var(--muted);margin:0}.event-card{display:flex;gap:28px;padding:28px 0;border-bottom:1px solid var(--line);align-items:center}.date-tile{background:var(--sage);width:80px;min-width:80px;text-align:center;padding:10px;line-height:1}.date-tile span{font-size:10px;text-transform:uppercase;letter-spacing:.14em}.date-tile strong{display:block;font-family:Georgia,serif;font-size:34px;font-weight:400;margin:8px}.date-tile small{font-size:10px}.event-card h3{font-size:26px;margin-bottom:7px}.event-card h3 a{text-decoration:none}.event-card h3 a:hover{text-decoration:underline}.event-card p{font-size:14px;margin-bottom:0;color:var(--muted)}.event-card .event-meta{font-size:12px;margin-bottom:7px}.event-arrow{margin-left:auto;align-self:center;text-decoration:none;font-size:25px;padding:16px}.join-panel{margin-block:0 90px;border-radius:var(--radius);padding:60px 70px;background:var(--green);color:var(--cream);display:flex;justify-content:space-between;gap:80px;align-items:center;position:relative;overflow:hidden}.join-panel p{max-width:570px;font-size:15px;color:#dce5d8}.join-panel .eyebrow{color:#ccd7b6}.join-panel h2{font-size:50px}.button-light{background:var(--cream);color:var(--green)}.button-light:hover{background:var(--sage)}.join-sprig{min-width:160px;width:190px;height:230px;transform:rotate(17deg);color:#9aac85}.site-footer{border-top:1px solid var(--line);padding:55px 44px 0}.footer-top,.footer-bottom{max-width:1200px;margin:auto}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:70px;padding-bottom:40px;font-size:12px}.footer-brand{display:flex;align-items:center;gap:10px;text-decoration:none;margin-bottom:14px}.footer-brand svg{width:34px;height:39px}.footer-brand strong{font-family:Georgia,serif;font-size:32px;font-weight:400}.footer-top h2{font-family:inherit;font-size:12px;letter-spacing:0;font-weight:650;margin:10px 0 22px}.footer-top p{margin-bottom:10px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.footer-links a{text-decoration:none;color:var(--muted)}.footer-links a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-block:20px;color:var(--muted);font-size:10px}.page-heading{padding-top:80px;padding-bottom:55px;border-bottom:1px solid var(--line)}.page-heading h1{max-width:850px}.page-heading .lead{margin-bottom:0}.content-layout{display:grid;grid-template-columns:1fr 300px;gap:100px;min-height:420px}.prose{max-width:750px;font-size:17px;line-height:1.9;overflow-wrap:anywhere}.prose .button{margin-top:15px}.page-picture{width:100%;max-height:450px;margin-bottom:36px;border-radius:var(--radius)}.side-note{padding:30px;background:var(--sage);align-self:start}.side-note h2{font-size:32px}.side-note p{font-size:14px}.listing{padding-top:40px;min-height:350px}.search-field{display:block;max-width:430px;font-size:12px;font-weight:600;margin-bottom:35px}.search-field input{display:block;width:100%;margin-top:7px}.event-tabs{display:flex;gap:10px;margin-bottom:25px}.event-tabs button{padding:10px 20px;background:transparent;color:var(--green);border:1px solid var(--line);border-radius:var(--radius);font-size:13px}.event-tabs button.active{background:var(--green);color:white}.article{max-width:850px;padding-block:60px 100px}.article>.text-link{margin-bottom:45px}.article h1{font-size:clamp(37px,5vw,62px)}.article-picture{width:100%;max-height:550px;margin:30px 0 40px}.event-details{background:var(--sage);padding:25px;margin-block:30px}.event-details p{margin-bottom:10px;font-size:14px}.event-details strong{display:inline-block;min-width:70px}.message-page{padding-block:100px;max-width:850px}.message-page>.text-link{margin-bottom:55px}.message-page h1{font-size:48px}
/* Dashboard */
.admin-body{background:#f3f4ee}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:20px 35px;border-bottom:1px solid var(--line);background:var(--cream);gap:25px}.admin-header .brand>svg{width:40px;height:45px}.admin-header .brand>span{display:flex;gap:15px;align-items:center}.admin-header .brand small{font-size:12px}.admin-header>div{display:flex;align-items:center;gap:25px;font-size:12px}.signed-in{color:var(--muted)}.admin-layout{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 100px)}.admin-nav{padding:38px 24px;background:#f9faf5;border-right:1px solid var(--line)}.admin-nav>.eyebrow{font-size:9px;margin-left:12px}.admin-nav>button{display:block;width:100%;border:0;background:transparent;padding:12px 16px;text-align:left;border-radius:var(--radius);color:var(--ink);font-size:13px;margin-bottom:4px}.admin-nav>button.active{background:var(--green);color:white}.admin-nav>button:hover:not(.active){background:var(--sage)}.admin-help{margin-top:50px;padding:18px 12px;border-top:1px solid var(--line);font-family:Georgia,serif;font-size:20px}.admin-help p{font-family:"Segoe UI",Arial,sans-serif;font-size:11px;color:var(--muted);line-height:1.7;margin-top:12px}.admin-main{padding:38px 45px 80px;max-width:1600px;min-width:0}.admin-title{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:32px}.admin-title h1{font-size:38px;margin-bottom:12px}.admin-title .eyebrow{font-size:9px;margin-bottom:12px}.admin-title p{font-size:13px;color:var(--muted);margin-bottom:0}.save-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.save-actions>span{flex:1 0 100%;text-align:right;font-size:11px;color:var(--muted)}.save-actions .button,.save-actions .secondary{white-space:nowrap}.admin-card{padding:30px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:25px}.admin-card h2{font-size:28px}.admin-card p{font-size:14px;color:#647062}.admin-card p:last-child{margin-bottom:0}.welcome-card{padding:38px;background:#e6ecdc}.welcome-card p{max-width:700px}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px}.dashboard-stats>div{padding:22px;background:white;border:1px solid var(--line);border-radius:var(--radius)}.dashboard-stats span{font-size:11px;color:var(--muted);display:block}.dashboard-stats strong{font-family:Georgia,serif;font-weight:400;font-size:38px;line-height:1.4}.admin-two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}.help-list{font-size:13px;color:var(--muted);padding-left:19px}.help-list li{padding-left:5px;margin-bottom:14px}.file-label{display:block;margin-top:20px;font-size:12px}.file-label input{display:block;width:100%;margin-top:8px;font-size:12px}.file-label+p{margin-top:14px;font-size:11px}.editor-form{max-width:950px}.editor-form>label,.form-two-col>label,.picture-field>label{display:block;font-size:12px;font-weight:600;margin-bottom:23px}.editor-form label input,.editor-form label textarea,.editor-form label select{display:block;width:100%;margin-top:7px}input,textarea,select{background:#fff;border:1px solid #cbd3c4;border-radius:var(--radius);padding:10px 13px;color:var(--ink);font-size:14px;max-width:100%}textarea{resize:vertical;line-height:1.7}input[type="file"]{font-size:12px}input[type="date"],input[type="time"]{min-height:45px}.editor-form .field-hint{display:block;font-size:12px;line-height:1.8;margin:12px 0 20px}.form-two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}.page-select{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px;max-width:950px}.page-select label{display:block;font-size:12px;min-width:240px}.page-select select{display:block;width:100%;margin-top:7px}.picture-field{padding-top:18px;border-top:1px solid var(--line)}.field-label{font-size:12px;font-weight:600}.picture-preview{width:250px;height:160px;display:flex;align-items:center;justify-content:center;background:#f1f3ed;border:1px dashed #c4cdbd;border-radius:var(--radius);margin-block:10px 15px;overflow:hidden}.picture-preview img{width:100%;height:100%}.picture-preview span{font-size:12px;color:var(--muted)}.picture-field .button-row{margin-bottom:20px;gap:15px}.list-toolbar{display:flex;align-items:center;gap:20px;margin-bottom:25px}.list-toolbar>span{font-size:12px;color:var(--muted)}.admin-entry{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 30px;background:white;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:14px}.admin-entry h2{font-size:25px;margin:10px 0 5px}.admin-entry p{font-size:12px;color:var(--muted);margin:0}.status-pill{display:inline-block;border-radius:30px;padding:3px 10px;background:#e4eddd;font-size:10px;color:#345d31}.status-pill.draft{background:#f2ead1;color:#796322}.admin-entry-thumb{display:flex;align-items:center;gap:20px;min-width:0;flex:1}.admin-entry-thumb>img{width:70px;height:55px;object-fit:cover;border-radius:4px;border:1px solid var(--line);flex-shrink:0;background:var(--sage)}.admin-entry-details{min-width:0;flex:1}.pill-row{display:flex;gap:8px;align-items:center;margin-bottom:6px}.category-pill{display:inline-block;border-radius:30px;padding:3px 10px;background:#eef1e6;font-size:10px;font-weight:600;color:#2c4c36;border:1px solid #d2dbc9}.back-button{border:0;background:transparent;padding:0;margin-bottom:24px}.remove-entry{border-top:1px solid var(--line);padding-top:25px;margin-top:35px}.remove-entry p{font-size:11px;margin-top:10px;color:var(--muted)}.upload-box{display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:14px;font-weight:600}.upload-box span{font-size:11px;color:var(--muted);font-weight:400}.upload-box+.field-hint{margin:14px 0 0;font-size:12px}.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-block:25px}.media-card{border:1px solid var(--line);border-radius:var(--radius);background:white;overflow:hidden}.media-card>img{height:180px;width:100%;background:var(--sage)}.media-card>div{padding:17px;display:grid;gap:6px}.media-card strong{font-size:12px;overflow-wrap:anywhere}.media-card small{font-size:10px;color:var(--muted)}.media-card a{font-size:11px}.media-card .secondary{font-size:11px;min-height:37px;margin-top:5px}dialog{border:1px solid var(--line);border-radius:8px;width:min(920px,90vw);max-height:85vh;padding:30px;color:var(--ink)}dialog::backdrop{background:#152c2390}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-heading h2{font-size:30px;margin:0}.dialog-heading .secondary{min-height:38px}.loading-state{padding:60px;text-align:center;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:100;width:max-content;max-width:calc(100vw - 40px);box-shadow:0 5px 30px #233e3225;border:1px solid #3d664b;background:var(--green);color:white;border-radius:5px;padding:15px 22px;font-size:13px}#toast.error{background:#7b3c31;border-color:#7b3c31}.backup-notice{background:#f4e7c3;border:1px solid #d4bd82;padding:20px;margin-bottom:20px}.backup-notice p{font-size:13px;margin-bottom:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:1500px){.hero{gap:95px}.hero-art{height:540px}}
@media(max-width:1190px){.header-inner{padding-inline:30px;gap:20px}.brand small{display:none}.site-header nav{gap:18px}.wrap{width:calc(100% - 60px)}.hero{gap:35px}.hero-art{height:460px}.hero .button-row{gap:17px}.community-strip{gap:30px;font-size:16px}.admin-main{padding:30px}.admin-title{align-items:flex-start}.save-actions{min-width:240px}.admin-layout{grid-template-columns:185px minmax(0,1fr)}.admin-nav{padding-inline:14px}.admin-two-col{grid-template-columns:1fr}.media-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.header-inner{min-height:90px;flex-wrap:wrap}.brand small{display:block}.brand strong{font-size:31px}.brand-mark{height:45px;width:36px}.menu-toggle{display:flex;align-items:center;gap:15px;background:transparent;color:var(--ink);border:1px solid var(--line);padding:8px 15px;border-radius:var(--radius);font-size:12px}.site-header nav{display:none;width:100%;padding:15px 0;flex-wrap:wrap;gap:10px 24px;border-top:1px solid var(--line)}.site-header nav.open{display:flex}.hero{padding-top:35px;gap:25px}.hero h1{font-size:57px}.hero-art{height:450px}.hero .lead{font-size:15px}.hero-footnote{margin-top:30px}.hero .button-row{align-items:flex-start;flex-direction:column;gap:15px}.village-houses{left:30px;bottom:190px}.village-houses i{width:45px}.art-tree{width:90px;right:15px}.art-label{left:25px}.intro-section{gap:50px}.section{padding-block:60px}.content-layout{gap:40px;grid-template-columns:1fr 250px}.news-grid{grid-template-columns:repeat(2,1fr)}.join-panel{padding:45px;gap:35px}.join-sprig{min-width:110px;width:140px;height:180px}.footer-top{gap:30px}.admin-header{padding:18px 25px}.admin-header .signed-in{display:none}.admin-layout{grid-template-columns:160px minmax(0,1fr)}.admin-main{padding:30px 24px}.admin-title{flex-direction:column;gap:20px}.save-actions{justify-content:flex-start}.save-actions>span{text-align:left}.dashboard-stats{grid-template-columns:repeat(2,1fr)}.form-two-col{grid-template-columns:1fr;gap:0}.admin-entry{padding:20px}.admin-card{padding:24px}.upload-box{gap:12px}}
@media(max-width:640px){.wrap{width:calc(100% - 40px)}.header-inner{padding:16px 20px;min-height:80px}.brand{gap:8px}.brand>span:last-child{gap:10px}.brand small{padding-left:10px;font-size:9px}.brand strong{font-size:29px}.brand-mark{width:30px;height:40px}.hero{grid-template-columns:1fr;padding-top:28px;padding-bottom:30px;gap:28px}.hero-copy{padding-block:8px}.hero h1{font-size:58px;max-width:360px}.hero .eyebrow{font-size:8px;margin-bottom:20px}.hero .lead{font-size:16px;margin-bottom:26px}.hero .button-row{flex-direction:row;align-items:center;gap:20px}.hero-footnote{display:none}.hero-art{height:360px;border-top-left-radius:65px}.art-sun{top:28px;right:40px;width:85px;height:85px}.village-houses{left:55px;bottom:165px}.art-tree{bottom:110px;width:100px;right:22px}.art-hill{bottom:-120px}.hill-back{bottom:0}.art-label strong{font-size:28px}.community-strip{padding:16px 20px;gap:15px;flex-wrap:wrap;font-size:14px}.community-strip span:nth-child(n+4){display:none}.intro-section{grid-template-columns:1fr;gap:25px}.intro-section h2{font-size:36px}.section{padding-block:45px}.section-heading{gap:15px;align-items:flex-start}.section-heading h2{font-size:34px}.section-heading>.text-link{margin-top:30px;white-space:nowrap;font-size:11px}.news-grid{grid-template-columns:1fr}.news-card>img{height:230px}.news-card>div{padding:24px}.empty-state{padding:28px 22px}.empty-state h3{font-size:23px}.event-card{gap:16px}.date-tile{width:61px;min-width:61px;padding:9px 5px}.date-tile strong{font-size:29px}.event-card h3{font-size:23px}.event-arrow{padding:0;font-size:20px}.event-card p{font-size:12px}.join-panel{margin-bottom:45px;padding:32px;gap:0}.join-panel h2{font-size:40px}.join-panel p{font-size:14px}.join-sprig{display:none}.site-footer{padding:35px 20px 0}.footer-top{grid-template-columns:1fr;gap:24px}.footer-top>div:last-child{display:none}.footer-links{grid-template-columns:repeat(2,1fr);max-width:350px}.footer-bottom{flex-wrap:wrap;gap:10px 25px;justify-content:flex-start}.footer-bottom span:nth-child(2){display:none}.footer-bottom a{margin-left:auto}.page-heading{padding-top:45px;padding-bottom:32px}.page-heading h1{font-size:44px}.page-heading .lead{font-size:16px}.content-layout{grid-template-columns:1fr;gap:35px}.prose{font-size:16px}.side-note{padding:27px}.side-note h2{font-size:30px}.article{padding-block:35px 60px}.article>.text-link{margin-bottom:30px}.article h1{font-size:41px}.article .lead{font-size:17px}.event-tabs button{padding:9px 16px}.admin-header{padding:15px;gap:10px}.admin-header .brand small{display:none}.admin-header .brand>svg{width:30px;height:35px}.admin-header .brand strong{font-size:28px}.admin-header>div{gap:12px;font-size:10px}.admin-layout{display:block}.admin-nav{display:flex;flex-wrap:wrap;gap:5px;padding:14px 15px;border-right:0;border-bottom:1px solid var(--line)}.admin-nav>.eyebrow,.admin-help{display:none}.admin-nav>button{width:auto;font-size:11px;padding:8px 11px;margin:0}.admin-main{padding:28px 18px 70px}.admin-title{margin-bottom:25px}.admin-title h1{font-size:33px}.admin-title p{font-size:12px}.admin-card{padding:23px 20px}.dashboard-stats{gap:12px;margin-bottom:20px}.dashboard-stats>div{padding:16px}.dashboard-stats strong{font-size:32px}.dashboard-stats span{font-size:10px}.admin-two-col{gap:0}.welcome-card h2{font-size:30px}.save-actions .button,.save-actions .secondary{min-height:42px;font-size:12px;padding:10px 13px}.page-select{align-items:flex-start;flex-direction:column}.page-select label{width:100%}.editor-form>label,.form-two-col>label{font-size:12px}.admin-entry{gap:15px;padding:20px 17px}.admin-entry h2{font-size:23px}.admin-entry .secondary{padding:8px 12px;min-height:40px;font-size:12px}.media-grid{gap:12px}.media-card>img{height:130px}.media-card>div{padding:12px}.media-card strong{font-size:10px}.media-card a{font-size:10px}.picture-preview{max-width:100%}.upload-box{display:block}.upload-box input,.upload-box span{display:block;margin-top:10px}.list-toolbar{gap:15px}.list-toolbar>.button{font-size:12px}.dialog-heading h2{font-size:25px}dialog{padding:20px}.message-page h1{font-size:38px}.preview-bar{font-size:10px}.preview-bar a{white-space:nowrap}.button-row{gap:15px}input,textarea,select{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.history-edit-story{border:1px solid var(--line);padding:18px;margin-block:16px;background:#fff}.history-edit-story>summary{cursor:pointer;font-weight:600;line-height:1.7}.history-edit-story[open]>summary{margin-bottom:20px}.history-edit-story fieldset{border:0;padding:0;margin:0}
.admin-body .editor-form label.maintenance-switch{display:flex;align-items:center;gap:12px}
.admin-body .editor-form label.maintenance-switch input{width:24px;min-height:24px;flex:0 0 24px;margin:0}

.admin-body .field-hint{display:block;line-height:1.8;margin:12px 0 20px}.admin-body .editor-form label{display:block;font-size:12px;font-weight:600;line-height:1.7;margin-bottom:20px}.admin-body .editor-form .form-two-col>label,.admin-body .navigation-child>label,.admin-body .navigation-editor-item>fieldset>label,.member-admin-main .editor-form fieldset>label{margin-bottom:0}.admin-body .editor-form .form-two-col{row-gap:20px;margin-bottom:20px}

.admin-body{padding-bottom:88px}
.admin-body .admin-back-to-top{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:calc(20px + env(safe-area-inset-bottom));z-index:45;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 14px;border:1px solid var(--green);border-radius:var(--radius);background:var(--green);color:#fff;font-size:13px;font-weight:600;text-decoration:none;box-shadow:0 2px 12px #0002}
.admin-body .admin-back-to-top:hover{background:var(--green-dark)}
@media(max-width:640px){.admin-body .admin-back-to-top{right:max(12px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom))}}

/* CVRA reference-led visual design. Public styles are isolated from the editor. */
.brand-logo-img{display:block;object-fit:contain;object-position:left center;width:auto;max-width:250px;height:90px;flex-shrink:0}.public-site .site-header .brand:has(.brand-logo-img){flex-shrink:0}.public-site .site-header .header-inner:has(.brand-logo-img){padding-block:7px}.footer-brand:has(.brand-logo-img){display:inline-block;padding:10px 14px;background:#fcfbf8;border-radius:4px}.footer-brand .brand-logo-img{width:auto;max-width:250px;height:98px}.admin-header .brand-logo-img{width:auto;max-width:230px;height:78px}.maintenance-header .brand-logo-img{width:auto;max-width:280px;height:105px}.brand-motif{display:block;width:100%;height:100%}.brand-motif img{display:block;width:100%;height:100%;object-fit:contain}.brand-motif.brand-tone-faint{opacity:.10}.brand-motif.brand-tone-subtle{opacity:.18}.brand-motif.brand-tone-clear{opacity:.35}.public-site.brand-tone-faint .page-heading:after{opacity:.06}.public-site.brand-tone-subtle .page-heading:after{opacity:.10}.public-site.brand-tone-clear .page-heading:after{opacity:.18}.branding-settings{border-bottom:1px solid var(--line);padding-bottom:32px;margin-bottom:32px}.branding-settings h3{margin-top:28px}.branding-settings .picture-preview img{object-fit:contain}.branding-settings .picture-preview{background:#fcfbf8}.branding-settings>label{display:block;margin-block:24px}.branding-settings select{margin-top:8px}.branding-settings .field-hint{font-size:13px;line-height:1.7}.branding-settings>p{font-size:14px;line-height:1.8}
@media(max-width:640px){.public-site .site-header .brand-logo-img{width:auto;max-width:210px;height:78px}.public-site .site-header .header-inner:has(.brand-logo-img){padding-block:6px;gap:12px}.admin-header .brand-logo-img{width:auto;max-width:170px;height:62px}.footer-brand .brand-logo-img{width:auto;max-width:230px;height:90px}.maintenance-header .brand-logo-img{width:auto;max-width:230px;height:90px}}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:80px;align-items:start}
.public-site .contact-layout{padding-top:10px}.public-site .contact-welcome h2{font-size:30px}.contact-welcome p{font-size:16px;line-height:1.85}
.contact-form{padding:30px;background:#fff;border:1px solid var(--line);border-radius:4px}.contact-form label{display:block;font-size:14px;color:var(--ink);margin-bottom:21px}.contact-form input,.contact-form textarea{margin-top:7px;background:#fcfbf8;width:100%}.contact-name-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form .optional{color:var(--muted);font-size:12px}.contact-privacy{font-size:12px;color:var(--muted);line-height:1.8}.contact-trap{position:absolute;left:-10000px;overflow:hidden;width:1px;height:1px}
#contact-status{margin:22px 0 0;padding:15px;border-left:3px solid var(--green);font-size:14px;line-height:1.7;background:var(--sage)}#contact-status.contact-error{border-color:#a13d2d;background:#fff1ec;color:#70291c}.contact-aside .editorial-image{height:380px}.public-site .contact-aside h2{font-size:29px;margin-top:30px}.contact-aside p{font-size:15px;color:var(--muted)}
@media(max-width:900px){.contact-layout{gap:35px;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.contact-form{padding:23px}.contact-name-row{grid-template-columns:1fr;gap:0}}
@media(max-width:640px){.contact-layout{grid-template-columns:1fr}.contact-form{padding:22px 20px}.contact-aside .editorial-image{height:240px}.contact-form .button{width:100%}}
.public-site{--ink:#252b25;--green:#53694b;--green-dark:#3d5138;--sage:#edf0e8;--cream:#fcfbf8;--line:#e0e3da;--muted:#656b64;background:var(--cream);font-family:"Segoe UI",Arial,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}
.public-site h1,.public-site h2,.public-site h3{letter-spacing:-.035em;color:var(--ink)}
.public-site h1{font-size:clamp(42px,4.7vw,70px);line-height:1.08;font-weight:400}
.public-site h2{font-size:clamp(32px,3.25vw,46px);line-height:1.16}
.public-site .wrap{width:min(1180px,calc(100% - 112px))}
.public-site .section{padding-block:88px}
.public-site .eyebrow{font-size:10px;font-weight:500;letter-spacing:.19em;color:var(--green);margin-bottom:20px}
.public-site .lead{color:#555b54;font-size:17px;line-height:1.8}
.public-site .button{background:var(--green);border:1px solid var(--green);font-size:12px;font-weight:500;padding:13px 21px;min-height:47px;gap:22px;border-radius:4px;transition:background .2s}
.public-site .button:hover{background:var(--green-dark)}
.public-site .button-outline{background:#fdfcf5b8;color:var(--green);border-color:#7d8d73}
.public-site .button-outline:hover{background:#fff}
.public-site .text-link{color:var(--green);font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:22px;padding-block:7px;border-bottom:1px solid #c8d0c1}
.public-site .text-link span{margin:0;font-size:18px}
.public-site .site-header{background:#fdfcf9;border-bottom:1px solid #eeeee7}
.public-site .header-inner{max-width:1440px;min-height:104px;padding:20px 48px;gap:30px}
.public-site .brand{gap:13px;color:var(--green)}
.public-site .brand-mark{width:49px;height:59px}
.public-site .brand>span:last-child{display:block}
.public-site .brand strong{display:block;font-size:25px;letter-spacing:-.025em;color:var(--ink);line-height:1.25}
.public-site .brand small{display:block;border:0;padding:6px 0 0;font-size:8px;letter-spacing:.23em;text-transform:uppercase;color:#414a3f;line-height:1.4}
.public-site .site-header nav{gap:23px}
.public-site .site-header nav a{font-size:15px;padding:8px 0;position:relative;line-height:1.5;border:0;border-radius:0}
.public-site .site-header nav a:after{content:"";height:1px;background:var(--green);position:absolute;bottom:1px;left:0;right:100%;transition:right .2s}
.public-site .site-header nav a:hover:after,.public-site .site-header nav a[aria-current]:after{right:0}
.public-site .site-header nav a[href="/members-area"]{padding:10px 14px;background:var(--green);color:#fff;border-radius:3px}
.public-site .site-header nav a[href="/members-area"]:after{display:none}
.nav-news{position:relative;display:flex;align-items:center;gap:2px}
.news-menu-toggle{display:none;align-items:center;justify-content:center;min-height:36px;padding:0 10px;background:transparent;border:0;color:var(--green);font-size:12px;border-radius:3px}

.news-submenu{display:none;position:absolute;top:100%;left:-18px;min-width:230px;padding:10px;background:#fdfcf9;border:1px solid var(--line);border-radius:3px;box-shadow:0 10px 25px #203b2e20;z-index:30}
.nav-news.is-open>.news-submenu,.nav-news:not(.nav-menu-ready):hover>.news-submenu,.nav-news:not(.nav-menu-ready):focus-within>.news-submenu{display:flex;flex-direction:column}
.public-site .site-header .news-submenu a{display:block;width:fit-content;max-width:100%;padding:8px 12px;font-size:14px;white-space:nowrap;border-radius:2px;background:transparent !important;border-bottom:0 !important;text-decoration:none !important;position:relative;transition:color .15s ease}
.public-site .site-header .news-submenu a:after{content:"" !important;display:block !important;height:1px !important;background:var(--green) !important;position:absolute !important;bottom:4px !important;left:12px !important;right:calc(100% - 12px) !important;transition:right .2s ease !important}
.public-site .site-header .news-submenu a:hover:after,.public-site .site-header .news-submenu a:focus-visible:after,.public-site .site-header .news-submenu a[aria-current="page"]:after{right:12px !important}
.public-site .site-header .news-submenu a:hover,.public-site .site-header .news-submenu a:focus-visible,.public-site .site-header .news-submenu a[aria-current="page"]{background:transparent !important;color:var(--green-dark) !important;text-decoration:none !important}
/* line 45 cleaned */
.public-site .home-hero{position:relative;isolation:isolate;min-height:595px;display:flex;align-items:center;overflow:hidden;background:#edf0e5}
.home-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center var(--hero-photo-y,50%);z-index:-3}
.home-hero-wash{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(253,252,247,.96) 0%,rgba(253,252,247,.90) 22%,rgba(253,252,247,.55) 43%,rgba(253,252,247,.05) 66%)}
.home-hero-inner{padding-block:70px}
.home-hero-copy{max-width:590px}
.home-hero-copy h1{max-width:550px;margin-bottom:25px}
.home-hero-copy .eyebrow:before{content:"";display:block;width:72px;height:1px;background:#879879;margin-bottom:26px}
.home-hero-copy .lead{max-width:445px;font-size:16px;margin-bottom:29px}
.home-hero-copy .button-row{gap:13px}
/* Community Values Band: Elevated tactile pillar cards with soft icon badges */
.values-band {
  background: transparent;
  padding-block: 42px 24px;
  position: relative;
  z-index: 5;
}
.values-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding: 0;
}
.values-grid > div {
  background: #ffffff;
  border: 1px solid #e1e7dc;
  border-radius: 10px;
  padding: 26px 20px 22px;
  text-align: center;
  box-shadow: 0 4px 18px rgba(32, 59, 46, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.values-grid > div:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(32, 59, 46, 0.08);
  border-color: #cbd8c4;
}
.values-grid svg {
  width: 52px;
  height: 52px;
  padding: 12px;
  border-radius: 50%;
  background: #edf2e8;
  border: 1px solid #dce4d6;
  color: var(--green-dark);
  margin: 0 auto 16px auto;
  box-sizing: border-box;
  transition: background 0.2s ease, transform 0.2s ease;
}
.values-grid > div:hover svg {
  background: #e2ebd9;
  transform: scale(1.05);
}
.public-site .values-grid h2 {
  font-family: Georgia, serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  color: var(--green-dark) !important;
  text-transform: none !important;
  letter-spacing: -0.01em !important;
  line-height: 1.3 !important;
  margin: 0 0 8px 0 !important;
}
.values-grid p {
  font-size: 13.5px !important;
  line-height: 1.55 !important;
  color: #556254 !important;
  margin: 0 !important;
}
@media (max-width: 900px) {
  .values-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
    padding-block: 10px !important;
  }
}
@media (max-width: 520px) {
  .values-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .values-grid > div {
    padding: 20px 16px !important;
  }
}
.public-site .section.next-event{padding-block:48px}
.public-site .village-intro.next-event{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center;background:#ffffff;border:1px solid #e4e8df;border-radius:10px;padding:36px 42px;box-shadow:0 4px 20px rgba(32,59,46,0.04)}
.village-intro{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}
.village-image{height:340px;position:relative;overflow:hidden;border-radius:8px;background:var(--sage)}
.village-image img{width:100%;height:100%;object-fit:cover;object-position:85% center;border-radius:8px}
.village-image:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#21331970)}
.village-image>span{position:absolute;z-index:1;left:27px;bottom:25px;color:#fff;font-family:Georgia,serif;font-size:22px;font-style:italic}
.village-intro-copy h2{margin-bottom:16px;line-height:1.2}
.village-intro-copy .prose{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:20px}
.featured-event-date{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--green-dark);background:#f0f4ec;padding:6px 14px;border-radius:20px;margin-bottom:12px}
.featured-event-location{font-size:14px;color:#5c6858;margin-bottom:14px}
.home-invitation{background:transparent;border:0;padding-block:12px 56px}
.invitation-inner{display:grid;grid-template-columns:90px 1fr auto;gap:40px;align-items:center;padding:38px 48px;background:linear-gradient(135deg,#203b2e 0%,#294d3b 100%);color:#fcfbf8;border-radius:10px;box-shadow:0 8px 24px rgba(32,59,46,0.12)}
.invitation-mark{height:90px;color:#9cb894;transform:rotate(5deg)}
.invitation-inner .eyebrow{margin-bottom:8px;color:#c0d4bb;font-size:11px;letter-spacing:.16em}
.public-site .invitation-inner h2{font-size:clamp(26px,2.6vw,36px);margin-bottom:10px;color:#ffffff}
.invitation-inner p{font-size:15px;color:#dce5d8;max-width:620px;margin:0;line-height:1.6}
.invitation-inner .button{background:#ffffff;color:#203b2e;border-color:#ffffff;box-shadow:0 2px 8px rgba(0,0,0,0.1)}
.invitation-inner .button:hover{background:#edf3e9;color:#172d23}
.public-site .site-footer{padding:55px 56px 0;background:#203b2e;color:#eef3e9;border-top:0}
.public-site .footer-top{max-width:1180px;gap:70px;grid-template-columns:1.2fr 1fr 1fr;padding-bottom:42px}
.public-site .footer-brand{color:#c8d8bd}
.public-site .footer-brand strong{font-size:27px;color:#fff}
.public-site .footer-brand svg{width:37px;height:45px}
.public-site .footer-top h2{color:#fff;font-size:14px;font-family:"Segoe UI",Arial,sans-serif;font-weight:500;letter-spacing:0}
.public-site .footer-top .muted{font-size:12px;color:#c8d5c4}
.public-site .footer-links a{line-height:1.9;color:#d7e2d2;font-size:13px}.public-site .footer-links a:hover{color:#fff}
.public-site .footer-top .text-link{font-size:12px;color:#fff;border-bottom-color:#94a68d}
.public-site .footer-bottom{max-width:1180px;font-size:11px;letter-spacing:.02em;color:#c8d5c4;border-top-color:#526b59}
.public-site .page-heading{position:relative;padding-top:36px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.public-site .page-heading:after{content:"";position:absolute;right:10px;top:15px;width:110px;height:120px;opacity:.07;background:url('/assets/branch.svg?v=brand-3') no-repeat center/contain;pointer-events:none}
.public-site .page-heading h1{font-size:clamp(32px,3.4vw,46px);max-width:850px;margin-bottom:12px;line-height:1.15}
.public-site .page-heading h1:after{content:"";display:block;width:40px;height:2px;background:var(--green);margin-top:14px}
.public-site .page-heading .eyebrow{margin-bottom:10px;letter-spacing:.14em;font-size:11px}
.public-site .page-heading .lead{font-size:16px;max-width:720px;line-height:1.6;margin-bottom:0}
.public-site .page-heading + .section,
.public-site .page-heading + .listing,
.public-site .page-heading + .history-introduction,
.public-site .page-heading + .editorial-layout,
.public-site .page-heading + .committee-section,
.public-site .page-heading + .privacy-notice-content,
.public-site .page-heading + .service-directory,
.public-site .page-heading + .involvement-page,
.public-site .page-heading + .involvement-options,
.public-site .page-heading + .member-entry,
.public-site .page-heading + .contact-layout,
.public-site .page-heading + .gallery-section,
.public-site .page-heading + .membership-page{padding-top:38px}
.public-site .editorial-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:95px;padding-top:38px;align-items:start;min-height:420px}
.editorial-copy .prose{font-size:16px;line-height:1.95;color:#5f665e}
.editorial-copy>.button{margin-top:10px}
.editorial-image{height:365px;position:relative;border-radius:3px;overflow:hidden}
.editorial-image>img{width:100%;height:100%;object-fit:cover;object-position:85% center}
.image-caption{position:absolute;bottom:0;left:0;right:0;padding:15px 22px;background:#f6f7edec;color:var(--green);font-family:Georgia,serif;font-style:italic;font-size:16px}
.involvement-options{display:grid;grid-template-columns:repeat(3,1fr);background:#f1f2eb;margin-block:0 80px;padding-block:32px}
.involvement-options article{text-align:center;padding:4px 35px;border-right:1px solid var(--line)}
.involvement-options article:last-child{border:0}
.involvement-options svg{width:34px;height:34px;color:var(--green);margin:0 auto 20px}
.public-site .involvement-options h2{font-size:25px;margin-bottom:15px}
.involvement-options p{font-size:13px;color:var(--muted);line-height:1.8}
.public-site .listing{padding-top:15px;min-height:380px}
.public-site .search-field{font-weight:400;max-width:370px;color:var(--muted)}
.public-site .search-field input{background:#fff;border-color:var(--line);font-size:14px}
.public-site .news-grid{gap:30px}
.public-site .news-card{background:transparent;border:1px solid #e8e9e1;border-radius:3px;overflow:hidden;box-shadow:none}
.public-site .news-card>img{height:215px;width:100%}
.public-site .news-card>div{padding:25px}
.public-site .news-card .eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:13px}
.public-site .news-card h3{font-size:25px}
.public-site .news-card p{font-size:13px;line-height:1.8}
.public-site .empty-state{background:#f2f3ec;border:0;padding:45px;text-align:left;border-left:2px solid #a2b094}
.public-site .empty-mark{display:none}
.public-site .empty-state h3{font-size:27px}
.public-site .empty-state p{font-size:14px;max-width:600px;margin-bottom:0}
.public-site .event-card{padding:27px 0;gap:27px}
.public-site .event-card h3{font-size:27px}
.public-site .date-tile{background:#eef1e8;border-radius:3px;width:82px;min-width:82px}
.public-site .date-tile strong{font-size:35px}
.public-site .event-tabs button{border-radius:3px}
.public-site .article{padding-top:48px}
.public-site .article h1{font-size:clamp(39px,4.7vw,62px)}
.public-site .article .prose{color:#555f52}
@media(min-width:901px) and (max-width:1150px){.public-site .header-inner{padding-inline:30px;gap:20px}.public-site .brand strong{font-size:21px}.public-site .brand-mark{width:37px;height:48px}.public-site .site-header nav{gap:15px}.public-site .site-header nav a{font-size:14px}.public-site .site-header nav a[href="/members-area"]{padding:9px}.public-site .brand small{font-size:7px}.village-intro{gap:45px}.public-site .editorial-layout{gap:45px}}
@media(max-width:900px){.public-site .wrap{width:calc(100% - 60px)}.public-site .header-inner{padding:17px 30px;min-height:90px}.public-site .brand strong{font-size:24px}.public-site .brand small{display:block}.public-site .brand-mark{width:40px;height:50px}.public-site /* mobile nav in 138 cleaned */.public-site .menu-toggle{border-color:#cad2c2}.public-site .home-hero{min-height:555px}.home-hero-copy{max-width:510px}.home-hero-copy h1{font-size:58px;max-width:450px}.home-hero-copy .lead{max-width:395px}.home-hero-wash{background:linear-gradient(90deg,#fdfcf7f5,#fdfcf7d6 38%,#fdfcf74a 85%)}.public-site .section{padding-block:60px}.village-intro{gap:40px}.village-image{height:340px}.village-intro-copy h2{font-size:33px}.values-grid>div{padding-inline:13px}.values-grid p{font-size:11px}.values-grid{padding-block:30px}.invitation-inner{grid-template-columns:65px 1fr;gap:25px}.invitation-inner>.button{grid-column:2;justify-self:start}.invitation-mark{height:85px}.public-site .editorial-layout{gap:40px;padding-top:32px}.editorial-image{height:330px}.involvement-options article{padding-inline:20px}.public-site .involvement-options h2{font-size:22px}.public-site .footer-top{gap:30px}.public-site .page-heading:after{width:90px;height:100px;right:0;top:45px}}
@media(max-width:640px){.public-site .wrap{width:calc(100% - 40px)}.public-site .header-inner{padding:15px 20px;min-height:84px;gap:18px}.public-site .brand{gap:9px}.public-site .brand strong{font-size:21px}.public-site .brand small{font-size:7px;letter-spacing:.16em;padding-top:5px}.public-site .brand-mark{width:32px;height:43px}.public-site .menu-toggle{padding:8px 10px;gap:8px;font-size:11px}.public-site .home-hero{min-height:650px;align-items:flex-start}.home-hero-inner{padding-block:42px 235px}.home-hero-copy h1{font-size:49px;max-width:350px;margin-bottom:20px}.home-hero-copy .eyebrow{font-size:8px;letter-spacing:.16em;margin-bottom:18px}.home-hero-copy .eyebrow:before{margin-bottom:19px;width:48px}.home-hero-copy .lead{font-size:14px;line-height:1.8;max-width:330px;margin-bottom:24px}.home-hero-image{object-position:72% var(--hero-photo-y,50%)}.home-hero-wash{background:linear-gradient(180deg,#fdfcf7fa 0%,#fdfcf7f0 45%,#fdfcf77a 66%,#fdfcf700 100%)}.home-hero-copy .button-row{gap:10px}.public-site .home-hero .button{font-size:10px;padding:10px 12px;gap:12px;min-height:42px}.values-grid{grid-template-columns:1fr 1fr;row-gap:27px;padding-block:29px}.values-grid>div{padding-inline:10px}.values-grid>div:nth-child(2){border-right:0}.values-grid svg{width:29px;height:29px;margin-bottom:11px}.public-site .values-grid h2{font-size:9px;letter-spacing:.05em}.values-grid p{font-size:11px}.public-site .section{padding-block:45px}.village-intro{grid-template-columns:1fr;gap:30px}.village-image{height:275px}.village-intro-copy h2{font-size:35px}.village-intro-copy .prose{font-size:14px}.village-image>span{font-size:21px;left:23px}.invitation-inner{grid-template-columns:45px 1fr;gap:20px;padding-block:35px}.invitation-mark{height:65px}.public-site .invitation-inner h2{font-size:27px}.invitation-inner .eyebrow{font-size:8px}.invitation-inner p{font-size:12px}.invitation-inner>.button{grid-column:2;font-size:11px}.public-site .site-footer{padding:35px 20px 0}.public-site .footer-top{grid-template-columns:1fr;gap:23px}.public-site .footer-top>div:last-child{display:block}.public-site .footer-bottom{font-size:9px;gap:10px 20px}.public-site .page-heading{padding-block:43px 25px}.public-site .page-heading h1{font-size:41px;margin-bottom:20px}.public-site .page-heading h1:after{margin-top:20px}.public-site .page-heading .lead{font-size:14px;max-width:100%}.public-site .page-heading:after{width:60px;height:75px;top:24px}.public-site .page-heading .eyebrow{font-size:8px;position:relative;z-index:1}.public-site .editorial-layout{grid-template-columns:1fr;gap:32px;padding-top:28px;min-height:0}.editorial-copy .prose{font-size:15px}.editorial-image{height:280px}.involvement-options{grid-template-columns:1fr;margin-bottom:45px;padding-block:0}.involvement-options article{padding:28px;border-right:0;border-bottom:1px solid var(--line)}.involvement-options svg{margin-bottom:15px}.involvement-options p{margin-bottom:12px}.public-site .news-grid{grid-template-columns:1fr}.public-site .news-card>img{height:225px}.public-site .empty-state{padding:30px 25px}.public-site .empty-state h3{font-size:25px}.public-site .empty-state p{font-size:13px}.public-site .event-card{gap:16px}.public-site .event-card h3{font-size:23px}.public-site .date-tile{width:63px;min-width:63px}.public-site .date-tile strong{font-size:29px}.public-site .event-arrow{font-size:22px}.public-site .article{padding-top:35px}.public-site .article .lead{font-size:16px}.public-site .article h1{font-size:39px}}

/* Keep navigation available throughout every public page, without changing its height. */
.public-site .site-header{position:sticky;top:0;z-index:80;background:#fdfcf9;transition:box-shadow .2s ease}
.public-site .site-header.is-scrolled{box-shadow:0 4px 18px #263a2414;border-bottom-color:#dce2d5}
.public-site :target{scroll-margin-top:145px}
.public-site .site-header nav.open{max-height:calc(100dvh - 110px);overflow-y:auto}
/* The words remain still while only the three background photographs crossfade. */
.home-hero .hero-slide{opacity:0;transition:opacity 2s ease;pointer-events:none}
.home-hero .hero-slide.is-active{opacity:1}
.home-hero .home-hero-wash{pointer-events:none}
.slideshow-controls{position:absolute;bottom:25px;right:max(30px,calc((100% - 1180px)/2));display:flex;align-items:center;padding:0;background:transparent;border:0;box-shadow:none;z-index:2}
.slide-dots{display:flex;gap:1px}
.slideshow-controls .slide-dots button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:36px;padding:0;border:0;background:transparent;border-radius:0;cursor:pointer}
.slide-dots span{display:block;width:9px;height:9px;border:0;border-radius:50%;background:#fff;transition:background .2s ease}
.slide-dots [aria-pressed="true"] span{background:#000;box-shadow:0 0 0 2px #fff}
.slide-dots button:hover span{transform:scale(1.15)}
.slide-dots button:focus-visible{outline:2px solid #fff;outline-offset:0;border-radius:3px}
.slideshow-settings>p{font-size:13px;color:var(--muted);line-height:1.8;max-width:700px}
.slideshow-admin-slide{border:1px solid var(--line);border-radius:5px;padding:20px;margin:24px 0}
.slideshow-admin-slide legend{font-family:Georgia,serif;font-size:24px;padding-inline:8px}
.slideshow-admin-slide .picture-field{border:0;padding:0}
@media(max-width:640px){.public-site :target{scroll-margin-top:110px}.slideshow-controls{bottom:20px;right:20px}.slideshow-controls button{height:36px}.home-hero-copy{position:relative;z-index:1}}
@media(prefers-reduced-motion:reduce){.home-hero .hero-slide,.public-site .site-header{transition:none}}

/* Show complete event posters instead of cropping their lettering. */
.next-event .village-image:after{display:none}
.next-event .has-event-picture img{object-fit:contain;object-position:center;background:#edf0e6}
.featured-event-date{font-size:16px;color:var(--green);margin-bottom:10px}
.featured-event-location{font-size:14px;color:var(--muted);margin-bottom:22px}

/* Full posters, with a compact calendar/date badge at the lower left. */
.events-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.events-gallery[hidden]{display:none}.events-gallery>.empty-state{grid-column:1/-1}
.event-picture-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden}
.event-picture{position:relative;background:#eef1e8}
.event-picture>img{width:100%;height:auto;max-height:330px;object-fit:contain;display:block}
.event-date-box{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:fit-content;max-width:100%;padding:7px 13px;background:var(--green-dark);color:#fff;border-radius:4px;font-size:12.5px;font-weight:600;line-height:1.4;margin:0 auto 16px;box-shadow:0 2px 6px rgba(32,59,46,.18);box-sizing:border-box;align-self:center}
.event-date-box svg{width:16px;height:16px;flex:none;stroke:#fff;stroke-width:1.8}
.event-date-box span{min-width:0;overflow-wrap:anywhere}
.event-picture-date{display:none}
.event-picture-copy{padding:23px 24px 15px;flex:1;display:flex;flex-direction:column}.public-site .event-picture-copy h2{font-size:26px;line-height:1.15;margin-bottom:12px;overflow-wrap:anywhere;text-align:left;width:100%}
.event-picture-copy p{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 10px;text-align:left;width:100%}.event-picture-copy .event-location{font-size:12px;font-weight:600;color:#2c3a2a;margin-bottom:12px;text-align:left;width:100%}
.event-picture-copy .event-time{display:none}
.public-site .newsletter-card>img{height:285px;object-fit:contain;background:#f7f5ef;padding:12px}.newsletter-issue .article-picture{max-height:none;height:auto;object-fit:contain}.newsletter-issue>.text-link{margin-bottom:25px}.news-category-picture h2{font-size:inherit;margin:0}.news-category-picture figcaption p{font-family:"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.8;letter-spacing:0;color:var(--muted);margin:16px 0 0;max-width:620px}.news-category-picture.no-picture{grid-template-columns:1fr}
.event-details-tab{display:flex;justify-content:space-between;gap:15px;padding:15px 24px;background:var(--green);color:#fff;font-size:13px;text-decoration:none;font-weight:600}.event-details-tab:hover{background:#203b2e}.event-details-tab:focus-visible{outline:3px solid #000;outline-offset:-4px}
.article-picture{object-fit:contain;background:#eef1e8}
.news-filters{display:flex;gap:24px;flex-wrap:wrap;align-items:end;margin-bottom:30px}.news-filters .search-field{flex:1;min-width:220px;margin:0}.news-filters select{display:block;width:100%;margin-top:7px;min-height:44px}
@media(max-width:1000px){.events-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.events-gallery{grid-template-columns:1fr;gap:24px}.event-picture>img{max-height:350px}.event-picture-copy{padding:20px}.public-site .event-picture-copy h2{font-size:28px}.news-filters{gap:15px}.news-filters .search-field{min-width:100%;max-width:100%}}

.village-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.village-photo-grid figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 3px 14px rgba(32,59,46,.05);transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column}.village-photo-grid figure:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(32,59,46,.1)}.village-photo-grid a{display:block;background:#edf1e8;overflow:hidden;cursor:zoom-in}.village-photo-grid img{display:block;width:100%;height:280px;object-fit:cover;transition:transform .3s ease}.village-photo-grid a:hover img{transform:scale(1.03)}.village-photo-grid figcaption{padding:20px 22px;flex:1}.public-site .village-photo-grid h2{font-size:22px;margin-bottom:8px;color:var(--green-dark)}.village-photo-grid figcaption p{font-size:14px;line-height:1.7;color:var(--muted);margin-bottom:0}.gallery-section>.prose{margin-bottom:30px}@media(max-width:1000px){.village-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.village-photo-grid{grid-template-columns:1fr;gap:22px}.village-photo-grid img{height:280px}}
.history-introduction{padding-block:18px 65px;display:grid;gap:45px;align-items:center}.history-introduction.with-picture{grid-template-columns:.9fr 1.1fr}.history-introduction .prose{font-size:17px;line-height:1.9;color:var(--muted)}.history-photo{margin:0;min-width:0}.history-photo img{display:block;width:100%;max-height:440px;object-fit:contain;border-radius:4px;background:var(--sage)}.history-photo figcaption{padding-top:14px;font-size:11px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}.history-photo figcaption p{margin:0 0 5px;font-size:12px}.history-photo figcaption a{text-decoration:underline;text-underline-offset:3px}.history-timeline{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;padding-block:30px;border-block:1px solid var(--line)}.history-timeline a{font-size:12px;line-height:1.5;text-decoration:none;border-top:2px solid #cad3c4;padding-top:14px}.history-timeline a:hover{border-color:var(--green)}.history-timeline span{display:block;font-family:Georgia,serif;font-size:26px;color:var(--green);margin-bottom:8px}.history-story{padding-block:70px;border-bottom:1px solid var(--line);scroll-margin-top:130px}.history-story.with-picture{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.history-story:nth-child(even).with-picture .history-photo{grid-column:1;grid-row:1}.history-story:nth-child(even).with-picture .history-story-copy{grid-column:2}.history-story:not(.with-picture) .history-story-copy{max-width:790px}.public-site .history-story h2{font-size:clamp(30px,3vw,43px);line-height:1.15;margin:0 0 25px}.history-story .prose{color:var(--muted);font-size:15px;line-height:1.9}.history-story .eyebrow{display:block}.history-sources{display:flex;flex-direction:column;align-items:start;gap:8px;margin-top:25px;font-size:12px;overflow-wrap:anywhere}.history-sources>span{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--green)}.history-sources a{color:var(--green);text-decoration:underline;text-underline-offset:4px}.history-stories{padding-bottom:70px}.history-editor{padding-top:30px}.history-editor fieldset{margin-bottom:30px}.history-editor .button-row{margin-block:20px}
@media(max-width:900px){.history-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}.history-story.with-picture{gap:35px}.history-introduction.with-picture{gap:30px}}
@media(max-width:640px){.history-introduction.with-picture,.history-story.with-picture{grid-template-columns:1fr}.history-story:nth-child(even).with-picture .history-photo,.history-story:nth-child(even).with-picture .history-story-copy{grid-column:auto;grid-row:auto}.history-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.history-timeline span{font-size:23px}.history-story{padding-block:45px;scroll-margin-top:100px}.history-introduction{padding-bottom:40px}.history-photo img{max-height:340px}}

/* Warm photographic treatment for the village-history collection. Original files remain unchanged. */
.history-photo img{filter:sepia(.24) saturate(.8);box-shadow:0 8px 26px #4c3d2510}.history-timeline{background:#f3efe6;border-color:#d8d0c1}.history-stories .history-story{border-color:#ded5c5}

/* Let newsletter copy set the row height; crop the photo to match it. */
@media(min-width:641px){
  .news-category-picture[data-news-category-picture="newsletter"]>img{
    contain:size;
    height:100%;
    min-height:0;
    align-self:stretch;
  }
}

/* A calm, self-contained maintenance page; illustration is decorative original line art. */
.maintenance-page{min-height:100vh;background:#f7f5ef;display:flex;flex-direction:column}.maintenance-header{max-width:1180px;width:100%;margin:auto;padding:35px 30px}.maintenance-header .brand{display:flex;align-items:center;gap:15px}.maintenance-header .brand-mark{width:48px;color:#52684c}.maintenance-card{width:calc(100% - 60px);max-width:1180px;margin:20px auto 55px;display:grid;grid-template-columns:1.05fr 1fr;gap:45px;align-items:center;flex:1}.maintenance-copy h1{font-size:clamp(34px,4vw,60px);line-height:1.12;max-width:650px;margin:22px 0}.maintenance-copy .prose{max-width:550px}.maintenance-copy .button{margin-top:25px}.maintenance-art{min-width:0}.maintenance-art img{width:100%;max-height:430px;object-fit:contain;border-radius:5px}.maintenance-drawing{width:100%;height:auto}.maintenance-footer{border-top:1px solid #d9ddcf;padding:24px 30px;display:flex;justify-content:space-between;gap:20px;color:#52684c;font-size:13px}.maintenance-settings{padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid #d9ddcf}.maintenance-switch{display:flex;align-items:center;gap:12px;font-weight:600}.maintenance-switch input{width:24px;min-height:24px;accent-color:#52684c}.maintenance-settings .text-link{display:inline-block;margin-bottom:24px}.news-category-picture{margin:0 0 35px;display:grid;grid-template-columns:minmax(180px,32%) 1fr;align-items:center;gap:30px;background:#f0eee6}.news-category-picture[hidden]{display:none}.news-category-picture img{width:100%;height:300px;object-fit:cover}.news-category-picture figcaption{font-family:var(--serif,Georgia,serif);font-size:clamp(26px,3vw,42px);padding:25px}
@media(max-width:640px){.maintenance-header{padding:24px}.maintenance-card{width:calc(100% - 40px);grid-template-columns:1fr;gap:8px;margin:10px auto 30px}.maintenance-art{order:-1;max-width:290px;width:100%;margin:auto}.maintenance-copy .button{width:100%;justify-content:center}.maintenance-footer{padding:22px 20px;flex-wrap:wrap}.news-category-picture{grid-template-columns:1fr;gap:0}.news-category-picture img{height:250px}.news-category-picture figcaption{padding:20px}}


.public-site .about-village h2,.public-site .about-association h2{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.2;margin:0 0 24px}.public-site .about-association{border-top:1px solid var(--line)}.public-site .about-association .prose{max-width:850px}.public-site .about-association .hero-actions{margin-top:30px}

.public-site .site-header .news-submenu a{white-space:normal;line-height:1.4}.news-submenu{width:300px;max-width:calc(100vw - 40px)}
@media(min-width:1361px){#sponsors-submenu{left:0;min-width:0;width:210px;padding:8px}}
.page-section-links .service-topic-grid{margin-top:0;margin-bottom:20px}.page-section-links .service-topic-card h2{margin-top:0}
.public-site .service-topic-card{display:flex;flex-direction:column;align-items:center;text-align:center}.public-site .service-topic-card>.text-link{margin-top:auto;align-self:center;text-align:center}
@media(max-width:1360px){.news-submenu{width:auto;max-width:100%}}

.public-site .committee-introduction{max-width:850px;margin-bottom:42px}.committee-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.committee-profile{border:1px solid var(--line);background:#fdfcf9;border-radius:3px;overflow:hidden}.public-site .committee-portrait{width:100%;height:310px;object-fit:contain;background:var(--sage);display:block}.committee-profile-copy{padding:25px}.public-site .committee-profile h2{font-size:1.55rem;margin:0 0 10px}.public-site .committee-role{color:var(--green);margin:0 0 16px}.public-site .committee-profile .prose{font-size:15px;line-height:1.8}.committee-contact{margin-top:55px;padding:35px;background:var(--sage)}.committee-no-picture{height:310px;display:grid;place-items:center;background:var(--sage);color:var(--green)}.committee-no-picture svg{width:90px;height:90px}.committee-page-picture img{width:100%;max-height:380px;object-fit:contain;margin-bottom:35px}@media(max-width:1000px){.committee-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.committee-grid{grid-template-columns:1fr}.committee-profile-copy{padding:22px}.committee-contact{padding:25px}}

/* line 219 cleaned */
#sponsors-submenu{left:0;right:auto}

.planning-meta{margin:18px 0;padding:16px;background:#eef1e8;border-radius:5px}.planning-status{display:block;color:#344b30}.planning-meta p{font-size:14px;overflow-wrap:anywhere}.planning-links{display:grid;gap:10px;margin-top:12px}.planning-index{display:flex;flex-wrap:wrap;gap:12px 22px;margin:28px 0;padding:20px;background:#f1f3ec}.planning-index a{color:#344b30}.news-card[id]{scroll-margin-top:130px}

.news-second-picture{margin:30px 0}.news-second-picture img{display:block;width:100%;max-height:1000px;object-fit:contain}

.public-site .about-village .prose,.public-site .about-association .prose{font-size:16px;line-height:1.95;color:#5f665e}
.public-site .about-village{padding-bottom:28px}.public-site .about-association{padding-top:32px}.retained-favicon{margin:18px 0 28px;padding:18px;border:1px solid var(--line);border-radius:4px}.retained-favicon img{width:64px;height:64px;object-fit:contain;margin-bottom:14px}.retained-favicon p{margin-bottom:14px}

.service-directory{padding-top:0}.service-intro{max-width:850px}.service-checked{font-size:13px;color:#626b60}.service-index{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 45px;padding:24px;background:var(--sage);border-radius:5px}.service-index strong{width:100%;font-family:Georgia,serif;font-size:24px;font-weight:400;margin-bottom:8px}.service-index a{background:#fff;border:1px solid #cdd5c6;border-radius:3px;color:#344b30;padding:10px 15px;text-decoration:none;font-size:15px}.service-index a:hover,.service-index a:focus-visible{background:#53694b;color:white}.service-group,.service-guide{scroll-margin-top:170px;margin-bottom:48px}.service-group-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:12px}.service-group-heading h2{margin:0;font-size:30px}.service-group-heading>a{font-size:13px;color:#52684c;white-space:nowrap}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.service-card{padding:25px;background:#fff;border:1px solid var(--line);border-top:3px solid #71836a;border-radius:4px;min-width:0}.service-card h3{font-size:23px;margin:0 0 12px;font-weight:400}.service-card .prose{font-size:16px;line-height:1.8}.service-card .prose p{margin:0 0 14px}.service-links{display:flex;align-items:flex-start;flex-direction:column;gap:12px;overflow-wrap:anywhere}.service-links a{max-width:100%;color:#344b30;font-size:15px}.service-links .service-phone{font-size:18px;font-weight:600}.service-guide{background:var(--sage);padding:30px}.service-guide figure{margin:0}.service-guide img{width:100%;height:auto;display:block}.service-guide figcaption{font-size:15px;line-height:1.7;margin-top:18px;max-width:850px}.service-correction{padding:25px 0;border-top:1px solid var(--line)}#services-top{scroll-margin-top:150px}.service-card a:focus-visible,.service-group-heading a:focus-visible{outline:3px solid #52684c;outline-offset:4px}@media(max-width:650px){.service-grid{grid-template-columns:1fr}.service-group-heading{align-items:flex-start;flex-direction:column;gap:10px}.service-group-heading h2{font-size:27px}.service-card{padding:22px}.service-guide{padding:18px}.service-index{padding:20px}.service-index a{padding:10px 12px}.service-group,.service-guide{scroll-margin-top:125px}}

.service-lgr{scroll-margin-top:170px;background:#f2f4ee;padding:35px;margin:35px 0 50px;border-left:4px solid #71836a}.service-lgr .prose{max-width:880px;font-size:16px;line-height:1.95}.lgr-logo{margin:25px 0}.lgr-logo img{display:block;width:300px;max-width:100%;height:auto}.lgr-logo figcaption{font-size:12px;margin-top:10px;max-width:550px;color:#5f665e}.service-lgr h2{font-size:32px}@media(max-width:650px){.service-lgr{padding:22px;scroll-margin-top:125px}.service-lgr h2{font-size:28px}}

.public-site .sponsor-feature .editorial-image{align-self:start;background:transparent;height:auto;min-height:0;overflow:visible}.public-site .sponsor-feature .editorial-image img{display:block;height:auto;min-height:0;max-height:none;object-fit:contain}.sponsor-feature .image-caption{display:none}.sponsor-links{margin:25px 0}.sponsor-feature>.editorial-copy>.text-link{margin-top:20px}
.public-site .sponsor-links a.button{color:#fff}
.service-defibs{scroll-margin-top:170px;background:#eef2e7;padding:30px;margin:30px 0 50px;border:1px solid #c6d2bc;border-top:4px solid #52684c}.service-defibs h2{font-size:32px}.defib-emergency{display:inline-block;font-size:20px;font-weight:600;color:#344b30;margin:0 0 20px}.defib-locations{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:35px;margin:10px 0 30px;align-items:start}.defib-locations article{padding:15px 0;border-bottom:1px solid #cbd4c3}.defib-locations h3{font-size:23px;margin:0 0 12px;font-weight:400}.defib-locations p{font-size:16px;line-height:1.8;margin:0 0 10px}.defib-locations img{width:100%;height:auto;max-width:240px}.defib-steps{padding-left:26px;max-width:850px;font-size:16px;line-height:1.9}.defib-steps li{padding-left:8px;margin-bottom:18px}@media(max-width:650px){.service-defibs{padding:22px;scroll-margin-top:125px}.service-defibs h2{font-size:28px}.defib-locations{grid-template-columns:1fr;gap:20px}}

.service-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:35px 0}.service-topic-card{display:block;border:1px solid var(--line);border-top:3px solid #71836a;padding:28px;background:#fff;text-decoration:none;color:var(--ink)}.service-topic-card h2{font-size:28px;line-height:1.3;margin:12px 0}.service-topic-card p{font-size:16px;line-height:1.8;color:#5f665e}.service-topic-card:hover,.service-topic-card:focus-visible{background:var(--sage);outline:2px solid #71836a;outline-offset:3px}.service-back{display:inline-block;margin-bottom:25px}#useful-submenu{min-width:300px}@media(max-width:650px){.service-topic-grid{grid-template-columns:1fr}.service-topic-card{padding:24px}#useful-submenu{min-width:0}}

.involvement-intro{max-width:880px}.involvement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:35px 0}.involvement-grid article{padding:28px;background:#fff;border:1px solid var(--line);border-top:3px solid #71836a}.involvement-grid h2{font-size:28px;line-height:1.35}.involvement-grid .prose,.involvement-intro,.involvement-email .prose{font-size:16px;line-height:1.95}.involvement-email{padding:35px;background:var(--sage);margin:35px 0}.involvement-email .button-row{margin-top:25px}.involvement-picture{display:block;width:100%;max-height:360px;object-fit:cover;margin:30px 0}.contact-updates-hint{padding:20px;background:var(--sage);font-size:16px;line-height:1.8}@media(max-width:650px){.involvement-grid{grid-template-columns:1fr}.involvement-grid article,.involvement-email{padding:24px}.involvement-email .button-row{align-items:stretch;flex-direction:column}.involvement-email .button{justify-content:center;white-space:normal}}
.membership-jump{display:flex;flex-wrap:wrap;gap:12px 28px;padding:0 0 28px;margin-bottom:44px;border-bottom:1px solid #cdd4c7}.membership-jump a{color:#42563e;text-underline-offset:5px;font-size:15px}.membership-overview{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:64px;align-items:start}.membership-page h2{font-size:clamp(28px,3vw,38px);line-height:1.2;margin:0 0 24px}.membership-page h3{font-size:26px;line-height:1.25;margin:0 0 20px}.membership-page .prose{font-size:16px}.membership-contribution{background:#edf0e7;padding:34px;border-top:4px solid #53694b}.membership-contribution h2{font-size:64px;margin:24px 0 16px}.membership-contribution .button{margin-top:16px}.membership-picture{max-width:100%;border-radius:3px;margin-top:20px}.membership-pay{margin-top:64px;padding-top:48px;border-top:1px solid #cdd4c7}.membership-payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:30px}.membership-payment-card{padding:32px;background:#f4f5f0;border:1px solid #dce1d6;min-width:0}.membership-qr{display:block!important;width:252px!important;height:252px!important;max-width:100%;object-fit:contain!important;background:white;padding:12px;box-sizing:content-box;filter:none!important;margin:0 0 24px}.membership-bank{margin:0 0 28px}.membership-bank div{padding:15px 0;border-bottom:1px solid #d5dccf}.membership-bank dt{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:#5a6754;margin-bottom:8px}.membership-bank dd{margin:0;font-size:18px;font-weight:600;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.membership-identify{margin-top:28px;padding:30px 32px;background:#e8eddf;border-left:4px solid #53694b}.membership-renewal{margin-top:56px;max-width:800px}.membership-page [id]{scroll-margin-top:140px}.membership-page .button{white-space:normal;text-align:center;max-width:100%;color:#fff}.membership-payment-card .button{margin-top:12px}.membership-page .text-link{margin-top:15px}.membership-page .prose p:last-child{margin-bottom:0}@media(max-width:700px){.membership-overview,.membership-payment-grid{grid-template-columns:1fr;gap:28px}.membership-jump{display:grid;gap:15px;margin-bottom:30px}.membership-payment-card{padding:24px}.membership-contribution{padding:28px}.membership-qr{width:228px!important;height:228px!important;padding:8px;max-width:calc(100% - 16px)}.membership-identify{padding:24px}.membership-pay{margin-top:40px;padding-top:34px}.membership-renewal{margin-top:36px}}

/* Household member sign-in and private dashboard. */
.member-entry{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:70px;align-items:start}.member-login-card{padding:36px;background:#edf0e7;border-top:4px solid #53694b}.member-entry h2,.member-activate h2,.member-private h2{font-size:34px;line-height:1.2;margin:0 0 24px}.member-login-card form,.member-activate form{display:grid;gap:22px}.member-login-card label,.member-activate label{display:grid;gap:9px;font-size:15px}.member-setup-note{padding:16px;border:1px solid #c7d0be;background:#fff}.member-login-card .button,.member-activate .button{color:#fff}.member-login-card .button:disabled{opacity:.55;cursor:not-allowed}.member-plain-button{appearance:none;background:none;border:0;padding:0;cursor:pointer;text-align:left}.member-login-card .member-plain-button{margin-top:25px}.member-login-card #member-recovery{margin-top:28px;padding-top:24px;border-top:1px solid #c7d0be}.member-login-card #member-recovery[hidden]{display:none}.member-activate{max-width:720px}.member-activate form{max-width:500px}.member-private{max-width:1000px}.member-welcome{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px;background:#edf0e7;margin-bottom:35px}.member-welcome p{margin:0}.member-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin-top:36px}.member-files article{padding:28px;border:1px solid #cdd4c7}.member-files h3{font-size:26px;margin:0 0 16px}.admin-members-link{display:block;padding:12px 14px;color:#40553a;text-decoration:none;font-weight:600;font-size:14px}.member-admin-main{max-width:1200px;margin:auto;padding:45px 30px 80px}.member-admin-main>h1{font-size:46px;margin:0 0 16px}.member-admin-main>.button-row{margin:28px 0}.member-admin-main #member-admin-content{margin-top:28px}.member-admin-main .editor-form{max-width:850px}.member-admin-main .editor-form fieldset{border:1px solid #cdd4c7;padding:24px;display:grid;gap:20px}.member-admin-main .editor-form hr{margin:25px 0}.member-admin-main #member-admin-status{padding:15px 0;font-weight:600}.member-admin-main .admin-entry p{overflow-wrap:anywhere}.member-admin-main .editor-form>.button-row{margin:20px 0}.member-admin-main [id],.member-activate{scroll-margin-top:100px}@media(max-width:700px){.member-entry,.member-files{grid-template-columns:1fr;gap:30px}.member-login-card{padding:26px}.member-admin-main{padding:28px 20px}.member-admin-main>h1{font-size:36px}.member-admin-main>.button-row{flex-direction:column;align-items:stretch}.member-admin-main .admin-entry{align-items:flex-start;flex-direction:column}.member-welcome{align-items:flex-start;flex-direction:column}.member-entry h2,.member-activate h2,.member-private h2{font-size:29px}.admin-members-link{padding:8px 11px;font-size:11px}}
/* Seasonal home-page welcomes: silent, bounded artwork with readable copy. */
.public-site .seasonal-welcome{background:#ece6d9;color:#293f33;overflow:hidden;border-bottom:1px solid #d9dece}
.public-site .seasonal-inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);align-items:center;gap:36px;min-height:285px;padding-top:28px;padding-bottom:28px}
.public-site .seasonal-copy{padding:4px 0;max-width:740px}
.public-site .seasonal-copy h2{font-size:clamp(27px,3.1vw,44px);line-height:1.15;margin:12px 0 14px;color:inherit}
.public-site .seasonal-copy p{font-size:17px;line-height:1.7;margin:0;color:inherit}
.public-site .seasonal-copy .eyebrow{color:inherit;font-size:11px;letter-spacing:.16em}
.public-site .seasonal-art{display:block;width:100%;height:240px;max-width:420px;justify-self:center;color:inherit}
.public-site .season-motion{margin-top:17px;border:1px solid currentColor;border-radius:4px;padding:7px 12px;background:transparent;color:inherit;font:inherit;font-size:13px;cursor:pointer}
.public-site .season-motion[hidden]{display:none}
.public-site .season-night{background:#203b3b;color:#f6ecd7}
.public-site .season-winter{background:#29463e;color:#fff6e5}
.public-site .season-spring{background:#edf0e4;color:#304b37}
.public-site .season-rose{background:#f3e8e4;color:#563b42}
.public-site .season-violet{background:#eee8f0;color:#50405f}
.public-site .season-blue{background:#e5ebf0;color:#304a63}
.public-site .season-remembrance{background:#e9e7df;color:#344139}
@keyframes season-sway{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}
@keyframes season-bloom{0%,100%{transform:scale(.92);opacity:.6}50%{transform:scale(1.04);opacity:1}}
@keyframes season-drift{0%,100%{transform:translate(0,-9px)}50%{transform:translate(8px,12px)}}
.public-site [data-season-ready][data-motion="true"] .season-sway{animation:season-sway 9s ease-in-out infinite;transform-origin:center;transform-box:fill-box}
.public-site [data-season-ready][data-motion="true"] .season-bloom{animation:season-bloom 8s ease-in-out infinite;transform-origin:center;transform-box:fill-box}
.public-site [data-season-ready][data-motion="true"] .season-drift{animation:season-drift 12s ease-in-out infinite}
.public-site [data-season-ready][data-motion="true"] .season-delay-1{animation-delay:-3s}
.public-site [data-season-ready][data-motion="true"] .season-delay-2{animation-delay:-5s}
@media(prefers-reduced-motion:reduce){.public-site .seasonal-welcome *{animation:none!important}}
@media(max-width:650px){.public-site .seasonal-inner{grid-template-columns:minmax(0,1fr);gap:8px;padding-top:28px;padding-bottom:12px}.public-site .seasonal-art{height:170px}.public-site .seasonal-copy p{font-size:16px}.public-site .seasonal-copy h2{font-size:30px}}
.watch-source{white-space:pre-wrap;overflow-wrap:anywhere;padding:20px;background:#f0f1ea;font:14px/1.6 monospace;max-height:450px;overflow:auto}
.public-site [data-news-category-picture="neighbourhood-watch"] img{object-fit:contain;height:260px;padding:25px;background:white;filter:none}
.public-site .watch-introduction{max-width:100%;margin-bottom:45px}
.public-site .watch-introduction .prose{max-width:850px;font-size:17px;line-height:1.85}
.public-site .watch-official-links{display:flex;flex-wrap:wrap;gap:18px 28px;margin:26px 0}
.public-site .watch-invitation{background:#eaf0e5;padding:30px;margin:35px 0}
.public-site .watch-invitation h2{font-size:30px;margin:0 0 14px}
.public-site .watch-invitation p{max-width:800px}
.public-site .news-card .watch-card-logo{width:88px;height:88px;object-fit:contain;filter:none;background:#fff;margin:0 0 14px}
.public-site .circular-resources{padding:25px;background:#eaf0e5;margin:30px 0}
/* Immersive seasonal scenes. All movement is controlled by the same pause switch. */
.public-site .seasonal-welcome.seasonal-cinematic{background:linear-gradient(120deg,#f0e6d2,#f7d0a4 75%,#cc9a6b)}
.public-site .seasonal-cinematic{position:relative;isolation:isolate;min-height:470px;background:linear-gradient(120deg,#f0e6d2,#f7d0a4 75%,#cc9a6b);color:#3a3325;border:0}
.public-site .seasonal-cinematic .seasonal-inner{position:relative;z-index:2;min-height:470px;grid-template-columns:minmax(0,1.3fr) minmax(260px,1fr);gap:46px;padding-top:55px;padding-bottom:55px}
.public-site .seasonal-cinematic .seasonal-copy h2{font-size:clamp(36px,4.5vw,64px);line-height:1.04;letter-spacing:-.035em;max-width:650px;text-wrap:balance;margin:18px 0 23px}
.public-site .seasonal-cinematic .seasonal-copy p{font-size:18px;line-height:1.7;max-width:595px}
.public-site .seasonal-cinematic .seasonal-copy .eyebrow{font-size:11px;letter-spacing:.22em}
.public-site .seasonal-cinematic .seasonal-art{height:340px;max-width:520px;width:112%;overflow:visible}
.public-site .seasonal-scene{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.public-site .seasonal-vignette{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(246,239,219,.64),transparent 65%);pointer-events:none}
.public-site .seasonal-cinematic.season-after-dark{background:radial-gradient(ellipse at 83% 13%,#53676c 0%,#233a42 35%,#10292f 77%);color:#fff3de}
.public-site .seasonal-cinematic.season-after-dark .seasonal-vignette{background:linear-gradient(90deg,rgba(12,31,36,.88),rgba(12,31,36,.28) 48%,transparent 73%)}
.public-site .seasonal-cinematic.season-night{background:radial-gradient(ellipse at 82% 20%,#776141,#253c46 37%,#142b35 80%)}
.public-site .seasonal-cinematic.season-winter{background:radial-gradient(ellipse at 80% 20%,#607a71,#214d46 40%,#123b36 80%)}
.public-site .seasonal-cinematic.season-spring{background:linear-gradient(110deg,#eef2dc,#dfedc8 58%,#adcc9f)}
.public-site .seasonal-cinematic.season-rose{background:linear-gradient(110deg,#f7eee7,#efd5d3 60%,#d69aa5)}
.public-site .seasonal-cinematic.season-violet{background:linear-gradient(110deg,#f1ebf5,#ddd0ea 60%,#b39ac9)}
.public-site .seasonal-cinematic.season-blue{background:linear-gradient(110deg,#eaf0f5,#c8ddeb 60%,#82abc6)}
.public-site .seasonal-cinematic[data-season="halloween"]{background:radial-gradient(ellipse at 80% 12%,#766652,#3b3b4e 32%,#202b35 75%);color:#fff0d8}
.public-site .seasonal-cinematic[data-season="remembrance"]{background:linear-gradient(110deg,#eae7dc,#d5c8b1 63%,#9c9c84);color:#343c33}
.public-site .seasonal-cinematic[data-season="remembrance"] .seasonal-vignette{background:linear-gradient(90deg,rgba(237,233,222,.92),transparent 75%)}
.public-site .season-hill-back{fill:#6e8769;opacity:.22}
.public-site .season-hill-front{fill:#496646;opacity:.2}
.public-site .season-forest{fill:#426344;opacity:.2}
.public-site .season-after-dark .season-hill-back{fill:#0e242a;opacity:.45}
.public-site .season-after-dark .season-hill-front{fill:#081f24;opacity:.7}
.public-site .season-after-dark .season-forest{fill:#0b262a;opacity:.55}
.public-site .season-bats{fill:#142129}
.public-site .season-particles{color:#b0784a;opacity:.45}
.public-site .season-after-dark .season-particles{color:#ffe9b2;opacity:.72}
.public-site [data-season="christmas"] .season-particles{color:white;opacity:.85}
.public-site [data-season="halloween"] .seasonal-art ellipse:first-of-type{fill:#dc9650}
.public-site [data-season="halloween"] .seasonal-art .season-sway>ellipse{fill:url(#season-pumpkin)}
.public-site .seasonal-cinematic .season-motion{margin-top:25px;background:rgba(255,255,255,.08);border-color:currentColor;padding:9px 15px;border-radius:30px;font-size:12px;letter-spacing:.02em}
@keyframes season-feature{0%,100%{transform:translateY(3px) rotate(-2deg)}50%{transform:translateY(-13px) rotate(2deg)}}
@keyframes season-cloud-travel{from{transform:translateX(-35px)}to{transform:translateX(45px)}}
@keyframes season-particle-travel{0%{transform:translate(0,-35px) rotate(0deg);opacity:0}12%{opacity:.9}85%{opacity:.7}100%{transform:translate(-60px,135px) rotate(100deg);opacity:0}}
@keyframes season-bat-flight{0%,100%{transform:translate(-18px,5px) scaleY(.7) rotate(-6deg)}50%{transform:translate(25px,-15px) scaleY(1) rotate(6deg)}}
@keyframes season-sky-glow{0%,100%{opacity:.6;transform:scale(.95)}50%{opacity:1;transform:scale(1.08)}}
.public-site [data-season-ready][data-motion="true"] .season-feature-float{animation:season-feature 7s ease-in-out infinite;transform-origin:center;transform-box:fill-box}
.public-site [data-season-ready][data-motion="true"] .season-cloud{animation:season-cloud-travel 24s ease-in-out infinite alternate}
.public-site [data-season-ready][data-motion="true"] .season-cloud-2{animation-delay:-12s;animation-direction:alternate-reverse}
.public-site [data-season-ready][data-motion="true"] .season-particle{animation:season-particle-travel 14s linear infinite}
.public-site [data-season-ready][data-motion="true"] .season-bat{animation:season-bat-flight 5s ease-in-out infinite;transform-origin:center;transform-box:fill-box}
.public-site [data-season-ready][data-motion="true"] .season-glow{animation:season-sky-glow 12s ease-in-out infinite;transform-origin:center;transform-box:fill-box}
.public-site [data-season-ready][data-motion="true"] .season-particle-1{animation-delay:-2s;animation-duration:11s}
.public-site [data-season-ready][data-motion="true"] .season-particle-2{animation-delay:-4s;animation-duration:16s}
.public-site [data-season-ready][data-motion="true"] .season-particle-3{animation-delay:-6s;animation-duration:13s}
.public-site [data-season-ready][data-motion="true"] .season-particle-4{animation-delay:-8s;animation-duration:17s}
.public-site [data-season-ready][data-motion="true"] .season-particle-5{animation-delay:-10s;animation-duration:15s}
@media(max-width:850px){.public-site .seasonal-cinematic .seasonal-inner{gap:15px;grid-template-columns:minmax(0,1.3fr) minmax(190px,1fr)}.public-site .seasonal-cinematic .seasonal-art{height:280px;width:108%}.public-site .seasonal-cinematic .seasonal-copy p{font-size:16px}}
@media(max-width:650px){.public-site .seasonal-cinematic .seasonal-inner{grid-template-columns:minmax(0,1fr);padding:35px 0 8px;gap:0}.public-site .seasonal-cinematic .seasonal-copy h2{font-size:40px;margin:15px 0 18px}.public-site .seasonal-cinematic .seasonal-art{height:230px;max-width:360px;width:100%}.public-site .seasonal-cinematic .seasonal-copy p{font-size:16px}.public-site .seasonal-cinematic .season-motion{margin-top:19px}.public-site .seasonal-cinematic .seasonal-scene{opacity:.55}.public-site .seasonal-cinematic .seasonal-vignette{background:linear-gradient(180deg,rgba(246,239,219,.5),transparent)}.public-site .seasonal-cinematic.season-after-dark .seasonal-vignette{background:linear-gradient(180deg,rgba(12,31,36,.85),transparent)}}

@keyframes season-firework{0%{transform:scale(.14);opacity:0}22%{transform:scale(.45);opacity:.8}52%{transform:scale(1);opacity:1}100%{transform:scale(1.25);opacity:0}}
.public-site .seasonal-cinematic[data-season-ready][data-motion="true"] .season-bloom{animation-name:season-firework;animation-duration:6.5s;animation-timing-function:ease-out}
.public-site .seasonal-cinematic .seasonal-inner{z-index:3}
.public-site .season-fireworks{position:absolute;right:0;top:0;width:48%;height:100%;z-index:2;pointer-events:none}
.public-site [data-fireworks-ready] .seasonal-art{opacity:0}
@media(max-width:650px){.public-site .season-fireworks{top:auto;bottom:0;width:100%;height:260px}}

.circular-frame{display:block;width:100%;height:1000px;border:1px solid #dde2d6;background:white;margin:1.5rem 0}.circular-editor{height:750px}.circular-tools{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.circular-tools button{min-width:44px}

.circular-document{max-width:760px;margin:1.5rem auto;background:white;color:#262b24;padding:14px;font:16px/1.55 Arial,sans-serif;overflow-wrap:anywhere;box-sizing:border-box}.circular-document *{box-sizing:border-box}.circular-document table{max-width:100%!important}.circular-document img{max-width:100%;height:auto!important}.circular-document p{margin:0 0 1em;font-size:inherit;line-height:inherit;letter-spacing:normal}.circular-document h1,.circular-document h2,.circular-document h3{font-family:inherit;letter-spacing:normal;line-height:1.2}.circular-editor{height:750px;overflow:auto;border:1px solid #d5dbce;resize:vertical}.circular-editor:focus{outline:2px solid #53694b}.circular-document a{color:inherit;text-decoration:underline}@media(max-width:600px){.circular-document{padding:6px}.circular-document table{width:100%!important}.circular-document td,.circular-document th{min-width:0!important}}

.gallery-comparisons{display:flex;flex-direction:column;gap:0}
.gallery-comparison{margin-bottom:64px;padding-bottom:52px;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.gallery-comparison:last-child{border-bottom:0;margin-bottom:36px;padding-bottom:0}
.gallery-comparison>.prose{max-width:880px;margin-bottom:24px}
.gallery-comparison>.prose p{font-size:15px;line-height:1.75;color:#455043}
.public-site .gallery-comparison>h2{font-family:Georgia,serif;font-size:clamp(26px,2.8vw,36px);margin-bottom:14px;color:var(--green-dark);line-height:1.2}
.gallery-comparison-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:stretch}
.gallery-comparison-pair figure{margin:0;min-width:0;border:1px solid var(--line);background:#fafbf8;border-radius:8px;overflow:hidden;box-shadow:0 3px 14px rgba(32,59,46,.05);display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.gallery-comparison-pair figure:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(32,59,46,.1)}
.gallery-comparison-pair figcaption{font:700 12px/1 "Segoe UI",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:12px 18px;color:#fff;background:var(--green-dark);display:flex;align-items:center}
.gallery-comparison-pair figure:first-child figcaption{background:#596a56}
.gallery-comparison-pair a{display:flex;align-items:center;justify-content:center;background:#edf1e8;flex:1;min-height:0;text-decoration:none;overflow:hidden;cursor:zoom-in}
.gallery-comparison-pair img{width:100%;height:clamp(340px,36vw,480px);display:block;object-fit:contain;transition:transform .3s ease}
.gallery-comparison-pair a:hover img{transform:scale(1.02)}
.gallery-photo-hint{font-size:13px;color:var(--muted);margin-top:14px;font-style:italic}
@media(max-width:760px){.gallery-comparison-pair{grid-template-columns:1fr;gap:20px}.gallery-comparison-pair img{height:clamp(280px,60vw,400px)}.gallery-comparison{margin-bottom:44px;padding-bottom:36px}}

/* Gallery photograph modal (centered pop-up box with close button and backdrop) */
dialog.gallery-modal{border:0;border-radius:12px;background:transparent;padding:0;max-width:min(1040px,92vw);max-height:92vh;margin:auto;box-shadow:0 25px 65px rgba(0,0,0,.45);overflow:visible}
dialog.gallery-modal::backdrop{background:rgba(18,30,24,.78);backdrop-filter:blur(5px)}
dialog.gallery-modal:not([open]){display:none}
dialog.gallery-modal[open]{display:flex;align-items:center;justify-content:center}
.gallery-modal-box{background:#fff;border-radius:12px;border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column;max-height:92vh;width:100%}
.gallery-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;background:#fbfbfa;border-bottom:1px solid var(--line);gap:16px}
.gallery-modal-title{margin:0;font-family:Georgia,serif;font-size:17px;font-weight:400;color:var(--green-dark);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gallery-modal-close{background:#f0f3eb;border:1px solid #dce2d7;color:#2b3d30;font-size:16px;line-height:1;width:32px;height:32px;min-height:32px;padding:0;display:grid;place-items:center;border-radius:50%;cursor:pointer;flex-shrink:0;transition:all .2s ease}
.gallery-modal-close:hover,.gallery-modal-close:focus-visible{background:#203b2e;border-color:#203b2e;color:#fff;outline:none}
.gallery-modal-body{background:#141c17;display:flex;align-items:center;justify-content:center;padding:14px;min-height:0;flex:1;overflow:hidden}
.gallery-modal-image{display:block;max-width:100%;max-height:calc(88vh - 95px);width:auto;height:auto;object-fit:contain;border-radius:4px}
.gallery-modal-caption{margin:0;padding:12px 18px;font-size:13px;line-height:1.5;color:var(--muted);background:#fbfbfa;border-top:1px solid var(--line)}
@media(max-width:640px){dialog.gallery-modal{max-width:95vw;max-height:94vh}.gallery-modal-header{padding:10px 14px}.gallery-modal-title{font-size:15px}.gallery-modal-image{max-height:calc(86vh - 85px)}}

.public-site .gallery-signpost-section{margin-block:54px 44px;margin-inline:auto}
.gallery-signpost-card{background:#fafbf8;border:1px solid var(--line);border-left:5px solid var(--green);border-radius:10px;padding:34px 42px;box-shadow:0 3px 16px rgba(32,59,46,.04);display:flex;align-items:center;justify-content:space-between;gap:32px}
.gallery-signpost-content{flex:1;min-width:0}
.gallery-signpost-content .eyebrow{display:block;font:700 11px/1.4 "Segoe UI",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:10px}
.gallery-signpost-content h2{font-family:Georgia,serif;font-size:clamp(22px,2.4vw,28px);color:var(--green-dark);margin:0 0 10px;line-height:1.2}
.gallery-signpost-content p{color:#455043;font-size:15px;line-height:1.7;max-width:680px;margin:0}
.gallery-signpost-action{flex-shrink:0}
.gallery-signpost-action .button{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
@media(max-width:760px){.gallery-signpost-card{flex-direction:column;align-items:flex-start;padding:26px 22px;gap:20px}.gallery-signpost-action{width:100%}.gallery-signpost-action .button{width:100%;justify-content:center}}

.gallery-project-links{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 32px}.gallery-project-links a{border:1px solid #cad2c2;background:#f3f5ee;color:#3d5336;padding:8px 15px;border-radius:20px;font-size:13px;font-weight:500;text-decoration:none;transition:all .2s ease}.gallery-project-links a:hover,.gallery-project-links a:focus-visible{background:#e5ebdc;border-color:#53694b}.gallery-comparison{scroll-margin-top:140px}

.gallery-village-heading{scroll-margin-top:140px;margin-top:30px;margin-bottom:26px}

.slideshow-timing-field{margin:24px 0 30px}.slideshow-timing-field>label{display:block}.slideshow-timing-field input{display:block;max-width:240px;margin-top:8px}.slideshow-timing-field>.field-hint{display:block;margin:12px 0 0;padding:0;border:0;background:none;font-size:13px;line-height:1.8;max-width:650px}
.public-site .page-heading+.service-directory,.public-site .page-heading+.committee-section,.public-site .page-heading+.involvement-page,.public-site .page-heading+.member-entry{margin-top:0}
.public-site .page-heading+.history-introduction,.public-site .page-heading+.contact-layout,.public-site .page-heading+.gallery-section{margin-top:0}
.public-site .page-heading+.membership-page{margin-top:0}
@media(max-width:900px){.public-site .page-heading+.listing{margin-top:0}}
.navigation-editor-item{border:1px solid var(--line);border-radius:4px;margin:18px 0;background:#fff}.navigation-editor-item>summary{padding:18px 22px;cursor:pointer;font-weight:600}.navigation-editor-item>fieldset{border:0;padding:20px;margin:0;display:grid;gap:20px;min-width:0}.navigation-editor-item legend{font-weight:600}.navigation-child{padding:20px;border:1px solid var(--line);margin:0;display:grid;gap:18px;min-width:0}.nav-row-actions{gap:10px}.nav-menu-preview{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.nav-menu-preview>span{padding:7px 11px;background:var(--sage);border-radius:3px;font-size:13px}.navigation-editor .field-hint{font-size:13px;line-height:1.8}.navigation-editor input,.navigation-editor select{max-width:100%}.public-site .site-header .nav-menu-label{display:inline-flex;font:inherit;padding:12px 0;min-height:44px}.news-submenu{max-height:min(70vh,680px);overflow-y:auto;overscroll-behavior:contain}#navigation:empty{display:none}.site-header:has(#navigation:empty) .menu-toggle{display:none}@media(min-width:1361px){.public-site .site-header #navigation{min-width:0;flex:1;flex-wrap:wrap;justify-content:flex-end}.public-site .site-header #navigation>a,.public-site .site-header #navigation>.nav-news>a,.public-site .site-header .nav-menu-label{max-width:240px;white-space:normal;overflow-wrap:anywhere}.public-site .site-header #navigation>.nav-news{min-width:0}}@media(max-width:1360px){.public-site .site-header #navigation.open{max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain}.news-submenu{max-height:none;overflow:visible}.public-site .site-header .nav-menu-label{padding:4px 0}.navigation-editor-item>fieldset,.navigation-child{padding:16px}}
.public-site .site-header .nav-news.menu-align-right>.news-submenu{left:auto;right:0}.public-site .site-header #navigation>a,.public-site .site-header #navigation>.nav-news>a,.public-site .site-header .nav-menu-label{white-space:normal;overflow-wrap:anywhere}.nav-news>.news-menu-toggle{flex-shrink:0}.footer-links a{overflow-wrap:anywhere}
.navigation-editor>.button-row+.field-hint,.page-box-editor>.button-row+.field-hint{margin-top:16px;line-height:1.8}.page-box-editor>.navigation-child{margin:18px 0}.page-box-editor>.button-row{margin-top:20px}.page-link-boxes{min-width:0}.page-section-links .service-topic-card,.page-link-boxes .service-topic-card{overflow-wrap:anywhere}

.membership-cash{margin-top:28px}

/* Small persistent return link and seasonal motion control. */
.public-site .back-to-top{position:fixed;right:16px;bottom:24px;z-index:45;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 13px;border:1px solid #53694b55;border-radius:5px;background:#ffffffd9;color:#263e2e;backdrop-filter:blur(6px);font-size:13px;text-decoration:none;box-shadow:0 2px 12px #0001}
.public-site .back-to-top:hover{background:#fff}
.public-site .back-to-top:focus-visible,.public-site .season-motion:focus-visible{outline:3px solid #69805c;outline-offset:3px}
.public-site .seasonal-cinematic .season-motion{position:absolute;top:12px;right:16px;z-index:4;display:grid;place-items:center;margin:0;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #53694b33;background:#ffffff38;color:#263e2e;backdrop-filter:blur(6px);line-height:1}
.public-site .season-after-dark .season-motion{color:#fff;border-color:#ffffff40}
.public-site .season-motion:hover{background:#ffffff59}
.public-site .season-motion svg{width:18px;height:18px;display:block}
.public-site .season-motion .season-play-icon,.public-site .season-motion[aria-pressed="true"] .season-pause-icon{display:none}
.public-site .season-motion[aria-pressed="true"] .season-play-icon{display:block}
.public-site .seasonal-cinematic .season-motion[hidden]{display:none}
@media(max-width:650px){.public-site .back-to-top{right:12px;bottom:16px}.public-site .seasonal-cinematic .season-motion{top:6px;right:10px}.public-site .seasonal-cinematic .seasonal-inner{padding-top:54px}}


/* A smaller masthead logo leaves more room for the page itself. */
.public-site .site-header .brand-logo-img{width:auto;max-width:240px;height:65px}
.public-site .site-header .header-inner{min-height:82px;padding-block:6px}
.public-site .site-header .nav-menu-label{font-size:15px;line-height:1.5}
@media(max-width:1360px){.public-site .site-header .nav-menu-label{font-size:14px}.public-site .site-header #navigation.open{max-height:calc(100dvh - 94px)}}
@media(max-width:640px){.public-site .site-header .brand-logo-img{width:auto;max-width:190px;height:55px}.public-site .site-header .header-inner{min-height:74px}}

/* Keep the village welcome separate from each occasion's artwork and greeting. */
.seasonal-home-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);background:#fdfcf7}
.seasonal-home-welcome{display:flex;align-items:center;padding:64px 42px 64px max(32px,calc((100vw - 1180px)/2));min-width:0}
.seasonal-home-welcome .home-hero-copy{width:100%;max-width:510px}
.seasonal-home-welcome .home-hero-copy h1{font-size:clamp(38px,3.7vw,56px);max-width:490px}
.seasonal-home-welcome .home-hero-copy .lead{max-width:440px}
.public-site .seasonal-home-layout .seasonal-inner{display:flex;flex-direction:column;justify-content:center;gap:10px;width:100%;min-height:650px;padding:65px 36px 30px;text-align:center}
.public-site .seasonal-home-layout .seasonal-copy{max-width:580px}
.public-site .seasonal-home-layout .seasonal-copy h2{font-size:clamp(32px,3vw,44px);margin:16px auto;max-width:500px}
.public-site .seasonal-home-layout .seasonal-copy p{font-size:16px}
.seasonal-home-layout .seasonal-art{width:100%;max-width:340px;max-height:245px}
@media(max-width:850px){.seasonal-home-layout{grid-template-columns:1fr}.seasonal-home-welcome{padding:48px 6%;justify-content:center}.seasonal-home-welcome .home-hero-copy{max-width:620px}.public-site .seasonal-home-layout .seasonal-inner{min-height:520px;padding:65px 6% 24px}.seasonal-home-welcome .home-hero-copy h1{max-width:620px}}

/* Use opacity rather than display:none, so the return tab arrives gently. */
.public-site .back-to-top-ready{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s ease,visibility 0s linear .65s}
.public-site .back-to-top-ready.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
/* Integrated Seasonal Hero Layout: Welcome headline stays visible on top, seasonal banner sits below */
.seasonal-home-welcome {
  display: flex !important;
  align-items: flex-start !important;
  padding: 38px 42px 48px max(32px, calc((100vw - 1180px)/2)) !important;
  min-width: 0;
}

.seasonal-text-stage {
  width: 100%;
  max-width: 550px;
  position: relative;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  padding-block: 0 !important;
  padding-top: 10px !important;
  margin: 0 !important;
}

/* 1. Main Welcome Section - positioned on top, moved up */
.seasonal-text-stage .home-hero-copy {
  order: 1 !important;
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  display: block !important;
  max-width: 530px;
  margin: 0 !important;
}
.seasonal-text-stage .home-hero-copy .eyebrow,
.seasonal-text-stage .seasonal-message-copy .eyebrow {
  font-size: 10px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .19em;
  margin-bottom: 12px;
}
/* Both greetings share the welcome typography at every screen width. */
.seasonal-text-stage .home-hero-copy h1,
.seasonal-text-stage .seasonal-message-copy h2 {
  font-size: clamp(34px, 3.4vw, 50px);
  line-height: 1.08;
  font-weight: 400;
  margin-bottom: 14px;
  max-width: 500px;
}
.seasonal-text-stage .home-hero-copy .lead,
.seasonal-text-stage .seasonal-message-copy .lead {
  font-size: 15px;
  line-height: 1.65;
  margin-bottom: 18px;
  max-width: 470px;
}
.seasonal-text-stage .home-hero-copy .button-row {
  gap: 12px;
  margin-bottom: 0;
}

/* 2. Seasonal Banner Wording - positioned cleanly below with generous 75px separation */
.seasonal-text-stage .seasonal-message-copy {
  order: 2 !important;
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  display: block !important;
  max-width: 500px;
  margin: 75px 0 0 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-left: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.seasonal-story-stage:has(.season-after-dark) .seasonal-text-stage .seasonal-message-copy {
  background: transparent !important;
  border: 0 !important;
  border-left: 0 !important;
  color: #fff3de !important;
}

.seasonal-text-stage .seasonal-message-copy .eyebrow {
  text-transform: uppercase !important;
  opacity: 0.85 !important;
  color: inherit !important;
}

.seasonal-text-stage .seasonal-message-copy h2 {
  color: inherit !important;
}

.seasonal-text-stage .seasonal-message-copy .lead {
  margin-bottom: 0 !important;
  opacity: 0.9 !important;
  color: inherit !important;
}

.seasonal-scroll-hint {
  display: none !important;
}

@media (max-width: 850px) {
  .seasonal-text-stage .seasonal-message-copy {
    margin-top: 40px !important;
  }
}

.public-site .seasonal-home-layout .seasonal-inner {
  height: 100%;
  min-height: 100%;
  padding: 40px 24px;
  justify-content: center;
}
.seasonal-home-layout .seasonal-art {
  max-width: 520px;
  max-height: 440px;
}
.seasonal-home-layout .seasonal-welcome {
  min-height: 500px;
}
@media (max-width: 850px) {
  .seasonal-home-layout .seasonal-welcome {
    min-height: 430px;
  }
  .public-site .seasonal-home-layout .seasonal-inner {
    min-height: 430px;
  }
}

/* Full-width seasonal scene, with just one changing message on the left. */
.seasonal-story-stage{position:relative;display:block;isolation:isolate;min-height:650px;overflow:hidden}
.seasonal-story-stage>.seasonal-welcome{position:absolute;inset:0;z-index:0;min-height:100%;height:100%}
.seasonal-story-stage>.seasonal-home-welcome{position:relative;z-index:2;width:56%;min-height:650px;background:linear-gradient(90deg,#fdfcf7f2,#fdfcf7c9 72%,#fdfcf700);color:var(--ink)}
.seasonal-story-stage:has(.season-after-dark)>.seasonal-home-welcome{background:linear-gradient(90deg,#102328e8,#102328b3 72%,#10232800);color:#fcf4df}
.seasonal-home-welcome .home-hero-copy h1,.seasonal-home-welcome .home-hero-copy .lead,.seasonal-home-welcome .eyebrow,.seasonal-home-welcome .seasonal-message-copy h2,.seasonal-home-welcome .seasonal-scroll-hint{color:inherit}
.public-site .seasonal-home-welcome .seasonal-message-copy .lead{color:inherit}
.public-site .seasonal-story-stage:has(.season-after-dark) .seasonal-message-copy .lead{color:#fff}
.public-site .seasonal-message-ivory:has(.season-after-dark) .seasonal-message-copy .lead{color:#fcf4df}
.seasonal-story-stage:has(.season-after-dark) .button-outline{background:transparent;color:inherit;border-color:currentColor}
.public-site .seasonal-story-stage .seasonal-inner{align-items:flex-end;padding:40px max(32px,calc((100vw - 1180px)/2)) 40px 50%}
/* seasonal story animation rules cleaned */
@media(max-width:850px){.seasonal-story-stage{min-height:0}.seasonal-story-stage>.seasonal-home-welcome{width:100%;min-height:0;padding:48px 6% 320px;background:linear-gradient(180deg,#fdfcf7f5,#fdfcf7e6 64%,#fdfcf700)}.seasonal-story-stage:has(.season-after-dark)>.seasonal-home-welcome{background:linear-gradient(180deg,#102328f2,#102328d9 64%,#10232800)}.public-site .seasonal-story-stage .seasonal-inner{justify-content:flex-end;align-items:center;padding:0 6% 20px}.seasonal-story-stage .seasonal-art{max-height:300px;max-width:420px}}
/* Share row tracks so two projects' headings, descriptions and photos align. */
@supports(grid-template-rows:subgrid){
  .gallery-comparisons,.gallery-comparisons .gallery-scene{row-gap:0}
  .gallery-comparisons .gallery-comparison{display:grid;grid-template-rows:subgrid;grid-row:span 4;align-self:stretch;row-gap:0}
  .gallery-comparison>h2{grid-row:1}
  .gallery-comparison>.prose{grid-row:2}
  .gallery-comparison>.gallery-comparison-pair{grid-row:3}
  .gallery-comparison>.gallery-photo-hint{grid-row:4}
}

/* A compact shared footer: overview links above a single legal row. */
.public-site .site-footer{padding:24px 40px 0}
.public-site .footer-top{grid-template-columns:200px minmax(0,1fr);align-items:center;gap:32px;padding-bottom:20px}
.public-site .footer-identity{min-width:0}
.public-site .footer-brand{margin:0 0 6px;padding:5px 9px}
.public-site .footer-brand .brand-logo-img{width:auto;max-width:210px;height:58px}
.public-site .footer-identity .muted{margin:0;font-size:12px}
.public-site .footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 24px;max-width:none}
.public-site .footer-links a{font-size:13px;line-height:1.6;padding-block:3px}
.public-site .footer-bottom{align-items:center;gap:12px 24px;padding-block:15px;font-size:11px}
.public-site .footer-bottom>span{min-width:0;overflow-wrap:anywhere}
.public-site .footer-legal{display:flex;flex-wrap:wrap;gap:10px 24px;flex-shrink:0}
.public-site .footer-legal a{margin:0;color:#eef3e9}
.public-site .privacy-notice-content{padding-top:28px;min-height:260px}
.privacy-notice-content .notice-pending{padding-top:10px;color:var(--muted)}
@media(max-width:640px){.public-site .site-footer{padding:24px 20px 0}.public-site .footer-top{grid-template-columns:1fr;gap:16px}.public-site .footer-top>.footer-identity{display:block}.public-site .footer-links{justify-content:flex-start;gap:5px 20px}.public-site .footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:11px}.public-site .footer-legal{gap:12px 24px}.public-site .footer-bottom a{margin:0}}


/* ========================================================
   RESPONSIVE NAVIGATION (MOBILE & TABLET <= 1360px)
   ======================================================== */
@media (max-width: 1360px) {
  .public-site .header-inner {
    flex-wrap: wrap !important;
    min-height: 74px !important;
    padding: 12px 24px !important;
    position: relative !important;
  }
  
  .public-site .menu-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #edf1e8 !important;
    color: var(--green) !important;
    border: 1px solid rgba(83, 105, 75, 0.28) !important;
    padding: 8px 16px !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
  }
  .public-site .menu-toggle span {
    font-size: 15px !important;
    line-height: 1 !important;
  }
  .public-site .menu-toggle[aria-expanded="true"] {
    background: var(--green) !important;
    color: #ffffff !important;
    border-color: var(--green) !important;
  }
  
  .public-site .site-header nav {
    display: none !important;
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    padding: 8px 0 20px 0 !important;
    border-top: 1px solid var(--line) !important;
    margin-top: 10px !important;
    background: var(--cream) !important;
    box-sizing: border-box !important;
  }
  .public-site .site-header nav.open {
    display: flex !important;
    max-height: calc(100dvh - 84px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
  }
  
  /* Top-level standard links */
  .public-site .site-header nav > a:not([href="/members-area"]) {
    display: flex !important;
    width: 100% !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 13px 18px !important;
    border-bottom: 1px solid rgba(83, 105, 75, 0.08) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: var(--ink) !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    position: static !important;
    transition: background 0.15s ease, color 0.15s ease !important;
  }
  .public-site .site-header nav > a:not([href="/members-area"]):after {
    display: none !important;
  }
  .public-site .site-header nav > a:not([href="/members-area"]):hover,
  .public-site .site-header nav > a:not([href="/members-area"])[aria-current="page"] {
    color: var(--green-dark) !important;
    background: rgba(83, 105, 75, 0.07) !important;
  }
  
  /* Top-level dropdown items container */
  .public-site .site-header nav > .nav-news {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    align-items: center !important;
    justify-content: space-between !important;
    border-bottom: 1px solid rgba(83, 105, 75, 0.08) !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    position: static !important;
  }
  
  /* The link inside .nav-news (when it has one, e.g. About, News, Sponsors) */
  .public-site .site-header nav > .nav-news > a {
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
    padding: 13px 18px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: var(--ink) !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    transition: background 0.15s ease, color 0.15s ease !important;
  }
  .public-site .site-header nav > .nav-news > a:after {
    display: none !important;
  }
  .public-site .site-header nav > .nav-news > a:hover,
  .public-site .site-header nav > .nav-news > a[aria-current="page"] {
    color: var(--green-dark) !important;
    background: rgba(83, 105, 75, 0.07) !important;
  }
  
  /* Button for items WITH link (Categories / More button pill) */
  .public-site .site-header nav > .nav-news > .news-menu-toggle:not(.nav-menu-label) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    margin-right: 14px !important;
    padding: 5px 12px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--green) !important;
    background: rgba(83, 105, 75, 0.08) !important;
    border: 1px solid rgba(83, 105, 75, 0.22) !important;
    border-radius: 14px !important;
    min-height: 30px !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
  }
  .public-site .site-header nav > .nav-news > .news-menu-toggle:not(.nav-menu-label):after {
    content: "▾" !important;
    font-size: 11px !important;
    transition: transform 0.2s ease !important;
  }
  .public-site .site-header nav > .nav-news.is-open > .news-menu-toggle:not(.nav-menu-label) {
    background: var(--green) !important;
    color: #ffffff !important;
    border-color: var(--green) !important;
  }
  .public-site .site-header nav > .nav-news.is-open > .news-menu-toggle:not(.nav-menu-label):after {
    transform: rotate(180deg) !important;
  }
  
  /* Button for items WITHOUT link (Useful Information folder) */
  .public-site .site-header nav > .nav-news > .news-menu-toggle.nav-menu-label {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 18px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: var(--ink) !important;
    background: transparent !important;
    border: 0 !important;
    text-align: left !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    transition: background 0.15s ease, color 0.15s ease !important;
  }
  .public-site .site-header nav > .nav-news > .news-menu-toggle.nav-menu-label:after {
    content: "▾" !important;
    font-size: 13px !important;
    color: var(--green) !important;
    margin-right: 4px !important;
    transition: transform 0.2s ease !important;
  }
  .public-site .site-header nav > .nav-news.is-open > .news-menu-toggle.nav-menu-label:after {
    transform: rotate(180deg) !important;
  }
  .public-site .site-header nav > .nav-news:hover > .news-menu-toggle.nav-menu-label,
  .public-site .site-header nav > .nav-news.is-open > .news-menu-toggle.nav-menu-label {
    background: rgba(83, 105, 75, 0.07) !important;
    color: var(--green-dark) !important;
  }
  
  /* Submenu accordion drawer */
  .public-site .site-header .news-submenu {
    display: none !important;
    position: static !important;
    width: 100% !important;
    flex-basis: 100% !important;
    min-width: 0 !important;
    margin: 4px 0 8px 0 !important;
    padding: 4px 8px 6px 14px !important;
    background: #edf1e8 !important;
    border: 0 !important;
    border-left: 3px solid var(--green) !important;
    border-radius: 0 6px 6px 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }
  .public-site .nav-news.is-open > .news-submenu {
    display: flex !important;
    flex-direction: column !important;
  }
  .public-site .site-header .news-submenu a {
    display: block !important;
    width: 100% !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #273b2e !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(83, 105, 75, 0.08) !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    line-height: 1.4 !important;
    transition: background 0.15s ease, color 0.15s ease !important;
  }
  .public-site .site-header .news-submenu a:last-child {
    border-bottom: 0 !important;
  }
  .public-site .site-header .news-submenu a:after {
    display: none !important;
  }
  .public-site .site-header .news-submenu a:hover,
  .public-site .site-header .news-submenu a:focus-visible,
  .public-site .site-header .news-submenu a[aria-current="page"] {
    background: transparent !important;
    color: var(--green-dark) !important;
    text-decoration: underline !important;
    text-decoration-color: var(--green) !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: 4px !important;
  }
  
  /* Distinct full-width Members Area button */
  .public-site .site-header nav > a[href="/members-area"] {
    display: flex !important;
    width: calc(100% - 36px) !important;
    margin: 18px 18px 8px 18px !important;
    padding: 13px 20px !important;
    align-items: center !important;
    justify-content: center !important;
    background: var(--green) !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(32, 59, 46, 0.18) !important;
    border: 0 !important;
    box-sizing: border-box !important;
    transition: background 0.2s ease !important;
  }
  .public-site .site-header nav > a[href="/members-area"]:after {
    display: none !important;
  }
  .public-site .site-header nav > a[href="/members-area"]:hover {
    background: var(--green-dark) !important;
    color: #ffffff !important;
  }
}

/* ========================================================
   DESKTOP NAVIGATION (> 1360px)
   ======================================================== */
@media (min-width: 1361px) {
  .public-site .menu-toggle {
    display: none !important;
  }
  .public-site .site-header nav {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 20px !important;
    width: auto !important;
    border-top: 0 !important;
    padding: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    background: transparent !important;
    margin-top: 0 !important;
  }
  .public-site .site-header nav > a:not([href="/members-area"]) {
    display: inline-block !important;
    width: auto !important;
    padding: 8px 0 !important;
    border-bottom: 0 !important;
    background: transparent !important;
  }
  .public-site .site-header nav > a:not([href="/members-area"]):after {
    display: block !important;
  }
  .public-site .site-header nav > .nav-news {
    display: flex !important;
    width: auto !important;
    border-bottom: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    align-items: center !important;
  }
  .public-site .site-header nav > .nav-news > a {
    display: inline-block !important;
    width: auto !important;
    padding: 8px 0 !important;
  }
  .public-site .site-header nav > .nav-news > .news-menu-toggle:not(.nav-menu-label) {
    display: none !important;
  }
  .public-site .site-header nav > .nav-news > .news-menu-toggle.nav-menu-label {
    display: inline-flex !important;
    font: inherit !important;
    font-size: 15px !important;
    padding: 8px 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: var(--ink) !important;
    cursor: pointer !important;
    align-items: center !important;
    gap: 4px !important;
  }
  .public-site .site-header nav > .nav-news > .news-menu-toggle.nav-menu-label span {
    position: relative;
    display: inline-block;
  }
  .public-site .site-header nav > .nav-news > .news-menu-toggle.nav-menu-label span:after {
    content: "";
    height: 1px;
    background: var(--green);
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 100%;
    transition: right .2s ease;
  }
  .public-site .site-header nav > .nav-news:hover > .news-menu-toggle.nav-menu-label span:after,
  .public-site .site-header nav > .nav-news.is-open > .news-menu-toggle.nav-menu-label span:after,
  .public-site .site-header nav > .nav-news > .news-menu-toggle.nav-menu-label:hover span:after,
  .public-site .site-header nav > .nav-news > .news-menu-toggle.nav-menu-label:focus-visible span:after {
    right: 0;
  }
  .public-site .site-header nav > .nav-news > .news-menu-toggle.nav-menu-label:after {
    content: "▾" !important;
    font-size: 11px !important;
    color: var(--green) !important;
    margin-left: 2px !important;
  }
  .public-site .site-header .news-submenu {
    position: absolute !important;
    top: 100% !important;
    left: -14px !important;
    width: 250px !important;
    max-width: calc(100vw - 40px) !important;
    margin: 0 !important;
    padding: 10px !important;
    background: #fdfcf9 !important;
    border: 1px solid var(--line) !important;
    border-radius: 4px !important;
    box-shadow: 0 10px 25px rgba(32, 59, 46, 0.12) !important;
    z-index: 30 !important;
  }
  .public-site .nav-news:hover > .news-submenu,
  .public-site .nav-news:focus-within > .news-submenu,
  .public-site .nav-news.is-open > .news-submenu {
    display: flex !important;
    flex-direction: column !important;
  }
  .public-site .site-header nav > a[href="/members-area"] {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 9px 15px !important;
  }
}

/* Show a little more of the upper part of the two village slideshow photographs. */
.home-hero-image[data-slide="0"],.home-hero-image[data-slide="1"]{--hero-photo-y:40%}

/* Move the uploaded reservoir photograph a little to the right beneath the welcome wash. */
.home-hero-image[src="/media/c144c128-a27c-4aa8-815c-aaa6b18ffbc9.png"]{width:108%;max-width:none}
@media(max-width:640px){.home-hero-image[src="/media/c144c128-a27c-4aa8-815c-aaa6b18ffbc9.png"]{width:100%;object-position:calc(72% + 16px) var(--hero-photo-y,50%)}}
