@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');:root{--green:#304c3a;--dark:#26382c;--cream:#f7f3e9;--sage:#e9ede4;--gold:#bd9c65;--ink:#333b32;--muted:#626b60}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.75 'DM Sans',Arial,sans-serif;background:#fff}h1,h2,h3{font-family:'Libre Baskerville',Georgia,serif;line-height:1.3;letter-spacing:-.025em}h1{font-size:clamp(2.8rem,5vw,5.2rem);margin:12px 0 24px;color:var(--green)}h2{font-size:clamp(1.9rem,3vw,3rem);margin:10px 0 22px;color:var(--green)}h3{font-size:1.25rem}p{margin:0 0 18px}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.wrap{max-width:1190px;margin:auto;padding:0 28px}.topbar{background:var(--dark);color:#f0eee6;padding:6px 28px;text-align:center;font-size:12px;letter-spacing:.04em}.topbar span{margin-left:24px;color:#e0c99f}.header{background:var(--cream);border-bottom:1px solid #e3ddcf;position:sticky;top:0;z-index:20}.nav{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;color:var(--green);line-height:1.2}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:1.5px solid var(--green);border-radius:50%;font-size:24px}.brand strong{display:block;font:700 24px Georgia,serif}.brand small{display:block;font-size:9px;letter-spacing:.15em;margin-top:5px;font-weight:700}.nav nav{display:flex;align-items:center;gap:23px}.nav nav a{text-decoration:none;font-size:13px;font-weight:700}.nav nav a:hover,.text-link:hover{color:#99723b}.nav-visit{background:var(--green);color:#fff!important;padding:12px 19px;border-radius:3px}.menu-toggle{display:none;border:0;background:transparent;font-size:27px;color:var(--green);cursor:pointer}.hero{background:var(--cream);padding:65px 0 75px}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:60px}.hero-copy{padding:20px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.19em;color:#987647;margin-bottom:10px}.lead{font-size:21px;line-height:1.6;color:#4b594a}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:28px}.btn{display:inline-block;text-decoration:none;background:var(--green);color:#fff;padding:13px 24px;border-radius:3px;font-weight:700;font-size:14px;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.text-link{font-size:14px;font-weight:700;text-decoration:none;color:var(--green)}.hero-photo{position:relative}.hero-photo img{display:block;width:100%;aspect-ratio:1.35;object-fit:cover;box-shadow:18px 18px 0 #e5e0d2}.photo-note{position:absolute;bottom:0;left:0;background:#304c3ae8;color:white;font-size:12px;padding:8px 15px}.quick{background:var(--green);color:white}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr)}.quick a{padding:26px 15px;display:flex;align-items:center;gap:15px;text-decoration:none;border-right:1px solid #ffffff35}.quick a:last-child{border:0}.quick a>span:last-child{margin-left:auto}.quick-icon{font-size:27px;color:#e4d2a8}.quick strong,.quick small{display:block}.quick small{font-size:12px;color:#e1e8df}.section{padding:90px 0;scroll-margin-top:95px}.narrow{max-width:760px}.center{text-align:center}.intro p:not(.eyebrow){font-size:18px}.tinted{background:var(--sage)}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:center}.quote-panel{background:#fff;padding:40px 45px;border-left:5px solid var(--gold);box-shadow:0 8px 25px #1d30200b}.quote-mark{font:72px Georgia,serif;color:var(--gold);line-height:.8}.quote-panel p{font:24px/1.6 Georgia,serif;color:var(--green)}.quote-footer{font-size:10px;letter-spacing:.12em;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.card{border:1px solid #e5e4df;padding:32px;background:white;min-height:295px}.card-symbol{color:#a48651;font-size:27px}.card h3{color:var(--green)}.card p{font-size:14px}.card a,.muted{font-size:13px;color:var(--green);font-weight:700;text-decoration:none}.muted{color:#858a80}.section-lead{max-width:680px}.ministry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:35px}.ministry{border-top:2px solid var(--gold);padding-top:20px}.ministry span{font-size:12px;color:#977a49}.ministry h3{color:var(--green)}.ministry p{font-size:14px}.happenings{display:grid;grid-template-columns:1fr .85fr;gap:90px;align-items:center}.outline{background:transparent;color:var(--green);border:1px solid var(--green);margin-top:15px}.notice{background:var(--cream);padding:38px;border:1px solid #e6dfd0}.notice h3{color:var(--green)}.notice-bottom{font-size:11px;border-top:1px solid #ddd6c8;padding-top:18px;color:#777}.contact{background:var(--green);color:#f8f4eb}.contact h2{color:#fff}.contact-grid{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:center}.light{color:#dfc99f}.cream{background:var(--cream);color:var(--green);margin-top:15px}.visit-card{background:#ffffff12;border:1px solid #ffffff38;padding:30px 35px}.visit-card h3{color:#fff}.visit-card .small{font-size:12px;color:#d5dfd4}footer{background:#223329;color:#e3e8df;padding:45px 0 20px}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer-grid strong{font:20px Georgia,serif}.footer-grid p{font-size:13px;color:#bfc9be;margin-top:10px}.footer-grid>div:last-child{display:flex;gap:25px}.footer-grid a{font-size:13px;text-decoration:none}.footer-bottom{font-size:11px;border-top:1px solid #ffffff20;padding-top:20px;color:#bac5b9}.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:white;padding:10px;z-index:99}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:960px){.menu-toggle{display:block}.nav nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--cream);padding:20px 28px;box-shadow:0 10px 15px #0002;flex-direction:column;align-items:stretch}.nav nav.open{display:flex}.hero-grid,.split,.happenings,.contact-grid{grid-template-columns:1fr;gap:35px}.hero{padding:35px 0 65px}.hero-photo{max-width:740px}.cards{grid-template-columns:1fr 1fr}.ministry-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.wrap{padding:0 20px}.topbar span{display:block;margin:0}.nav{min-height:72px}.brand strong{font-size:20px}.brand small{font-size:8px}.hero-grid{gap:25px}.hero-photo img{aspect-ratio:1.4}.section{padding:60px 0}.quick-grid,.cards,.ministry-grid{grid-template-columns:1fr}.quick a{padding:16px 5px;border-right:0;border-bottom:1px solid #ffffff35}.quote-panel{padding:30px}.footer-grid{flex-direction:column}.contact-grid{gap:25px}}

.livestream{background:#f7f3e9}.video-frame{width:100%;aspect-ratio:16/9;background:#17251b;margin-top:28px;box-shadow:0 12px 30px #1a2d1d22}.video-frame iframe{display:block;width:100%;height:100%;border:0}.video-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:24px}.video-actions .outline{margin-top:0}.stream-note{font-size:13px;color:#59645a;margin-top:24px;max-width:850px}

.stream-status{font-weight:650;margin:1rem 0;color:#304c3a}.livestream .stream-status{font-size:1.05rem}

/* Church calendar */
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:2rem 0 1.5rem;max-width:550px}.calendar-toolbar h3{margin:0;font-size:1.5rem}.calendar-toolbar button{background:#f2f5ef;border:1px solid #cbd8cb;color:#264e3c;border-radius:12px;padding:.3rem 1rem;font-size:2rem;cursor:pointer}.event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.event-card{border:1px solid #d9e1d9;border-radius:16px;padding:1.25rem;background:#fff;display:flex;gap:1rem;box-shadow:0 5px 18px #00000008}.event-date{flex:none;min-width:62px;text-align:center;background:#eff5ef;color:#29583e;border-radius:12px;padding:.65rem .45rem;height:fit-content}.event-date b{display:block;font-size:1.8rem;line-height:1.1}.event-date span{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.event-card h3{margin:.1rem 0 .45rem;font-size:1.12rem}.event-card p{margin:0;color:#526057}.calendar-bottom{display:flex;justify-content:space-between;gap:1rem;margin-top:1.6rem;flex-wrap:wrap}.calendar-bottom a{color:#28553c}.calendar-empty{padding:1.5rem;background:#f3f6f1;border-radius:12px}.admin-shell{max-width:940px;margin:3rem auto;padding:0 1rem}.admin-panel{background:#fff;border:1px solid #d9e1d9;border-radius:16px;padding:1.5rem;margin:1.5rem 0}.admin-panel input,.admin-panel textarea{width:100%;padding:.7rem;border:1px solid #b7c6ba;border-radius:8px;font:inherit}.admin-panel label{display:block;margin:.75rem 0;font-weight:600}.admin-panel button{padding:.7rem 1rem;border:0;border-radius:8px;background:#28553c;color:#fff;cursor:pointer;margin:.3rem .4rem .3rem 0}.admin-panel button.secondary{background:#69766e}.admin-event{border-top:1px solid #ddd;padding:.75rem 0}.admin-note{color:#536056}.admin-error{color:#a32626}.admin-success{color:#226c37}
