
:root{
  --navy:#1f4d35;--navy2:#2f6848;--teal:#2f8b97;--berry:#a41550;
  --paper:#f7f6f2;--white:#fff;--ink:#17212b;--muted:#66717c;
  --line:#dce2e6;--soft:#edf5f7;--gold:#d6ad54;
  --shadow:0 14px 34px rgba(7,52,91,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}
a{color:inherit} img{max-width:100%}
.wrap{width:min(1180px,calc(100% - 32px));margin:auto}
.topnote{background:var(--navy);color:#fff;font-size:.82rem}
.topnote .wrap{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.topnote a{color:#fff;text-decoration:none}
.site-header{background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand img{width:150px;max-height:72px;object-fit:contain;display:block}
.nav{display:flex;gap:15px;align-items:center;flex-wrap:wrap}
.nav a{text-decoration:none;font-weight:800;font-size:.86rem}
.nav a:hover,.nav a.active{color:var(--berry)}
.nav .join{background:var(--berry);color:#fff;padding:.7rem 1rem;border-radius:999px}
.hero{padding:88px 0;background:linear-gradient(120deg,var(--navy),var(--navy2));color:#fff}
.hero.compact{padding:58px 0}
.eyebrow{display:inline-block;border:1px solid rgba(255,255,255,.4);padding:.38rem .7rem;border-radius:999px;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:900}
.hero h1,.title{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em}
.hero h1{font-size:clamp(2.8rem,6vw,5.6rem);line-height:.96;margin:16px 0 0;max-width:920px}
.hero p{font-size:1.08rem;line-height:1.7;max-width:820px;color:#e4eff6}
.section{padding:68px 0}.section.white{background:#fff}.section.soft{background:var(--soft)}
.kicker{color:var(--berry);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:900;margin-bottom:9px}
.title{font-size:clamp(2rem,4vw,3.4rem);line-height:1;margin:0 0 18px}
.lead{font-size:1.04rem;line-height:1.75;color:var(--muted);max-width:860px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 8px 22px rgba(31,77,53,.07)}
.card h2,.card h3{margin-top:0;font-family:Georgia,"Times New Roman",serif}
.card p,.card li{color:var(--muted);line-height:1.65}
.role{color:var(--berry);font-weight:900;margin-top:-8px}
.btn{display:inline-block;text-decoration:none;font-weight:900;border-radius:999px;padding:.8rem 1.1rem}
.btn-primary{background:var(--berry);color:#fff}.btn-navy{background:var(--navy);color:#fff}.btn-outline{border:1px solid var(--navy);color:var(--navy)}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.values{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:26px}
.value{background:#fff;border-left:4px solid var(--teal);padding:17px;border-radius:10px;text-align:center;font-weight:900}
.month{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.month h3{margin:0;background:var(--navy);color:#fff;padding:14px 16px;font-size:1rem}
.event{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:12px 15px;border-bottom:1px solid #edf0f2}
.event:last-child{border-bottom:0}.event-date{font-weight:900;color:var(--berry)}
.event small{display:block;color:var(--muted);margin-top:3px}
.calendar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.notice{background:#fff8dd;border:1px solid #e7d584;border-radius:10px;padding:14px 16px;line-height:1.55}
.audio-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:16px;margin-bottom:12px}
.audio-card audio{width:100%;margin-top:8px}
.resources{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.resource{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;text-decoration:none;display:flex;justify-content:space-between;gap:12px}
.resource:hover{border-color:var(--teal)}.resource strong{display:block}.resource small{color:var(--muted)}
.faq{display:grid;gap:11px}.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 18px}
.faq summary{padding:16px 0;font-weight:900;cursor:pointer}.faq p{color:var(--muted);line-height:1.65;margin:0 0 17px}
.policy{margin-bottom:18px}.policy h2{font-size:1.4rem}
.contact-box{background:linear-gradient(120deg,var(--navy),var(--teal));color:#fff;border-radius:20px;padding:34px;box-shadow:var(--shadow)}
.contact-box p{color:#e4f0f4;line-height:1.7}
footer{background:#163827;color:#c9d7e2}.footer-inner{padding:28px 0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.84rem}
footer strong{color:#fff}
@media(max-width:900px){.grid2,.grid3,.calendar-grid{grid-template-columns:1fr 1fr}.values{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.header-inner{align-items:flex-start;flex-direction:column;padding:14px 0}.brand img{width:125px}.nav{gap:10px}.grid2,.grid3,.calendar-grid,.resources,.values{grid-template-columns:1fr}.topnote .wrap{justify-content:center}.topnote span{display:none}}
