:root{--green:#2f4a2c;--green-dark:#243a22;--navy:#16233f;--gold:#b59440;--gold-light:#cdb06a;--cream:#f6f2e6;--paper:#fbf8ef;--ink:#1f2a1c;--muted:#5a6155;--line:#d8cfb6}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e9e8e3;color:var(--ink);font-family:'EB Garamond',Georgia,serif;font-size:18px}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1120px,calc(100% - 48px));margin:auto}.preservation-strip{background:var(--navy);color:var(--gold-light);font-family:'Cinzel',serif;font-size:11px;letter-spacing:2px;text-align:center;padding:8px 20px;text-transform:uppercase}.site-header{background:var(--cream);border-bottom:3px solid var(--green);padding:18px 0}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:16px;min-width:280px}.brand-mark{width:58px;height:58px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--green);font-family:'Cinzel',serif;font-size:25px;background:#fffaf0}.brand-text strong{display:block;font-family:'Cinzel',serif;font-size:16px;line-height:1.2;color:var(--green);font-weight:600}.brand-text span{font-size:14px;color:#5e655a}.main-nav{display:flex;align-items:center;gap:23px;font-family:'Cinzel',serif;font-size:12px;letter-spacing:1px}.main-nav>a:not(.button){padding:10px 0;border-bottom:2px solid transparent}.main-nav>a:hover,.main-nav>a[aria-current=page]{color:var(--gold);border-color:var(--gold)}.mobile-toggle{display:none;border:1px solid var(--gold);background:transparent;font-size:24px;color:var(--green);padding:5px 10px}.button,.button-outline{display:inline-flex;align-items:center;justify-content:center;font-family:'Cinzel',serif;font-size:12px;letter-spacing:1.5px;padding:13px 26px;border-radius:4px;cursor:pointer;text-transform:uppercase}.button{background:var(--gold);color:var(--navy);border:1px solid var(--gold);font-weight:600}.button:hover{background:var(--gold-light)}.button-outline{background:transparent;color:var(--green);border:1.5px solid var(--green)}.hero{position:relative;background:radial-gradient(120% 95% at 50% 0%,#3a5a36 0%,var(--green) 52%,var(--green-dark) 100%);padding:32px 30px 44px}.ornate-frame{position:relative;max-width:1240px;margin:auto;filter:drop-shadow(0 20px 44px rgba(0,0,0,.35));background:var(--gold);padding:3px;clip-path:polygon(36px 0,calc(100% - 36px) 0,100% 36px,100% calc(100% - 36px),calc(100% - 36px) 100%,36px 100%,0 calc(100% - 36px),0 36px)}.ornate-inner{position:relative;min-height:430px;display:flex;align-items:center;justify-content:center;text-align:center;padding:54px 60px;background:#f8f4ea;clip-path:polygon(33px 0,calc(100% - 33px) 0,100% 33px,100% calc(100% - 33px),calc(100% - 33px) 100%,33px 100%,0 calc(100% - 33px),0 33px)}.hero-content{max-width:820px}.eyebrow{font-family:'Cinzel',serif;font-size:12px;letter-spacing:4px;color:var(--gold);margin-bottom:14px;text-transform:uppercase}.hero h1{font-family:'Cinzel',serif;font-size:clamp(38px,5vw,58px);font-weight:600;line-height:1.08;color:var(--green);margin:0}.hero p{font-size:21px;line-height:1.55;color:#41483b;max-width:650px;margin:22px auto 30px}.hero-actions,.actions{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.hero .button-outline{color:var(--green);border-color:var(--green)}.ornament{display:flex;align-items:center;justify-content:center;gap:12px;margin:18px 0}.ornament:before,.ornament:after{content:'';width:80px;height:1px;background:var(--gold)}.ornament span{width:8px;height:8px;background:var(--gold);transform:rotate(45deg)}.section{padding:82px 0;background:linear-gradient(180deg,#f8f4ea,#f1ecdc)}.section-alt{background:linear-gradient(180deg,#efece0,#e7e2d2);border-top:1px solid #ddd8c8}.section-dark{background:var(--navy);color:#e7e3d4}.section-title{text-align:center;max-width:760px;margin:0 auto 45px}.section-title h2,.content-body h2{font-family:'Cinzel',serif;font-weight:600;color:var(--green);font-size:clamp(30px,4vw,40px);line-height:1.18;margin:0 0 16px}.section-title p{color:var(--muted);font-size:19px;line-height:1.6}.grid{display:grid;gap:30px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card,.form-card,.content-body{background:var(--paper);border:2px solid var(--gold);padding:30px;box-shadow:inset 0 0 0 7px var(--paper),inset 0 0 0 8px #cdb87a,0 12px 24px rgba(47,74,44,.12);clip-path:polygon(18px 0,calc(100% - 18px) 0,100% 18px,100% calc(100% - 18px),calc(100% - 18px) 100%,18px 100%,0 calc(100% - 18px),0 18px)}.card h3,.content-body h3{font-family:'Cinzel',serif;color:var(--green);font-size:21px;margin:0 0 12px}.card p,.content-body p,.content-body li{line-height:1.65;color:#41483b}.feature-icon{width:58px;height:58px;border:1.5px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:28px;margin-bottom:18px}.text-link{font-family:'Cinzel',serif;font-size:12px;letter-spacing:1px;color:var(--green);border-bottom:2px solid var(--gold)}.page-hero{background:radial-gradient(120% 95% at 50% 0%,#3a5a36 0%,var(--green) 60%,var(--green-dark) 100%);padding:52px 0;color:var(--cream);text-align:center}.page-hero .breadcrumbs{font-family:'Cinzel',serif;color:var(--gold-light);font-size:11px;letter-spacing:2px;text-transform:uppercase}.page-hero h1{font-family:'Cinzel',serif;font-size:clamp(34px,5vw,50px);font-weight:600;margin:12px 0}.page-hero p{max-width:720px;margin:auto;color:#e7e3d4;font-size:19px;line-height:1.6}.event-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:15px;color:#62685e;margin:10px 0}.badge{font-family:'Cinzel',serif;font-size:11px;letter-spacing:1px;background:#eee5ca;color:var(--green);padding:7px 10px}.event-card .actions{justify-content:flex-start;margin-top:20px}.event-card .button,.event-card .button-outline{font-size:11px;padding:11px 16px}.notice,.empty,.message{padding:16px 18px;background:#f4ecd5;border-left:4px solid var(--gold);margin:18px 0;color:#41483b}.message{display:none}.message.show{display:block}.message.error{background:#f7dfdb;border-color:#a43a2c}.message.success{background:#e0efdc;border-color:var(--green)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-family:'Cinzel',serif;color:var(--green);font-size:12px;letter-spacing:.7px}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #bfb79f;background:#fffdf7;font:16px 'EB Garamond',Georgia,serif;color:var(--ink)}.field textarea{min-height:130px}.site-footer{background:var(--green-dark);color:#dcd8ca;padding:58px 0 22px;border-top:4px solid var(--gold)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.site-footer h3{font-family:'Cinzel',serif;color:var(--cream);font-size:16px}.site-footer a{display:block;margin:8px 0;color:#dcd8ca}.copyright{border-top:1px solid rgba(255,255,255,.18);margin-top:36px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-family:'Cinzel',serif;font-size:10px;letter-spacing:1px;color:#bbb7aa}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-item{padding:14px;background:#f2ecdc;border-left:3px solid var(--gold)}
@media(max-width:900px){.main-nav{display:none;position:absolute;z-index:20;left:24px;right:24px;top:112px;background:var(--cream);padding:18px;flex-direction:column;align-items:stretch;box-shadow:0 14px 30px rgba(0,0,0,.2)}.main-nav.open{display:flex}.mobile-toggle{display:block}.grid-3{grid-template-columns:1fr 1fr}.hero{padding:22px 16px 30px}.ornate-inner{padding:48px 24px}.footer-grid{grid-template-columns:1fr 1fr}.brand-text strong{font-size:13px}}
@media(max-width:640px){body{font-size:17px}.container{width:min(100% - 28px,1120px)}.brand{min-width:0}.brand-mark{width:48px;height:48px}.brand-text span{display:none}.site-header{padding:12px 0}.grid-2,.grid-3,.form-grid,.detail-list,.footer-grid{grid-template-columns:1fr}.section{padding:58px 0}.hero h1{font-size:34px}.hero p{font-size:18px}.ornate-frame{clip-path:polygon(22px 0,calc(100% - 22px) 0,100% 22px,100% calc(100% - 22px),calc(100% - 22px) 100%,22px 100%,0 calc(100% - 22px),0 22px)}.ornate-inner{min-height:410px;clip-path:polygon(20px 0,calc(100% - 20px) 0,100% 20px,100% calc(100% - 20px),calc(100% - 20px) 100%,20px 100%,0 calc(100% - 20px),0 20px)}.copyright{flex-direction:column}.page-hero{padding:42px 0}.preservation-strip{font-size:9px;letter-spacing:1px}}

.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0}.choice-card{display:block;border:1px solid #c7aa55;background:#fffdf7;padding:26px;text-decoration:none;color:inherit;box-shadow:0 8px 22px rgba(35,54,36,.08)}.form-shell{max-width:1050px;margin:auto;background:#fffdf7;border:1px solid #c7aa55;padding:28px;box-shadow:0 14px 35px rgba(30,50,30,.10)}.form-section{padding:22px 0;border-bottom:1px solid #ddd2b6}.form-section:last-of-type{border-bottom:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid label{display:block;color:#294b2c;font-weight:600}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:12px;border:1px solid #c9c0a7;background:#fff;margin-top:6px;font:inherit}.form-grid textarea{min-height:110px}.form-grid .full{grid-column:1/-1}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.repeat-card{border:1px solid #ddd2b6;background:#fff;padding:18px;margin:14px 0}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.check-line{display:block;margin:15px 0}.waiver-box{max-height:260px;overflow:auto;border:1px solid #c9c0a7;background:#fff;padding:18px;line-height:1.45}.success-box,.error-box{padding:16px;border-left:4px solid;margin:12px 0}.success-box{background:#e5f1df;border-color:#2e6737}.error-box{background:#f7dfdc;border-color:#a64034}.small-link{border:0;background:none;color:#8a2e27;text-decoration:underline;cursor:pointer}.muted{color:#6a7568}@media(max-width:760px){.choice-grid,.form-grid,.check-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}
/* Version 23: donation page and polished empty states */
.hidden{display:none!important}.preline{white-space:pre-line}.grid>.empty-state{grid-column:1/-1}.empty-state{width:100%;max-width:860px;margin:0 auto;padding:42px 34px;text-align:center;background:#f8f4ea;border:2px solid var(--gold);box-shadow:inset 0 0 0 7px #f8f4ea,inset 0 0 0 8px #cdb87a,0 12px 24px rgba(0,0,0,.12);clip-path:polygon(18px 0,calc(100% - 18px) 0,100% 18px,100% calc(100% - 18px),calc(100% - 18px) 100%,18px 100%,0 calc(100% - 18px),0 18px);color:#41483b}.empty-state h3{font-family:'Cinzel',serif;color:var(--green);font-size:clamp(25px,3vw,34px);margin:8px 0 12px}.empty-state p{font-size:19px;line-height:1.6;max-width:680px;margin:0 auto 22px}.empty-state-mark{font-size:38px;color:var(--gold);line-height:1;margin-bottom:10px}.section-dark .empty-state{background:#f8f4ea;color:#41483b}.donation-layout{align-items:start}.donation-detail-list{display:grid;gap:12px;margin:18px 0 22px}.donation-detail-list .detail-item{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);gap:18px;align-items:start}.donation-detail-list strong{font-family:'Cinzel',serif;color:var(--green);font-size:12px;letter-spacing:.6px;text-transform:uppercase}.donation-detail-list a{color:var(--green);text-decoration:underline}.support-list{padding-left:22px}.support-list li{margin:11px 0}.small-note{font-size:15px;line-height:1.55;color:#676c62;border-top:1px solid #d8cfb7;padding-top:16px}.donation-online{background:#e0efdc;border-color:var(--green)}
@media(max-width:700px){.donation-detail-list .detail-item{grid-template-columns:1fr}.empty-state{padding:34px 22px}}


/* Version 24: admin-editable Facebook and Instagram links */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.social-header-links{display:flex;align-items:center;margin-left:-8px}.social-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.social-link{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;text-decoration:none;border:1.5px solid var(--gold);color:var(--green);background:transparent;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.social-link:hover,.social-link:focus-visible{background:var(--gold);color:var(--green-dark);border-color:var(--gold);transform:translateY(-1px)}.social-link svg{width:18px;height:18px;fill:currentColor;flex:0 0 auto}.social-links-header{gap:7px}.social-links-header .social-link{width:35px;height:35px;border-radius:50%;padding:0}.social-links-footer{margin-top:14px}.social-links-footer .social-link{padding:9px 12px;border-color:var(--gold-light);color:var(--cream);font-family:'Cinzel',serif;font-size:10px;letter-spacing:.7px}.social-links-footer .social-link:hover,.social-links-footer .social-link:focus-visible{color:var(--green-dark)}.footer-social-message{font-size:15px;line-height:1.45;color:#d0cdbf;margin:0;max-width:250px}.footer-grid.has-social{grid-template-columns:2fr 1fr 1fr 1.25fr}.social-follow-section{text-align:center}.social-follow-card{max-width:820px;margin:auto}.social-follow-card h2{font-family:'Cinzel',serif;color:var(--green);font-size:clamp(30px,4vw,40px);font-weight:600;margin:0 0 14px}.social-follow-card p{max-width:680px;margin:0 auto 24px;color:var(--muted);font-size:19px;line-height:1.6}.social-links-buttons{justify-content:center}.social-links-buttons .social-link{min-width:160px;padding:12px 18px;font-family:'Cinzel',serif;font-size:11px;letter-spacing:1px}.contact-social{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.contact-social h3{font-family:'Cinzel',serif;color:var(--green);font-size:21px;margin:0 0 10px}.contact-social p{margin:0 0 18px}.contact-social .social-links-buttons{justify-content:flex-start}.empty-state-social{margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}.empty-state-social p{font-size:16px;margin-bottom:15px}.empty-state-social .social-links-buttons{justify-content:center}
@media(max-width:1050px){.footer-grid.has-social{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.social-header-links{margin:0;padding:4px 0}.social-links-header{justify-content:center}.social-links-header .social-link{width:auto;height:auto;border-radius:0;padding:9px 12px}.social-links-header .social-link .sr-only{position:static!important;width:auto!important;height:auto!important;margin:0!important;overflow:visible!important;clip:auto!important;white-space:normal!important}}
@media(max-width:640px){.footer-grid.has-social{grid-template-columns:1fr}.social-links-buttons .social-link{width:100%}.contact-social .social-links-buttons{justify-content:stretch}}

/* Version 25: event empty-state and publishing release */

/* Version 26: secure forms and member account pages */
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.auth-card{max-width:620px;margin:0 auto;background:#fffdf7;border:1px solid var(--gold,#b59440);box-shadow:0 16px 45px rgba(22,54,31,.1);padding:clamp(24px,4vw,42px)}
.auth-card form{display:grid;gap:18px;margin-top:22px}
.auth-card label{display:grid;gap:7px;font-weight:600;color:var(--green,#173c24)}
.auth-card input{width:100%}
.auth-links{margin:18px 0 0;text-align:center}
.auth-links a{color:var(--green,#173c24);text-decoration:underline;text-underline-offset:3px}
.hidden{display:none!important}
