html{scroll-behavior:smooth}body{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #d8a235bf}:root{--navy:#002a54;--navy-2:#001d3d;--red:#e30613;--gold:#d8a235;--ink:#0b1d3f;--muted:#647086;--line:#d9e0ea;--soft:#f5f7fb;--white:#fff;--shadow:0 14px 38px #001e461f;color:var(--ink);background:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#fff;min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}img{max-width:100%;display:block}.image-preview-button{border-radius:inherit;cursor:zoom-in;text-align:left;background:0 0;border:0;width:100%;min-width:0;padding:0;display:block;overflow:hidden}.image-preview-button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.image-preview-button img{transition:transform .2s,filter .2s}.image-preview-button:hover img{filter:brightness(.94);transform:scale(1.025)}main{min-height:60vh}.container{width:min(1450px,100% - 80px);margin:0 auto}.site-header{z-index:30;background:linear-gradient(90deg, #fff 0 28%, var(--navy) 28% 100%);align-items:center;gap:32px;height:104px;padding:0 40px 0 0;display:flex;position:sticky;top:0;box-shadow:0 6px 24px #00183829}.brand{background:#fff;border-bottom-right-radius:70px;justify-content:flex-start;align-items:center;width:455px;height:104px;padding:0 24px;display:flex;overflow:hidden}.brand-text{color:var(--navy);text-transform:uppercase;gap:1px;line-height:1.04;display:grid}.brand-text small{text-transform:none;font-size:12px;font-weight:800}.brand-text em{color:#fff;background:var(--red);text-align:center;text-transform:none;border-radius:2px;width:fit-content;min-width:150px;margin-top:5px;padding:3px 14px;font-style:normal;font-weight:800}.main-nav{color:#fff;flex:1;justify-content:center;align-items:center;gap:clamp(16px,2.2vw,38px);display:flex}.main-nav a{padding:40px 0 34px;font-size:15px;font-weight:700;position:relative}.main-nav a.active:after{content:"";background:var(--red);border-radius:8px;height:4px;position:absolute;bottom:24px;left:0;right:0}.donate-button,.primary-button,.secondary-button,.blue-card button,.blue-card a,.project-card button,.calendar-card button,.inline-form button{text-transform:uppercase;border:0;border-radius:6px;justify-content:center;align-items:center;gap:10px;font-weight:800;display:inline-flex}.donate-button{background:var(--red);color:#fff;padding:17px 24px}.menu-button{display:none}.icon-button{color:#fff;background:0 0;border:0}.home-hero,.page-hero{color:#fff;background-position:50%;background-size:cover;align-items:center;min-height:292px;display:flex}.home-hero{min-height:326px}.hero-content{padding:46px 0}h1,h2,h3{color:var(--ink);margin:0;font-family:Georgia,Times New Roman,serif}.hero-content h1{color:#fff;max-width:780px;font-size:clamp(42px,5vw,64px);line-height:1.02}.hero-content h1 span,.hero-content strong{color:var(--gold);display:block}.hero-content p{max-width:580px;margin:12px 0;font-size:19px;line-height:1.55}.hero-content small{margin-bottom:18px;font-weight:800;display:block}.primary-button{background:var(--red);color:#fff;min-height:46px;padding:0 22px}.secondary-button{background:var(--navy);color:#fff;min-height:42px;padding:0 18px}.quick-access{border:1px solid var(--line);box-shadow:var(--shadow);z-index:4;background:#fff;border-radius:8px;grid-template-columns:repeat(4,1fr);margin-top:-26px;display:grid;position:relative;overflow:hidden}.info-card{border-right:1px solid var(--line);grid-template-columns:76px 1fr;gap:16px;min-height:118px;padding:24px;display:grid}.info-card:last-child{border-right:0}.round-icon{background:radial-gradient(circle, #0d477d, var(--navy));color:#fff;border-radius:50%;place-items:center;width:62px;height:62px;display:grid}.round-icon svg{width:34px;height:34px}.info-card h3,.panel h2,.panel h3{color:var(--ink)}.info-card p,.panel p,.project-card p{color:#26354f;line-height:1.55}.info-card a,.section-title-row a,.announcement-card a,.simple-card a{color:#073b75;text-transform:uppercase;align-items:center;gap:8px;font-size:13px;font-weight:800;display:inline-flex}.section-space{padding:42px 0}.homepage-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:18px;padding:18px 0 22px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:8px;padding:22px;box-shadow:0 10px 24px #0a26500f}.homepage-grid>.panel{flex-direction:column;min-width:0;height:100%;display:flex}.split-mini{grid-template-columns:170px 1fr;align-items:center;gap:20px;display:grid}.split-mini img,.highlighted-priest img{object-fit:contain;object-position:center;background:#eef2f7;border-radius:8px;width:100%;height:270px}.homepage-grid .split-mini{grid-template-columns:1fr;align-items:start}.homepage-grid .priest-card .split-mini,.homepage-grid .announcement-mini-grid{flex:1}.homepage-grid .priest-card .split-mini>div{flex-direction:column;height:100%;display:flex}.homepage-grid .priest-card .secondary-button,.homepage-grid .event-feature-small .secondary-button{margin-top:auto}.homepage-grid .split-mini img{height:190px}.homepage-grid .announcement-mini-grid{grid-template-columns:1fr}.homepage-grid .announcement-card{height:100%}.homepage-grid .section-title-row{flex-direction:column;align-items:flex-start}.priest-communication-card h3{margin:14px 0 8px}.priest-communication-card small{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.home-pastoral-video video{object-fit:contain;background:#001936;border-radius:8px;width:100%;height:auto;max-height:70vh;display:block}.home-pastoral-video iframe,.home-pastoral-video .video-link-cover{aspect-ratio:16/9;object-fit:contain;background:#001936;border:0;border-radius:8px;width:100%;display:block}.home-video-empty{text-align:center;align-content:center;place-items:center;gap:14px;min-height:250px;display:grid}.home-video-empty svg{width:52px;height:52px;color:var(--navy)}.home-video-empty p{margin:0}.priest-page img{object-fit:contain;object-position:center;background:#eef2f7;border-radius:8px;width:100%;max-height:760px}.section-title-row{justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;display:flex}.announcement-mini-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.announcement-card{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 8px 24px #08265012}.announcement-card img{aspect-ratio:16/10;object-fit:contain;background:#eef2f7;width:100%}.announcement-card div{padding:15px}.announcement-card.compact img{aspect-ratio:16/9}.tag,.eyebrow{color:#074284;text-transform:uppercase;background:#e9f1fb;border:1px solid #cbdcef;border-radius:5px;padding:4px 8px;font-size:12px;font-weight:800}.announcement-card h3{margin:10px 0 8px;font-size:19px}.announcement-card small,.meta span{color:var(--muted);align-items:center;gap:6px;margin:8px 12px 8px 0;display:inline-flex}.event-visual{grid-template-columns:84px 1fr;align-items:stretch;gap:12px;display:grid;position:relative}.event-visual img{object-fit:contain;background:#eef2f7;border-radius:8px;width:100%;height:195px}.date-badge{color:#fff;background:var(--navy);text-transform:uppercase;border-radius:6px;align-content:center;place-items:center;min-width:74px;height:88px;display:grid;box-shadow:inset 0 -10px #0000001a}.date-badge strong{font-size:34px;line-height:1}.date-badge small{font-weight:800}.gallery-strip{padding:18px 0 38px;position:relative}.gallery-scroll{grid-auto-columns:minmax(220px,1fr);grid-auto-flow:column;gap:14px;padding:0 42px 8px;display:grid;overflow-x:auto}.gallery-scroll .image-preview-button{border-radius:8px}.gallery-scroll img{object-fit:contain;border:1px solid var(--line);background:#eef2f7;border-radius:8px;width:100%;height:116px}.gallery-arrow{border:1px solid var(--line);width:36px;height:36px;color:var(--navy);background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;top:88px}.gallery-arrow:first-of-type{left:0}.gallery-arrow:last-of-type{right:0}.site-footer{background:linear-gradient(135deg, var(--navy), #001936);color:#fff;padding:28px 40px 14px}.footer-grid{grid-template-columns:1.1fr 1fr .8fr 1fr;gap:42px;width:min(1450px,100%);margin:0 auto;display:grid}.site-footer h3{color:#fff;margin-bottom:10px;font-size:18px}.site-footer p,.site-footer a{color:#f1f5fb;align-items:center;gap:8px;line-height:1.5;display:flex}.site-footer a{margin:5px 0}.footer-map-link{border:1px solid #ffffff47;border-radius:8px;height:145px;position:relative;overflow:hidden;display:block!important}.footer-map-link iframe{pointer-events:none;border:0;width:100%;height:100%}.footer-map-link span{color:#fff;background:#001936e6;border-radius:6px;align-items:center;gap:6px;padding:7px 10px;font-weight:800;display:inline-flex;position:absolute;inset:auto 8px 8px}.inline-form{gap:8px;display:flex}.inline-form input{border:1px solid var(--line);border-radius:6px;flex:1;min-width:0;min-height:42px;padding:0 12px}.inline-form button{background:var(--red);color:#fff;min-height:42px;padding:0 14px}.footer-bottom{border-top:1px solid #ffffff40;justify-content:space-between;gap:16px;width:min(1450px,100%);margin:22px auto 0;padding-top:13px;font-size:13px;display:flex}.two-columns,.donate-layout,.contact-layout,.detail-layout{grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);align-items:start;gap:28px;display:grid}.contact-details p{align-items:flex-start}.contact-details p>span{gap:2px;min-width:0;display:grid}.contact-details strong{color:var(--ink);text-transform:uppercase;letter-spacing:.04em;font-size:13px}.contact-details a{color:var(--blue);overflow-wrap:anywhere}.contact-map{grid-column:1/-1}.contact-map iframe{border:0;border-radius:8px;width:100%;height:420px;margin:12px 0 18px}.contact-map .secondary-button{align-items:center;gap:8px;display:inline-flex}.movement-detail{grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);align-items:start;gap:28px;display:grid}.movement-detail aside p{align-items:flex-start;gap:10px;display:flex}.movement-detail aside p span{gap:3px;display:grid}.pre-line{white-space:pre-line}.section-heading{grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:10px 0 22px;display:grid}.section-heading span{background:linear-gradient(90deg, transparent, var(--gold));height:2px}.section-heading span:last-child{background:linear-gradient(90deg, var(--gold), transparent)}.section-heading h2{text-align:center;font-size:clamp(24px,3vw,32px)}.value-grid,.card-grid,.admin-grid,.schedule-grid,.media-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.value-grid span{color:var(--navy);text-align:center;background:#eef4fb;border-radius:8px;padding:18px;font-weight:800}.highlighted-priest a{color:var(--navy);align-items:center;gap:8px;font-weight:800;display:inline-flex}.project-grid{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.project-card,.media-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 8px 22px #001e460f}.project-card{text-align:center;padding-bottom:14px;position:relative}.project-card img{aspect-ratio:4/2.5;object-fit:contain;background:#eef2f7;width:100%}.project-card span{width:54px;height:54px;color:var(--navy);border:1px solid var(--line);background:#fff;border-radius:50%;place-items:center;margin:-28px auto 8px;display:grid;position:relative}.project-card h3,.project-card p{padding:0 14px}.project-card button{color:#fff;background:var(--navy);height:34px;padding:0 16px;font-size:12px}.progress{background:#e6ebf1;border-radius:10px;height:7px;margin:0 16px 14px;overflow:hidden}.progress i{background:var(--gold);height:100%;display:block}.commitment-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.commitment-grid article,.simple-card{min-height:160px}.commitment-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;padding:18px}.commitment-grid svg,.simple-card svg,.admin-card svg,.schedule-grid svg{color:var(--navy);width:36px;height:36px}.announcements-layout,.events-layout{grid-template-columns:minmax(0,1fr) 430px;align-items:start;gap:28px;display:grid}.filters-row{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.filters-row button,.amount-row button,.share-row button{border:1px solid var(--line);min-height:38px;color:var(--ink);background:#f6f8fb;border-radius:8px;padding:0 18px}.filters-row button.active,.amount-row button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.search-box{border:1px solid var(--line);border-radius:8px;align-items:center;width:min(360px,100%);height:42px;margin-bottom:20px;margin-left:auto;padding:0 12px;display:flex}.search-box input{border:0;outline:0;flex:1}.announcement-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.side-stack{gap:18px;display:grid}.featured img{object-fit:contain;float:left;background:#eef2f7;border-radius:8px;width:160px;height:130px;margin-right:18px}.blue-card{background:linear-gradient(135deg, var(--navy), #003a75);color:#fff;box-shadow:var(--shadow);border-radius:8px;padding:24px}.blue-card h3{color:#fff}.blue-card p{color:#f2f6fb}.blue-card svg{color:#fff;width:42px;height:42px}.blue-card button,.blue-card a{color:#fff;background:var(--gold);min-height:42px;padding:0 18px}.event-feature-large{grid-template-columns:42% 1fr;gap:24px;margin-bottom:22px;display:grid}.event-feature-large img{object-fit:contain;background:#eef2f7;border-radius:8px;width:100%;height:260px}.event-list{gap:12px;display:grid}.event-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:76px 1fr 280px 76px;align-items:center;gap:16px;padding:10px;display:grid}.event-row img{object-fit:contain;background:#eef2f7;border-radius:8px;width:100%;height:86px}.event-row small{color:var(--muted);align-items:center;gap:6px;display:flex}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;margin:16px 0;display:grid}.calendar-grid span{background:#f7f8fb;border-radius:6px;place-items:center;min-height:34px;display:grid}.calendar-grid .today{background:var(--navy);color:#fff}.calendar-card button{width:100%;color:var(--navy);background:#fff;border:1px solid #98acc7}.categories-card p{grid-template-columns:24px 1fr 34px;align-items:center;gap:8px;display:grid}.categories-card span{background:var(--navy);color:#fff;border-radius:999px;place-items:center;height:24px;font-size:12px;display:grid}.detail-main img{object-fit:contain;background:#f1f4f8;border-radius:8px;width:100%;max-height:560px}.meta{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.share-row{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.donation-form{gap:12px;display:grid;position:sticky;top:126px}.donation-form label,.contact-form label{gap:6px;font-size:14px;font-weight:800;display:grid}.donation-form input,.donation-form select,.donation-form textarea,.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--line);border-radius:6px;width:100%;min-height:42px;padding:10px 12px}.donation-form textarea,.contact-form textarea{resize:vertical;min-height:100px}.amount-row{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.check{align-items:center;grid-template-columns:18px 1fr!important}.method-card p,.contact-layout p{align-items:center;gap:10px;display:flex}.map-placeholder{height:260px;color:var(--navy);background:linear-gradient(135deg,#edf2f7,#d9e2ef);border-radius:8px;place-items:center;font-weight:800;display:grid}.media-grid article img{object-fit:contain;background:#eef2f7;width:100%;min-height:190px;max-height:320px}.media-grid article h3,.media-grid article p{padding:0 16px}blockquote{border-left:4px solid var(--gold);background:#fbf7ee;margin:22px 0;padding:18px 22px;font-family:Georgia,Times New Roman,serif;font-size:20px}.muted{color:var(--muted)}.auth-layout{width:min(720px,100% - 80px);margin:0 auto}.admin-auth-card{border-top:5px solid var(--gold,#c9982d);padding:clamp(28px,5vw,48px);box-shadow:0 24px 60px #0526491f}.admin-auth-links{flex-wrap:wrap;gap:12px 24px;margin-top:4px;display:flex}.admin-auth-links button{color:#0a477b;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.permission-matrix{margin-top:14px}.permission-matrix h3{color:#062f59;margin-bottom:14px}.permission-matrix fieldset{border:1px solid #dce5ef;border-radius:14px;margin:0 0 12px;padding:12px 16px 15px}.permission-matrix legend{color:#062f59;padding:0 8px;font-weight:800}.permission-matrix fieldset>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;display:grid}.permission-check{background:#f7f9fc;border-radius:9px;padding:8px}.user-access-manager .admin-table{overflow-x:auto}.parishioner-picker{gap:12px;display:grid}.selected-parishioner{color:#062f59;background:#f8fbfe;border:1px solid #d7e3ef;border-left:4px solid #c9982d;border-radius:12px;align-items:center;gap:14px;padding:16px;display:flex}.selected-parishioner svg{flex:none}.selected-parishioner div{gap:3px;min-width:0;display:grid}.selected-parishioner span,.selected-parishioner small{color:#5d6e80;overflow-wrap:anywhere}.pastoral-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.pastoral-category-card{color:#062f59;align-items:center;gap:13px;padding:20px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex}.pastoral-category-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px #062f591f}.pastoral-category-card>svg:last-child{width:18px;margin-left:auto}.pastoral-category-card div{gap:4px;display:grid}.pastoral-category-card span{color:#68798a;font-size:.9rem}.ceb-highlight{border-top:4px solid #c9982d}.pastoral-directory>section{margin-bottom:64px;scroll-margin-top:130px}.ceb-sector{margin:30px 0 45px}.ceb-sector>h3{color:#9a6b0b;border-bottom:2px solid #e8c978;padding-bottom:10px}.leadership-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:42px;display:grid}.leadership-card{padding:0;overflow:hidden}.leadership-card img,.leadership-photo-placeholder{object-fit:cover;color:#0a477b;background:linear-gradient(145deg,#e8f0f8,#d4e1ee);place-items:center;width:100%;height:260px;display:grid}.leadership-photo-placeholder svg{width:60px;height:60px}.leadership-card>div{padding:20px}.archive-details{margin:32px 0 56px;padding:20px}.archive-details summary{cursor:pointer;color:#062f59;font-weight:800}.archive-details .leadership-grid{margin-top:22px;margin-bottom:0}.council-public-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.parish-groups-showcase{gap:46px;display:grid}.parish-group-family{gap:22px;display:grid}.parish-family-heading{border-bottom:2px solid #e7c36d;justify-content:space-between;align-items:end;gap:20px;padding-bottom:13px;display:flex}.parish-family-heading h3{color:#062f59;margin:3px 0 0;font-size:clamp(1.45rem,2.3vw,2rem)}.parish-family-heading>strong{color:#fff;background:#062f59;border-radius:50%;place-items:center;min-width:44px;height:44px;display:grid}.parish-group-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.parish-group-card{background:#fff;border:1px solid #dfe7ef;border-radius:18px;grid-template-rows:190px 1fr;transition:transform .2s,box-shadow .2s;display:grid;overflow:hidden;box-shadow:0 13px 35px #062f5914}.parish-group-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px #062f5926}.parish-group-card>img,.parish-group-cover{object-fit:cover;width:100%;height:190px}.parish-group-cover{color:#e9c66f;background:linear-gradient(145deg,#062f59,#0d5b91);place-items:center;display:grid}.parish-group-cover svg{width:54px;height:54px}.parish-group-card>div{flex-direction:column;align-items:flex-start;padding:20px;display:flex}.parish-group-card h4{color:#062f59;margin:12px 0 8px;font-size:1.2rem}.parish-group-card p{color:#617184;-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.parish-group-card small{color:#8b6518;align-items:center;gap:7px;margin-top:auto;padding-top:12px;display:flex}.parish-group-card small svg{width:15px}.parish-group-card a{color:#fff;background:#062f59;border-radius:9px;align-items:center;gap:8px;margin-top:16px;padding:11px 15px;font-weight:800;text-decoration:none;display:inline-flex}.showcase-ceb-sector{gap:14px;display:grid}.showcase-ceb-sector>h4{color:#9a6b0b;margin:0;font-size:1.25rem}.showcase-ceb-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.showcase-ceb-grid article{align-items:center;gap:13px;padding:17px;display:flex}.showcase-ceb-grid article>svg{color:#b17b14;flex:none}.showcase-ceb-grid h5{color:#062f59;margin:0 0 4px;font-size:1rem}.showcase-ceb-grid p,.showcase-ceb-grid small{color:#667789;margin:0}@media (width<=900px){.pastoral-category-grid,.leadership-grid,.parish-group-grid,.showcase-ceb-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=620px){.pastoral-category-grid,.leadership-grid,.council-public-grid,.parish-group-grid,.showcase-ceb-grid,.permission-matrix fieldset>div{grid-template-columns:1fr}}.form-message{color:#185b2c;background:#edf8f0;border:1px solid #b8d7c2;border-radius:6px;padding:12px 14px;font-weight:700}.form-message.error{color:#9f111b;background:#fff0f1;border-color:#efb5b8}.registration-page{background:radial-gradient(circle at 7% 8%,#d5a0302e,#0000 26%),radial-gradient(circle at 94% 90%,#0f4c8421,#0000 30%),linear-gradient(145deg,#f8fafc 0%,#eef3f8 100%);padding:clamp(44px,6vw,82px) 0;position:relative;overflow:hidden}.registration-page:before{content:"";pointer-events:none;opacity:.3;background-image:linear-gradient(#052f5b0d 1px,#0000 1px),linear-gradient(90deg,#052f5b0d 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0}.registration-layout{background:#fff;border:1px solid #04305b1a;border-radius:24px;grid-template-columns:330px minmax(0,1fr);align-items:start;width:min(1280px,100% - 48px);margin:0 auto;display:grid;position:relative;overflow:hidden;box-shadow:0 35px 90px #041f3d26}.registration-aside{color:#fff;background:radial-gradient(circle at 90% 8%,#e8b84d3d,#0000 28%),linear-gradient(160deg,#031d3c 0%,#063d72 62%,#082d54 100%);flex-direction:column;align-self:stretch;min-height:780px;padding:34px 30px;display:flex;position:sticky;top:0}.registration-aside:after{content:"";border:1px solid #ffffff17;border-radius:50%;width:210px;height:210px;position:absolute;inset:auto -65px -65px auto;box-shadow:0 0 0 34px #ffffff08,0 0 0 72px #ffffff06}.registration-aside-brand{z-index:1;align-items:center;gap:12px;display:flex;position:relative}.registration-aside-brand>span{color:#052c56;background:linear-gradient(145deg,#f8d982,#d5a030);border-radius:12px;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 10px 25px #0003}.registration-aside-brand small,.registration-aside-brand strong{display:block}.registration-aside-brand small{color:#bfcfe2;letter-spacing:.04em;text-transform:uppercase;font-size:11px}.registration-aside-brand strong{margin-top:2px;font-family:Georgia,Times New Roman,serif;font-size:18px}.registration-aside-copy{z-index:1;margin:58px 0 36px;position:relative}.registration-aside-copy .eyebrow{color:#f1c85f}.registration-aside-copy h1{color:#fff;margin:13px 0 14px;font-size:37px;line-height:1.05}.registration-aside-copy p{color:#d7e2ef;margin:0;font-size:15px;line-height:1.65}.registration-steps{z-index:1;gap:0;margin:0;padding:0;list-style:none;display:grid;position:relative}.registration-steps li{color:#93aac1;grid-template-columns:38px 1fr;gap:12px;min-height:78px;display:grid;position:relative}.registration-steps li:not(:last-child):after{content:"";background:#ffffff2e;width:1px;position:absolute;top:38px;bottom:0;left:18px}.registration-steps li>span{border:1px solid #fff3;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.registration-steps li.active{color:#fff}.registration-steps li.active>span{color:#052d57;background:#edc662;border-color:#edc662;box-shadow:0 0 0 5px #edc6621f}.registration-steps strong,.registration-steps small{display:block}.registration-steps strong{padding-top:2px;font-size:14px}.registration-steps small{color:inherit;margin-top:3px;font-size:12px}.registration-trust{z-index:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff12;border:1px solid #ffffff21;border-radius:13px;grid-template-columns:30px 1fr;gap:11px;margin-top:auto;padding:16px;display:grid;position:relative}.registration-trust svg{color:#edc662}.registration-trust strong{font-size:13px}.registration-trust p{color:#c6d5e5;margin:4px 0 0;font-size:11px;line-height:1.5}.registration-form{background:#fff;gap:24px;padding:clamp(28px,4vw,52px);display:grid}.registration-form-kicker{justify-content:space-between;align-items:center;gap:12px;display:flex}.registration-form-kicker span{color:#855b09;letter-spacing:.07em;text-transform:uppercase;background:#fbf2dc;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;display:inline-flex}.registration-form-kicker small{color:#78879a;font-size:11px}.registration-intro{border-bottom:1px solid #e8edf3;padding-bottom:22px}.registration-intro h2{color:var(--navy);margin:14px 0 9px;font-size:clamp(29px,3vw,41px);line-height:1.05}.registration-intro p,.registration-section-heading p,.registration-optional p{color:var(--muted);margin:0;line-height:1.55}.registration-section{background:linear-gradient(#fff,#fafcfe);border:1px solid #dce5ee;border-radius:16px;gap:22px;padding:25px;display:grid;box-shadow:0 10px 30px #052c520b}.registration-optional-section{background:linear-gradient(#fff,#fffdf8);border-color:#dfca98}.registration-section-heading{align-items:flex-start;gap:14px;display:flex}.registration-section-heading>span{color:#fff;background:linear-gradient(145deg, var(--navy), #0c548f);border-radius:12px;flex:0 0 40px;place-items:center;width:40px;height:40px;font-weight:900;display:grid;box-shadow:0 9px 18px #0434612e}.registration-section-heading h3{color:var(--navy);margin:0 0 4px;font-size:21px}.registration-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.registration-fields label{color:#263d59;letter-spacing:.015em;gap:7px;font-size:12px;font-weight:900;display:grid}.registration-form input,.registration-form select,.registration-form textarea{color:#102842;background:#fff;border:1px solid #ccd8e5;border-radius:9px;width:100%;min-height:48px;padding:11px 13px;transition:border-color .18s,box-shadow .18s,background .18s;box-shadow:inset 0 1px 2px #06224106}.registration-form textarea{resize:vertical;min-height:94px}.registration-form input:hover,.registration-form select:hover,.registration-form textarea:hover{border-color:#9bb0c6}.registration-form input:focus,.registration-form select:focus,.registration-form textarea:focus{background:#fffefa;border-color:#b78924;outline:0;box-shadow:0 0 0 4px #cd9d3321}.registration-field-wide{grid-column:1/-1}.registration-optional{background:#f8fafc;border:1px solid #e0e7ef;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:20px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.registration-optional:hover{border-color:#c8d6e4;transform:translateY(-2px);box-shadow:0 12px 28px #052a4f12}.registration-optional.selected{background:#fffbf1;border-color:#d6b45f}.registration-optional-copy{align-items:center;gap:14px;display:flex}.registration-optional-copy>span{color:#9b6b0b;background:#f8edcf;border-radius:12px;flex:0 0 46px;place-items:center;width:46px;height:46px;display:grid}.registration-optional strong{color:var(--navy);font-size:15px}.registration-optional p{margin-top:4px;font-size:12px}.registration-optional button{min-height:42px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #b9c8d8;border-radius:9px;flex:none;justify-content:center;align-items:center;gap:7px;padding:10px 13px;font-size:12px;font-weight:900;display:inline-flex}.registration-optional.selected button{color:#fff;border-color:var(--navy);background:var(--navy)}.sacrament-list{gap:13px;display:grid}.sacrament-entry{background:#fff;border:1px solid #e0e7ef;border-radius:12px;gap:15px;padding:18px;display:grid}.sacrament-entry>label{color:#263d59;gap:7px;max-width:320px;font-size:12px;font-weight:900;display:grid}.sacrament-details{padding-top:5px}.registration-submit-card{background:linear-gradient(135deg,#f8fbfe,#eef4f9);border:1px solid #cddae7;border-radius:16px;gap:17px;padding:23px;display:grid}.registration-submit-heading{color:var(--navy);align-items:center;gap:12px;display:flex}.registration-submit-heading>svg{color:#ad7c16;width:30px;height:30px}.registration-submit-heading strong{font-size:16px}.registration-submit-heading p{color:var(--muted);margin:2px 0 0;font-size:12px}.registration-submit-card .check{color:#324c68;font-size:12px;font-weight:700}.registration-submit-card .check input{width:18px;min-height:18px;accent-color:var(--navy)}.registration-submit-card .primary-button{border-radius:10px;justify-content:center;width:100%;min-height:52px;font-size:14px;box-shadow:0 14px 26px #042f5933}.admin-hero{color:#fff;background:linear-gradient(135deg,#06172f 0%,#0a3766 55%,#8f1820 100%);position:relative;overflow:hidden}.admin-hero:before{content:"";opacity:.38;background-color:#0000;background-image:linear-gradient(90deg,#ffffff14 1px,#0000 1px),linear-gradient(0deg,#ffffff0f 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:54px 54px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.admin-hero-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:end;gap:28px;padding:46px 0 38px;display:grid;position:relative}.admin-kicker{color:#a56b14;text-transform:uppercase;align-items:center;gap:8px;font-size:12px;font-weight:900;display:inline-flex}.admin-hero .admin-kicker{color:#ffd88b}.admin-hero h1{color:#fff;font-size:clamp(38px,4.4vw,58px);line-height:1.02}.admin-hero p{color:#eaf1fb;max-width:760px;margin:12px 0 0;font-size:18px;line-height:1.6}.admin-session-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;gap:9px;padding:20px;display:grid;box-shadow:0 22px 54px #00000038}.admin-session-card svg{color:#ffd88b;width:34px;height:34px}.admin-session-card span{color:#dbe7f6;text-transform:uppercase;font-size:12px;font-weight:800}.admin-session-card strong{color:#fff;font-size:22px}.admin-session-card .secondary-button{color:#06172f;background:#fff;width:100%;margin-top:8px}.admin-real{gap:24px;display:grid}.admin-notice{margin:0}.admin-real .admin-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.admin-card{background:linear-gradient(#fff,#f7f9fc);border:0;grid-template-columns:58px 1fr;align-items:center;gap:16px;min-height:136px;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 36px #06172f17}.admin-card:after{content:"";background:#0a3766;height:4px;position:absolute;inset:auto 0 0}.admin-card.gold:after{background:var(--gold)}.admin-card.green:after{background:#17845b}.admin-card.red:after{background:var(--red)}.admin-card-icon{color:#0a3766;background:#eaf2fb;border-radius:8px;place-items:center;width:58px;height:58px;display:grid}.admin-card.gold .admin-card-icon{color:#a56b14;background:#fff5dc}.admin-card.green .admin-card-icon{color:#17845b;background:#e8f8f1}.admin-card.red .admin-card-icon{color:#b5101b;background:#fff0f1}.admin-card-icon svg{width:30px;height:30px}.admin-card h3{color:#06172f;margin:0;font-size:36px;line-height:1}.admin-card p{color:#62708a;margin:8px 0 0;font-weight:800}.admin-workspace{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:22px;display:grid}.admin-command-panel{background:#fff;border:1px solid #dce4ef;border-radius:8px;gap:18px;padding:18px;display:grid;position:sticky;top:126px;box-shadow:0 14px 32px #06172f14}.admin-command-panel h2,.admin-module-header h2,.admin-table-title h2{color:#06172f;margin:3px 0 0}.admin-tabs{gap:8px;display:grid}.admin-tabs button{color:#14345a;text-align:left;background:#f5f8fc;border:1px solid #0000;border-radius:7px;align-items:center;gap:10px;min-height:48px;padding:0 13px;font-weight:900;display:flex}.admin-tabs button svg{color:#647086}.admin-tabs button.active{color:#fff;background:linear-gradient(135deg,#06284f,#0b4b86);border-color:#0b4b86;box-shadow:0 10px 20px #002a542e}.admin-tabs button.active svg{color:#ffd88b}.admin-main-panel{gap:18px;min-width:0;display:grid}.admin-module-header,.admin-table-title{background:#fff;border:1px solid #dce4ef;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex;box-shadow:0 12px 28px #06172f12}.admin-status-pill{color:#176343;text-transform:uppercase;white-space:nowrap;background:#edf6f1;border-radius:999px;align-items:center;width:fit-content;min-height:28px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.admin-table-title strong{color:#fff;background:var(--red);border-radius:8px;place-items:center;min-width:46px;height:46px;font-size:20px;display:grid}.admin-editor-grid{grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr);align-items:start;gap:18px;display:grid}.admin-editor-grid .panel,.admin-main-panel>.panel{box-shadow:0 12px 28px #06172f12}.admin-editor-grid .contact-form{gap:13px;display:grid}.admin-editor-grid .contact-form h2,.admin-editor-grid .panel h2,.admin-table h2{color:#06172f;font-size:25px}.admin-editor-grid .contact-form input,.admin-editor-grid .contact-form select,.admin-editor-grid .contact-form textarea{background:#fbfcfe;border-color:#d6e0ec}.admin-editor-grid .contact-form input:focus,.admin-editor-grid .contact-form select:focus,.admin-editor-grid .contact-form textarea:focus{border-color:var(--gold);background:#fff;outline:3px solid #d8a23538}.admin-editor-grid>.admin-table{grid-column:1/-1}.admin-form-actions,.admin-row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-cancel-button,.admin-delete-button{color:#fff;border:0;border-radius:6px;min-height:42px;padding:0 16px;font-weight:800}.admin-cancel-button{background:#647086}.admin-delete-button{background:#b4232c}.admin-help{border-left:4px solid var(--gold);color:#4b3a12;background:#fff8e7;border-radius:0 7px 7px 0;padding:12px 14px;font-weight:800}.large-textarea{min-height:260px!important}.admin-table{overflow-x:auto}.admin-table table{border-collapse:separate;border-spacing:0 8px;width:100%}.admin-table th,.admin-table td{text-align:left;padding:12px 14px}.admin-table th{color:#516079;text-transform:uppercase;font-size:12px;font-weight:900}.admin-table tbody tr{background:#f8fafc;box-shadow:inset 0 0 0 1px #e3e9f1}.admin-table tbody td:first-child{color:#13233d;border-radius:7px 0 0 7px;font-weight:800}.admin-table tbody td:last-child{border-radius:0 7px 7px 0}.admin-table button{color:#fff;background:var(--navy);border:0;border-radius:6px;min-height:34px;padding:0 14px;font-weight:800}.admin-table .admin-delete-button{background:#b4232c}.admin-media-preview{object-fit:cover;background:#06172f;border:1px solid #dce4ef;border-radius:7px;width:104px;height:68px;display:block}.parish-announcement-detail>img{max-height:340px}.announcement-intro{color:var(--navy);text-transform:uppercase;background:#eef4fb;border-radius:999px;margin:12px 0 18px;padding:7px 12px;font-size:12px;font-weight:900;display:inline-flex}.parish-announcement-list ol{gap:14px;margin:0;padding:0;list-style:none;display:grid}.parish-announcement-list li{border:1px solid var(--line);background:linear-gradient(#fff,#f8fbff);border-radius:8px;grid-template-columns:48px 1fr;align-items:start;gap:14px;padding:16px;display:grid}.parish-announcement-list li span{background:var(--navy);color:#fff;border-radius:50%;place-items:center;width:48px;height:48px;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:900;display:grid}.parish-announcement-list li p{color:#1d2c45;margin:0;font-size:17px;line-height:1.65}.pastoral-video-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.pastoral-video-card{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 8px 22px #001e4612}.pastoral-video-card video{object-fit:contain;background:#001936;width:100%;height:auto;max-height:72vh}.pastoral-video-card img,.video-link-cover{aspect-ratio:16/9;object-fit:contain;color:#fff;background:#001936;width:100%}.external-video-frame{aspect-ratio:16/9;background:#001936;border:0;width:100%;display:block}.pastoral-video-card div{padding:16px}.pastoral-video-card h3{margin:10px 0 8px;font-size:21px}.pastoral-video-card p{color:var(--muted);line-height:1.5}.pastoral-video-card small{color:var(--muted);align-items:center;gap:6px;display:flex}.video-link-cover{place-items:center;display:grid;position:relative}.video-link-cover svg{width:52px;height:52px}.video-link-cover span{background:#001838d1;border-radius:999px;align-items:center;gap:8px;width:fit-content;padding:8px 12px;font-weight:900;display:inline-flex;position:absolute;inset:auto 14px 14px}.pastoral-empty{text-align:center;place-items:center;min-height:220px;display:grid}.pastoral-empty svg{width:54px;height:54px;color:var(--navy)}.mobile-dock{display:none}@media (width<=1180px){.container{width:min(100% - 48px,960px)}.site-header{background:var(--navy);height:88px;padding-right:24px}.brand{border-bottom-right-radius:54px;width:360px;height:88px}.brand-text strong{font-size:19px}.main-nav{background:var(--navy);flex-direction:column;align-items:stretch;gap:4px;padding:18px 24px 24px;display:none;position:fixed;inset:88px 0 auto}.main-nav.open{display:flex}.main-nav a{padding:12px 0}.main-nav a.active:after{width:120px;bottom:4px}.menu-button{margin-left:auto;display:grid}.quick-access,.announcements-layout,.events-layout,.donate-layout,.two-columns,.contact-layout,.detail-layout,.movement-detail{grid-template-columns:1fr}.quick-access{grid-template-columns:repeat(2,1fr)}.homepage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-card:nth-child(2n){border-right:0}.homepage-grid{padding-top:28px}.project-grid,.value-grid,.card-grid,.admin-grid,.schedule-grid,.media-grid,.footer-grid,.side-stack{grid-template-columns:repeat(2,1fr)}.donation-form{position:static}}@media (width<=760px){body{padding-bottom:76px}.container{width:min(100% - 28px,620px)}.site-header{height:74px;padding-right:14px}.brand{border-bottom-right-radius:44px;width:275px;height:74px;padding-left:12px}.brand-text span,.brand-text small{font-size:9px}.brand-text strong{font-size:15px}.brand-text em{min-width:112px;padding:2px 8px;font-size:11px}.donate-button{display:none}.main-nav{inset:74px 0 auto}.home-hero,.page-hero{min-height:250px}.hero-content h1{font-size:36px}.hero-content p{font-size:16px}.quick-access,.homepage-grid,.announcement-mini-grid,.announcement-grid,.side-stack,.project-grid,.value-grid,.card-grid,.admin-grid,.schedule-grid,.media-grid,.commitment-grid{grid-template-columns:1fr}.quick-access{border-radius:0;width:100%;margin-top:0}.info-card{border-right:0;border-bottom:1px solid var(--line)}.split-mini,.event-feature-large,.event-row{grid-template-columns:1fr}.event-row img{height:150px}.featured img{float:none;width:100%;height:auto;margin:0 0 14px}.search-box{margin-left:0}.footer-grid,.footer-bottom{grid-template-columns:1fr;display:grid}.admin-editor-grid{grid-template-columns:1fr}.site-footer{padding:28px 18px 18px}.mobile-dock{z-index:40;border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(5,1fr);height:72px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 24px #001e461f}.mobile-dock a{color:var(--navy);align-content:center;place-items:center;gap:2px;font-size:12px;font-weight:700;display:grid}.mobile-dock a.active{background:var(--navy);color:#fff}.section-heading{grid-template-columns:1fr;gap:8px}.section-heading span{display:none}.inline-form{flex-direction:column}}.video-section{padding-top:8px}.video-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.featured-video-section .section-title-row{align-items:end}.featured-video-section .section-heading{flex:1;margin:0}.featured-video-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.video-preview-card{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 8px 22px #001e460f}.video-preview-card div{padding:14px 16px 16px}.video-preview-card h3{margin:10px 0 8px;font-size:20px;line-height:1.18}.video-preview-card p{color:var(--muted);margin:0;line-height:1.45}.video-preview-card.compact h3{font-size:17px}.video-poster-button{color:#fff;text-align:left;background:#001936;border:0;width:100%;padding:0;display:block;position:relative}.video-poster-button img,.video-poster-fallback{aspect-ratio:16/9;object-fit:cover;background:#001936;width:100%}.video-poster-fallback{color:#fffc;place-items:center;display:grid}.video-poster-fallback svg{width:46px;height:46px}.play-badge{color:#fff;background:#00122614;place-items:center;transition:background .2s;display:grid;position:absolute;inset:0}.play-badge svg{filter:drop-shadow(0 8px 18px #00000061);width:54px;height:54px}.video-poster-button:hover .play-badge,.video-poster-button:focus-visible .play-badge{background:#00122647}.video-poster-button small{background:#001226db;border-radius:4px;padding:4px 8px;font-weight:800;position:absolute;bottom:10px;right:10px}.empty-state{border:1px dashed var(--line);min-height:160px;color:var(--muted);border-radius:8px;place-items:center;font-weight:800;display:grid}.video-modal{z-index:80;background:#001226eb;place-items:center;padding:78px 24px 32px;display:grid;position:fixed;inset:0}.video-modal article{width:min(980px,100%);max-height:calc(100vh - 110px);box-shadow:var(--shadow);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr);display:grid;overflow:auto}.video-modal video{object-fit:contain;background:#001936;width:100%;max-height:72vh;display:block}.video-modal video.portrait-video{aspect-ratio:9/16;background:#001936;max-height:76vh;margin:0 auto}.video-modal article div{padding:18px 22px 22px}.video-modal h2{margin:10px 0 8px}.video-modal p{color:var(--muted);line-height:1.5}@media (width<=1180px){.video-grid,.featured-video-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.video-grid,.featured-video-grid,.pastoral-video-grid{grid-template-columns:1fr}.parish-announcement-list li{grid-template-columns:40px 1fr;padding:13px}.parish-announcement-list li span{width:40px;height:40px;font-size:20px}.featured-video-section .section-title-row{align-items:start;display:grid}.video-modal{padding:68px 12px 18px}.video-modal article{max-height:calc(100vh - 90px)}}.brand-text{color:var(--navy);text-transform:uppercase;grid-template-columns:76px 1fr;align-items:center;gap:12px;line-height:1.04;display:grid}.brand-text img{object-fit:contain;width:76px;height:76px}.brand-text span{letter-spacing:0;font-size:11px;font-weight:800}.brand-text strong{font-family:Georgia,Times New Roman,serif;font-size:22px}.brand-text small{text-transform:none;font-size:12px;font-weight:800;display:block}.brand-text em{color:#fff;background:var(--red);text-align:center;text-transform:none;border-radius:2px;width:fit-content;min-width:150px;margin-top:5px;padding:3px 14px;font-style:normal;font-weight:800;display:block}.footer-brand-text{color:#fff;margin-bottom:12px}.footer-brand-text img{filter:none;background:#fff;border-radius:6px;padding:4px}.footer-brand-text em{background:var(--red)}.featured-visuals{padding-top:22px}.featured-visual-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.featured-visual-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 8px 22px #001e460f}.featured-visual-grid .image-preview-button{border-radius:0}.featured-visual-grid img{object-fit:contain;background:#eef2f7;width:100%;height:240px}.featured-visual-grid div{padding:14px}.featured-visual-grid span{color:#074284;text-transform:uppercase;font-size:12px;font-weight:800}.featured-visual-grid h3{margin:6px 0;font-size:18px;line-height:1.18}.featured-visual-grid p{color:var(--muted);margin:0;font-size:14px;line-height:1.45}.gallery-toolbar{flex-wrap:wrap;gap:10px;margin:0 0 14px;display:flex}.gallery-toolbar button{border:1px solid var(--line);min-height:40px;color:var(--ink);background:#fff;border-radius:999px;padding:0 14px;font-weight:800}.gallery-toolbar button.active{background:var(--navy);border-color:var(--navy);color:#fff}.gallery-toolbar span{background:#002a5417;border-radius:999px;place-items:center;min-width:24px;height:24px;margin-left:8px;font-size:12px;display:inline-grid}.gallery-toolbar button.active span{background:#ffffff2e}.gallery-count{color:var(--muted);margin:0 0 18px;font-weight:700}.gallery-grid{align-items:stretch}.gallery-tile{text-align:left;border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:0;display:block;overflow:hidden;box-shadow:0 8px 22px #001e460f}.gallery-tile img{object-fit:contain;background:linear-gradient(135deg,#edf2f7,#d9e2ef);width:100%;height:240px}.gallery-tile span{min-height:44px;color:var(--navy);padding:12px 14px;font-weight:800;display:block}.load-more-row{justify-content:center;margin-top:24px;display:flex}.load-more-row button{background:var(--navy);color:#fff;text-transform:uppercase;border:0;border-radius:6px;min-height:44px;padding:0 22px;font-weight:800}.lightbox{z-index:80;background:#001226eb;place-items:center;padding:36px 78px;display:grid;position:fixed;inset:0}.lightbox figure{color:#fff;width:min(1100px,100%);margin:0}.lightbox figure img{object-fit:contain;background:#001936;border-radius:8px;width:100%;max-height:calc(100vh - 190px)}.lightbox figcaption{grid-template-columns:1fr auto;gap:6px 18px;margin-top:14px;display:grid}.lightbox figcaption p{color:#dbe6f3;grid-column:1/-1;margin:0}.lightbox-close,.lightbox-nav{color:#fff;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:999px;place-items:center;display:grid;position:fixed}.lightbox-close{width:46px;height:46px;top:22px;right:24px}.lightbox-nav{width:52px;height:52px;top:50%;transform:translateY(-50%)}.lightbox-nav.prev{left:22px}.lightbox-nav.next{right:22px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1180px){.featured-visual-grid{grid-template-columns:repeat(3,1fr)}.brand-text{grid-template-columns:62px 1fr}.brand-text img{width:62px;height:62px}.brand-text strong{font-size:19px}}@media (width<=760px){.featured-visual-grid{grid-template-columns:1fr}.brand-text{grid-template-columns:46px 1fr;gap:8px}.brand-text img{width:46px;height:46px}.brand-text span,.brand-text small{font-size:9px}.brand-text strong{font-size:15px}.brand-text em{min-width:112px;padding:2px 8px;font-size:11px}.gallery-tile img{height:210px}.lightbox{padding:64px 14px 22px}.lightbox figcaption{grid-template-columns:1fr}.lightbox-nav{width:42px;height:42px;top:auto;bottom:18px;transform:none}.lightbox-nav.prev{left:18px}.lightbox-nav.next{right:18px}}@media (width<=1180px){.admin-hero-grid{grid-template-columns:1fr;align-items:start}.admin-session-card{width:min(420px,100%)}.admin-real .admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-workspace{grid-template-columns:1fr}.admin-command-panel{position:static}.admin-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.admin-hero-grid{padding:34px 0 28px}.admin-hero h1{font-size:36px}.admin-hero p{font-size:16px}.admin-real .admin-grid,.admin-tabs,.admin-editor-grid{grid-template-columns:1fr}.admin-card{grid-template-columns:52px 1fr;min-height:112px;padding:18px}.admin-card-icon{width:52px;height:52px}.admin-card h3{font-size:31px}.admin-module-header,.admin-table-title{flex-direction:column;align-items:flex-start}.admin-command-panel,.admin-module-header{padding:16px}}@media (width<=900px){.tv-detail-layout{grid-template-columns:1fr}}@media (width<=600px){.tv-hero{padding:2.5rem 0 2rem}.tv-grid{grid-template-columns:1fr}.tv-filters-bar{flex-direction:column}.tv-filters-bar select{width:100%}}.tv-hero{color:#fff;text-align:center;background-position:50%;background-size:cover;padding:4rem 0 3.5rem;position:relative}.tv-hero .hero-content{flex-direction:column;align-items:center;gap:.75rem;display:flex}.tv-hero-icon{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;margin-bottom:.5rem;display:flex}.tv-hero h1{text-shadow:0 2px 12px #00000059;margin:0;font-size:clamp(1.8rem,4vw,3rem)}.tv-hero p{opacity:.95;max-width:720px;margin:0 auto;font-size:1.1rem}.tv-hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1rem;display:flex}.tv-social-btn{border:2px solid #0000;border-radius:50px;align-items:center;gap:.5rem;padding:.65rem 1.5rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.tv-social-btn.facebook{color:#fff;background:#1877f2}.tv-social-btn.youtube{color:#fff;background:red}.tv-social-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000040}.tv-presentation-card{color:#002a54;align-items:flex-start;gap:1.5rem;display:flex}.tv-presentation-card svg{color:#c9a227;flex-shrink:0}.tv-presentation-text p{margin-bottom:.75rem;line-height:1.7}.tv-presentation-text p:last-child{margin-bottom:0}.tv-filters-bar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.tv-search-box{background:#fff;border:1px solid #ddd;border-radius:8px;flex:1;align-items:center;gap:.5rem;min-width:200px;padding:.5rem .75rem;display:flex}.tv-search-box input{background:0 0;border:none;outline:none;flex:1;font-size:.95rem}.tv-filters-bar select{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;padding:.5rem .75rem;font-size:.9rem}.tv-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.tv-card{background:#fff;border-radius:12px;flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 2px 12px #00000014}.tv-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px #00000024}.tv-card-cover{aspect-ratio:16/9;background:#002a54;display:block;position:relative;overflow:hidden}.tv-card-cover img{object-fit:cover;width:100%;height:100%}.tv-card-cover-fallback{color:#fff6;justify-content:center;align-items:center;height:100%;display:flex}.tv-card-play-badge{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#002a54bf;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .2s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tv-card-cover:hover .tv-card-play-badge{background:#002a54e6;transform:translate(-50%,-50%)scale(1.1)}.tv-card-duration{color:#fff;background:#000000bf;border-radius:4px;padding:.15rem .5rem;font-size:.8rem;position:absolute;bottom:.5rem;right:.5rem}.tv-card-body{flex-direction:column;flex:1;gap:.5rem;padding:1rem;display:flex}.tv-card-tags{flex-wrap:wrap;gap:.5rem;display:flex}.tv-card-type{color:#666;text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.tv-card-body h3{margin:0;font-size:1.1rem}.tv-card-body h3 a{color:#002a54;text-decoration:none}.tv-card-body h3 a:hover{color:#003b7a;text-decoration:underline}.tv-card-body>p{color:#555;margin:0;font-size:.9rem;line-height:1.5}.tv-card-meta{color:#888;flex-wrap:wrap;gap:.75rem;font-size:.8rem;display:flex}.tv-card-meta small{align-items:center;gap:.25rem;display:inline-flex}.tv-card-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:auto;padding-top:.5rem;display:flex}.tv-external-link{color:#003b7a;align-items:center;gap:.25rem;font-size:.85rem;text-decoration:none;display:inline-flex}.tv-external-link:hover{text-decoration:underline}.tv-empty{text-align:center;color:#002a54;padding:3rem 1.5rem}.tv-empty svg{color:#c9a227;margin-bottom:1rem}.tv-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;display:flex}.tv-pagination button{color:#002a54;cursor:pointer;background:#fff;border:1px solid #002a54;border-radius:8px;padding:.5rem 1.25rem;font-weight:600;transition:all .2s}.tv-pagination button:hover:not(:disabled){color:#fff;background:#002a54}.tv-pagination button:disabled{opacity:.4;cursor:not-allowed}.tv-pagination span{color:#555;font-size:.9rem}.tv-social-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.tv-social-card{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 1.5rem;display:flex}.tv-social-card.facebook svg{color:#1877f2}.tv-social-card.youtube svg{color:red}.tv-social-card h3{color:#002a54;margin:.5rem 0}.tv-social-card p{color:#555;margin-bottom:1rem}.tv-social-card button:disabled{opacity:.5;cursor:not-allowed;color:#888;background:#f5f5f5;border:2px solid #ddd;border-radius:50px;padding:.65rem 1.5rem}.tv-subscribe-text{text-align:center;color:#555;margin-top:1.5rem;font-style:italic}.tv-back-link{color:#ffffffd9;margin-bottom:.5rem;font-size:.9rem;text-decoration:none}.tv-back-link:hover{color:#fff;text-decoration:underline}.tv-detail-layout{grid-template-columns:1fr 320px;gap:2rem;display:grid}.tv-detail-main{flex-direction:column;gap:1rem;display:flex}.tv-player-wrapper{aspect-ratio:16/9;background:#000;border-radius:12px;position:relative;overflow:hidden}.tv-player-wrapper iframe,.tv-player-wrapper video{border:none;width:100%;height:100%}.tv-player-wrapper img{object-fit:cover;width:100%;height:100%}.tv-audio-player{background:#002a54;flex-direction:column;display:flex}.tv-audio-player img{height:200px}.tv-audio-player audio{width:100%}.tv-facebook-fallback,.tv-external-fallback,.tv-no-media{background:linear-gradient(135deg,#002a54 0%,#003b7a 100%);justify-content:center;align-items:center;display:flex;position:relative}.tv-fallback-overlay{color:#fff;text-align:center;background:#002a54b3;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:1.5rem;display:flex;position:absolute;inset:0}.tv-detail-meta{color:#555;flex-wrap:wrap;gap:1.5rem;font-size:.95rem;display:flex}.tv-detail-meta span{align-items:center;gap:.35rem;display:inline-flex}.tv-detail-guests{color:#444}.tv-detail-description{color:#333;line-height:1.7}.tv-detail-original{align-items:center;gap:.5rem;margin-top:.5rem;display:inline-flex}.tv-detail-info{align-self:start}.tv-detail-info p{color:#444;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.tv-detail-info strong{color:#002a54}.tv-admin{flex-direction:column;gap:1.5rem;display:flex}.tv-subtabs{flex-wrap:wrap;gap:8px;display:flex}.tv-subtabs button{width:auto;min-height:44px}.admin-form-section{color:#002a54;border-bottom:2px solid #e0e0e0;margin-top:1.25rem;padding-bottom:.35rem;font-size:1rem}.tv-admin-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.tv-admin-filters input,.tv-admin-filters select{border:1px solid #ddd;border-radius:6px;padding:.4rem .6rem;font-size:.85rem}@media (width<=900px){.tv-detail-layout{grid-template-columns:1fr}}@media (width<=600px){.tv-hero{padding:2.5rem 0 2rem}.tv-grid{grid-template-columns:1fr}.tv-filters-bar{flex-direction:column}.tv-filters-bar select{width:100%}}.nav-dropdown{align-self:stretch;align-items:center;display:flex;position:relative}.nav-dropdown>a{align-items:center;gap:5px;display:inline-flex}.nav-dropdown>a svg{transition:transform .2s}.nav-dropdown-menu{z-index:35;opacity:0;visibility:hidden;background:#fff;border:1px solid #002a541f;border-radius:10px;min-width:190px;padding:8px;transition:opacity .18s,transform .18s,visibility .18s;position:absolute;top:calc(100% - 12px);left:50%;transform:translate(-50%,8px);box-shadow:0 18px 40px #00183833}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%)}.nav-dropdown:hover>a svg,.nav-dropdown:focus-within>a svg{transform:rotate(180deg)}.main-nav .nav-dropdown-menu a{color:var(--navy);border-radius:7px;padding:11px 13px;font-size:14px;font-weight:800;display:flex}.main-nav .nav-dropdown-menu a:hover,.main-nav .nav-dropdown-menu a.active{color:#fff;background:var(--navy)}.main-nav .nav-dropdown-menu a:after{display:none}.homepage-grid{grid-auto-rows:unset;align-items:start}.homepage-grid>.panel{height:570px;overflow:hidden}.homepage-grid .section-title-row{min-height:52px;margin-bottom:14px}.homepage-grid .section-title-row h2,.homepage-grid>.panel>h2{min-height:52px;font-size:24px;line-height:1.08}.homepage-grid .split-mini{grid-template-rows:190px minmax(0,1fr);height:calc(100% - 52px)}.homepage-grid .split-mini>.image-preview-button{height:190px}.homepage-grid .split-mini img{object-fit:cover;object-position:top center;height:190px}.home-card-content{flex-direction:column;min-height:0;display:flex}.home-card-content p,.home-card-summary,.homepage-grid .announcement-card p,.homepage-grid .event-feature-small>p{-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.home-card-content .secondary-button,.home-card-link,.homepage-grid .event-feature-small .secondary-button{align-self:flex-start;margin-top:auto}.priest-communication-card .home-pastoral-video{background:#001936;border-radius:8px;flex:0 0 190px;height:190px;overflow:hidden}.priest-communication-card .home-pastoral-video video,.priest-communication-card .home-pastoral-video iframe,.priest-communication-card .home-pastoral-video .video-link-cover{aspect-ratio:auto;object-fit:cover;width:100%;height:100%;max-height:none}.priest-communication-card>h3{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.latest-announcements .announcement-mini-grid{flex:1;min-height:0}.homepage-grid .announcement-card{grid-template-rows:190px minmax(0,1fr);min-height:0;display:grid}.homepage-grid .announcement-card>.image-preview-button{height:190px}.homepage-grid .announcement-card img{aspect-ratio:auto;object-fit:cover;width:100%;height:190px}.homepage-grid .announcement-card>div{flex-direction:column;min-height:0;display:flex}.homepage-grid .announcement-card h3{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.homepage-grid .announcement-card a{margin-top:auto}.homepage-grid .event-feature-small .event-visual{align-items:start;height:190px}.homepage-grid .event-feature-small .event-visual .image-preview-button,.homepage-grid .event-feature-small .event-visual img{height:190px}.homepage-grid .event-feature-small .event-visual img{object-fit:cover}.homepage-grid .event-feature-small>h3{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:14px 0 0;display:-webkit-box;overflow:hidden}.home-mission{border-block:1px solid var(--line);background:linear-gradient(#f7f9fc,#eef3f9)}.home-section-intro{justify-content:space-between;align-items:end;gap:40px;margin-bottom:26px;display:flex}.home-section-intro h2{max-width:760px;margin-top:12px;font-size:clamp(30px,3.2vw,46px);line-height:1.08}.home-section-intro>p{color:#40506a;max-width:510px;margin:0;font-size:17px;line-height:1.65}.home-mission-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.home-mission-grid article{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:245px;padding:28px;box-shadow:0 10px 30px #001e460f}.home-mission-icon{color:#fff;background:linear-gradient(135deg, var(--navy), #0c548f);border-radius:12px;place-items:center;width:56px;height:56px;display:grid}.home-mission-icon svg{width:28px;height:28px}.home-mission-grid h3{margin:20px 0 9px;font-size:23px}.home-mission-grid p{color:#40506a;min-height:72px;margin:0 0 18px;line-height:1.55}.home-mission-grid a{color:var(--navy);align-items:center;gap:8px;font-weight:900;display:inline-flex}.home-tv-section{color:#fff;background:radial-gradient(circle at 85% 10%,#d8a23533,#0000 28%),linear-gradient(135deg,#001d3d,#003568)}.home-tv-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:28px;display:flex}.home-tv-kicker{color:#f0c665;text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;font-weight:900;display:inline-flex}.home-tv-heading h2{color:#fff;max-width:760px;margin:12px 0;font-size:clamp(32px,3.6vw,50px);line-height:1.05}.home-tv-heading p{color:#e6edf6;max-width:720px;margin:0;font-size:17px;line-height:1.6}.home-tv-actions{flex-wrap:wrap;align-items:center;gap:15px;display:flex}.home-tv-actions>a:not(.primary-button){color:#fff;text-underline-offset:4px;font-weight:800;text-decoration:underline}.home-tv-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.home-tv-card{min-width:0;color:var(--ink);background:#fff;border:1px solid #ffffff29;border-radius:12px;overflow:hidden;box-shadow:0 18px 42px #000d1f47}.home-tv-cover{background:linear-gradient(135deg,#062d59,#0d5b92);height:205px;display:block;position:relative;overflow:hidden}.home-tv-cover img{object-fit:cover;width:100%;height:100%}.home-tv-cover>span{color:#ffffffe0;text-transform:uppercase;letter-spacing:.06em;align-content:center;place-items:center;gap:9px;width:100%;height:100%;font-weight:900;display:grid}.home-tv-cover>span svg{width:58px;height:58px}.home-tv-cover>i{color:#fff;background:#00142c1a;place-items:center;transition:background .2s;display:grid;position:absolute;inset:0}.home-tv-cover>i svg{filter:drop-shadow(0 8px 15px #0006);width:54px;height:54px}.home-tv-cover:hover>i{background:#00142c47}.home-tv-card>div{flex-direction:column;min-height:185px;padding:19px;display:flex}.home-tv-card>div>small{color:#58708a;text-transform:uppercase;font-size:11px;font-weight:800}.home-tv-card h3{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:8px 0;font-size:22px;display:-webkit-box;overflow:hidden}.home-tv-card p{color:#40506a;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0 0 12px;line-height:1.5;display:-webkit-box;overflow:hidden}.home-tv-watch{color:var(--navy);align-items:center;gap:8px;margin-top:auto;font-weight:900;display:inline-flex}.home-tv-empty{color:#fff;border:1px dashed #ffffff59;border-radius:12px;align-content:center;place-items:center;gap:10px;min-height:180px;display:grid}.home-tv-empty svg{width:46px;height:46px}@media (width<=1180px){.nav-dropdown{align-self:stretch;display:block}.nav-dropdown>a{justify-content:space-between;width:100%}.nav-dropdown-menu{min-width:0;box-shadow:none;opacity:1;visibility:visible;background:#ffffff0f;border:0;padding:3px 0 5px 16px;position:static;transform:none}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{transform:none}.main-nav .nav-dropdown-menu a{color:#fff;padding:9px 12px}.home-section-intro,.home-tv-heading{flex-direction:column;align-items:flex-start;gap:18px}.home-mission-grid,.home-tv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-tv-card:last-child{grid-column:1/-1}}@media (width<=980px){.registration-layout{grid-template-columns:1fr}.registration-aside{min-height:0;padding:28px;position:relative}.registration-aside-copy{max-width:670px;margin:36px 0 28px}.registration-aside-copy h1{font-size:32px}.registration-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.registration-steps li{grid-template-columns:36px 1fr;min-height:52px}.registration-steps li:not(:last-child):after{display:none}.registration-steps li>span{width:36px;height:36px}.registration-trust{max-width:560px;margin-top:24px}.registration-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.homepage-grid>.panel{height:550px}.home-section-intro h2,.home-tv-heading h2{font-size:32px}.home-mission-grid,.home-tv-grid{grid-template-columns:1fr}.home-tv-card:last-child{grid-column:auto}.home-mission-grid article{min-height:0}.home-tv-actions{flex-direction:column;align-items:flex-start}.home-tv-cover{height:190px}.registration-page{padding:24px 0}.registration-layout{border-radius:16px;width:min(100% - 24px,980px)}.registration-aside{padding:23px 20px}.registration-aside-copy{margin:30px 0 24px}.registration-aside-copy h1{font-size:29px}.registration-steps{grid-template-columns:1fr;gap:9px}.registration-steps li{min-height:43px}.registration-steps li>div{align-items:center;gap:8px;display:flex}.registration-steps li>div strong,.registration-steps li>div small{margin:0;padding:0}.registration-form{padding:24px 18px}.registration-form-kicker{flex-direction:column;align-items:flex-start}.registration-intro h2{font-size:30px}.registration-section{padding:19px 16px}.registration-fields{grid-template-columns:1fr}.registration-optional{flex-direction:column;align-items:flex-start}.registration-optional button{justify-content:center;width:100%}.registration-submit-card{padding:19px 16px}}.tv-upload-progress{background:#f5f8fc;border:1px solid #003c7329;border-radius:12px;gap:.5rem;padding:.9rem 1rem;display:grid}.tv-upload-progress-label{color:#003c73;justify-content:space-between;align-items:center;gap:1rem;display:flex}.tv-upload-progress-track{background:#dbe5ef;border-radius:999px;height:10px;overflow:hidden}.tv-upload-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#005397,#edb12b);height:100%;transition:width .18s;display:block}.tv-upload-progress small{color:#586b7e}
