/* Red and antique gold: original imagery frames the library, not the prayer sheet. */
.hero{background:linear-gradient(110deg,var(--brand-deep),var(--brand) 72%,#892d3b)}
.hero a:focus-visible{outline-color:#f6dba3}
.site-header{border-top:3px solid var(--gold)}
.page-heading h1 em{color:var(--brand)}
.library-tabs a{font-size:.875rem;background:#fff;transition:background .2s,border-color .2s}
.library-tabs a:hover{border-color:var(--gold-dark);background:var(--tint)}
.library-tabs a.active:hover{background:var(--brand-deep);color:#fff}
.library-group{margin-top:3.25rem}
.library-group>h2{border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1.5rem}
.library-list{gap:24px;align-items:stretch;margin-bottom:28px}
.image-card{padding:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:0;transition:border-color .2s,box-shadow .2s}
.image-card:hover{border-color:#b88b45;box-shadow:0 8px 24px #57233110;background:#fff}
.card-media{display:block;position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#f2e7d4;flex-shrink:0}
.card-media img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .4s ease}
.media-marian img,.media-christmas-nativity img,.media-subject-high img{object-position:50% 15%}
.media-subject-top img{object-position:50% 0%}
.media-subject-upper img{object-position:50% 35%}
.media-subject-low img{object-position:50% 70%}
.media-subject-bottom img{object-position:50% 100%}
.intention-number{color:#806b49}
[contenteditable][data-placeholder]:empty:before{color:#786551}
.image-card:hover .card-media img{transform:scale(1.025)}
.card-body{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:24px;position:relative;border-top:2px solid var(--gold)}
.image-card h3{font:400 1.5rem/1.28 var(--serif);letter-spacing:-.025em;margin:0 0 .75rem;color:var(--brand-deep);overflow-wrap:anywhere}
.image-card p{font-size:.9375rem;line-height:1.7;color:var(--muted);margin:0 0 1.25rem;padding:0}
.image-card .text-link{font-size:.875rem;color:var(--brand);margin-top:auto;white-space:normal}
.image-card .eyebrow{font-size:.75rem;font-weight:600;color:var(--gold-dark);margin-bottom:.8rem}
.occasion-grid{gap:24px}
.occasion-card .card-body{padding-right:54px}
.occasion-card .card-body p{font-size:.9375rem;margin-bottom:0}
.occasion-card .card-arrow{right:22px;top:26px;color:var(--gold-dark)}
.related-grid{gap:16px;align-items:stretch}
.related-grid>a.image-link{padding:12px 16px 12px 12px;display:grid;grid-template-columns:104px minmax(0,1fr) 16px;gap:16px;border-color:var(--line);background:#fff;overflow:hidden;min-height:112px;font:400 1.1875rem/1.4 var(--serif);transition:border-color .2s,box-shadow .2s}
.related-grid>a.image-link:hover{border-color:#b88b45;box-shadow:0 5px 18px #5723310c}
.image-link .card-media{height:auto;min-height:0;aspect-ratio:3/2;align-self:center;border-radius:6px}
.related-title{min-width:0;overflow-wrap:anywhere;padding:4px 0}
.image-link>.icon{width:16px;height:16px;color:var(--gold-dark)}
@media(max-width:1100px){.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.occasion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-body{padding:20px}.occasion-card .card-body{padding:20px 44px 22px}.occasion-card .card-arrow{right:16px;top:23px}}
@media(max-width:700px){.occasion-grid,.library-list,.related-grid{grid-template-columns:1fr;gap:20px}.card-media{aspect-ratio:1.9}.card-body{padding:23px}.image-card h3{font-size:1.5rem}.image-card p{font-size:.9375rem}.occasion-card .card-body{padding:23px 50px 24px}.occasion-card .card-arrow{right:20px;top:26px}.related-grid>a.image-link{grid-template-columns:88px minmax(0,1fr) 16px;gap:14px;min-height:98px;font-size:1.1875rem}.image-link .card-media{min-height:0;aspect-ratio:3/2}.library-tabs{gap:8px;margin-bottom:28px}.library-tabs a{padding:9px 13px}.library-group{margin-top:2.5rem}}
@media(max-width:700px){.library-tabs{flex-wrap:nowrap;overflow-x:auto;padding:4px 3px 14px;scrollbar-width:thin;scrollbar-color:#bea477 #f6eddf}.library-tabs>a{flex:0 0 auto;white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.image-card,.card-media img,.image-link{transition:none!important}.image-card:hover .card-media img{transform:none}}
@media print{.card-media{display:none!important}.image-card{box-shadow:none}.hero{background:none}}
