.prayer-page{--event-ink:#183f32;--event-accent:#d5ef87}
.event-breadcrumb{display:flex;align-items:center;gap:16px;padding-block:27px;font-size:.8125rem;letter-spacing:.01em;color:var(--muted)}
.event-breadcrumb a,.event-return a{display:inline-flex;align-items:center;gap:10px}
.event-breadcrumb a:hover,.event-return a:hover{color:var(--forest);text-decoration:underline;text-underline-offset:5px}
.event-breadcrumb .icon{width:17px;height:17px}
.prayer-hero{display:grid;grid-template-columns:1.14fr 1fr;gap:clamp(40px,6vw,88px);align-items:center;padding-block:13px 65px}
.event-kicker{display:flex;align-items:center;gap:9px;margin-bottom:24px}
.event-kicker>span{width:8px;height:8px;background:var(--forest);border-radius:50%;box-shadow:0 0 0 5px var(--sage);margin:5px}
.prayer-intro h1{font-size:clamp(3.7rem,6.3vw,5.65rem);line-height:.99;letter-spacing:-.055em;margin-bottom:25px}
.prayer-subtitle{font-size:1.125rem;font-weight:500;letter-spacing:.01em;margin-bottom:20px}
.prayer-lead{font-size:1rem;line-height:1.75;color:var(--muted);max-width:42ch}
.prayer-facts{display:grid;grid-template-columns:1fr;gap:21px;border-top:1px solid var(--line);padding-top:27px;margin:30px 0}
.prayer-facts>div{display:grid;grid-template-columns:78px 1fr;gap:18px}
.prayer-facts dt{display:flex;align-items:start;gap:8px;font-size:.8125rem;color:var(--muted);padding-top:2px}
.prayer-facts dt .icon{width:18px;height:18px;margin-top:2px}
.prayer-facts dd{margin:0;font-size:1rem;font-weight:500;line-height:1.6}
.prayer-facts dd span{display:block;color:var(--muted);font-size:.875rem;font-weight:400;margin-top:3px}
.prayer-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.calendar-button{min-height:56px;padding:15px 23px;gap:12px;letter-spacing:.02em}
.calendar-button .icon:last-child{width:18px;height:18px;margin-left:8px}
.route-link{display:inline-flex;align-items:center;gap:7px;font-size:.875rem;letter-spacing:.01em;min-height:44px}
.route-link:hover{text-decoration:underline;text-underline-offset:5px}
.route-link .icon{width:17px;height:17px}
.calendar-hint{font-size:.75rem;letter-spacing:.01em;line-height:1.6;color:var(--muted);margin-top:12px}
.prayer-poster{align-self:start}
.prayer-poster>a{display:block;border-radius:8px;overflow:hidden;box-shadow:0 12px 36px #183f3214}
.prayer-poster img{display:block;width:100%;height:auto}
.prayer-poster figcaption{display:flex;justify-content:space-between;align-items:start;gap:12px;font-size:.75rem;letter-spacing:.01em;color:var(--muted);margin-top:15px}
.prayer-poster figcaption a{display:flex;align-items:center;gap:7px;white-space:nowrap;min-height:24px;text-decoration:underline;text-underline-offset:4px}
.prayer-poster figcaption .icon{width:14px;height:14px}
.prayer-invitation{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,120px);border-top:1px solid var(--line);padding-block:55px}
.prayer-invitation .eyebrow{margin-bottom:18px}
.prayer-invitation h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.12}
.invitation-copy{padding-top:3px}
.invitation-copy p{color:var(--muted);line-height:1.8;margin-bottom:16px;max-width:52ch}
.invitation-copy .quiet-link{display:inline-block;min-height:44px;padding-block:8px}
.event-source{display:flex;align-items:start;gap:12px;border-top:1px solid var(--line);padding-block:20px;color:var(--muted);font-size:.75rem;letter-spacing:.01em}
.event-source .icon{width:17px;height:17px;flex:none;margin-top:1px}
.event-source p{max-width:90ch}
.event-return{padding-block:16px 45px;font-size:.875rem}
@media(min-width:1450px){.prayer-hero{padding-top:24px}}
@media(max-width:1100px){.prayer-hero{gap:40px;grid-template-columns:1.1fr 1fr}.prayer-intro h1{font-size:clamp(3.1rem,6vw,4.6rem)}.prayer-actions{gap:10px 22px}.prayer-poster figcaption>span{display:none}.prayer-poster figcaption{justify-content:end}.prayer-facts>div{grid-template-columns:65px 1fr;gap:10px}}
@media(max-width:760px){.prayer-page .header-action{max-width:none;padding-inline:14px}.event-breadcrumb{padding-block:20px;font-size:.75rem;gap:10px}.prayer-hero{grid-template-columns:1fr;gap:36px;padding-block:12px 40px}.prayer-intro h1{font-size:clamp(3.3rem,9.5vw,5.3rem);margin-bottom:21px}.event-kicker{margin-bottom:20px}.prayer-lead{max-width:100%}.prayer-facts{margin-block:26px;gap:19px;padding-top:23px}.prayer-facts>div{grid-template-columns:73px 1fr}.prayer-actions{gap:14px 22px}.prayer-poster{width:min(100%,490px);margin-inline:auto}.prayer-poster figcaption>span{display:block}.prayer-poster figcaption{justify-content:space-between}.prayer-invitation{grid-template-columns:1fr;gap:24px;padding-block:37px}.prayer-invitation h2{font-size:2.3rem}.event-source{padding-block:19px}.event-return{padding-bottom:34px}}
@media(max-width:400px){.prayer-page .header-action{font-size:.7rem;padding-inline:11px;max-width:135px}.prayer-intro h1{font-size:3.35rem}.prayer-facts>div{grid-template-columns:56px 1fr;gap:10px}.prayer-facts dd{font-size:.9375rem}.prayer-facts dd span{font-size:.8125rem}.prayer-facts dt{gap:5px}.calendar-button{width:100%}.route-link{padding-inline:4px}.prayer-actions{gap:6px}.calendar-hint{max-width:31ch}.prayer-poster figcaption>span{display:none}.prayer-poster figcaption{justify-content:start}.prayer-invitation h2{font-size:2.1rem}}

.venue-section{padding-block:10px 45px}
.venue-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}
.venue-heading .eyebrow{margin-bottom:14px}.venue-heading h2{font-size:clamp(2rem,3.6vw,3rem);margin-bottom:13px}.venue-heading p:not(.eyebrow){color:var(--muted);font-size:.9375rem}
.venue-map-shell{height:420px;border:1px solid var(--line);border-radius:16px;position:relative;overflow:hidden;background:var(--sage)}
.venue-map-consent{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px;gap:17px;background:radial-gradient(ellipse at center,#f6f5ef 0%,#e3eadd 75%)}
.venue-consent-pin{width:42px;height:42px}.venue-map-consent strong{font-family:var(--display);font-size:1.45rem;letter-spacing:-.03em}.venue-map-consent p{max-width:55ch;font-size:.8125rem;line-height:1.65;color:var(--muted)}.venue-map-consent p a{text-decoration:underline;text-underline-offset:3px}
#venue-map-host{height:100%;position:relative}.venue-map-canvas{height:100%;width:100%}
.venue-map-pin{display:block;width:44px;height:52px;padding:2px 4px;background:transparent;color:var(--forest);filter:drop-shadow(0 4px 7px #183f3233)}.venue-map-pin svg{width:100%;height:100%}.venue-map-pin:hover{transform:translateY(-2px)}
.venue-map-popup{font-family:var(--body);min-width:210px;line-height:1.6}.venue-map-popup strong{font-size:.9375rem}.venue-map-popup p{font-size:.8125rem;color:var(--muted);margin-top:6px}.venue-map-popup a{display:inline-flex;align-items:center;min-height:40px;text-decoration:underline;font-size:.8125rem}
.venue-map-address{position:absolute;top:14px;left:14px;max-width:calc(100% - 90px);padding:10px 14px;background:var(--paper);border-radius:9px;font-size:.8125rem;pointer-events:none;box-shadow:0 3px 12px #183f3214}
.venue-map-close{position:absolute;left:14px;bottom:35px;background:var(--paper);border:1px solid var(--line);border-radius:99px;min-height:38px;padding:8px 13px;font-size:.75rem;box-shadow:0 2px 10px #183f3214;z-index:2}
.venue-map-error{position:absolute;left:14px;right:14px;bottom:85px;background:var(--paper);padding:16px;border-radius:9px;font-size:.8125rem;z-index:3}.venue-map-error a{text-decoration:underline}
@media(max-width:760px){.venue-heading{display:block}.venue-heading .outline-button{margin-top:20px}.venue-map-shell{height:390px}.venue-map-consent{padding:22px 18px}.venue-map-consent strong{font-size:1.3rem}.venue-map-address{font-size:.75rem;max-width:calc(100% - 78px);padding:9px 11px}.venue-section{padding-bottom:25px}}
