@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--paper:#f5f1e7;--ink:#242620;--soft:#66655d;--line:#c9c8b7;--accent:#6e4226;--card:#fffaf0;--display:'Playfair Display',Georgia,serif;--radius:0px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #c05212;outline-offset:5px}img{display:block;width:100%;object-fit:cover}button{color:inherit}p{margin:0 0 22px}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.1;margin:0 0 22px}h1{font-size:clamp(48px,6.3vw,104px);letter-spacing:-.05em}h2{font-size:clamp(38px,4vw,62px);letter-spacing:-.035em}h3{font-size:27px}small,.eyebrow{font-size:11px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.eyebrow{margin-bottom:24px}.caption{font-size:13px;color:var(--soft);margin:24px 0 0}.skip{position:fixed;left:12px;top:-100px;background:white;color:#111;padding:15px;z-index:20}.skip:focus{top:12px}.design-bar{display:flex;justify-content:space-between;gap:16px;padding:9px 4%;font-size:11px;letter-spacing:.04em;background:var(--ink);color:var(--paper)}.design-bar a{text-decoration:underline;text-underline-offset:4px}.parish-header{display:flex;align-items:center;gap:34px;padding:30px 4%}.brand{display:flex;align-items:center;gap:12px;font:28px var(--display);margin-right:auto}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:.13em;margin-top:7px}.cross{font-size:45px;color:var(--accent)}nav{display:flex;gap:28px;font-size:14px}nav a:hover,.text-link:hover{color:var(--accent);text-decoration:underline;text-underline-offset:6px}.give-link{border:1px solid var(--line);padding:9px 24px;border-radius:var(--radius);font-size:14px}.hero{min-height:730px;position:relative;background:#25251c;color:#fffdf5;display:flex;align-items:center;isolation:isolate;padding:7% 7% 100px}.hero-image{position:absolute;inset:0;height:100%;z-index:-2}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,17,12,.83),rgba(22,18,9,.15))}.hero-copy{max-width:850px}.hero-description{max-width:470px;font-size:18px;line-height:1.7;opacity:.9}.hero-foot{position:absolute;bottom:28px;left:7%;right:7%;display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.09em;text-transform:uppercase;border-top:1px solid #ffffff70;padding-top:20px}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid var(--line);padding:14px 21px;background:transparent;color:inherit;border-radius:var(--radius);font-size:14px;min-height:48px;text-align:center}.button.primary{background:var(--accent);color:white;border-color:var(--accent)}.hero .primary{background:#f9f3de;color:#20261c;border-color:#f9f3de}.hero .secondary{border-color:#ffffff8a}.section{padding:95px 7%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.section-heading>div{max-width:650px}.section-heading>p{max-width:300px;color:var(--soft);font-size:15px}.section-heading h2{margin-bottom:0}.calendar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.schedule-card{background:var(--paper);padding:35px}.number{font-size:12px;display:block;margin-bottom:30px;color:var(--accent)}.schedule-card p{color:var(--soft);min-height:55px}.calendar-grid .button{width:100%;font-size:13px}.calendar-grid h3{font-size:29px}.ministry-search{display:flex;align-items:end;gap:14px;margin-bottom:36px}.ministry-search label:first-child{flex:1}label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600}input,select{min-width:0;width:100%;border:1px solid var(--line);background:var(--card);color:var(--ink);padding:13px 16px;min-height:50px;border-radius:var(--radius);font-size:15px}select{max-width:100%}.ministry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.ministry-card{border-top:1px solid var(--line);padding:28px 0;display:flex;flex-direction:column}.ministry-card .eyebrow{color:var(--accent);margin-bottom:16px;font-size:10px}.ministry-card h3{font-size:28px}.ministry-card p:not(.eyebrow){color:var(--soft);font-size:14px}.ministry-symbol{font-family:Georgia,serif;font-size:30px;margin-bottom:25px}.text-link{font-size:13px;font-weight:600;margin-top:auto}.gallery{background:#e9e5d9}.photo-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:16px}.photo-grid button{position:relative;background:none;border:0;padding:0;overflow:hidden;border-radius:var(--radius)}.photo-grid img{height:350px;transition:transform .3s}.photo-grid button:hover img{transform:scale(1.035)}.photo-grid span{position:absolute;bottom:0;left:0;right:0;padding:30px 20px 16px;background:linear-gradient(transparent,#000b);color:white;text-align:left;font-size:14px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:11%;border-top:1px solid var(--line)}.visit>div>p{color:var(--soft);max-width:470px}.visit form{background:var(--card);padding:36px;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;gap:18px;align-self:start}.visit form p{font-size:14px;margin:0}.checklist{padding-left:20px;font-size:14px;color:var(--soft)}.checklist li{padding:5px 0}.text-button{border:0;background:none;text-decoration:underline;text-underline-offset:4px;padding:8px;font-size:13px}.stream{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--ink);color:var(--paper);align-items:center}.stream p{max-width:430px}.stream img{height:390px;border-radius:var(--radius)}.stream .primary{background:var(--paper);color:var(--ink);border-color:var(--paper)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-notes article{padding:0 0 30px;margin-bottom:30px;border-bottom:1px solid var(--line)}.contact-notes p{font-size:15px;color:var(--soft)}footer{padding:60px 7% 25px;border-top:1px solid var(--line)}.footer-title{font:42px var(--display);display:flex;justify-content:space-between;gap:20px;margin-bottom:28px}.footer-title span{font:14px 'DM Sans',sans-serif;align-self:end}.footer-links{display:flex;gap:24px;align-items:center;flex-wrap:wrap;font-size:13px;margin-bottom:25px}.footer-links button{padding:0}details{font-size:13px;color:var(--soft);max-width:900px}summary{cursor:pointer;padding:12px 0}details a{text-decoration:underline}dialog{border:0;padding:20px;background:var(--paper);color:var(--ink);max-width:950px;width:90vw;max-height:90vh;overflow:auto}dialog::backdrop{background:#000c}dialog img{max-height:65vh;object-fit:contain}dialog p{font-size:14px;margin-top:15px}.gallery-close{position:sticky;top:0;float:right;background:white;color:#111;font-size:28px;width:44px;height:44px;border:0;z-index:1}.empty{padding:30px;border:1px solid var(--line)}[data-calendar-results]:not(:empty){margin-top:30px;padding:25px;border:1px solid var(--line)}[hidden]{display:none!important}
/* Four compositions share operational records, with deliberately different visual hierarchies. */
body[data-template=concierge]{--paper:#fcf9f2;--ink:#263c35;--soft:#60716a;--accent:#426652;--card:#fff;--line:#d6ddd3;--radius:22px}body[data-template=concierge] .hero{margin:0 4%;border-radius:32px;min-height:650px;padding:65px 6%;overflow:hidden;background:#e6ebdf;color:var(--ink)}body[data-template=concierge] .hero-image{left:52%;width:48%;border-radius:200px 0 0 0;z-index:0;opacity:.93}body[data-template=concierge] .hero:after{display:none}body[data-template=concierge] .hero-copy{width:51%;padding-right:25px}body[data-template=concierge] h1{font-size:clamp(46px,5.3vw,82px)}body[data-template=concierge] .hero-foot{display:none}body[data-template=concierge] .hero .primary{background:var(--accent);color:white}body[data-template=concierge] .hero .secondary{border-color:var(--accent)}body[data-template=concierge] .hero .actions{align-items:start;flex-direction:column}body[data-template=concierge] .calendar-grid{gap:18px;border:0;background:none}body[data-template=concierge] .schedule-card{border-radius:24px;background:#eaf0e6}body[data-template=concierge] .ministry-card{border:1px solid var(--line);border-radius:22px;padding:25px}body[data-template=concierge] .gallery{background:#edf1e8}body[data-template=concierge] .visit{border:0}
body[data-template=table]{--paper:#f6f7fb;--ink:#14263b;--soft:#5b6876;--accent:#254ad2;--card:#fff;--line:#d7dce5;--display:'Manrope',sans-serif;--radius:10px}body[data-template=table] h1,body[data-template=table] h2,body[data-template=table] h3{font-weight:700}body[data-template=table] .hero{min-height:520px;padding:65px 7%;background:#14263b}body[data-template=table] .hero-image{left:55%;width:45%;opacity:.65}body[data-template=table] .hero:after{background:linear-gradient(90deg,#14263b 45%,transparent 85%)}body[data-template=table] h1{font-size:clamp(45px,5.5vw,84px)}body[data-template=table] .hero-foot{display:none}body[data-template=table] .hero-copy{max-width:750px}body[data-template=table] .hero-description{max-width:460px}body[data-template=table] .calendar{background:#e8edf8}body[data-template=table] .section{padding-top:70px;padding-bottom:70px}body[data-template=table] .calendar-grid{background:none;gap:20px;border:0}body[data-template=table] .schedule-card{border-radius:12px;background:white;box-shadow:0 10px 30px #1632580b}body[data-template=table] .ministry-grid{grid-template-columns:repeat(2,1fr)}body[data-template=table] .ministry-card{border:1px solid var(--line);padding:28px;background:white;border-radius:12px}body[data-template=table] .ministry-symbol{display:none}body[data-template=table] .gallery{background:#edf0f6}
body[data-template=parea]{--paper:#fff8ed;--ink:#512c36;--soft:#765d64;--accent:#a64244;--card:#fffaf3;--line:#dec7bc;--radius:5px}body[data-template=parea] .hero{text-align:center;justify-content:center;min-height:720px}body[data-template=parea] .hero:after{background:linear-gradient(#35182960,#351829b8)}body[data-template=parea] .hero-copy{max-width:1000px}body[data-template=parea] .hero-description{margin:0 auto 30px;max-width:550px}body[data-template=parea] .hero .actions{justify-content:center}body[data-template=parea] h1{font-size:clamp(50px,6.4vw,96px)}body[data-template=parea] .ministries{background:#f7e9dc}body[data-template=parea] .ministry-grid{grid-template-columns:repeat(4,1fr)}body[data-template=parea] .ministry-card{border:0;background:var(--paper);padding:28px;border-radius:70px 70px 8px 8px}body[data-template=parea] .ministry-symbol{text-align:center;font-size:42px}body[data-template=parea] .photo-grid{grid-template-columns:repeat(3,1fr)}body[data-template=parea] .photo-grid button:first-child{border-radius:130px 130px 0 0}body[data-template=parea] .stream{background:#512c36}body[data-template=parea] .gallery{background:#ead6c7}
@media(max-width:1000px){.parish-header{gap:18px}nav{gap:15px}.brand{font-size:24px}.brand small{font-size:8px}.ministry-grid,body[data-template=parea] .ministry-grid{grid-template-columns:repeat(2,1fr)}.schedule-card{padding:25px}.calendar-grid h3{font-size:25px}.section{padding:70px 5%}.hero{min-height:650px}.photo-grid img{height:280px}}
@media(max-width:700px){.design-bar{font-size:10px;padding:8px 5%;align-items:center}.design-bar span{max-width:110px;text-align:right}.parish-header{padding:22px 5%;flex-wrap:wrap;gap:20px}.brand{font-size:25px}.cross{font-size:34px}.brand small{font-size:7px;max-width:200px}.give-link{padding:8px 14px;margin-left:auto}nav{width:100%;order:3;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:15px;font-size:13px}.hero{min-height:620px;padding:65px 6% 110px}.hero-copy{max-width:100%}h1{font-size:53px}.hero-description{font-size:16px}.hero-foot{font-size:9px;left:6%;right:6%;gap:12px}.hero-foot span{max-width:160px}.hero:after{background:linear-gradient(90deg,#101b13cf,#101b1366)}.button{font-size:13px;gap:10px;padding:13px 16px}.section{padding:55px 6%}.section-heading{display:block;margin-bottom:26px}.section-heading>p{max-width:none;margin:20px 0 0}.section-heading h2{font-size:39px}.calendar-grid{grid-template-columns:1fr}.schedule-card p{min-height:0}.schedule-card{padding:28px}.schedule-card .number{margin-bottom:15px}.calendar-grid h3{font-size:28px}.ministry-search{display:grid;grid-template-columns:1fr;gap:16px}.ministry-grid,body[data-template=parea] .ministry-grid,body[data-template=table] .ministry-grid{grid-template-columns:1fr 1fr;gap:16px}.ministry-card h3{font-size:23px}.ministry-card p:not(.eyebrow){font-size:13px}.ministry-card .eyebrow{font-size:9px}.ministry-symbol{margin-bottom:16px}.photo-grid{grid-template-columns:1fr 1fr}.photo-grid button:first-child{grid-column:1/-1}.photo-grid img{height:230px}.photo-grid button:first-child img{height:270px}.photo-grid span{font-size:12px;padding-left:12px}.visit,.stream,.contact{grid-template-columns:1fr;gap:30px}.visit form{padding:24px}.stream img{height:250px}.contact-notes{margin-top:10px}.footer-title{display:block;font-size:36px}.footer-title span{display:block;margin-top:14px}.footer-links{gap:18px}footer{padding:45px 6% 25px}.footer-links a{font-size:12px}body[data-template=concierge] .hero{display:block;margin:0 4%;padding:40px 7% 0;min-height:0;border-radius:24px}body[data-template=concierge] .hero-copy{width:100%;padding:0}body[data-template=concierge] h1{font-size:46px}body[data-template=concierge] .hero-image{position:relative;left:auto;width:calc(100% + 52px);height:280px;margin:35px -26px 0;border-radius:120px 0 0 0;order:2}body[data-template=concierge] .hero{display:flex;flex-direction:column-reverse}body[data-template=concierge] .hero-image{order:0}body[data-template=concierge] .hero-copy{order:1}body[data-template=concierge] .hero .actions{flex-direction:row}body[data-template=concierge] .ministry-card{padding:20px}body[data-template=table] .hero{min-height:560px;padding:55px 6%}body[data-template=table] .hero-image{left:0;width:100%;opacity:.3}body[data-template=table] .hero:after{background:linear-gradient(90deg,#14263bd9,#14263b70)}body[data-template=table] .section{padding:50px 6%}body[data-template=table] .ministry-card{padding:20px}body[data-template=parea] .hero{min-height:650px}body[data-template=parea] h1{font-size:50px}body[data-template=parea] .ministry-card{padding:22px 18px;border-radius:48px 48px 5px 5px}body[data-template=parea] .photo-grid{grid-template-columns:1fr 1fr}.empty{grid-column:1/-1}.actions>*{max-width:100%}dialog{padding:15px}dialog .actions button{padding:8px;font-size:12px}h1,h2,h3,p,a{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.ministry-open{align-self:start;text-align:left;padding:0;font-weight:600;margin-top:auto}.give-link{background:transparent;cursor:pointer;font-family:inherit;color:inherit}[data-parish-panel]{width:min(830px,94vw);max-width:830px;border-radius:18px;padding:40px;max-height:90vh;box-shadow:0 25px 90px #0006}[data-parish-panel] h2{padding-right:25px;font-size:45px}[data-parish-panel] .gallery-close{margin:-20px -20px 0 0;border-radius:50%;background:var(--card);color:var(--ink)}.panel-lead{font-size:19px;line-height:1.65}.panel-facts{padding-left:24px;margin-bottom:30px;color:var(--soft)}.panel-facts li{margin:12px 0}.document-card{padding:26px;border:1px solid var(--line);border-radius:var(--radius);margin:28px 0;background:var(--card)}.document-card h3{font-size:25px}.document-card p,.source-note,.panel-contact{font-size:14px}.source-note{color:var(--soft);margin:30px 0 15px}.panel-contact{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:25px 0}.schedule-list{margin-top:30px}.source-event{display:grid;grid-template-columns:75px 1fr;gap:20px;border-top:1px solid var(--line);padding:24px 0}.source-event time{color:var(--accent);font-weight:700;letter-spacing:.05em}.source-event h3{font-size:26px;margin-bottom:12px}.source-event p{font-size:14px;margin-bottom:12px}.source-event .actions{margin-bottom:15px}.source-event .button{font-size:12px}.panel-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:30px}.panel-photos figure{margin:0}.panel-photos img{height:150px}.panel-photos figcaption{font-size:11px;color:var(--soft);margin-top:7px}[data-panel-status]{margin-top:25px;font-size:14px}@media(max-width:700px){[data-parish-panel]{padding:27px 22px;border-radius:16px}[data-parish-panel] h2{font-size:34px}.panel-lead{font-size:17px}[data-parish-panel] .gallery-close{margin:-12px -8px 0 0}.source-event{grid-template-columns:1fr;gap:8px}.source-event h3{font-size:25px}.panel-photos{grid-template-columns:1fr}.panel-photos img{height:200px}.document-card{padding:22px}.panel-facts{font-size:14px}}
.hero.no-photo{background:radial-gradient(ellipse at top right,#66775144,transparent 65%),linear-gradient(145deg,#183843,#243f3b);color:#fff6e6;min-height:560px}.hero.no-photo:after{background:none}.hero.no-photo .hero-copy{position:relative}.hero.no-photo .hero-foot{color:#fff6e6}.hero-foot{max-width:100%;gap:20px}.hero-foot span{overflow-wrap:anywhere}.parish-header .brand small{line-height:1.5}.photo-grid:empty{display:none}
.parish-hero-controls{position:absolute;bottom:95px;right:5%;z-index:4;display:flex;align-items:center;gap:12px;max-width:340px;padding:8px 12px;background:#17302dea;color:#fff7e6;border:1px solid #ffffff66;border-radius:30px}.parish-hero-controls button{border:1px solid #fff7e688;background:transparent;color:#fff7e6;border-radius:50%;min-width:40px;min-height:40px}.parish-hero-controls span{font-size:11px;line-height:1.4}.parish-season{font-size:14px;line-height:1.6}.parish-season small{display:block;font-size:11px}.hero-image{object-fit:cover}.hero.no-photo .hero-copy{background:transparent;color:#fff7e6}.hero.no-photo h1,.hero.no-photo .hero-description{color:#fff7e6}@media(max-width:700px){.parish-hero-controls{bottom:65px;left:25px;right:auto;max-width:calc(100% - 50px);padding:5px 9px}.hero-foot{font-size:10px}.hero-copy{padding-bottom:145px!important}.hero.no-photo .hero-copy{padding-bottom:75px!important}.brand small{font-size:9px!important}}
@media(max-width:700px){body[data-template=concierge] .hero-copy{padding-bottom:0!important}body[data-template=concierge] .parish-hero-controls{bottom:16px}body[data-template=concierge] .hero.no-photo .hero-copy{padding-bottom:35px!important}}
/* The Concierge fallback shares its light surface with the photographed variant. */
body[data-template=concierge] .hero.no-photo,body[data-template=concierge] .hero.no-photo .hero-copy,body[data-template=concierge] .hero.no-photo h1,body[data-template=concierge] .hero.no-photo .hero-description,body[data-template=concierge] .hero.no-photo .hero-foot{color:var(--ink)}
body[data-template=concierge] .hero.no-photo .secondary{color:var(--ink);border-color:var(--accent)}
/* Shared parish polish: keep each design and each parish's own photography. */
.parish-header{padding-top:20px;padding-bottom:20px}.parish-header nav a{padding:8px 0}.schedule-card .number{font-size:12px;letter-spacing:.12em;margin-bottom:16px}.calendar-grid h3{font-size:27px}.schedule-card p{min-height:0;font-size:15px}.schedule-card{padding:28px!important}.schedule-card .button{padding:12px 15px;font-size:13px;min-height:44px}.calendar-grid{align-items:stretch}.schedule-card{display:flex;flex-direction:column;align-items:flex-start}.schedule-card .button{margin-top:auto}.visit form{border-radius:22px;box-shadow:0 18px 40px #182f3310}.visit label{font-size:13px}.visit input,.visit select{min-height:46px}.ministry-card{transition:box-shadow .18s ease}.ministry-card:hover{box-shadow:0 12px 30px #16332212}
body[data-template=concierge] .hero:not(.no-photo){min-height:640px;padding:40px;margin:0 3%;background:#16352f;color:#263c35;box-shadow:0 22px 60px #162e3226;align-items:center}
body[data-template=concierge] .hero:not(.no-photo) .hero-image{left:0;top:0;width:100%;height:100%;border-radius:0;opacity:1;object-position:center 44%;z-index:-2}
body[data-template=concierge] .hero:not(.no-photo):after{display:block;background:linear-gradient(90deg,#122d3020,transparent)}
body[data-template=concierge] .hero:not(.no-photo) .hero-copy{width:49%;max-width:550px;padding:34px!important;background:#fffcf2ed;backdrop-filter:blur(18px);border:1px solid #fff9e1bb;border-radius:24px;box-shadow:0 20px 60px #0d292b2b}
body[data-template=concierge] h1{font-size:clamp(44px,4.6vw,66px)}body[data-template=concierge] .hero .eyebrow{font-size:10px;margin-bottom:18px}body[data-template=concierge] .hero .actions{flex-direction:row;gap:10px}body[data-template=concierge] .hero .button{font-size:12px;padding:12px 15px}body[data-template=concierge] .parish-hero-controls{bottom:24px;right:28px;left:auto}body[data-template=concierge] .section{padding-top:65px;padding-bottom:65px}body[data-template=concierge] .schedule-card{border:1px solid var(--line);background:var(--card)}
[data-theme=dark] body,[data-theme=dark] body[data-template]{--paper:#132a30;--ink:#f7eedb;--soft:#c1cdc7;--card:#203d40;--line:#4b6665;--accent:#d8bd80}
[data-theme=dark] .calendar,[data-theme=dark] .gallery,[data-theme=dark] .stream,[data-theme=dark] .ministry-card,[data-theme=dark] .schedule-card,[data-theme=dark] .visit form{background:var(--card)!important;color:var(--ink)}
[data-theme=dark] body[data-template=concierge] .hero:not(.no-photo) .hero-copy{background:#142f35ed;border-color:#e7d5ac55;color:var(--ink)}[data-theme=dark] body[data-template=concierge] .hero .primary{background:#e2c98d;color:#132b32}[data-theme=dark] body[data-template=concierge] .hero.no-photo{background:#203d40}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] dialog{background:var(--card);color:var(--ink);border-color:var(--line)}
@media(max-width:700px){.parish-header{padding:18px 5% 14px;gap:14px}.parish-header nav{padding-top:10px}.brand{font-size:25px}body[data-template=concierge] .hero:not(.no-photo){display:block;min-height:0;padding:255px 12px 16px;margin:0 12px;border-radius:24px;isolation:isolate}body[data-template=concierge] .hero:not(.no-photo) .hero-image{position:absolute;inset:0;width:100%;height:325px;margin:0;border-radius:0;object-position:center 40%}body[data-template=concierge] .hero:not(.no-photo) .hero-copy{position:relative;width:100%;max-width:none;padding:24px!important;border-radius:20px}body[data-template=concierge] h1{font-size:42px;line-height:1.05;margin-bottom:18px}body[data-template=concierge] .hero-description{font-size:15px;margin-bottom:20px}body[data-template=concierge] .parish-hero-controls{top:16px;bottom:auto;right:16px;left:auto;padding:4px 8px}body[data-template=concierge] .parish-hero-controls button{min-width:36px;min-height:36px}body[data-template=concierge] .section{padding:42px 6%}.calendar-grid{gap:12px!important}.schedule-card{padding:22px!important;border-radius:18px!important}.schedule-card .number{margin-bottom:10px}.calendar-grid h3{margin-bottom:12px;font-size:25px}.schedule-card p{margin-bottom:18px}.section-heading h2{font-size:36px}.visit form{padding:22px}.ministry-grid{gap:12px}.ministry-card{padding:18px!important}.ministry-card h3{font-size:22px}}

/* Zoi parish presentation palette; source photography remains unchanged. */
body,body[data-template]{--paper:#f7fbff;--ink:#12314b;--soft:#4a6478;--card:#fff;--line:#c7dce9;--accent:#075f96}
body[data-template=concierge] .hero:not(.no-photo){background:#082a45;color:#12314b}body[data-template=concierge] .hero:not(.no-photo) .hero-copy{background:#fffffff0;border-color:#d4ecffbb}.hero .primary{background:#fff;color:#10334f;border-color:#fff}.gallery{background:#edf6fc}.cross{color:var(--accent)}
[data-theme=dark] body,[data-theme=dark] body[data-template]{--paper:#071a30;--ink:#f2f9ff;--soft:#c1d8e9;--card:#102c47;--line:#355a75;--accent:#86e4f4}
[data-theme=dark] body[data-template=concierge] .hero:not(.no-photo) .hero-copy{background:#092840ed;border-color:#7cdff255;color:#f2f9ff}[data-theme=dark] body[data-template=concierge] .hero .primary{background:#86e4f4;color:#082b43}[data-theme=dark] .button.primary{background:#86e4f4;color:#082b43}[data-theme=dark] body[data-template=concierge] .hero.no-photo{background:#102c47}

.parish-hero-controls{background:#092c46de;color:#fff;border-color:#7cdff266}.parish-hero-controls button{color:#fff;border-color:#a8dfee}
