/* Loaded exclusively by ?saints_header=icons on the Local Saints page. */
.saints-icon-hero {
 position: relative;
 isolation: isolate;
 overflow: hidden;
 color: #f5f1e7;
 background: #0b2b3f;
}
.saints-icon-hero::before {
 content: "";
 position: absolute;
 inset: 0;
 z-index: -1;
 pointer-events: none;
 background: var(--impc-asset-4f4a25aec0f5, url("../images/metropolis-mosaic-emblem-v2.webp")) 40% 50% / cover no-repeat;
 opacity: .16;
 -webkit-mask-image: linear-gradient(90deg, #000, transparent 52%);
 mask-image: linear-gradient(90deg, #000, transparent 52%);
}
.saints-icon-hero__art {
 position: absolute;
 inset-block: 0;
 right: max(0px, calc((100vw - 1560px) / 2));
 width: min(76vw, 1120px);
 z-index: -1;
 overflow: hidden;
 pointer-events: none;
 -webkit-mask-image: linear-gradient(90deg, transparent, #000 14%, #000 93%, transparent);
 mask-image: linear-gradient(90deg, transparent, #000 14%, #000 93%, transparent);
}
.saints-icon-hero__art img {
 display: block;
 position: absolute;
 top: -12px;
 left: 0;
 width: 100%;
 height: auto;
 max-width: none;
 filter: saturate(.68) brightness(.88);
}
.saints-icon-hero__art::after {
 content: "";
 position: absolute;
 inset: 0;
 background: linear-gradient(180deg, rgba(11,43,63,.65), transparent 23%, rgba(11,43,63,.05) 58%, rgba(11,43,63,.7) 86%, #0b2b3f);
}
.saints-icon-hero__inner {
 position: relative;
 display: flex;
 align-items: center;
 height: 520px;
 padding-block: 2rem;
}
.saints-icon-hero__copy { width: 325px; max-width: 32%; }
.saints-icon-hero .eyebrow { color: #d9bd83; margin: 0 0 .65rem; font-size: .62rem; letter-spacing: .1em; }
.saints-icon-hero h1 {
 margin: 0;
 font-family: Palatino, "Palatino Linotype", "Book Antiqua", Georgia, serif;
 font-size: clamp(2.7rem, 3.8vw, 3.8rem);
 font-weight: 400;
 letter-spacing: -.045em;
 line-height: 1.13;
 color: #f8f4e8;
 text-shadow: 0 3px 18px #051c3055;
}
.saints-icon-hero__place { color: #d8c69e; font: 1rem/1.55 Georgia,serif; margin: .7rem 0 0; }
.saints-icon-hero .ornament { margin: 1.1rem 0; }
.saints-icon-hero__lead { margin: 0; max-width: 285px; color: #d3dde0; font: .96rem/1.75 Georgia,serif; }
.saints-icon-hero__links { margin-top: 1.25rem; max-width: 295px; }
.saints-icon-hero__links a { display: flex; justify-content: space-between; align-items: center; gap: .8rem; padding: .65rem 0; border-top: 1px solid #d8c69a44; color: #e7dec9; font: .77rem/1.5 Georgia,serif; text-decoration: none; }
.saints-icon-hero__links a:last-child { border-bottom: 1px solid #d8c69a44; }
.saints-icon-hero__links b { font: 1rem/1 Arial,sans-serif; color: #d9bd83; }
.saints-icon-hero__links a:hover { color: #fff; }
@media (min-width: 821px) and (max-width: 1100px) {
 .saints-icon-hero__art { right: 0; width: 69%; }
 .saints-icon-hero__art img { top: 22px; }
 .saints-icon-hero__copy { max-width: 31%; }
 .saints-icon-hero h1 { font-size: 2.6rem; }
 .saints-icon-hero__lead { font-size: .88rem; }
 .saints-icon-hero__links a { font-size: .72rem; }
}
@media (max-width: 820px) {
 .saints-icon-hero { display: flex; flex-direction: column; height: auto; }
 .saints-icon-hero__inner { height: auto; padding-block: 2rem 0; order: 0; }
 .saints-icon-hero__copy { max-width: 100%; width: 100%; }
 .saints-icon-hero h1 { font-size: 2.55rem; line-height: 1.12; }
 .saints-icon-hero__place { font-size: .9rem; margin-top: .5rem; }
 .saints-icon-hero .ornament { margin-block: .8rem; }
 .saints-icon-hero__lead { max-width: 30rem; font-size: .89rem; }
 .saints-icon-hero__links { display: flex; flex-wrap: wrap; column-gap: 1.3rem; margin-top: .8rem; max-width: 100%; }
 .saints-icon-hero__links a, .saints-icon-hero__links a:last-child { border-bottom: 0; font-size: .71rem; }
 .saints-icon-hero__art { position: relative; width: 100%; height: clamp(290px, 64vw, 450px); right: auto; order: 1; margin-top: .3rem; -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); }
 .saints-icon-hero__art img { top: 0; }
 .saints-icon-hero__art::after { background: linear-gradient(180deg, #0b2b3f, transparent 18%, transparent 68%, #0b2b3f); }
}
@media (prefers-reduced-motion: reduce) { .saints-icon-hero * { scroll-behavior: auto; } }
