@charset "UTF-8";
/* Shared identity tokens. The portable brand kit mirrors these values. */
:root{
  --navy:#142c45;--marian-navy:#24475f;--navy-deep:#0d2135;--gold:#8a6729;--gold-light:#d6bd7e;
  --stone:#f4f2ed;--ink:#202d36;--muted:#52616b;--line:#d8ddde;--white:#fff;
  --font-serif:Georgia,"Times New Roman",serif;--font-sans:"Segoe UI",Arial,sans-serif;
  --font-body:clamp(1rem,.96rem + .15vw,1.0625rem);
  --font-lead:clamp(1.0625rem,1rem + .2vw,1.1875rem);
  --font-h1:clamp(2.375rem,1.9rem + 2vw,3.75rem);
  --font-h2:clamp(1.875rem,1.6rem + 1.2vw,2.625rem);
  --font-h3:clamp(1.5rem,1.4rem + .5vw,1.75rem);
  --wrap:1200px;--gutter:clamp(20px,4.5vw,64px);
  --section-space:clamp(48px,6vw,80px);--layout-gap:clamp(32px,5vw,72px);
  --radius:3px;--focus:#b68021;--motion:160ms;
  --shadow-floating:0 5px 20px #142c4514;--shadow-panel:0 12px 32px #142c451c;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--white);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;font-size:17px;line-height:1.65;-webkit-text-size-adjust:100%}a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}a:hover{color:var(--gold)}button,input,summary{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;height:auto}figure,p,dl{margin:0}p+p{margin-top:1em}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--navy);line-height:1.13;letter-spacing:-.025em;margin:0 0 26px}h1{font-size:clamp(44px,4.5vw,66px)}h2{font-size:clamp(32px,3vw,44px)}h3{font-size:27px}h1 .english{font-size:.56em;line-height:1.25;letter-spacing:-.015em;margin-top:20px}h2 .english{font-size:.62em;line-height:1.3;margin-top:10px}h3 .english{font-size:.66em;margin-top:8px;line-height:1.35}p,li{overflow-wrap:break-word}.wrap{max-width:calc(var(--wrap) + var(--gutter)*2);margin-inline:auto;padding-inline:var(--gutter)}.english{display:block;color:var(--muted)}.copy-pair{max-width:680px;margin-bottom:26px}.copy-pair .english{margin-top:12px;font-size:.93em;line-height:1.65}.copy-pair.small{font-size:14px}.paired>span{display:block}.lead{font-size:19px;line-height:1.6}.small{font-size:14px}.muted{color:var(--muted)}.skip-link{position:fixed;left:16px;top:-120px;padding:14px 20px;background:#fff;color:var(--navy);z-index:100;border:2px solid var(--navy)}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #b68021;outline-offset:5px}main:focus{outline:none}.utility{background:var(--navy-deep);color:#fff;font-size:13px;letter-spacing:.035em}.utility-inner{display:flex;gap:34px;align-items:center;min-height:38px}.utility-inner a{color:#fff;text-decoration:none;padding:6px 0}.utility-inner a:last-child{margin-left:auto}.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:122px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;gap:16px;align-items:center;text-decoration:none;flex-shrink:0;color:var(--navy)}.brand-name{font-family:Georgia,"Times New Roman",serif;font-size:38px;line-height:1;letter-spacing:-.04em}.brand-name>span{font-family:"Segoe UI",Arial,sans-serif;display:block;font-size:12px;line-height:1.7;letter-spacing:.13em;text-transform:uppercase;margin-top:8px}.brand-image{width:60px;height:60px;object-fit:contain;flex-shrink:0}.desktop-nav{display:flex;gap:clamp(22px,2.3vw,38px);align-items:center}.desktop-nav>a{position:relative;text-decoration:none;padding:13px 0;font-size:15px;font-weight:600;line-height:1.45}.desktop-nav .english{font-size:12px;font-weight:400;margin-top:4px}.desktop-nav [aria-current]{color:var(--gold)}.desktop-nav [aria-current]:after{content:"";position:absolute;bottom:3px;left:0;width:24px;height:2px;background:var(--gold)}.mobile-menu{display:none}.hero{padding:52px 0 60px;background:var(--stone)}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(40px,5vw,76px)}.hero-copy{padding-block:20px}.hero h1{font-size:clamp(42px,4.3vw,64px);margin-bottom:30px;line-height:1.1}.hero h1 .english{max-width:440px;font-size:.54em}.hero .lead{max-width:510px;font-size:18px}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:58px;padding:16px 25px;background:var(--navy);color:#fff;border:1px solid var(--navy);text-decoration:none;line-height:1.25;border-radius:var(--radius);font-weight:600;letter-spacing:.01em;transition:background .15s,color .15s}.button .english{color:#e0e6ec;font-size:12px;font-weight:400;margin-top:6px}.button:hover{background:var(--navy-deep);color:#fff}.button.light{background:#fff;color:var(--navy);border-color:#fff}.button.light .english{color:var(--muted)}.button.light:hover{background:var(--stone)}.button.outline{background:transparent;color:var(--navy)}.button.outline .english{color:var(--muted)}.text-link{display:inline-block;font-size:15px;font-weight:600}.text-link .english{font-size:12px;font-weight:400;margin-top:4px}.photo{overflow:hidden;background:#e5e7e5}.photo img{width:100%;height:100%;object-fit:cover}.hero-photo{height:460px;box-shadow:14px 14px 0 #e2dfd5}.hero-photo img{object-position:61% center}.worship-band{background:var(--navy);color:#fff}.service-facts{display:grid;grid-template-columns:1fr 1.2fr 1.15fr;padding-top:33px;padding-bottom:33px;gap:34px;align-items:center}.service-facts>div{padding-right:30px;border-right:1px solid #526274}.service-facts>div:last-child{border:0;padding-right:0}.service-facts .english{color:#cdd6df;font-size:13px;margin-top:5px}.fact-time{font-family:Georgia,"Times New Roman",serif;font-size:30px;line-height:1.3}.fact-time .english{font-family:"Segoe UI",Arial,sans-serif;font-size:15px;margin-top:9px}.service-facts p{font-size:13px;line-height:1.4;margin-top:9px}.service-facts p .english{font-size:12px}.service-facts .text-link{color:#fff;margin-top:10px;font-size:13px}.service-facts .text-link .english{font-size:12px}.section{padding:85px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px);align-items:center}.split.top{align-items:start}.editorial{max-width:630px}.editorial h2:not(:first-child){margin-top:45px}.landscape-photo{aspect-ratio:16/10}.welcome-section .landscape-photo{aspect-ratio:1.12}.stone{background:var(--stone)}.next-steps{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.link-rows{border-top:1px solid #c9cdd0}.link-row{display:flex;align-items:center;justify-content:space-between;gap:24px;text-decoration:none;border-bottom:1px solid #c9cdd0;padding:27px 0}.link-row h3{margin:0 0 10px;font-size:27px}.link-row .copy-pair{margin:0;font-size:15px}.link-row .copy-pair .english{margin-top:4px;font-size:13px}.link-row>span{font-size:28px;color:var(--gold);flex-shrink:0}.link-row:hover h3{color:var(--gold)}.invitation{background:var(--navy);color:#fff;padding:64px 0}.invitation-inner{display:flex;gap:40px;align-items:center;justify-content:space-between}.invitation h2{color:#fff;margin-bottom:20px}.invitation h2 .english,.invitation .english{color:#d2dce5}.invitation .copy-pair{margin:0}.site-footer{padding:65px 0 24px;background:#fff}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:64px;padding-bottom:45px}.footer-brand{margin-bottom:25px}.site-footer .brand-name{font-size:34px}.site-footer p{font-size:14px;margin-bottom:14px}.site-footer h2{font-family:"Segoe UI",Arial,sans-serif;font-size:16px;letter-spacing:0;font-weight:600;margin-bottom:25px}.site-footer h2 .english{font-size:13px;font-weight:400}.site-footer .footer-email{display:block;font-size:14px;margin-top:9px;overflow-wrap:anywhere}.site-footer .footer-link{display:inline-block;text-decoration:none;margin-bottom:15px;font-size:14px;line-height:1.35}.footer-link .english{font-size:12px;margin-top:3px}.footer-top nav{display:grid;grid-template-columns:1fr 1fr;column-gap:25px;align-content:start}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:22px;border-top:1px solid var(--line);padding-top:24px;color:var(--muted);font-size:12px}.footer-bottom p{margin:0;font-size:12px}.footer-bottom>div{display:flex;gap:22px}.page-intro{background:var(--stone);padding:40px 0 50px;border-bottom:1px solid var(--line)}.page-intro h1{margin-bottom:26px;max-width:980px}.page-intro .lead{max-width:760px;margin:0;font-size:20px}.page-intro .lead .english{font-size:17px}.breadcrumb{display:inline-block;color:var(--muted);font-size:12px;margin-bottom:25px;text-decoration:none}.breadcrumb .paired{display:flex;gap:8px}.breadcrumb .english:before{content:"/ ";margin-right:4px}.editorial-block{margin-top:42px}.editorial-block h3{font-size:28px;margin-bottom:20px}.hours{background:var(--stone);padding:32px 34px;border-top:3px solid var(--gold);margin-top:32px}.hours h3{font-size:29px;margin-bottom:25px}.hours dl{font-size:14px}.hours dl>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-top:1px solid #d5d7d7}.hours dt .english,.hours dd .english{font-size:12px;margin-top:3px}.hours dd{margin:0;text-align:right}.hours .copy-pair{margin:22px 0 0}.hours .copy-pair.small{font-size:12px}.portrait-photo{aspect-ratio:3/4;max-height:700px}.worship-layout{grid-template-columns:1.2fr .8fr;align-items:start}.service-time{border-left:3px solid var(--gold);padding-left:20px;margin-bottom:35px;font-size:26px;color:var(--navy)}.service-time .english{font-size:17px;margin-top:4px}.resource-row{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:start;margin-top:36px}.resource-links{display:grid;gap:25px}.priest-layout{grid-template-columns:.8fr 1.2fr;align-items:start}.editorial-wide{max-width:1000px}.editorial-wide>.copy-pair{max-width:800px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-bottom:30px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:start}.contact-grid .hours{margin:0}.contact-lines{display:grid;gap:16px;font-style:normal;font-size:20px}.contact-lines a{width:fit-content;overflow-wrap:anywhere}.contact-grid .small{margin-top:28px}.address-block{padding-top:28px;margin-top:32px;border-top:1px solid var(--line)}.address-block p{margin-bottom:20px}.notice{border-left:3px solid var(--gold);padding:20px 30px;background:var(--stone);margin-bottom:45px}.date{font-size:13px;color:var(--muted);margin-bottom:15px}.search-form{margin-bottom:20px}.search-form label{display:block;font-size:20px;margin-bottom:22px}.search-form label .english{font-size:16px}.search-controls{display:flex;gap:15px}.search-controls input{min-width:0;flex:1;font-size:21px;padding:15px;border:1px solid #81909a;border-radius:var(--radius);background:#fff;color:var(--ink)}.search-controls .button{min-width:130px}#search-status{margin:35px 0 0}.search-results{list-style:none;counter-reset:results;margin:0;padding:0}.search-results li{padding:27px 0;border-bottom:1px solid var(--line)}.search-results h2{font-size:28px;margin:0 0 14px}.search-results h2 a{text-decoration:none;display:block}.search-results h2 .english{font-size:18px;margin-top:8px}.search-results p{font-size:16px}.search-results p .english{font-size:14px;margin-top:8px}.search-help{margin-top:40px}strong{font-weight:600}.section [id]{scroll-margin-top:30px}
@media(min-width:1500px){.hero-photo{height:490px}.hero{padding-top:65px;padding-bottom:75px}}
@media(max-width:1080px){.desktop-nav{gap:20px}.desktop-nav>a{font-size:14px}.brand-name{font-size:32px}.brand-name>span{font-size:10px}.hero-grid{gap:35px}.hero-photo{height:430px}.hero h1{font-size:47px}.hero h1 .english{font-size:.57em}.hero .lead{font-size:16px}.hero .actions{gap:20px}.section{padding-block:65px}.next-steps{gap:50px}.footer-top{gap:35px}.contact-grid{gap:50px}}
@media(max-width:800px){.header-inner{min-height:95px}.desktop-nav{display:none}.brand-name{font-size:32px}.brand-name>span{font-size:10px}.brand-image{width:45px;height:45px}.mobile-menu{display:block;position:relative}.mobile-menu summary{list-style:none;cursor:pointer;display:flex;gap:18px;align-items:center;min-height:48px;font-size:14px;line-height:1.2;color:var(--navy)}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary .english{font-size:11px;margin-top:4px}.menu-lines{width:24px;height:15px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}.menu-lines:after{position:absolute;content:"";height:1px;background:currentColor;top:6px;left:0;right:0}.mobile-menu nav{position:absolute;z-index:20;right:0;top:66px;background:#fff;width:min(340px,calc(100vw - 52px));border:1px solid var(--line);box-shadow:0 15px 30px #142c4520;padding:12px 22px}.mobile-menu nav>a{display:block;text-decoration:none;padding:12px 0;line-height:1.4;border-bottom:1px solid var(--line);font-size:16px}.mobile-menu nav>a:last-child{border:0}.mobile-menu nav .english{font-size:12px;margin-top:3px}.hero{padding:30px 0 42px}.hero-grid{grid-template-columns:1fr;gap:36px}.hero-copy{padding:10px 0 0}.hero h1{font-size:50px;max-width:600px}.hero h1 .english{font-size:29px;max-width:none}.hero .lead{max-width:650px;font-size:18px}.hero-photo{height:auto;aspect-ratio:16/10;box-shadow:9px 9px 0 #e2dfd5}.service-facts{grid-template-columns:1fr 1.3fr;gap:23px;padding-block:29px}.service-facts>div{padding-right:18px}.service-facts>div:nth-child(2){border:0;padding:0}.service-facts>div:last-child{grid-column:1/-1;border-top:1px solid #526274;padding-top:23px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:14px}.service-facts .fact-time{font-size:26px}.service-facts .fact-time .english{font-size:13px}.split,.next-steps,.resource-row,.priest-layout,.worship-layout,.contact-grid{grid-template-columns:1fr;gap:40px}.welcome-section .landscape-photo{aspect-ratio:16/10}.welcome-section .split>div:first-child{order:2}.welcome-section .editorial{order:1}.next-steps>.link-rows{margin-top:0}.next-steps>h2{margin:0}.invitation-inner{display:block}.invitation-inner>.button{margin-top:30px}.invitation{padding-block:50px}.footer-top{grid-template-columns:1fr 1fr;gap:40px}.footer-top>nav{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:12px 28px}.footer-bottom{align-items:start}.page-intro{padding-top:28px;padding-bottom:36px}.page-intro h1{font-size:46px}.page-intro .lead{font-size:18px}.page-intro .lead .english{font-size:16px}.page-intro h1 .english{font-size:26px;margin-top:14px}.portrait-photo{max-width:480px;width:100%;max-height:550px}.worship-layout .portrait-photo{max-width:none;aspect-ratio:16/10}.worship-layout .portrait-photo img{object-position:center 35%}.priest-layout .portrait-photo{order:2}.contact-grid .hours{max-width:600px}.two-columns{gap:35px}.section{padding-block:55px}.editorial-block{margin-top:35px}}
@media(max-width:480px){body{font-size:16px}.utility-inner{gap:20px;min-height:35px;font-size:11px}.utility-inner>span{letter-spacing:0}.utility-inner>a:last-child{font-size:11px}.header-inner{min-height:90px;gap:15px}.brand{gap:10px}.brand-name{font-size:29px}.brand-image{width:39px;height:39px}.brand-name>span{font-size:9px;letter-spacing:.1em}.mobile-menu summary{gap:10px}.hero h1{font-size:43px;line-height:1.12}.hero h1 .english{font-size:25px;line-height:1.28;max-width:320px}.hero .lead{font-size:17px}.copy-pair .english{font-size:15px}.hero .actions{align-items:flex-start;gap:24px}.hero .actions>.text-link{align-self:center}.button{font-size:14px;padding:14px 19px}.button .english{font-size:11px}.hero-photo{aspect-ratio:4/3}.service-facts{gap:18px;grid-template-columns:1fr 1.1fr}.service-facts .fact-time{font-size:23px}.service-facts>div:nth-child(2){font-size:14px}.service-facts .english{font-size:12px}.service-facts p{font-size:12px}.service-facts p .english{font-size:11px}.service-facts>div:last-child{font-size:13px}.service-facts .text-link{font-size:12px}.service-facts .text-link .english{font-size:11px}h2{font-size:33px}h2 .english{font-size:22px}h3{font-size:26px}.section{padding-block:47px}.link-row{padding-block:23px}.link-row h3{font-size:25px}.link-row .copy-pair{font-size:14px}.footer-top{grid-template-columns:1fr;gap:35px}.footer-top>nav{grid-column:auto;grid-template-columns:1fr 1fr;gap:10px 25px}.footer-bottom{flex-direction:column;gap:16px}.site-footer{padding-top:48px}.page-intro h1{font-size:40px}.page-intro h1 .english{font-size:25px}.page-intro .lead .english{font-size:15px}.hours{padding:27px 23px}.hours dl{font-size:13px}.hours dt .english,.hours dd .english{font-size:11px}.hours dl>div{gap:10px}.two-columns{grid-template-columns:1fr;gap:0}.contact-lines{font-size:18px}.search-controls{gap:10px}.search-controls input{font-size:18px;width:100px}.search-controls .button{min-width:90px;padding-inline:13px}.search-results h2 .english{font-size:18px}.service-time{font-size:24px}.page-intro .lead{font-size:17px}.portrait-photo{max-height:480px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{.utility,.site-header,.site-footer,.actions,.mobile-menu,.invitation,.search-form{display:none}.wrap{padding:0}.section,.page-intro{padding:18px 0}.hero-grid,.split{display:block}.hero-photo{max-height:250px;box-shadow:none}body{font-size:12pt}a{text-decoration:none}.copy-pair .english{font-size:10pt}.worship-band{background:white;color:black}.worship-band .english{color:#333}.service-facts>div{border:0}h1{font-size:30pt}h2{font-size:23pt}.photo{break-inside:avoid}.hours{break-inside:avoid}}

@media(max-width:360px){.hero h1{font-size:36px}.hero h1 .english{font-size:23px}.utility-inner>span{display:none}.utility-inner>a{white-space:nowrap}.hero .actions{gap:20px}.page-intro h1{font-size:36px}}

.devotional-art { margin:0; text-align:center; } .devotional-art img { display:block; width:min(100%,22rem); height:auto; margin:auto; } .visitor-sign {margin:2rem 0 0;} .visitor-sign img {width:100%;height:auto;border-radius:.5rem;} figcaption {font-size:.85rem;line-height:1.55;color:#5a6570;margin-top:.7rem;}

.priest-portrait{aspect-ratio:auto;max-height:none;overflow:visible;background:transparent}.priest-portrait img{width:100%;height:auto;aspect-ratio:721/960;object-fit:contain}.priest-portrait figcaption{padding-top:12px;font-size:13px;line-height:1.5;color:var(--muted)}.priest-portrait figcaption .english{font-size:12px;margin-top:5px}

/* An explicit translation preference leaves shared identity and visitor facts intact. */
html[data-language="es"] [data-translation="en"],html[data-language="en"] [data-translation="es"]{display:none!important}
html[data-language="en"] .english{font-size:inherit!important;font-family:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;color:inherit!important;margin-top:0!important;max-width:none!important}
html[data-language="es"] .english:before,html[data-language="en"] .english:before{content:none!important}
html{--nav-offset:100px;scroll-padding-top:var(--nav-offset)}
main,.section [id]{scroll-margin-top:var(--nav-offset)}
a,button,summary{transition:color .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #b68021;outline-offset:4px}
.utility-inner .paired{display:flex;align-items:center;gap:7px}
.utility-inner .english{color:#dbe4ed}
.utility-inner .english:before{content:"/";margin-right:7px;opacity:.6}
.site-header{border:0}
.header-inner{min-height:120px}
.masthead-note{text-align:right;font-size:14px;letter-spacing:.015em;line-height:1.5;color:var(--navy)}
.masthead-note .english{font-size:12px;margin-top:5px}
.nav-sentinel{height:1px;background:var(--line)}
.nav-shell{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 3px 18px #142c4500;transition:box-shadow .2s ease,border-color .2s ease}
.nav-shell.is-floating{border-bottom-color:#d2d7da;box-shadow:0 5px 20px #142c4514}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:76px}
.nav-home{display:flex;align-items:center;gap:9px;text-decoration:none;white-space:nowrap;color:var(--navy);font:22px/1 Georgia,"Times New Roman",serif;letter-spacing:-.025em;flex-shrink:0}
.nav-home img{width:30px;height:34px;object-fit:contain}
.desktop-nav{justify-content:center;gap:clamp(18px,2vw,30px)}
.desktop-nav>a{font-size:14px;padding:13px 0;white-space:nowrap}
.desktop-nav .english{font-size:11px;margin-top:3px}
.desktop-nav>a:after{content:"";position:absolute;bottom:6px;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .16s ease}
.desktop-nav>a:hover:after,.desktop-nav>a:focus-visible:after,.desktop-nav [aria-current]:after{transform:scaleX(1)}
.nav-tools{display:flex;align-items:center;gap:22px;flex-shrink:0}
.language-control{position:relative}
.language-control summary{display:flex;gap:8px;align-items:center;list-style:none;min-height:44px;padding:8px 0;font-size:11px;font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer;color:var(--muted)}
.language-control summary::-webkit-details-marker,.mobile-menu summary::-webkit-details-marker{display:none}
.language-control summary:hover,.language-control[open] summary{color:var(--navy)}
.language-control svg{flex-shrink:0}
.disclosure-chevron{width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin:0 3px 3px 2px;transition:transform .16s ease}
.language-control[open] .disclosure-chevron{transform:rotate(225deg);margin-top:4px}
.language-panel{position:absolute;right:0;top:calc(100% + 8px);width:224px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 32px #142c451c;padding:17px 18px 12px;border-radius:var(--radius);z-index:45}
.language-panel fieldset{border:0;padding:0;margin:0;min-width:0}
.language-panel legend{padding:0 0 10px;color:var(--muted);font-size:11px;letter-spacing:.04em}
.language-panel label{display:flex;gap:11px;align-items:center;min-height:44px;padding:9px 8px;margin:0 -8px;border-radius:var(--radius);font-size:14px;cursor:pointer;line-height:1.4}
.language-panel label:hover{background:var(--stone)}
.language-panel label:has(input:checked){background:var(--stone);color:var(--navy)}
.language-panel input{accent-color:var(--navy);width:16px;height:16px;margin:0;flex-shrink:0}
.language-panel noscript p{font-size:12px;margin-top:12px}
.mobile-menu{position:relative}
.mobile-menu summary{list-style:none;cursor:pointer;display:flex;gap:12px;align-items:center;min-height:44px;line-height:1.2;color:var(--navy);font-size:13px}
.mobile-menu summary .english{font-size:10px;margin-top:3px}
.menu-lines{width:22px;height:15px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}
.menu-lines:after{position:absolute;content:"";height:1px;background:currentColor;top:6px;left:0;right:0}
.mobile-menu nav{position:absolute;z-index:45;right:0;top:calc(100% + 10px);background:#fff;width:min(340px,calc(100vw - 46px));max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);box-shadow:0 15px 30px #142c451c;padding:10px 22px;border-radius:var(--radius)}
.mobile-menu nav>a{display:block;text-decoration:none;padding:12px 0;line-height:1.4;border-bottom:1px solid var(--line);font-size:16px}
.mobile-menu nav>a:last-child{border:0}
.mobile-menu nav .english{font-size:12px;margin-top:3px}
.mobile-menu nav [aria-current]{color:var(--gold);font-weight:600}
.mobile-menu[open] nav,.language-control[open] .language-panel{animation:disclosure-in .16s ease-out}
@keyframes disclosure-in{from{opacity:.5;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
.button:hover{transform:translateY(-1px);box-shadow:0 3px 9px #142c4514}
.button:active{transform:translateY(0);box-shadow:none}
.button.outline:hover{background:var(--stone)}
.link-row>span{transition:transform .16s ease}
.link-row:hover>span,.link-row:focus-visible>span{transform:translate(2px,-2px)}
.text-link:hover{text-decoration-thickness:2px}
.footer-bottom>div>a>.paired{display:flex;gap:6px}
.footer-bottom .english:before{content:"/ ";margin-right:3px}
#search-status{font-size:15px}
#search-status .english{font-size:13px;margin-top:5px}
@media(max-width:1080px){.nav-inner{gap:20px}.nav-home{font-size:19px}.desktop-nav{gap:18px}.desktop-nav>a{font-size:13px}.desktop-nav .english{font-size:10px}}
@media(max-width:980px){.desktop-nav{display:none}.mobile-menu{display:block}.nav-inner{min-height:66px}.nav-home{font-size:22px}.nav-tools{gap:26px}.header-inner{min-height:110px}.language-panel{right:-8px}}
@media(max-width:640px){.masthead-note{display:none}.header-inner{min-height:100px}.brand-name{font-size:35px}.brand-name>span{font-size:10px}.brand-image{width:49px;height:54px}.nav-home{font-size:21px}.nav-home img{width:25px;height:30px}.language-control summary{font-size:10px;gap:6px}.language-control svg{width:17px;height:17px}.nav-tools{gap:22px}.utility-inner{font-size:11px}.utility-inner .paired{gap:5px}.utility-inner .english:before{margin-right:5px}}
@media(max-width:380px){.nav-home{font-size:19px;gap:6px}.nav-tools{gap:15px}.nav-inner{gap:15px}.language-control summary{gap:5px}.language-control svg{width:16px}.mobile-menu summary{gap:9px}.nav-home img{width:22px}.brand-name{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover,.link-row:hover>span,.link-row:focus-visible>span{transform:none}}
@media print{.nav-shell,.nav-sentinel,.masthead-note{display:none}html{scroll-padding-top:0}}

/* The Page feed uses ordinary cards; original post text stays readable in every language mode. */
.facebook-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:40px;margin-bottom:34px}.facebook-heading h2{margin-bottom:22px}.facebook-heading>.text-link{flex-shrink:0;margin-top:12px}.facebook-intro{max-width:660px;margin-bottom:0}.facebook-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;list-style:none;margin:0;padding:0;align-items:start}.facebook-posts[hidden]{display:none}.facebook-posts>li{min-width:0}.facebook-card{padding:27px;background:#fff;border:1px solid #d6d9d7;border-top:3px solid var(--gold);border-radius:var(--radius)}.facebook-date{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-bottom:21px}.facebook-date .english{font-size:11px;margin-top:4px}.facebook-message{white-space:pre-line;overflow-wrap:anywhere;font-size:15px;line-height:1.65;margin-bottom:23px}.facebook-photos{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:0 -10px 24px}.facebook-photos[data-count="1"]{grid-template-columns:1fr}.facebook-photos>a{display:block;background:var(--stone);overflow:hidden;aspect-ratio:1}.facebook-photos[data-count="1"]>a{aspect-ratio:4/3}.facebook-photos img{display:block;width:100%;height:100%;object-fit:cover}.facebook-post-link{font-size:13px;display:inline-block}.facebook-post-link .english{font-size:12px;margin-top:5px}.facebook-status{max-width:700px;color:var(--muted);font-size:15px;line-height:1.6}.facebook-status .english{font-size:13px;margin-top:5px}.facebook-privacy{margin:30px 0 0;font-size:12px}.facebook-privacy .english{font-size:11px;margin-top:5px}
@media(max-width:1080px){.facebook-posts{grid-template-columns:repeat(2,minmax(0,1fr))}.facebook-heading{display:block}.facebook-heading>.text-link{display:inline-block;margin-top:25px}}
@media(max-width:640px){.facebook-posts{grid-template-columns:1fr;gap:22px}.facebook-card{padding:25px}.facebook-message{font-size:16px}.facebook-photos{margin-inline:0}.facebook-date{font-size:13px}}
@media print{.facebook-posts{grid-template-columns:repeat(2,minmax(0,1fr))}.facebook-card{break-inside:avoid}}

/* Full-framed approved photographs, using the same restrained editorial rhythm as the site. */
.gallery-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:36px}.gallery-section-heading h2{margin:0}.gallery-guide{margin:0;max-width:330px;color:var(--muted)}.gallery-guide .english{font-size:12px;margin-top:5px}.gallery-grid{display:grid;gap:38px 26px;align-items:start}.gallery-exterior{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery-interior{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-landscape{grid-column:span 2}.gallery-photo{min-width:0;margin:0;break-inside:avoid}.gallery-image-link{position:relative;display:block;background:#e5e7e5;line-height:0;border-radius:var(--radius);isolation:isolate}.gallery-image-link img{display:block;width:100%;height:auto;border-radius:var(--radius)}.gallery-open{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:30px;height:30px;background:#ffffffed;color:var(--navy);border:1px solid #ffffffa6;border-radius:50%;font:18px/1 "Segoe UI",Arial,sans-serif;box-shadow:0 2px 9px #142c4526}.gallery-image-link:hover .gallery-open,.gallery-image-link:focus-visible .gallery-open{background:var(--navy);color:#fff;border-color:var(--navy)}.gallery-photo figcaption{margin-top:14px;font-size:15px;color:var(--ink);line-height:1.45}.gallery-photo figcaption .english{font-size:12px;margin-top:5px;line-height:1.5}.gallery-edit-note{border-top:1px solid #d5d7d7;padding-top:24px;margin-top:42px;color:var(--muted)}.gallery-edit-note .copy-pair{max-width:none;margin:0;font-size:12px}.gallery-edit-note .copy-pair .english{font-size:12px;margin-top:6px}.gallery-preview-section{padding-top:0}.gallery-preview-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,5vw,76px);align-items:center}.gallery-preview-layout>.editorial{border-top:1px solid var(--line);padding-top:32px}.gallery-preview-layout h2{max-width:440px}.gallery-preview-layout .copy-pair{font-size:16px}.gallery-preview-layout .button{margin-top:4px}.gallery-preview-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.gallery-preview-images>a{display:block;background:var(--stone);border-radius:var(--radius)}.gallery-preview-images img{width:100%;height:auto;border-radius:var(--radius)}
@media(max-width:980px){.gallery-exterior,.gallery-interior{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-exterior .gallery-landscape{grid-column:span 1}.gallery-grid{gap:32px 24px}.gallery-section-heading{align-items:flex-start;gap:25px}.gallery-preview-layout{grid-template-columns:1fr;gap:34px}.gallery-preview-layout>.editorial{max-width:none}.gallery-preview-layout h2{max-width:none}.gallery-preview-images{gap:18px}.gallery-preview-images>a{max-width:100%}}
@media(max-width:640px){.gallery-exterior,.gallery-interior{grid-template-columns:minmax(0,1fr)}.gallery-grid{gap:32px}.gallery-section-heading{display:block;margin-bottom:28px}.gallery-guide{margin-top:23px;max-width:none}.gallery-section-heading h2{font-size:32px}.gallery-guide .english{font-size:12px}.gallery-photo figcaption{font-size:15px;margin-top:12px}.gallery-photo figcaption .english{font-size:12px}.gallery-edit-note{margin-top:32px;padding-top:22px}.gallery-edit-note .copy-pair .english{font-size:12px}.gallery-preview-images{gap:9px}.gallery-preview-layout .copy-pair{font-size:16px}.gallery-preview-layout>.editorial{padding-top:27px}}
@media print{.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-landscape{grid-column:span 1}.gallery-open{display:none}.gallery-photo figcaption{font-size:9pt}.gallery-photo figcaption .english{font-size:8pt}.gallery-preview-section{display:none}}

/* October 2026 design refinement: one fluid rhythm across every shared template. */
body{font-family:var(--font-sans);font-size:var(--font-body)}
h1,h2,h3{font-family:var(--font-serif);line-height:1.12;text-wrap:balance}
h1,.hero h1,.page-intro h1{font-size:var(--font-h1)}
h2,.gallery-section-heading h2{font-size:var(--font-h2)}
h3,.editorial-block h3,.link-row h3{font-size:var(--font-h3)}
h1 .english,.hero h1 .english,.page-intro h1 .english{font-size:.56em;line-height:1.3;margin-top:14px;max-width:30ch}
h2 .english{font-size:.66em;line-height:1.35;margin-top:10px}
h3 .english{font-size:.72em;line-height:1.4;margin-top:7px}
.copy-pair{max-width:64ch;margin-bottom:24px}
.copy-pair .english{font-size:.94em;margin-top:10px;line-height:1.65}
.lead,.hero .lead,.page-intro .lead{font-size:var(--font-lead);line-height:1.6}
.lead .english,.page-intro .lead .english{font-size:.94em;line-height:1.6}
.wrap>*{min-width:0}
.section{padding-block:var(--section-space)}
.split,.next-steps,.resource-row,.contact-grid,.gallery-preview-layout{gap:var(--layout-gap)}
.editorial{max-width:64ch}
.editorial-wide{max-width:calc(52rem + var(--gutter)*2)}
.editorial-wide>.copy-pair{max-width:68ch}
.editorial-block{margin-top:36px}
.editorial-block h3{margin-bottom:18px}
.editorial h2:not(:first-child){margin-top:40px}
.two-columns{gap:clamp(28px,4vw,56px)}
.two-columns .editorial-block{border-top:1px solid var(--line);padding-top:24px}
.utility-inner{min-height:34px;gap:28px;font-size:12px}
.header-inner{min-height:88px}
.brand-name{font-size:34px}
.brand-name>span{font-size:10px;margin-top:7px}
.brand-image{width:48px;height:52px}
.masthead-note{font-size:13px}
.masthead-note .english{font-size:12px}
.nav-inner{min-height:64px;gap:24px}
.nav-home{font-size:20px;gap:8px}
.nav-home img{width:26px;height:30px}
.nav-home-denomination{display:none}
.nav-tools{gap:24px}
.desktop-nav{gap:clamp(18px,2vw,28px)}
.desktop-nav>a{font-size:14px;padding-block:11px}
.desktop-nav .english{font-size:12px;margin-top:3px}
.language-control summary{font-size:12px}
.language-panel{box-shadow:var(--shadow-panel)}
.language-panel legend{font-size:12px}
.nav-shell.is-floating{box-shadow:var(--shadow-floating)}
.hero{padding:clamp(32px,3.5vw,52px) 0 clamp(40px,4vw,60px)}
.hero-grid{gap:var(--layout-gap);grid-template-columns:1.05fr 1fr}
.hero-copy{padding:0}
.hero h1{max-width:13ch;margin-bottom:24px;line-height:1.08}
.hero h1 .english{max-width:23ch;letter-spacing:-.015em}
.hero .lead{max-width:48ch;margin-bottom:0}
.hero .actions{margin-top:24px;gap:22px}
.hero-photo{height:clamp(350px,31vw,460px);box-shadow:10px 10px 0 #e2dfd5}
.hero-photo img{object-position:61% center}
.photo{border-radius:var(--radius)}
.actions{gap:20px;margin-top:28px}
.button{min-height:52px;padding:13px 22px;font-size:15px;line-height:1.3}
.button .english{font-size:12px;margin-top:5px;line-height:1.4}
.text-link{font-size:15px;line-height:1.5;padding-block:6px}
.text-link .english{font-size:13px;line-height:1.5;margin-top:3px}
.service-facts{gap:28px;padding-block:28px}
.service-facts .fact-time{font-size:clamp(24px,2.2vw,30px)}
.service-facts .fact-time>[lang]{text-wrap:balance}
.service-facts .fact-time .english{font-size:14px;margin-top:7px}
.service-facts .text-link{margin-top:6px}
.page-intro{padding:28px 0 36px}
.page-intro h1{max-width:23ch;margin-bottom:22px}
.page-intro .lead{max-width:65ch}
.breadcrumb{font-size:13px;margin-bottom:20px;padding-block:3px}
.link-row{padding-block:24px}
.link-row h3{margin-bottom:9px}
.link-row .copy-pair{font-size:15px}
.link-row .copy-pair .english{font-size:14px}
.invitation{padding-block:clamp(40px,4vw,60px)}
.invitation-inner{gap:32px}
.invitation h2{max-width:24ch;margin-bottom:18px}
.invitation .button{flex-shrink:0}
.hours{padding:28px;border-radius:var(--radius)}
.hours h3{font-size:var(--font-h3);margin-bottom:22px}
.hours dl{font-size:15px}
.hours dt .english,.hours dd .english{font-size:13px}
.hours .copy-pair.small,.hours .copy-pair.small .english{font-size:13px}
.contact-lines{font-size:clamp(18px,1.5vw,21px);gap:14px}
.contact-grid .small{max-width:58ch}
.service-time{font-size:clamp(24px,2vw,28px);margin-bottom:30px}
.service-time .english{font-size:17px}
.resource-links{gap:20px}
.notice{padding:24px 28px}
.search-form label{font-size:clamp(20px,1.7vw,23px)}
.search-form label .english{font-size:16px;margin-top:6px}
.search-controls input{min-height:56px;font-size:18px;padding:13px 16px}
.search-controls .button{min-width:112px}
.search-results h2{font-size:var(--font-h3)}
.search-results h2 .english{font-size:.78em}
.search-results li{padding-block:26px}
.search-results p{max-width:68ch}
.search-help{border-top:1px solid var(--line);padding-top:22px;margin-top:32px}
.site-footer{padding-top:clamp(44px,5vw,64px)}
.footer-top{gap:clamp(32px,5vw,64px);grid-template-columns:1.1fr 1fr 1fr}
.footer-top>div,.footer-top>nav{min-width:0}
.site-footer p,.site-footer .footer-email,.site-footer .footer-link{font-size:14px}
.site-footer .footer-link{padding-block:4px;margin-bottom:10px;line-height:1.5}
.footer-link .english{font-size:13px}
.footer-bottom,.footer-bottom p{font-size:13px}
.footer-bottom>div{flex-wrap:wrap}
.priest-portrait{max-width:420px}
.priest-portrait figcaption{font-size:14px}
.visitor-sign img{border-radius:var(--radius)}
.devotional-art img{max-height:530px;width:auto;max-width:100%;object-fit:contain}
.devotional-art figcaption{max-width:40ch;margin:16px auto 0;font-size:13px}
.facebook-heading{gap:var(--layout-gap);margin-bottom:30px}
.facebook-card{padding:24px;border-top-width:2px}
.facebook-date{font-size:13px;margin-bottom:18px}
.facebook-date .english{font-size:12px}
.facebook-message{font-size:16px}
.facebook-post-link{font-size:14px}
.facebook-post-link .english{font-size:13px}
.facebook-privacy{font-size:13px}
.gallery-section-heading{gap:32px;margin-bottom:30px}
.gallery-guide{max-width:32ch}
.gallery-guide .english{font-size:13px}
.gallery-grid{gap:32px 24px}
.gallery-photo figcaption{font-size:15px;line-height:1.5}
.gallery-photo figcaption .english{font-size:13px;line-height:1.5}
.gallery-open{width:34px;height:34px;transition:background-color var(--motion),color var(--motion)}
.gallery-image-link{outline-offset:5px}
.gallery-edit-note .copy-pair,.gallery-edit-note .copy-pair .english{font-size:13px}
.gallery-preview-layout h2{max-width:18ch}
.gallery-preview-layout .copy-pair{font-size:var(--font-body)}
.gallery-preview-section{padding-top:0}
.photo-sources-section{padding-top:clamp(28px,4vw,44px)}
.photo-sources{display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:clamp(28px,4vw,44px)}
.photo-sources h2{font-size:var(--font-h3);margin-bottom:18px}
.photo-sources .copy-pair{font-size:15px;max-width:64ch;margin:0}
.photo-source-links{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
.photo-source-links .button{font-size:14px;padding:12px 18px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline-color:var(--focus)}
@media(max-width:1080px){
  .nav-inner{gap:20px}.nav-tools{gap:20px}.desktop-nav{gap:18px}
  .hero-grid{gap:32px}.hero-photo{height:390px}
  .photo-sources{grid-template-columns:1.1fr 1fr}
}
@media(max-width:980px){
  .header-inner{min-height:82px}.nav-inner{min-height:64px}
  .gallery-preview-layout h2{max-width:24ch}
  .photo-sources{grid-template-columns:1fr;gap:24px}
  .photo-source-links{justify-content:flex-start}
}
@media(max-width:800px){
  .hero-grid{grid-template-columns:1fr;gap:32px}
  .hero h1{max-width:17ch}.hero h1 .english{max-width:27ch}
  .hero .lead{max-width:62ch}
  .hero-photo{height:auto;aspect-ratio:16/10;box-shadow:7px 7px 0 #e2dfd5}
  .service-facts{grid-template-columns:1fr 1.3fr;gap:22px}
  .service-facts>div:last-child{padding-top:20px}
  .footer-top{grid-template-columns:1fr 1fr}
  .footer-top>nav{grid-template-columns:repeat(3,minmax(0,1fr))}
  .priest-portrait{max-width:380px}
  .priest-layout .priest-portrait{order:0}
  .invitation-inner>.button{margin-top:24px}
}
@media(max-width:640px){
  /* One compact identity on small screens; the sticky bar carries the full name. */
  .site-header{display:none}.nav-inner{min-height:68px}
  .nav-home{font-size:22px;gap:9px}.nav-home img{width:28px;height:36px}
  .nav-home-denomination{display:block;font:9px/1.3 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;margin-top:5px}
  .nav-tools{gap:20px}.language-control summary{font-size:11px}
  .mobile-menu summary{font-size:13px;gap:10px}.mobile-menu summary .english{font-size:11px}
  .language-panel{right:-6px}.utility-inner{font-size:11px;min-height:32px;gap:20px}
  .hero{padding-top:30px;padding-bottom:38px}
  .hero h1{max-width:14ch;margin-bottom:20px}
  .hero h1 .english{max-width:27ch;margin-top:12px}
  .hero .actions{gap:22px;margin-top:22px}
  .hero .actions>.text-link{align-self:center}
  .hero-photo{aspect-ratio:4/3}
  .page-intro{padding-top:23px;padding-bottom:30px}
  .page-intro h1{margin-bottom:20px}
  .breadcrumb{margin-bottom:16px}
  .service-facts{grid-template-columns:1fr 1.15fr;gap:18px;padding-block:24px}
  .service-facts>div{padding-right:15px}
  .service-facts .fact-time{font-size:23px}.service-facts .fact-time .english{font-size:13px}
  .service-facts>div:nth-child(2){font-size:15px}
  .service-facts .english,.service-facts p,.service-facts p .english{font-size:13px}
  .service-facts>div:last-child{font-size:14px}
  .service-facts .text-link,.service-facts .text-link .english{font-size:13px}
  .hours{padding:24px}.hours dl{font-size:14px}.hours dt .english,.hours dd .english{font-size:12px}
  .footer-top{grid-template-columns:1fr;gap:30px}
  .footer-top>nav{grid-column:auto;grid-template-columns:1fr 1fr;gap:10px 24px}
  .footer-bottom{flex-direction:column;gap:16px}
  .gallery-section-heading h2{font-size:var(--font-h2)}
  .gallery-grid{gap:30px}.gallery-section-heading{margin-bottom:26px}
  .gallery-photo figcaption .english{font-size:13px}
  .gallery-preview-layout>.editorial{padding-top:24px}
  .facebook-card{padding:23px}.facebook-posts{gap:22px}
  .facebook-photos{margin-inline:0}
  .photo-sources{gap:22px}.photo-source-links{gap:12px}
  .photo-source-links .button{flex:1 1 150px;padding-inline:14px}
  .search-controls{gap:10px}.search-controls .button{min-width:92px;padding-inline:14px}
}
@media(max-width:380px){
  .nav-home{font-size:20px;gap:6px}.nav-home img{width:24px}
  .nav-home-denomination{font-size:8px}.nav-tools{gap:14px}.nav-inner{gap:12px}
  .language-control summary{font-size:10px;gap:5px}.mobile-menu summary{gap:8px}
  .hero .actions{gap:18px}.hero .actions .button{padding-inline:18px}
  .photo-source-links .button{flex-basis:100%}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation:none!important;transition:none!important}
  .button:hover,.link-row:hover>span,.link-row:focus-visible>span{transform:none}
}
@media print{
  body{font-size:12pt}.site-header,.nav-shell,.photo-source-links{display:none}
  h1,.hero h1,.page-intro h1{font-size:30pt}h2{font-size:23pt}h3{font-size:18pt}
  .section,.page-intro{padding:18px 0}.hero{padding:18px 0}
  .hero-photo{height:auto;max-height:250px;box-shadow:none}
  .photo-sources-section{padding-top:18px}.photo-sources{display:block;padding-bottom:18px}
  .footer-top{display:block}.gallery-preview-section{display:none}
}

/* One sticky, language-aware identity. There is no separate duplicate masthead. */
.nav-inner{min-height:80px;gap:22px;padding-block:6px}
.nav-home{font-size:21px;gap:12px;line-height:1.05}
.nav-home img{width:62px;height:62px}
.identity-copy>span{display:block}
.identity-copy .identity-denomination{display:block;font:9px/1.4 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;color:var(--muted)}
.identity-copy>.english{font-size:.86em;line-height:1.12;margin-top:9px;color:var(--navy)}
.nav-home .identity-denomination{line-height:1.15;margin-top:1px}
.nav-home .identity-copy>.english{font-size:.88em;line-height:1.05;margin-top:3px}
.nav-home:is(:hover,:focus-visible) .identity-copy>[data-translation]{color:var(--gold)}
html[data-language="en"] .identity-copy>.english{font-size:inherit!important;line-height:inherit!important}
.desktop-nav{gap:clamp(16px,1.5vw,22px)}
.desktop-nav>a{font-size:14px}
.nav-tools{gap:20px}
.nav-search{display:flex;align-items:center;justify-content:center;width:44px;min-height:44px;text-decoration:none;color:var(--navy)}
.nav-tools .language-control summary,.nav-tools .mobile-menu summary{min-width:44px;min-height:44px}
.nav-search .search-link-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.search-icon{display:block;flex-shrink:0}
.footer-brand .identity-copy{font:30px/1.1 var(--font-serif);letter-spacing:-.025em}
.footer-brand .identity-copy>.english{font-size:.8em;margin-top:12px}
.footer-brand .identity-denomination{font-size:10px;letter-spacing:.1em;margin-top:6px}
.footer-bottom>p>.paired{display:flex;flex-wrap:wrap;gap:4px 10px}
.footer-bottom>p .english:before{content:none}
[data-search-status]{margin-top:28px;font-size:15px}
[data-search-status] .english{font-size:13px;margin-top:5px}
html.search-open{overflow:hidden;scrollbar-gutter:stable}
.search-dialog{padding:0;border:1px solid var(--line);border-radius:var(--radius);width:min(780px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 48px);margin:24px auto;color:var(--ink);background:var(--white);box-shadow:var(--shadow-panel)}
.search-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.search-dialog::backdrop{background:#0d2135b8}
.search-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:26px 30px 22px;border-bottom:1px solid var(--line)}
.search-dialog-header h2{font-size:var(--font-h3);margin:0}
.search-dialog-header h2 .english{font-size:.72em;margin-top:7px}
.search-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--navy);font:30px/1 var(--font-sans)}
.search-close:hover{background:var(--stone)}
.search-dialog-body{padding:24px 30px 30px;overflow:auto;overscroll-behavior:contain;min-height:0}
.search-dialog .search-help{margin-top:24px}
@media(max-width:1279px){
  .desktop-nav{display:none}.mobile-menu{display:block}
  .nav-inner{min-height:80px}.nav-tools{gap:24px}
}
@media(max-width:640px){
  .nav-inner{min-height:76px;gap:10px;padding-block:6px}
  .nav-home{font-size:19px;gap:8px}.nav-home img{width:54px;height:54px}
  .identity-copy>.english{font-size:.84em;margin-top:7px}
  .identity-copy .identity-denomination{font-size:8px;letter-spacing:.07em;margin-top:3px}
  .nav-home .identity-denomination{font-size:8px;margin-top:1px}
  .nav-home .identity-copy>.english{margin-top:2px}
  .nav-tools{gap:6px}.language-control summary>svg{display:none}
  .mobile-menu>summary>.paired{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .mobile-menu>summary{width:44px;justify-content:center}
  .nav-search{width:44px}
  .search-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);margin:12px auto}
  .search-dialog-header{padding:20px;gap:16px}.search-dialog-body{padding:20px}
  .search-dialog .search-controls{flex-wrap:wrap}
  .search-dialog .search-controls input{flex-basis:100%}
  .search-dialog .search-controls .button{width:100%}
  .footer-brand .identity-copy{font-size:28px}
}
@media(max-width:380px){
  .nav-inner{gap:4px;padding-inline:12px}.nav-home{font-size:17px;gap:6px}.nav-home img{width:50px;height:50px}
  .nav-tools{gap:4px}.language-control summary{font-size:10px;gap:4px}.nav-search{width:44px}
  .identity-copy .identity-denomination{font-size:7px}
  .nav-home .identity-denomination{font-size:7.5px;letter-spacing:.04em}
}
@media print{.search-dialog{display:none!important}}

/* Local church calendar; navy marks church services, gold the Episcopal year. */
[hidden]{display:none!important}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.calendar-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:32px}
.calendar-section-heading h2{margin:0}.calendar-section-heading>p{font-size:14px;color:var(--muted)}
.calendar-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);gap:var(--layout-gap);align-items:start}
.calendar-main{min-width:0;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.calendar-next{padding:26px 28px;background:var(--navy);color:var(--white)}
.calendar-next h3{font:20px/1.3 var(--font-serif);color:var(--white);margin:0 0 14px}
.calendar-next h3 .english{font-size:.8em;margin-top:6px;color:#d2dce5}
.calendar-next>p{font-size:16px}.calendar-next .english{color:#d2dce5}
.calendar-next .copy-pair{margin:16px 0 0;font-size:13px}.calendar-next .copy-pair .english{font-size:13px;margin-top:5px}
.calendar-interactive,.calendar-static{padding:26px}
.calendar-month-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}
.calendar-month-controls h3{font-size:27px;text-align:center;line-height:1.2;margin:0;text-transform:none}
.calendar-month-controls h3 .english{font-size:.7em;margin-top:6px}
.calendar-interactive button{min-height:44px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--navy);padding:8px 12px;line-height:1.3}
.calendar-interactive button:hover{background:var(--stone)}
.calendar-month-controls>button{width:44px;flex-shrink:0;font-size:28px;line-height:1;padding:0}
.calendar-view-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0}
.calendar-view-controls button{font-size:13px}.calendar-view-controls .english{font-size:12px;margin-top:3px}
.calendar-view-controls [role="group"]{display:flex;gap:5px}
.calendar-view-controls [aria-pressed="true"]{background:var(--navy);color:var(--white)}
.calendar-view-controls [aria-pressed="true"] .english{color:#d2dce5}
.calendar-category-controls{display:flex;align-items:center;gap:14px;font-size:13px;margin-bottom:18px}
.calendar-category-controls label{flex-shrink:0}.calendar-category-controls label .english{font-size:12px;margin-top:3px}
.calendar-category-controls select{font:14px/1.3 var(--font-sans);color:var(--ink);min-height:44px;max-width:100%;min-width:0;width:100%;padding:10px 8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}
.calendar-legend{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:20px;font-size:12px;color:var(--muted)}
.calendar-legend>span{display:flex;align-items:center;gap:8px}.calendar-legend .english{font-size:11px;margin-top:2px}
.calendar-legend i,.calendar-dot{width:6px;height:6px;border-radius:50%;background:var(--navy);flex-shrink:0}
.calendar-legend .observance-dot,.calendar-dots .observance-dot{background:var(--gold)}
.calendar-table{border-collapse:collapse;table-layout:fixed;width:100%}
.calendar-table th{font-size:12px;font-weight:400;padding:0 0 10px;color:var(--muted);text-align:center}
.calendar-table th .english{font-size:11px;margin-top:2px}
.calendar-table td{border:1px solid var(--line);padding:0;text-align:center}
.calendar-table td.calendar-blank{border-color:transparent;background:var(--stone)}
.calendar-interactive .calendar-day{border:0;border-radius:0;padding:9px 0;width:100%;height:66px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;font-size:15px}
.calendar-interactive .calendar-day.has-event{background:#f4f6f7}
.calendar-interactive .calendar-day.is-selected{background:var(--navy);color:var(--white)}
.calendar-day.is-today>span:first-child{border-bottom:2px solid var(--gold)}
.calendar-day:focus-visible{outline-offset:-4px}
.calendar-dots{display:flex;gap:4px;height:6px}.calendar-day.is-selected .calendar-dot{background:var(--white)}.calendar-day.is-selected .observance-dot{background:var(--gold-light)}
.calendar-selected{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
.calendar-selected>h3,.calendar-day-heading{font:24px/1.3 var(--font-serif);color:var(--navy);margin:0 0 18px;text-transform:none}
.calendar-selected>h3 .english,.calendar-day-heading .english{font-size:.76em;margin-top:6px}
.calendar-events,.calendar-agenda{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.calendar-event{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;background:var(--stone);border-left:2px solid var(--navy);padding:18px}
.calendar-event.calendar-observance{border-left-color:var(--gold);background:#f7f2e7}
.calendar-event>div{min-width:0}.calendar-event h4{font:19px/1.3 var(--font-serif);color:var(--navy);margin:10px 0}
.calendar-event h4 .english{font-size:.84em;margin-top:5px}
.calendar-event-meta{font-size:13px;color:var(--navy);font-weight:600}.calendar-event-meta .english{font-size:12px;margin-top:3px;font-weight:400}
.calendar-event-description,.calendar-source{font-size:14px}.calendar-event-description .english,.calendar-source .english{font-size:13px;margin-top:6px}
.calendar-source{margin-top:14px;color:var(--muted)}.calendar-source>a{display:inline-block;margin-top:10px}
.calendar-interactive .calendar-save{font-size:12px;flex-shrink:0}.calendar-save .english{font-size:11px;margin-top:4px}
.calendar-agenda>li{padding:22px 0;border-top:1px solid var(--line)}
.calendar-aside h3{font-size:var(--font-h3);margin-bottom:20px}.calendar-aside h3:not(:first-child){margin-top:32px}
.calendar-aside .copy-pair,.calendar-aside .small{font-size:15px}.calendar-aside .copy-pair .english{font-size:14px}
.calendar-aside .small{color:var(--muted)}.calendar-aside .small .english{font-size:14px;margin-top:8px}
.calendar-links{display:grid;gap:16px;margin:24px 0 32px}
.calendar-exception{padding:16px;border:1px solid var(--gold);font-size:14px;margin-top:20px}
.calendar-exception .english{font-size:13px;margin-top:8px}
[data-calendar-download-status]{font-size:14px;margin-top:18px}[data-calendar-download-status]:empty{margin:0}
@media(max-width:980px){.calendar-layout{grid-template-columns:minmax(0,1.5fr) minmax(220px,.8fr);gap:30px}.calendar-interactive,.calendar-static{padding:20px}.calendar-event{display:block}.calendar-save{margin-top:14px}}
@media(max-width:760px){.calendar-layout{grid-template-columns:1fr}.calendar-section-heading{display:block}.calendar-section-heading>p{margin-top:20px}.calendar-aside{max-width:68ch}.calendar-next{padding:24px}.calendar-event{display:flex}}
@media(max-width:480px){.calendar-interactive,.calendar-static{padding:16px}.calendar-month-controls{gap:8px}.calendar-month-controls h3{font-size:22px}.calendar-event{display:block;padding:16px}.calendar-interactive .calendar-day{height:58px}.calendar-table th{font-size:11px}.calendar-table th .english{font-size:10px}.calendar-category-controls{align-items:flex-start;gap:10px}.calendar-category-controls select{font-size:13px}.calendar-legend{gap:18px}.calendar-next{padding:22px}.calendar-view-controls{gap:12px}.calendar-view-controls button{font-size:12px;padding-inline:10px}}
@media print{.calendar-interactive{display:none!important}.calendar-static{display:block!important}.calendar-layout{display:block}.calendar-next{color:var(--ink);background:var(--white)}.calendar-next h3,.calendar-next .english{color:var(--ink)}}


/* Four existing gallery photographs tell a short, source-grounded visual story. */
#dentro-de-santa-maria{scroll-margin-top:110px}
.gallery-story-intro{margin-bottom:32px}
.gallery-story-intro h2{margin-bottom:20px}
.gallery-story-intro .copy-pair{margin-bottom:0}
.photo-stories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 40px}
.photo-story{display:grid;grid-template-columns:minmax(110px,160px) minmax(0,1fr);gap:24px;align-items:start}
.photo-story figcaption{margin-top:0}
.photo-story h3{font-size:1.375rem;margin-bottom:16px}
.photo-story h3 .english{font-size:.75em;line-height:1.4}
.photo-story .copy-pair{font-size:15px;line-height:1.6;margin-bottom:0}
.photo-story .copy-pair .english{font-size:.94em;line-height:1.6;margin-top:10px}
@media(max-width:980px){
  .photo-stories{grid-template-columns:1fr;gap:32px}
  .photo-story{grid-template-columns:160px minmax(0,1fr);gap:28px}
}
@media(max-width:640px){
  .photo-story{grid-template-columns:minmax(100px,.75fr) minmax(0,1.25fr);gap:20px}
  .photo-story h3{font-size:1.25rem;margin-bottom:12px}
  .photo-story .copy-pair{font-size:14px}
}
@media print{
  .photo-stories{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .photo-story{grid-template-columns:80px minmax(0,1fr);gap:12px}
  .photo-story h3{font-size:12pt}
  .photo-story .copy-pair{font-size:9pt}
}


/* Content-led proportions: related material shares a row instead of leaving a tall empty sidebar. */
.service-facts>div:last-child>.text-link{display:table;margin-top:12px}
.contact-directions{margin-top:8px}
.news-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--layout-gap);align-items:start}
.news-overview>div{min-width:0}
.next-steps{display:block}
.next-steps>h2{margin:0 0 32px}
.next-step-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;border:0}
.next-step-links .link-row{min-width:0;flex-direction:column;align-items:flex-start;border-top:1px solid #c9cdd0;border-bottom:0;padding:24px 0 0}
.next-step-links .link-row>span{align-self:flex-end;margin-top:18px}
.next-step-links .link-row .copy-pair{margin:0}
.visit-overview .editorial-block>.copy-pair:last-child,
.worship-layout .editorial>.copy-pair:last-child{margin-bottom:0}
.visit-practical{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--layout-gap);align-items:center;margin-top:clamp(36px,4vw,56px)}
.visit-practical .hours,.visit-practical .visitor-sign{margin:0}
.worship-layout{align-items:center}
.worship-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,48px);margin-top:clamp(36px,4vw,56px)}
.worship-details>.editorial-block{min-width:0;margin:0;border-top:1px solid var(--line);padding-top:24px}
.worship-details .copy-pair:last-child{margin-bottom:0}
.devotional-art img{max-height:430px}
@media(min-width:641px){
  .gallery-exterior{grid-template-columns:repeat(6,minmax(0,1fr))}
  .gallery-exterior>.gallery-photo{grid-column:span 2}
  .gallery-exterior>.gallery-landscape{grid-column:span 3}
}
@media(min-width:801px){
  html:is([data-language="es"],[data-language="en"]) .worship-layout .portrait-photo{max-width:340px;justify-self:center}
}
@media(max-width:800px){
  .next-step-links,.visit-practical,.worship-details,.news-overview{grid-template-columns:1fr;gap:28px}
  .next-step-links .link-row{flex-direction:row;align-items:center;padding-top:24px}
  .next-step-links .link-row>span{align-self:center;margin-top:0}
  .next-step-links .link-row>h3{margin-bottom:0}
  .visit-practical{max-width:680px}
  .worship-layout .portrait-photo{max-width:600px;justify-self:center}
}
@media print{
  .next-step-links,.visit-practical,.worship-details,.news-overview{display:block}
  .gallery-exterior{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gallery-exterior>.gallery-photo{grid-column:auto}
  .next-step-links .link-row,.worship-details>.editorial-block{margin-top:18px}
}


/* Restrained atmosphere: warm surrounding material, never an altered photograph. */
:root{
  --motion-feedback:240ms;
  --motion-settle:420ms;
  --motion-ease:cubic-bezier(.22,1,.36,1);
}
a,button,summary{
  transition:color var(--motion-feedback) ease-out,background-color var(--motion-feedback) ease-out,
    border-color var(--motion-feedback) ease-out,box-shadow var(--motion-settle) var(--motion-ease),
    transform var(--motion-settle) var(--motion-ease);
}
.identity-copy>[data-translation]{transition:color var(--motion-feedback) ease-out}
.desktop-nav>a:after{transition:transform 300ms var(--motion-ease)}
.button:is(:hover,:focus-visible){transform:none;background:var(--navy-deep);color:var(--white)}
.button.light:is(:hover,:focus-visible){background:var(--stone);color:var(--navy)}
.button.outline:is(:hover,:focus-visible){background:var(--stone);color:var(--navy)}
.link-row{transition:border-color var(--motion-feedback) ease-out,transform var(--motion-settle) var(--motion-ease)}
.link-row:is(:hover,:focus-visible){border-color:var(--gold)}
.link-row:is(:hover,:focus-visible) h3{color:var(--gold)}
.link-row h3{transition:color var(--motion-feedback) ease-out}
.link-row>span{transition:color var(--motion-feedback) ease-out,transform var(--motion-settle) var(--motion-ease)}
.link-row:is(:hover,:focus-visible)>span{transform:none}
.text-link:is(:hover,:focus-visible){text-decoration-color:var(--gold);text-decoration-thickness:2px}
.gallery-image-link,.gallery-preview-images>a{transition:box-shadow var(--motion-settle) var(--motion-ease)}
.gallery-image-link:is(:hover,:focus-visible),.gallery-preview-images>a:is(:hover,:focus-visible){box-shadow:0 0 0 2px #8a67294d}
.gallery-open{
  transition:background-color var(--motion-feedback) ease-out,color var(--motion-feedback) ease-out,
    border-color var(--motion-feedback) ease-out,transform var(--motion-settle) var(--motion-ease);
}
.hero{position:relative;isolation:isolate;--hero-matte-offset:10px}
@media(max-width:800px){.hero{--hero-matte-offset:7px}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .button:is(:hover,:focus-visible){transform:translateY(-2px);box-shadow:0 5px 12px #142c451f}
  .button:active{transform:none;box-shadow:0 2px 5px #142c4514}
  .next-step-links .link-row:is(:hover,:focus-visible){transform:translateY(-2px)}
  .link-row:is(:hover,:focus-visible)>span{transform:translate(2px,-2px)}
  .gallery-image-link:is(:hover,:focus-visible) .gallery-open{transform:translate(2px,-2px)}
  .hero[data-atmosphere]::before{
    content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
    background:radial-gradient(ellipse at calc(76% + var(--hero-light-x,0%)) calc(40% + var(--hero-light-y,0%)),#d6bd7e2e,transparent 68%);
    opacity:0;transition:opacity var(--motion-settle) ease-out;
  }
  .hero[data-atmosphere-active]::before{opacity:1}
  .hero[data-atmosphere] .hero-photo{
    box-shadow:calc(var(--hero-matte-offset) + var(--hero-shadow-x,0px)) calc(var(--hero-matte-offset) + var(--hero-shadow-y,0px)) 0 #e2dfd5,
      0 16px 34px -28px #142c4538;
    transition:box-shadow var(--motion-settle) var(--motion-ease);
  }
}
@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){
  .button:is(:hover,:focus-visible),.next-step-links .link-row:is(:hover,:focus-visible),
  .link-row:is(:hover,:focus-visible)>span,.gallery-image-link:is(:hover,:focus-visible) .gallery-open{transform:none}
  .hero::before{display:none}
}
@media print{.hero::before{display:none}.hero .hero-photo{box-shadow:none!important}}


/* October 30: local Marian identity, readable page groups and an enduring parish footer. */
.nav-inner{gap:18px}
.nav-home{gap:10px}
.nav-home img.header-mary{width:44px;height:68px;object-fit:contain;margin-left:0;flex-shrink:0}
.desktop-nav{gap:clamp(14px,1.4vw,20px);flex:1;justify-content:flex-end}
.desktop-nav>a,.nav-disclosure>summary{font-size:13px;font-weight:600;line-height:1.35}
.desktop-nav .english,.nav-disclosure>summary .english{font-size:11px;font-weight:400;margin-top:3px}
.nav-disclosure{position:relative}
.nav-disclosure>summary{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;min-height:44px;padding:9px 0;white-space:nowrap;color:var(--navy)}
.nav-disclosure>summary::-webkit-details-marker{display:none}
.nav-disclosure>summary::marker{content:''}
.nav-disclosure>summary:hover,.nav-disclosure[open]>summary{color:var(--gold)}
.nav-disclosure[open]>summary .disclosure-chevron{transform:rotate(225deg);margin-top:4px}
.nav-disclosure.has-current>summary:after{content:'';position:absolute;left:0;bottom:4px;width:24px;height:2px;background:var(--gold)}
.nav-panel{position:absolute;top:calc(100% + 10px);left:-22px;z-index:46;width:270px;max-height:calc(100dvh - var(--nav-offset));overflow-y:auto;overscroll-behavior:contain;background:var(--white);border:1px solid var(--line);border-top:2px solid var(--gold);box-shadow:var(--shadow-panel);padding:12px 22px;border-radius:var(--radius)}
.nav-panel>a,.nav-language-resource{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.4;text-decoration:none}
.nav-panel>:last-child{border:0}
.nav-panel a{min-height:44px;text-decoration:none}
.nav-panel .english{font-size:12px;margin-top:4px;line-height:1.4}
.nav-panel [aria-current]{color:var(--gold);text-decoration:underline;text-decoration-thickness:2px}
.nav-language-resource>a{display:block;min-height:0;padding-block:4px}
.nav-tools{gap:14px}
.nav-tools>.parish-disclosure{margin-left:0;padding-left:18px;border-left:1px solid var(--line)}
.parish-panel{left:auto;right:0;width:300px}
.nav-disclosure[open]>.nav-panel{animation:disclosure-in var(--motion-feedback) ease-out}
.mobile-menu nav{width:min(380px,calc(100vw - 32px));padding:12px 22px}
.mobile-menu .nav-page{min-height:44px}
.mobile-menu .mobile-group{border-bottom:1px solid var(--line)}
.mobile-menu .mobile-group>summary{font-size:16px;justify-content:space-between;min-height:54px;white-space:normal;padding-block:12px}
.mobile-menu .mobile-group>summary .english{font-size:12px}
.mobile-menu .nav-panel{position:static;width:auto;max-height:none;overflow:visible;padding:0 0 10px 16px;box-shadow:none;border:0;border-left:2px solid var(--gold);border-radius:0;margin:0 0 12px}
.mobile-menu .nav-panel>a,.mobile-menu .nav-language-resource{padding:10px 0;margin-left:10px}
.mobile-menu .nav-panel .english{font-size:12px}
.mobile-menu .has-current>summary:after{display:none}
.copy-pair p{text-wrap:pretty}
.editorial>.copy-pair:last-child,.editorial-wide>.copy-pair:last-child{margin-bottom:0}
.welcome-section .editorial>.copy-pair{margin-bottom:22px}
.visit-overview{align-items:start}
.visit-overview .editorial-block{margin-top:28px}
.visit-overview .editorial-block .copy-pair{margin-bottom:20px}
.worship-layout{grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr);align-items:start}
.worship-layout .portrait-photo{aspect-ratio:auto;width:auto;max-width:100%;max-height:none;justify-self:center;background:transparent}
.worship-layout .portrait-photo img{height:auto;width:auto;max-width:100%;max-height:480px;object-fit:contain;border-radius:var(--radius)}
.worship-layout .service-time{margin-bottom:12px}
.worship-layout .editorial>.small{margin-bottom:24px}
.worship-layout .editorial>h2{margin-top:0}
html:is([data-language="es"],[data-language="en"]) .worship-layout .portrait-photo{max-width:100%}
html:is([data-language="es"],[data-language="en"]) .worship-layout .portrait-photo img{max-height:350px}
html:is([data-language="es"],[data-language="en"]) .copy-pair{margin-bottom:22px}
html:is([data-language="es"],[data-language="en"]) .editorial-block{margin-top:30px}
html:is([data-language="es"],[data-language="en"]) .worship-details>.editorial-block{margin-top:0}
.facebook-archive-note{margin-bottom:28px;padding:16px 20px;border-left:2px solid var(--gold);font-size:14px;max-width:78ch;background:#ffffffa6}
.facebook-archive-note .english{font-size:13px;margin-top:8px}
.site-footer{background:var(--stone);padding:clamp(44px,5vw,64px) 0 0;border-top:1px solid #ddd7c9}
.footer-top{grid-template-columns:minmax(220px,1.15fr) minmax(220px,1.2fr) minmax(140px,.8fr) minmax(190px,1fr);gap:clamp(28px,3.3vw,48px);padding-bottom:48px}
.site-footer .footer-brand{gap:13px;margin-bottom:18px}
.footer-brand>img{width:64px;height:64px;object-fit:contain;flex-shrink:0}
.footer-brand .identity-copy{font-size:26px}
.footer-brand .identity-copy>.english{margin-top:9px}
.footer-brand .identity-denomination{font-size:8px;letter-spacing:.07em}
.footer-place{font-size:12px!important;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:16px!important}
.footer-identity address{font-style:normal;font-size:14px;line-height:1.7}
.footer-directions,.footer-arrival{display:block;font-size:14px;line-height:1.5;margin-top:12px;text-decoration:underline}
.footer-arrival{font-size:13px;margin-top:16px;max-width:28ch}
.footer-directions .english,.footer-arrival .english{font-size:12px;margin-top:3px}
.site-footer h2{font:600 14px/1.45 var(--font-sans);letter-spacing:0;margin-bottom:20px}
.site-footer h2 .english{font-size:12px;margin-top:5px;font-weight:400}
.footer-service{font:23px/1.25 var(--font-serif);color:var(--navy);margin-bottom:18px!important}
.footer-service .english{font:14px/1.5 var(--font-sans);margin-top:7px}
.footer-booklet{display:block;font-size:12px;margin-top:12px}
.footer-booklet .english{font-size:12px;margin-top:3px}
.footer-actions{display:grid;gap:14px;margin-top:20px}
.footer-actions a{font-size:14px;line-height:1.45}
.footer-actions .english{font-size:12px;margin-top:4px}
.footer-top>nav.footer-explore,.footer-parish>nav{display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.site-footer .footer-link{margin:0;padding-block:7px;font-size:14px;line-height:1.4}
.site-footer .footer-link .english{font-size:12px;margin-top:4px}
.footer-contact{border-top:1px solid #d2cec3;margin-top:22px;padding-top:18px;display:grid;gap:11px;font-size:13px;overflow-wrap:anywhere}
.footer-contact a{line-height:1.5}
.footer-contact .english{font-size:12px;margin-top:4px}
.footer-base{background:var(--navy-deep);color:#fff}
.footer-bottom{padding-block:23px;border:0;align-items:flex-start;color:#e2e8ec;gap:32px}
.footer-bottom p{font-size:12px;line-height:1.5}
.footer-bottom>p>.paired{display:block}
.footer-bottom>p .english{color:#e2e8ec;font-size:12px;margin-top:4px}
.footer-bottom>div{gap:20px;align-items:flex-start;justify-content:flex-end;max-width:580px}
.footer-bottom>div>a{font-size:12px;line-height:1.5}
.footer-bottom>div>a>.paired{display:block}
.footer-bottom .english{color:#c4d0dc;font-size:11px;margin-top:4px}
.footer-bottom .english:before{content:none}
.footer-bottom a:hover{color:var(--gold-light)}
@media(max-width:1279px){.nav-tools>.parish-disclosure{display:none}.nav-tools{gap:22px}.footer-top{grid-template-columns:1fr 1fr;gap:38px 48px}.footer-top>nav.footer-explore{grid-column:auto}}
@media(max-width:800px){.worship-layout{grid-template-columns:minmax(0,1fr) minmax(145px,.42fr);gap:28px}.worship-layout .portrait-photo img{max-height:430px}.worship-details{gap:28px}.footer-top{gap:34px}.footer-bottom>div{justify-content:flex-start}}
@media(max-width:640px){.nav-home{gap:7px}.nav-home img.header-mary{width:35px;height:58px}.nav-tools{gap:6px}.worship-layout{grid-template-columns:1fr}.worship-layout .portrait-photo{justify-self:start;background:var(--stone);width:100%;padding:20px}.worship-layout .portrait-photo img{margin:auto;max-height:320px}html:is([data-language="es"],[data-language="en"]) .worship-layout .portrait-photo img{max-height:280px}.footer-top{grid-template-columns:1fr 1fr;gap:34px 24px}.footer-identity,.footer-worship{grid-column:1/-1}.footer-worship{border-top:1px solid #d2cec3;padding-top:28px}.footer-top>nav.footer-explore{grid-column:auto}.footer-brand .identity-copy{font-size:28px}.footer-bottom{gap:20px}.footer-bottom>div{gap:18px 24px;flex-wrap:wrap}.footer-bottom>div>a:first-child{flex-basis:100%}.footer-contact{font-size:12px}.site-footer .footer-link{font-size:14px}}
@media(max-width:540px){.nav-tools>.nav-search{display:none}.nav-home img.header-mary{width:32px;height:58px}.nav-home{font-size:19px}.nav-inner{gap:8px}.nav-tools{gap:6px}.nav-tools .language-control summary{min-width:40px}.footer-top{column-gap:20px}}
@media(max-width:380px){.nav-inner{padding-inline:12px;gap:4px}.nav-home{font-size:17px;gap:5px}.nav-home>img:not(.header-mary){width:44px;height:50px}.nav-home img.header-mary{width:28px;height:52px}.nav-tools{gap:2px}.nav-tools .language-control summary{min-width:36px}}
@media print{.site-footer{display:none}.worship-layout .portrait-photo img{max-height:250px}.nav-disclosure[open]>.nav-panel{animation:none}}

/* Panels stay bounded with the utility strip visible; resource links remain full targets. */
.nav-panel,.mobile-menu nav{max-height:calc(100dvh - var(--nav-offset) - 48px)}
.mobile-menu .nav-panel{max-height:none}
.nav-panel [aria-current]:after{content:none}
.nav-language-resource>a{min-height:44px;padding-block:10px}


/* Root visual review: a legible church wordmark and a fuller, stationary Marian welcome. */
.nav-inner{max-width:calc(1320px + var(--gutter)*2)}
.nav-home{font-size:27px;color:var(--marian-navy);letter-spacing:-.035em}
.nav-home .identity-copy>.english{font-size:.8em;margin-top:2px;line-height:1.05;color:var(--marian-navy)}
.nav-home .identity-denomination{font-size:8px;letter-spacing:.08em;color:var(--gold);margin-top:2px;line-height:1.15}
.nav-home img.header-mary{width:46px;height:68px;margin-block:0}
.nav-home:is(:hover,:focus-visible) .identity-copy>[data-translation]{color:var(--gold)}
.hero-eyebrow{display:flex;flex-wrap:wrap;gap:10px 15px;align-items:center;margin:0 0 22px;font-size:12px;line-height:1.45;letter-spacing:.055em;color:var(--marian-navy)}
.hero-eyebrow>.paired{display:inline-flex;align-items:baseline;gap:7px}
.hero-eyebrow .english{font-size:inherit;line-height:inherit;color:inherit;margin-top:0}
.hero-eyebrow .english:before{content:'/';margin-right:7px;color:var(--gold)}
.hero-place{display:inline-flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;letter-spacing:.06em}
.hero-place:before{content:'';display:block;width:30px;height:2px;background:linear-gradient(90deg,var(--gold-light) 0 35%,var(--marian-navy) 35% 65%,var(--gold) 65%)}
@media(min-width:1360px){.desktop-nav{display:flex}.mobile-menu{display:none}.nav-tools>.parish-disclosure{display:block}.nav-tools{gap:14px}}
@media(max-width:1359px){.desktop-nav{display:none}.mobile-menu{display:block}.nav-tools>.parish-disclosure{display:none}.nav-tools{gap:22px}}
@media(max-width:640px){.nav-home{font-size:19px;gap:7px}.nav-home .identity-denomination{font-size:8px;letter-spacing:.055em}.nav-home img.header-mary{width:38px;height:56px;margin-block:0}.nav-tools{gap:6px}.hero-eyebrow{margin-bottom:19px;gap:8px 12px;font-size:11px}.hero-place{font-size:10px;gap:10px}}
@media(max-width:380px){.nav-home{font-size:17px;gap:5px}.nav-home .identity-denomination{font-size:7.5px;letter-spacing:.035em}.nav-home img.header-mary{width:34px;height:50px;margin-block:0}.nav-tools{gap:2px}}


/* Worship pairs its reading column with a deliberate local glass photograph panel. */
.worship-layout{max-width:1100px;margin-inline:auto;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:clamp(32px,5vw,64px);align-items:center}
.worship-layout .portrait-photo{width:100%;max-width:none;height:460px;aspect-ratio:auto;justify-self:stretch;background:var(--stone);padding:0}
.worship-layout .portrait-photo img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center 24%}
html:is([data-language="es"],[data-language="en"]) .worship-layout .portrait-photo{width:100%;max-width:none;height:360px}
html:is([data-language="es"],[data-language="en"]) .worship-layout .portrait-photo img{width:100%;height:100%;max-height:none}
@media(max-width:800px){.worship-layout{grid-template-columns:1fr;max-width:680px;gap:28px}.worship-layout .portrait-photo{height:350px}html:is([data-language="es"],[data-language="en"]) .worship-layout .portrait-photo{height:320px}.worship-layout .portrait-photo img{object-position:center 24%}}
@media(max-width:480px){.worship-layout .portrait-photo{height:320px}html:is([data-language="es"],[data-language="en"]) .worship-layout .portrait-photo{height:280px}}
@media print{.worship-layout .portrait-photo{height:250px!important}}

/* Consistent navigation feedback, including paired languages and parish resources. */
.nav-shell :is(.desktop-nav>a,.nav-disclosure>summary,.nav-panel a,.mobile-menu nav>a){position:relative;font-weight:600}
.nav-shell :is(.desktop-nav>a,.nav-disclosure>summary,.nav-panel a,.mobile-menu nav>a) .english{font-weight:400}
.nav-language-resource>a{display:block}
.nav-shell :is(.desktop-nav>a,.nav-disclosure>summary,.nav-panel a,.mobile-menu nav>a)::after{content:"";position:absolute;left:0;right:0;bottom:5px;width:auto;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform var(--motion-feedback) var(--motion-ease)}
.nav-shell :is(.desktop-nav>a,.nav-disclosure>summary,.nav-panel a,.mobile-menu nav>a):is(:hover,:focus-visible)::after,.nav-shell .nav-disclosure[open]>summary::after,.nav-shell .nav-disclosure.has-current>summary::after,.nav-shell a[aria-current]::after{transform:scaleX(1)}
.nav-shell :is(.desktop-nav>a,.nav-disclosure>summary,.nav-panel a,.mobile-menu nav>a):is(:hover,:focus-visible),.nav-shell :is(.desktop-nav>a,.nav-disclosure>summary,.nav-panel a,.mobile-menu nav>a):is(:hover,:focus-visible) .english{color:var(--gold)}
.nav-panel a[aria-current]{text-decoration:none}
.nav-panel .nav-language-resource>a{padding:5px 0;min-height:32px}
.nav-panel .nav-language-resource>a.english{font-size:12px;font-weight:400}
@media(prefers-reduced-motion:reduce){.nav-shell :is(a,summary)::after{transition:none}}

/* Local visual signposts always retain visible text labels. */
.wayfinding-icon{display:inline-block;width:19px;height:19px;flex:0 0 19px;vertical-align:-.18em;object-fit:contain}
.facebook-logo{display:inline-block;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:#0866ff url("/assets/brand/facebook-official-logo.png") center/323.25% auto no-repeat;vertical-align:-.25em}
.symbol-link,.symbol-label{display:inline-flex;align-items:center;gap:10px}
.symbol-link>.paired{min-width:0}
.facebook-mention{display:inline-flex;align-items:center;gap:8px;vertical-align:baseline}
.facebook-mention .facebook-logo{width:16px;height:16px;flex-basis:16px}
.nav-panel>a.symbol-link,.mobile-menu nav>a.symbol-link,.footer-contact>a.symbol-link{display:flex}
.desktop-nav>a.symbol-link{gap:7px}
.desktop-nav .wayfinding-icon{width:16px;height:16px;flex-basis:16px}
.utility .wayfinding-icon{width:14px;height:14px;flex-basis:14px}
.utility .symbol-link,.utility .symbol-label{gap:7px}
.facebook-post-link.symbol-link{display:inline-flex}
.contact-lines .symbol-link{display:flex;justify-content:flex-start}
@media(max-width:480px){.utility .symbol-link,.utility .symbol-label{gap:5px}.utility .wayfinding-icon{width:12px;height:12px;flex-basis:12px}}

/* A standalone translated resource has the same weight as its paired siblings. */
.nav-panel .nav-language-resource{font-weight:600}
.nav-panel .nav-language-resource>a{width:100%}
.nav-shell .nav-panel a.english:is(:hover,:focus-visible){color:var(--gold)!important}
.service-facts>div:last-child>.symbol-link{display:inline-flex}

/* October 30 selected media: full framing, modest page scale, explicit gallery group. */
.page-photo{width:100%;max-width:350px;justify-self:center;align-self:center}
.page-photo .gallery-image-link{width:fit-content;max-width:100%;margin-inline:auto}
.page-photo .gallery-image-link img{width:auto;height:auto;max-width:100%;max-height:490px;object-fit:contain}
.page-photo figcaption{max-width:34ch;margin-inline:auto}
.sacrament-layout{display:grid;max-width:1100px;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:clamp(32px,5vw,64px);align-items:start}
.sacrament-layout>.page-photo{align-self:start;margin-top:10px}
@media(min-width:801px){.sacrament-layout>.page-photo img{max-height:540px!important}}
.sacrament-layout .two-columns{gap:28px}
.worship-devotional{display:grid;grid-template-columns:minmax(140px,190px) minmax(0,1fr);gap:32px;align-items:center;max-width:760px;border-top:1px solid var(--line);padding-top:32px;margin:40px auto}
.worship-devotional h2{font-size:var(--font-h3)}
.worship-devotional .page-photo img{max-height:300px}
.worship-devotional .page-photo figcaption{font-size:13px}
.photo-edit-note,.photo-edit-note .english{font-size:12px!important;color:var(--muted);margin:8px 0 0;line-height:1.5}
.gallery-new{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.gallery-new .gallery-photo figcaption{font-size:14px}
html:is([data-language="es"],[data-language="en"]) .page-photo img{max-height:410px}
html:is([data-language="es"],[data-language="en"]) .worship-devotional .page-photo img{max-height:280px}
@media(max-width:1000px){.gallery-new{grid-template-columns:repeat(3,minmax(0,1fr))}.sacrament-layout{grid-template-columns:minmax(0,1fr) minmax(210px,.6fr)}}
@media(max-width:800px){.sacrament-layout{grid-template-columns:1fr;gap:32px}.page-photo{max-width:300px}.sacrament-layout>.page-photo{margin-top:0}.page-photo .gallery-image-link img{max-height:430px}.gallery-new{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.gallery-new{grid-template-columns:1fr}.gallery-new .gallery-photo{width:100%;max-width:330px;justify-self:center}.worship-devotional{grid-template-columns:minmax(110px,.65fr) minmax(0,1fr);gap:20px}.worship-devotional h2{font-size:1.25rem}.worship-devotional .text-link{font-size:14px}.worship-devotional .page-photo img{max-height:240px!important}.worship-devotional .page-photo figcaption{font-size:12px}}
@media print{.gallery-new{grid-template-columns:repeat(3,minmax(0,1fr))}.page-photo .gallery-image-link img{max-height:300px}.worship-devotional{break-inside:avoid}}

/* Kevin review: keep gallery introductions with their headings. */
.gallery-section-heading{display:block;margin-bottom:26px}
.gallery-section-heading .gallery-guide{max-width:64ch;margin:12px 0 0}
#arte-y-espacios{padding-top:clamp(38px,4vw,64px)}

/* A useful, compact first-read strip; the main header remains independently sticky. */
.utility-inner{justify-content:space-between;gap:24px;min-height:38px;letter-spacing:.01em}
.utility-worship,.utility-contact{display:flex;align-items:center;gap:22px}
.utility-inner a:last-child{margin-left:0}
.utility-time{font-weight:600}
.utility-service{color:#dbe4ed}
.utility-inner a:hover{color:#ead3a1}
@media(max-width:1100px){.utility-service{display:none}.utility-inner{gap:18px;font-size:11px}.utility-contact{gap:18px}}

@media(max-width:640px){.utility-inner{gap:12px;min-height:40px;padding-block:6px}.utility-worship,.utility-contact{gap:8px}.utility-inner .paired{display:block;line-height:1.35}.utility-inner .english{font-size:10px;margin-top:2px}.utility-inner .english:before{content:none}.utility-inner a{padding:0}.utility-inner .utility-time{white-space:normal}}

/* Keep Facebook and Directions available in the quick strip at phone widths. */
.utility-contact>a{white-space:nowrap}
@media(max-width:640px){
  .utility-inner{display:grid;grid-template-columns:1fr auto;gap:6px 14px;padding-block:7px}
  .utility-worship{grid-column:1;grid-row:1}
  .utility-contact{display:contents}
  .utility-phone{grid-column:2;grid-row:1;justify-self:end}
  .utility-facebook{grid-column:1;grid-row:2}
  .utility-directions{grid-column:2;grid-row:2;justify-self:end}
  .utility-directions .paired{display:flex;gap:5px}
  .utility-directions .english{font-size:inherit;margin-top:0}
  .utility-directions .english:before{content:"/";margin-right:5px}
  .utility-facebook,.utility-directions{min-height:28px}
}
