/* Scoped presentation for migrated parish information and collections. */
.content-page{--cp-ink:#172b45;--cp-muted:#526478;--cp-line:#e1e5e9;--cp-gold:#a37c3d;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:42px;padding-top:48px;padding-bottom:72px;align-items:start}
.cp-article{min-width:0;color:var(--cp-ink);font-size:1rem;line-height:1.85;overflow-wrap:anywhere}
.cp-block{background:#fff;border:1px solid var(--cp-line);border-radius:20px;padding:clamp(22px,3.5vw,44px);margin-bottom:24px;box-shadow:0 7px 26px #182d4710;overflow:hidden}
.cp-block :where(p,ul,ol,table){margin-top:0;margin-bottom:1em}
.cp-block :where(h2,h3,h4){font-family:Georgia,'Times New Roman',serif;font-weight:500;line-height:1.35;color:#172b45;scroll-margin-top:130px;margin-top:1.6em;margin-bottom:.65em}
.cp-block h2{font-size:clamp(1.22rem,2vw,1.65rem)}
.cp-block h3{font-size:1.2rem}
.cp-block :where(h2,h3):first-child{margin-top:0}
.cp-block h2:not(:first-child){border-top:1px solid #e8e5de;padding-top:1.15em}
.cp-block :where(b,strong){font-weight:650}
.cp-block :where(a){color:#234c6c;text-underline-offset:3px}
.cp-block :where(a):hover{color:#8c642c}
.cp-block :where(a):focus-visible,.content-page :where(a,button,summary):focus-visible{outline:3px solid #a37c3d;outline-offset:5px}
.cp-block :where(ul,ol){padding-left:1.5em}
.cp-block li{margin-bottom:.4em}
.cp-block :where(img){max-width:100%;height:auto;display:block;margin:1.2em auto;border-radius:10px;object-fit:contain}
.cp-block .cp-image-link{display:block;width:fit-content;max-width:100%;margin:0 auto;cursor:zoom-in}
.cp-block .cp-image-link img{max-height:720px}
.cp-block--media{text-align:center;background:linear-gradient(145deg,#fbfaf7,#f0f3f4);padding:24px}
.cp-block--media img{max-height:540px;margin:0 auto}
.cp-block--media:has(img:nth-of-type(3)){display:block}
.cp-block :where(table){display:block;overflow:auto;max-width:100%;border-collapse:collapse;font-size:.94em}
.cp-block :where(th,td){padding:12px 16px;border:1px solid #e0e4e8;vertical-align:top}
.cp-block :where(th){background:#f1f3f5;font-weight:700}
.cp-block :where(hr){margin:28px 0;border:0;border-top:1px solid #e0e4e8}
.cp-block :where(video,audio){max-width:100%;display:block;margin:20px auto}
.cp-block .cp-lead{font-family:Georgia,'Times New Roman',serif;font-size:1.35rem;line-height:1.65;color:#263d55}
.cp-block .cp-address{padding:14px 0 14px 20px;border-left:3px solid #c5a46e;color:#526478}
.cp-block .cp-hours{display:table;width:100%;font-size:.9rem;line-height:1.6;border-radius:10px;border:1px solid #e2e6eb}
.cp-block .cp-hours :where(th,td){border:0;border-bottom:1px solid #e2e6eb;padding:15px 14px;text-align:left}
.cp-block .cp-hours th[scope=row]{font-weight:500;background:#fff;width:44%}
.cp-block .cp-hours td{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:650}
.cp-contact-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}
.cp-contact-links>a{display:flex;flex-direction:column;gap:7px;text-decoration:none;border:1px solid #dce3e9;border-radius:12px;background:#f8fafb;padding:20px}
.cp-contact-links>a:hover{background:#f2ede3;border-color:#ccb68a}
.cp-contact-links small{font-size:.75rem;color:#5d6e7f}
.cp-contact-links strong{font-size:1.08rem;overflow-wrap:anywhere}
.cp-contact-links span{font-size:.78rem;color:#8a692f}
.cp-checklist{color:#526478}
.cp-block .cp-bank-number{font-size:clamp(1rem,2vw,1.4rem);line-height:1.75;letter-spacing:.035em;background:#f2eee4;padding:20px;border-radius:10px;font-weight:600;font-variant-numeric:tabular-nums}
.cp-mass-time{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;background:#f3efe4;border-radius:12px;margin:25px 0}
.cp-mass-time strong{font-family:Georgia,'Times New Roman',serif;font-size:2.6rem;font-weight:400;color:#8f6b36}
.cp-mobile-toc{display:none}
.cp-block [id]{scroll-margin-top:130px}
.cp-sidebar{display:flex;flex-direction:column;gap:22px;min-width:0}
.cp-portrait{margin:0;padding:22px 28px 20px;border:1px solid #e8dfcd;background:radial-gradient(ellipse at center,#fff 0%,#f2efe7 75%);border-radius:140px 140px 20px 20px;text-align:center}
.cp-portrait img{max-width:100%;height:310px;object-fit:contain;display:block;margin:auto;filter:drop-shadow(0 14px 12px #221b1c20)}
.cp-portrait a{display:block;cursor:zoom-in}
.cp-portrait figcaption{font-family:Georgia,'Times New Roman',serif;font-size:1.1rem;margin-top:15px;color:#5c4b2e}
.cp-sidebar-card{padding:24px;background:#fff;border:1px solid var(--cp-line);border-radius:16px;box-shadow:0 6px 22px #182d470a}
.cp-sidebar-card h2,.cp-sidebar-card summary{font-family:Georgia,'Times New Roman',serif;font-size:1.2rem;font-weight:500;line-height:1.45;margin:0 0 16px;color:var(--cp-ink)}
.cp-sidebar-card summary{cursor:pointer;margin:0}
.cp-toc nav{max-height:380px;overflow-y:auto;margin-top:16px;scrollbar-width:thin}
.cp-toc ol{margin:0;padding-left:22px;font-size:.84rem;line-height:1.5;color:var(--cp-muted)}
.cp-toc li{padding-left:3px;margin-bottom:10px}
.cp-toc a{color:inherit;text-decoration:none}
.cp-toc a:hover{text-decoration:underline;color:var(--cp-ink)}
.cp-related{margin:0;padding:0;list-style:none}
.cp-related li+li{border-top:1px solid #e8eaed}
.cp-related a{display:flex;justify-content:space-between;gap:12px;padding:11px 0;line-height:1.4;font-size:.9rem;color:var(--cp-ink);text-decoration:none}
.cp-related a:hover{color:var(--cp-gold)}
.cp-related a span{color:var(--cp-gold)}
.cp-contact-card{background:#172b45;border-color:#172b45;color:#eef3f7}
.cp-contact-card h2{color:#fff;margin-top:10px}
.cp-contact-card p{font-size:.9rem;line-height:1.7;margin:0 0 14px}
.cp-contact-card>a{display:block;color:#fff;font-size:.92rem;line-height:1.6;text-underline-offset:3px;margin-top:7px;overflow-wrap:anywhere}
.cp-contact-card .cp-contact-card__more{margin-top:20px;color:#e3c491;text-decoration:none}
.cp-kicker{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:#a17a3d}
.cp-contact-card .cp-kicker{color:#d7bb8b}
.cp-article-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;border-top:1px solid var(--cp-line);padding:25px 2px;font-size:.87rem}
.cp-article-actions a,.cp-print{color:#476075;text-decoration:none}
.cp-print{background:none;border:0;font:inherit;text-decoration:underline;cursor:pointer}
.cp-discover{border-radius:18px;background:#f0ebdf;padding:26px 30px;margin:26px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}
.cp-discover h2{font-size:1.6rem;font-weight:400;font-family:Georgia,'Times New Roman',serif;margin:5px 0}
.cp-discover p{margin:0;font-size:.93rem;color:#5d5a51}
.cp-discover .button{flex:none}
.cp-service{background:#fff;border:1px solid var(--cp-line);border-radius:20px;padding:45px 30px;text-align:center;margin-bottom:25px}
.cp-service__symbol{width:64px;height:64px;background:#f3eedf;border:1px solid #e6dcc6;border-radius:50%;display:grid;place-items:center;font-size:2rem;color:#8a692f;margin:0 auto 18px}
.cp-service h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:1.8rem;line-height:1.4;margin:0 0 20px}
.cp-service p{max-width:480px;margin:20px auto;color:var(--cp-muted)}
.cp-service__photo{display:block;max-width:100%;width:440px;height:auto;border-radius:12px;margin:22px auto}
.content-page--gallery{display:block}
.cp-gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px;flex-wrap:wrap}
.cp-gallery-toolbar p{margin:0;font-size:.95rem;color:var(--cp-muted)}
.cp-gallery-filters{display:flex;gap:8px;flex-wrap:wrap}
.cp-gallery-filters[hidden]{display:none}
.cp-filter{border:1px solid #d8dee5;background:#fff;padding:10px 22px;border-radius:30px;color:#3b4a5f;font:inherit;font-size:.88rem;cursor:pointer}
.cp-filter.is-active{background:#172b45;color:#fff;border-color:#172b45}
.cp-filter:hover{border-color:#a37c3d}
.cp-sacred-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.cp-sacred-card{border:1px solid #e3e0d8;background:#fff;border-radius:18px;overflow:hidden;margin:0;transition:transform .18s,box-shadow .18s}
.cp-sacred-card:hover{transform:translateY(-4px);box-shadow:0 14px 26px #172b4518}
.cp-sacred-card[hidden]{display:none}
.cp-sacred-card a{display:block;text-decoration:none;color:var(--cp-ink);height:100%;cursor:zoom-in}
.cp-sacred-card__image{height:280px;display:flex;justify-content:center;align-items:center;background:radial-gradient(ellipse at 50% 35%,#fff,#efede6);padding:25px}
.cp-sacred-card img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 10px 9px #2c241b20)}
.cp-sacred-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 20px;font-family:Georgia,'Times New Roman',serif;font-size:1.04rem;line-height:1.45}
.cp-zoom-symbol{color:var(--cp-gold);font-family:Arial,sans-serif}
.cp-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cp-directory-card{padding:26px;border:1px solid #dce2e8;border-radius:14px;background:#fff;text-decoration:none;color:#172b45}
.cp-directory-card>span{font-size:.72rem;color:#957039;text-transform:uppercase;letter-spacing:.1em}
.cp-directory-card h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:1.45rem;margin:10px 0}
.cp-directory-card p{font-size:.88rem;line-height:1.65;color:#53677a}
.cp-directory-card b{color:#957039}
.cp-lightbox{width:min(1100px,96vw);max-width:96vw;height:94vh;max-height:94vh;padding:0;border:1px solid #536070;border-radius:14px;background:#132239;color:#fff;overflow:hidden}
.cp-lightbox::backdrop{background:#08111dde;backdrop-filter:blur(4px)}
.cp-lightbox[open]{display:flex;flex-direction:column}
.cp-lightbox__bar,.cp-lightbox__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;flex:none;background:#0f1b2c;font-size:.9rem}
.cp-lightbox__bar>span{font-family:Georgia,'Times New Roman',serif;font-size:1.1rem}
.cp-lightbox button{color:#fff;border:1px solid #6d7a8e;border-radius:7px;padding:9px 13px;background:transparent;font:inherit;cursor:pointer}
.cp-lightbox button:hover{background:#35465e}
.cp-lightbox button:focus-visible,.cp-lightbox a:focus-visible{outline:3px solid #d8bb83;outline-offset:3px}
.cp-lightbox button:disabled{opacity:.35;cursor:default}
.cp-lightbox__bar button span{margin-left:12px;font-size:1.2rem}
.cp-lightbox>img{display:block;flex:1;min-height:0;max-height:calc(94vh - 132px);width:100%;object-fit:contain;background:radial-gradient(ellipse,#faf9f4,#e2e2dc);padding:20px}
.cp-lightbox__footer a{color:#e7d3ad;text-underline-offset:3px}
.cp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.content-page{grid-template-columns:minmax(0,1fr) 240px;gap:24px}.cp-sidebar-card{padding:20px}.cp-portrait{padding:24px 18px}.cp-portrait img{height:260px}.cp-sacred-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cp-discover{align-items:flex-start;flex-direction:column}.cp-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.content-page{display:flex;flex-direction:column;gap:28px;padding-top:28px;padding-bottom:40px}.cp-article{width:100%;font-size:.96rem;line-height:1.78}.cp-sidebar{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cp-sidebar .cp-toc{display:none}.cp-mobile-toc{display:block;margin-bottom:20px}.cp-sidebar .cp-contact-card{align-self:start}.cp-portrait img{height:230px}.cp-sidebar-card{padding:19px}.cp-block{padding:23px 21px;border-radius:14px;margin-bottom:18px}.cp-block--media{padding:18px}.cp-block .cp-image-link img{max-height:520px}.cp-block h2{font-size:1.32rem}.cp-block .cp-hours{font-size:.74rem}.cp-block .cp-hours :where(th,td){padding:12px 8px}.cp-contact-links{grid-template-columns:1fr}.cp-contact-links>a{padding:16px}.cp-block .cp-lead{font-size:1.2rem}.cp-article-actions{font-size:.82rem;gap:12px}.content-page--gallery{display:block}.cp-sacred-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cp-sacred-card__image{height:240px;padding:20px}.cp-sacred-card figcaption{font-size:.95rem;padding:14px}.cp-lightbox__bar,.cp-lightbox__footer{padding:12px;gap:9px;font-size:.76rem}.cp-lightbox__bar>span{font-size:.9rem}.cp-lightbox__footer{flex-wrap:wrap}.cp-lightbox__footer a{order:4;width:100%;text-align:center}.cp-lightbox>img{max-height:calc(94vh - 165px);padding:10px}.cp-directory{display:grid;grid-template-columns:1fr}}
@media(max-width:420px){.cp-sidebar{grid-template-columns:1fr}.cp-portrait{max-width:270px;width:100%;margin:auto}.cp-sacred-card__image{height:195px;padding:14px}.cp-sacred-card figcaption{padding:12px;font-size:.88rem}.cp-filter{padding:9px 16px}.cp-gallery-toolbar{gap:15px}.cp-article-actions{flex-direction:column;align-items:flex-start}.cp-block{padding:22px 17px}}
@media(prefers-reduced-motion:reduce){.cp-sacred-card{transition:none}.cp-sacred-card:hover{transform:none}}
@media print{.site-header,.organ-ribbon,.cp-sidebar,.cp-article-actions,.cp-lightbox,.legacy-footer,.cp-gallery-toolbar,.cp-discover{display:none!important}.content-page{display:block!important;padding:0!important;max-width:none!important}.cp-block{border:0;box-shadow:none;padding:0;margin-bottom:20px;overflow:visible}.cp-block a{color:#000}.cp-block img{max-height:450px}.cp-sacred-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cp-sacred-card{break-inside:avoid}.page-hero{padding:20px 0!important;color:#000!important;background:#fff!important}.page-hero *{color:#000!important}}
