*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1e2a36;background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased}.container{width:min(1180px,calc(100% - 44px));margin:0 auto}a{color:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:14px;top:14px;z-index:9999;background:#fff;padding:10px 14px;border-radius:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root{--navy:#0e3a63;--navy-deep:#082b4b;--navy-soft:#174d79;--sage:#73845e;--sage-dark:#5f704b;--cream:#f6f5f0;--mist:#f4f7f8;--line:#dfe5e8;--ink:#1e2a36;--muted:#667382;--white:#fff;--radius:22px;--shadow:0 18px 50px rgba(20,46,67,.10)}

.topbar{background:#082944;color:#dbe7ef;font-size:.78rem}.topbar-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:24px}.topbar-times,.topbar-contact{display:flex;align-items:center;gap:8px}.topbar a{text-decoration:none;color:#fff}.top-dot{opacity:.45}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(13,55,88,.08);transition:box-shadow .2s ease}.site-header.scrolled{box-shadow:0 10px 35px rgba(16,42,62,.10)}.nav-wrap{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:block;width:285px;max-width:36vw;text-decoration:none}.brand img{display:block;width:100%;height:auto}.site-nav{display:flex;align-items:center;justify-content:flex-end;gap:2px;flex-wrap:wrap}.site-nav a{text-decoration:none;font-size:.88rem;font-weight:750;color:#26384a;padding:10px 10px;border-radius:999px;transition:background .2s ease,color .2s ease}.site-nav a:hover{background:#eef3f5;color:var(--navy)}.site-nav .nav-cta{background:var(--navy);color:#fff;padding:10px 16px;margin-left:6px}.site-nav .nav-cta:hover{background:var(--navy-deep);color:#fff}.nav-toggle{display:none;width:44px;height:44px;border:1px solid #d8e1e5;background:#fff;border-radius:12px;padding:10px;cursor:pointer}.nav-toggle span:not(.sr-only){display:block;height:2px;background:var(--navy);margin:4px 0;border-radius:2px}

.kicker,.mini-label{display:inline-block;text-transform:uppercase;letter-spacing:.17em;font-size:.72rem;font-weight:850}.kicker{color:#d9e9f3}.kicker.dark,.mini-label{color:var(--sage-dark)}.hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(118deg,#082b4b 0%,#0e3a63 50%,#1b557e 100%);min-height:650px;display:flex;align-items:center}.hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(6,28,48,.90),rgba(6,28,48,.62) 53%,rgba(6,28,48,.28)),var(--hero-photo,linear-gradient(transparent,transparent));background-size:cover;background-position:center;opacity:.48;pointer-events:none}.hero-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:70px;align-items:center;padding:92px 0}.hero-copy{max-width:760px}.hero h1,.section-intro h2,.section-heading h2,.mission-copy h2,.location-copy h2,.page-hero h1,.prose h2,.prose h3{font-family:Georgia,"Times New Roman",serif}.hero h1{font-size:clamp(3.4rem,6.3vw,6.4rem);line-height:.93;letter-spacing:-.045em;margin:.2em 0 .28em;max-width:820px}.hero p{font-size:1.22rem;line-height:1.65;max-width:650px;color:#e1ebf1;margin:0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero-note{display:flex;align-items:center;gap:10px;margin-top:27px;font-size:.9rem;color:#c8dbe7}.pulse-dot{width:8px;height:8px;border-radius:50%;background:#a9b88e;box-shadow:0 0 0 5px rgba(169,184,142,.12)}.hero-watermark{position:absolute;right:-55px;bottom:-130px;width:min(540px,46vw);opacity:.095;filter:brightness(0) invert(1);z-index:1}.hero-glow{position:absolute;border-radius:50%;filter:blur(2px);z-index:1}.hero-glow-one{width:360px;height:360px;background:rgba(115,132,94,.20);right:4%;top:-160px}.hero-glow-two{width:260px;height:260px;background:rgba(255,255,255,.06);left:-110px;bottom:-100px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 21px;border-radius:999px;text-decoration:none;font-weight:800;border:1px solid transparent;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn:hover{transform:translateY(-1px)}.btn-light{background:#fff;color:var(--navy-deep);box-shadow:0 8px 25px rgba(0,0,0,.12)}.btn-outline-light{border-color:rgba(255,255,255,.46);color:#fff;background:rgba(255,255,255,.06)}.btn-outline-light:hover{background:rgba(255,255,255,.12)}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{background:var(--navy-deep);box-shadow:0 9px 24px rgba(8,43,75,.18)}.btn.full{width:100%}.gather-card{background:rgba(255,255,255,.97);color:var(--ink);border-radius:26px;padding:28px;box-shadow:0 28px 65px rgba(0,0,0,.23);border:1px solid rgba(255,255,255,.4)}.gather-card-head{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:1px solid #e5eaed;padding-bottom:18px;margin-bottom:4px}.gather-card-head span{font-size:.74rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--sage-dark)}.gather-card-head strong{font-family:Georgia,serif;font-size:1.45rem;color:var(--navy)}.gather-row{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid #edf0f2}.gather-row span{color:#586675;font-size:.92rem}.gather-row strong{color:var(--navy-deep);white-space:nowrap}.gather-location{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-decoration:none;margin-top:18px;font-size:.84rem;color:#52616e}.pin-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#edf3ed;color:var(--sage-dark);font-weight:900}

.announcement-wrap{position:relative;background:#fff}.announcement-wrap .container{position:relative;z-index:5}.announcement-card{margin-top:-32px;background:#fff;border:1px solid #e0e7ea;border-radius:20px;padding:24px 26px;box-shadow:var(--shadow);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px}.announcement-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#edf2e9;color:var(--sage-dark);font-family:Georgia,serif;font-style:italic;font-size:1.25rem}.announcement-copy h2{font-family:Georgia,serif;color:var(--navy-deep);margin:2px 0 4px;font-size:1.35rem}.announcement-copy p{margin:0;color:#65717d;font-size:.92rem}.quick-links-section{padding:38px 0 18px}.quick-links{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e3e8ea;border-bottom:1px solid #e3e8ea}.quick-link{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:28px 22px;text-decoration:none;border-right:1px solid #e3e8ea;transition:background .2s ease}.quick-link:last-child{border-right:0}.quick-link:hover{background:#f7f9f8}.quick-icon{font-size:.68rem;letter-spacing:.1em;color:var(--sage-dark);font-weight:900}.quick-link strong{display:block;color:var(--navy-deep);font-size:1rem}.quick-link small{display:block;color:#74808c;margin-top:2px}.quick-link b{font-size:1.15rem;color:var(--navy);font-weight:500}

.section{padding:92px 0}.visit-section{background:#fff}.visit-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.section-intro h2,.section-heading h2{font-size:clamp(2.45rem,4.5vw,4.25rem);line-height:1.03;letter-spacing:-.035em;color:var(--navy-deep);margin:.22em 0 .35em}.section-intro p,.section-heading p{color:#667482;font-size:1.05rem}.text-arrow{display:inline-flex;align-items:center;gap:10px;color:var(--navy);text-decoration:none;font-weight:800;margin-top:15px}.text-arrow span{transition:transform .18s ease}.text-arrow:hover span{transform:translateX(4px)}.service-stack{border-top:1px solid #dde5e8}.service-row{display:grid;grid-template-columns:56px 1fr auto;gap:20px;align-items:center;padding:24px 0;border-bottom:1px solid #dde5e8}.service-number{font-size:.75rem;letter-spacing:.15em;font-weight:900;color:#9aa7af}.service-row h3{font-size:1.25rem;color:var(--navy-deep);margin:2px 0}.service-row>strong{font-size:1.1rem;color:var(--navy);white-space:nowrap}.events-section{background:var(--mist)}.section-heading{margin-bottom:36px}.section-heading.split{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.section-heading.split>div{max-width:720px}.section-heading h2{margin-bottom:.18em}.section-heading p{margin:0}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.event-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 8px 30px rgba(22,48,66,.07);border:1px solid #e5eaec;transition:transform .18s ease,box-shadow .18s ease}.event-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(22,48,66,.11)}.event-image{height:210px;overflow:hidden;background:#e9eef0}.event-image img{display:block;width:100%;height:100%;object-fit:cover}.event-placeholder{display:grid;place-items:center;background:linear-gradient(145deg,#e9f0f2,#f7f8f4)}.event-placeholder img{width:135px;height:135px;object-fit:contain;opacity:.16}.event-body{padding:24px}.event-date{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:var(--sage-dark)}.event-body h3{font-family:Georgia,serif;font-size:1.45rem;line-height:1.2;color:var(--navy-deep);margin:8px 0}.event-body p{color:#6b7782;margin:7px 0 0}.empty-card{background:#fff;border:1px solid #dfe6e8;border-radius:20px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 8px 30px rgba(22,48,66,.05)}.empty-card.compact{display:block;box-shadow:none;background:#f7f9f9;margin-top:28px}.empty-card h3{font-family:Georgia,serif;color:var(--navy-deep);font-size:1.45rem;margin:4px 0}.empty-card p{margin:0;color:#6a7782}.mission-section{position:relative;overflow:hidden;background:linear-gradient(130deg,#092d4e,#12466f);color:#fff}.mission-section::after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-140px;top:-210px}.mission-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:85px;align-items:center;position:relative;z-index:2}.mission-mark{display:grid;place-items:center}.mission-mark img{width:min(330px,100%);filter:brightness(0) invert(1);opacity:.92}.mission-copy{max-width:760px}.mission-copy h2{font-size:clamp(2.7rem,5vw,4.7rem);line-height:1.02;letter-spacing:-.04em;margin:.22em 0 .32em}.mission-copy p{font-size:1.08rem;color:#d7e5ed;max-width:690px}.mission-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.text-link-light{color:#fff;text-decoration:none;font-weight:800}.location-section{background:#fff}.location-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.location-copy h2{font-size:clamp(2.6rem,4.8vw,4.3rem);line-height:1.03;letter-spacing:-.04em;color:var(--navy-deep);margin:.2em 0 .34em}.location-copy p{color:#65727f}.location-copy a:not(.btn){color:var(--navy)}.location-address{font-family:Georgia,serif;color:var(--navy)!important;font-size:1.35rem}.map-shell{padding:10px;border:1px solid #dfe6e8;border-radius:24px;background:#f7f9f9;box-shadow:var(--shadow)}.map-shell iframe{display:block;width:100%;height:410px;border:0;border-radius:16px}

.page-hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(120deg,#082d4e,#124a74);min-height:210px;display:flex;align-items:center}.page-hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(5,31,52,.87),rgba(5,31,52,.45)),var(--page-photo,linear-gradient(transparent,transparent));background-size:cover;background-position:center;opacity:.75}.page-hero-pattern{position:absolute;right:-110px;top:-200px;width:500px;height:500px;border-radius:50%;border:1px solid rgba(255,255,255,.10);z-index:1}.page-hero-pattern::before,.page-hero-pattern::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.07)}.page-hero-pattern::before{inset:65px}.page-hero-pattern::after{inset:130px}.page-hero-inner{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:36px 0}.page-hero h1{font-size:clamp(2.65rem,4vw,4rem);line-height:.98;letter-spacing:-.04em;margin:0}.page-hero p{color:#d4e1e8;margin:0}.page-hero img{width:165px;filter:brightness(0) invert(1);opacity:.14}.page-section{background:#f7f9f9;padding:46px 0 76px}.page-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:34px;align-items:start}.surface-card{background:#fff;border:1px solid #e1e7e9;border-radius:22px;padding:clamp(28px,5vw,54px);box-shadow:0 12px 38px rgba(21,47,64,.06)}.prose{font-size:1.04rem;color:#53616e}.prose>p:first-child{font-size:1.18rem;color:#3e4d5a}.prose h2,.prose h3{color:var(--navy-deep);line-height:1.16}.prose h2{font-size:2rem;margin-top:1.7em}.prose h3{font-size:1.55rem;margin-top:1.5em}.prose a{color:var(--navy);font-weight:650}.prose blockquote{border-left:4px solid var(--sage);margin:28px 0;padding:6px 0 6px 22px;color:#465562;font-family:Georgia,serif;font-size:1.2rem}.page-sidebar{display:flex;flex-direction:column;gap:18px;position:sticky;top:126px}.side-card{background:#fff;border:1px solid #e1e7e9;border-radius:20px;padding:24px;box-shadow:0 8px 28px rgba(21,47,64,.05)}.side-card h3{font-family:Georgia,serif;color:var(--navy-deep);font-size:1.35rem;margin:4px 0 16px}.side-card p{color:#687581}.side-card a{color:var(--navy)}.side-service{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #e7ebed;padding:12px 0;font-size:.88rem}.side-service strong{color:var(--navy-deep);white-space:nowrap}.service-side .btn{margin-top:13px}.video-wrap{aspect-ratio:16/9;position:relative;margin:30px 0}.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:16px}.calendar-list{display:flex;flex-direction:column;gap:0;margin-top:30px}.calendar-event{display:grid;grid-template-columns:78px 1fr;gap:22px;padding:25px 0;border-top:1px solid #e2e7e9}.calendar-date{height:78px;border-radius:16px;background:var(--navy);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.calendar-date span{text-transform:uppercase;letter-spacing:.12em;font-size:.66rem;color:#d8e8f2}.calendar-date strong{font-size:1.8rem;line-height:1}.calendar-event h2{margin:5px 0;font-size:1.5rem}

.site-footer{background:#071f35;color:#cad7df;padding:66px 0 0}.footer-main{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding-bottom:50px}.footer-intro{display:flex;gap:20px;align-items:flex-start}.footer-mark{width:72px;height:72px;border-radius:20px;background:#fff;display:grid;place-items:center;padding:8px;flex:0 0 auto}.footer-mark img{width:100%;height:100%;object-fit:contain}.footer-brand{font-family:Georgia,serif;color:#fff;font-size:1.7rem}.footer-intro p{color:#9fb3c1;max-width:320px}.footer-grid{display:grid;grid-template-columns:1.15fr 1fr .75fr;gap:36px}.site-footer h3{color:#fff;margin:0 0 16px;font-size:.83rem;text-transform:uppercase;letter-spacing:.13em}.site-footer p{color:#aabdc9;margin:8px 0}.site-footer a{color:#dbe8ef}.footer-service{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(255,255,255,.09);padding:8px 0}.footer-service strong{font-size:.84rem;color:#dbe6ec}.footer-service span{font-size:.84rem;white-space:nowrap}.footer-links{display:flex;flex-direction:column;gap:8px}.footer-links a,.footer-link{text-decoration:none}.footer-bottom{border-top:1px solid rgba(255,255,255,.10);min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.78rem;color:#839aaa}.footer-bottom a{color:#9db0bc;text-decoration:none}

@media(max-width:1020px){.topbar-times span:nth-of-type(n+4){display:none}.brand{width:245px}.site-nav a{font-size:.82rem;padding:9px 7px}.hero-grid{gap:40px}.visit-grid{gap:50px}.footer-main{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:880px){.topbar-inner{justify-content:center}.topbar-contact{display:none}.nav-wrap{min-height:82px}.brand{max-width:250px;width:245px}.nav-toggle{display:block}.site-nav{display:none;position:absolute;left:22px;right:22px;top:74px;background:#fff;border:1px solid #dce4e7;box-shadow:0 18px 45px rgba(16,42,62,.16);border-radius:18px;padding:10px;flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.site-nav a{padding:11px 13px;font-size:.92rem}.site-nav .nav-cta{margin:4px 0 0;text-align:center}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;padding:76px 0;gap:38px}.hero-copy{max-width:700px}.gather-card{max-width:560px}.quick-links{grid-template-columns:1fr}.quick-link{border-right:0;border-bottom:1px solid #e3e8ea}.quick-link:last-child{border-bottom:0}.visit-grid,.mission-grid,.location-grid,.page-layout{grid-template-columns:1fr}.service-stack{margin-top:10px}.event-grid{grid-template-columns:1fr 1fr}.mission-mark{display:none}.page-sidebar{position:static;display:grid;grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.announcement-card{grid-template-columns:auto 1fr}.announcement-card .btn{grid-column:2;justify-self:start}.page-hero img{width:170px}.section-heading.split{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.page-section{padding:32px 0 58px}.container{width:min(100% - 28px,1180px)}.topbar{display:none}.nav-wrap{min-height:74px}.brand{width:205px;max-width:68vw}.site-nav{top:67px;left:14px;right:14px}.hero-grid{padding:62px 0}.hero h1{font-size:3.25rem}.hero p{font-size:1.04rem}.hero-watermark{width:390px;right:-130px}.gather-card{padding:22px;border-radius:20px}.announcement-card{margin-top:-20px;grid-template-columns:1fr;padding:22px}.announcement-icon{display:none}.announcement-card .btn{grid-column:auto}.quick-links-section{padding-top:24px}.quick-link{padding:22px 8px}.section{padding:68px 0}.section-intro h2,.section-heading h2{font-size:2.65rem}.service-row{grid-template-columns:44px 1fr;gap:12px}.service-row>strong{grid-column:2}.event-grid{grid-template-columns:1fr}.empty-card{align-items:flex-start;flex-direction:column}.mission-copy h2,.location-copy h2{font-size:2.85rem}.mission-grid{gap:0}.map-shell iframe{height:330px}.page-hero{min-height:185px}.page-hero-inner{padding:34px 0}.page-hero h1{font-size:2.65rem}.page-hero img{display:none}.surface-card{padding:28px 22px}.page-sidebar,.footer-grid{grid-template-columns:1fr}.footer-main{gap:45px}.footer-intro{flex-direction:column}.footer-bottom{padding:20px 0;align-items:flex-start;flex-direction:column;gap:8px}.calendar-event{grid-template-columns:66px 1fr}.calendar-date{height:66px}.footer-service{max-width:350px}}

/* Ensure primary buttons inside sidebar cards retain readable white text. */
.side-card .btn-primary,
.side-card .btn-primary:visited,
.side-card .btn-primary:hover,
.side-card .btn-primary:focus {
  color: #fff;
}

/* Beliefs accordion */
.beliefs-accordion{display:flex;flex-direction:column;gap:12px;margin:-8px 0 34px}.belief-item{border:1px solid #dfe6e8;border-radius:16px;background:#fbfcfc;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.belief-item[open]{border-color:#c9d7dc;background:#fff;box-shadow:0 9px 28px rgba(21,47,64,.06)}.belief-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;color:var(--navy-deep);font-weight:800;text-transform:uppercase;letter-spacing:.055em;font-size:.92rem;user-select:none}.belief-item summary::-webkit-details-marker{display:none}.belief-item summary::marker{display:none}.belief-item summary:hover{background:#f5f8f8}.belief-toggle{position:relative;width:34px;height:34px;border-radius:10px;background:var(--navy);flex:0 0 auto}.belief-toggle::before,.belief-toggle::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;background:#fff;border-radius:2px;transform:translate(-50%,-50%);transition:transform .18s ease,opacity .18s ease}.belief-toggle::after{transform:translate(-50%,-50%) rotate(90deg)}.belief-item[open] .belief-toggle::after{opacity:0;transform:translate(-50%,-50%) rotate(0)}.belief-content{border-top:1px solid #e4eaec;padding:6px 22px 22px;color:#465562}.belief-content p{font-size:1rem;line-height:1.78;margin:16px 0}.belief-content h4{font-family:Georgia,serif;color:var(--navy-deep);font-size:1.2rem;margin:24px 0 6px}.belief-references{margin-top:20px!important;padding-top:15px;border-top:1px solid #e6ebed;color:#687581;font-size:.92rem!important;font-weight:650}.beliefs-footer-copy{border-top:1px solid #e1e7e9;padding-top:28px;margin-top:10px}.beliefs-footer-copy p:first-child{font-size:1.08rem;color:#3e4d5a}.beliefs-footer-copy p:last-child{margin-bottom:0}
@media(max-width:620px){.belief-item summary{padding:16px;font-size:.84rem}.belief-toggle{width:31px;height:31px}.belief-content{padding:4px 17px 18px}.belief-content p{font-size:.96rem;line-height:1.7}}


/* Homepage hero title: keep the default welcome message to two clean lines on desktop. */
.hero h1 .hero-line{display:block;white-space:nowrap}
.hero-copy>.hero-line:first-child{margin-top:0}
@media(min-width:881px){.hero h1{font-size:clamp(3.25rem,5.35vw,5.55rem);max-width:900px;margin-top:0}.hero-copy{max-width:860px}.hero-grid{grid-template-columns:minmax(0,1.48fr) minmax(300px,.52fr);gap:56px}}
@media(max-width:620px){.hero h1 .hero-line{white-space:normal}.hero h1{font-size:clamp(2.55rem,11vw,3.25rem)}}

/* Homepage hero: keep Faith Baptist Church together on the second line. */
@media(min-width:881px){.hero h1 .hero-line-church{font-size:.78em;letter-spacing:-.05em}}
@media(max-width:880px){.hero h1 .hero-line-church{white-space:normal}}

/* Homepage service card: stack the small label and heading so they never collide. */
.gather-card-head{display:block;align-items:initial;justify-content:initial}
.gather-card-head span{display:block;line-height:1.25}
.gather-card-head strong{display:block;margin-top:7px;line-height:1.1}

/* Keep primary action buttons readable inside page content cards. */
.prose a.btn-primary,
.prose a.btn-primary:visited,
.prose a.btn-primary:hover,
.prose a.btn-primary:focus,
.surface-card a.btn-primary,
.surface-card a.btn-primary:visited,
.surface-card a.btn-primary:hover,
.surface-card a.btn-primary:focus {
  color: #fff;
}

/* Services dropdown in the primary navigation. */
.nav-dropdown{position:relative;display:flex;align-items:center}
.nav-dropdown-toggle{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;font:inherit;font-size:.88rem;font-weight:750;color:#26384a;padding:10px 10px;border-radius:999px;cursor:pointer;transition:background .2s ease,color .2s ease}
.nav-dropdown-toggle:hover,.nav-dropdown:focus-within>.nav-dropdown-toggle,.nav-dropdown.open>.nav-dropdown-toggle{background:#eef3f5;color:var(--navy)}
.nav-caret{font-size:.78rem;line-height:1;transition:transform .18s ease}
.nav-dropdown.open .nav-caret,.nav-dropdown:hover .nav-caret,.nav-dropdown:focus-within .nav-caret{transform:rotate(180deg)}
.nav-submenu{position:absolute;z-index:120;top:calc(100% + 7px);left:50%;width:285px;padding:9px;background:#fff;border:1px solid #dce4e7;border-radius:16px;box-shadow:0 18px 45px rgba(16,42,62,.16);opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-5px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu,.nav-dropdown.open .nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.site-nav .nav-submenu a{display:block;padding:11px 13px;border-radius:10px;font-size:.88rem;line-height:1.35}
.site-nav .nav-submenu a:hover{background:#f1f5f6}

@media(max-width:1020px){.nav-dropdown-toggle{font-size:.82rem;padding:9px 7px}}
@media(max-width:880px){
  .nav-dropdown{display:block;width:100%}
  .nav-dropdown-toggle{width:100%;justify-content:space-between;padding:11px 13px;font-size:.92rem;text-align:left}
  .nav-submenu{position:static;width:auto;margin:0 8px 5px 14px;padding:2px 0 2px 8px;border:0;border-left:2px solid #dce5e8;border-radius:0;box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;display:none}
  .nav-dropdown.open .nav-submenu{display:block;transform:none}
  .nav-dropdown:hover .nav-submenu:not(:focus-within){transform:none}
  .site-nav .nav-submenu a{padding:10px 12px;font-size:.88rem;color:#4b5d6b}
}

/* Compact homepage hero — reduce vertical space while keeping the layout balanced. */
@media (min-width: 881px) {
  .hero {
    min-height: 520px;
  }
  .hero-grid {
    grid-template-columns: minmax(0, 1.42fr) minmax(300px, .58fr);
    gap: 48px;
    padding: 54px 0;
  }
  .hero-copy {
    max-width: 820px;
  }
  .hero h1 {
    font-size: clamp(3rem, 4.8vw, 5rem);
    line-height: .94;
    margin: .08em 0 .22em;
    max-width: 820px;
  }
  .hero h1 .hero-line-church {
    font-size: .78em;
  }
  .hero p {
    font-size: 1.08rem;
    line-height: 1.5;
  }
  .hero-actions {
    margin-top: 24px;
  }
  .hero-note {
    margin-top: 20px;
  }
  .hero .btn {
    min-height: 44px;
    padding-left: 20px;
    padding-right: 20px;
  }
  .gather-card {
    width: 100%;
    max-width: 390px;
    justify-self: end;
    padding: 22px 24px;
    border-radius: 22px;
  }
  .gather-card-head {
    padding-bottom: 14px;
  }
  .gather-card-head strong {
    margin-top: 5px;
    font-size: 1.35rem;
  }
  .gather-row {
    padding: 12px 0;
  }
  .gather-location {
    margin-top: 14px;
  }
  .hero-watermark {
    bottom: -170px;
  }
}

@media (max-width: 880px) and (min-width: 621px) {
  .hero-grid {
    padding: 58px 0;
  }
  .gather-card {
    padding: 24px;
  }
}

@media (max-width: 620px) {
  .hero-grid {
    padding: 48px 0;
    gap: 30px;
  }
  .hero-actions {
    margin-top: 22px;
  }
  .hero-note {
    margin-top: 18px;
  }
  .gather-row {
    padding: 12px 0;
  }
}

/* Final launch polish: clearer active states, keyboard focus, and footer links. */
:where(a,button,summary,input,select,textarea):focus-visible{
  outline:3px solid #c6a462;
  outline-offset:3px;
}
.site-nav>a.active,
.site-nav>a[aria-current="page"],
.nav-dropdown.current>.nav-dropdown-toggle{
  background:#eef3f5;
  color:var(--navy);
}
.site-nav .nav-submenu a.active,
.site-nav .nav-submenu a[aria-current="page"]{
  background:#edf3f5;
  color:var(--navy-deep);
  font-weight:850;
}
.topbar-times strong{color:#fff;font-weight:800}
.footer-bottom-links{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}
.footer-bottom-links a{color:#b7c8d2;text-decoration:none}
.footer-bottom-links a:hover{color:#fff}

@media(max-width:620px){
  .footer-bottom-links{justify-content:flex-start;gap:12px 16px}
}
