.saints-footer{box-sizing:border-box;background:#1E5F78;color:#F5F5F0;padding:48px clamp(24px,7vw,112px);margin-top:0;display:block;width:100%}.saints-footer *{box-sizing:border-box}.saints-footer-top{display:flex;justify-content:space-between;gap:24px;align-items:center}.saints-footer .saints-footer-brand{font:32px 'EB Garamond',Georgia,serif;letter-spacing:4px;color:inherit;text-decoration:none}.saints-footer p{color:inherit;font:14px/1.7 Lato,Arial,sans-serif;margin:0}.saints-footer nav{display:flex;flex-wrap:wrap;gap:8px 24px;margin:24px 0;position:static;background:none;padding:0;border:0;width:auto}.saints-footer nav a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:none;font:14px/1.5 Lato,Arial,sans-serif}.saints-footer .saints-copyright{border-top:1px solid #ffffff40;padding-top:20px;font-size:12px}.trust-page{max-width:800px;padding:48px 24px 72px;margin:auto}.trust-page h1{font-size:clamp(46px,8vw,70px);margin:24px 0 40px}.trust-page h2{font-size:30px;margin:32px 0 16px}.trust-page p{font-size:16px;line-height:1.8;margin:16px 0}.trust-page a{text-decoration:underline}.review-note{border:1px solid #B8912F;padding:12px;color:#23282B}
@media(max-width:800px){.saints-footer-top{display:block}.saints-footer-top p{margin-top:12px}}
.skip-link{position:fixed;top:8px;left:8px;z-index:1000;padding:12px 20px;background:#F5F5F0;color:#23282B!important;transform:translateY(-180%);font:16px Lato,sans-serif}.skip-link:focus{transform:none}.js .reveal:not(img){opacity:1!important;transform:none!important;transition:none!important}.hero-content{animation:none!important}img.reveal{transition-duration:300ms!important}.rhythm p,.rhythm small,.rhythm .section-label,.rhythm .timeline article>span{color:#F5F5F0!important}.prayer-controls #candle-status{color:#667078;background:#F5F5F0;padding:12px;line-height:1.6}.trap,[hidden]{display:none!important}.calendar-kicker{color:#1E5F78;font-size:18px;margin-bottom:14px}
@media(max-width:800px){body{font-size:16px}body p,body input,body textarea,body select,body li{font-size:16px!important}body a,body button,body summary{min-height:44px;box-sizing:border-box}body a{display:inline-flex;align-items:center}body a.wordmark,body a.saints-wordmark{display:block}body :is(small,.eyebrow,.section-label,.hero-bottom,.stage-bottom,.announcement,.fine,.meta,.pending,.day-names,.day small,.weekdays,.calendar-key,.subnav,.launch-dates span,.product-arrows>span){font-size:12px!important}.hero-bottom{gap:12px;letter-spacing:0!important}.hero-bottom>span{flex:1}.hero-bottom>a{display:none}.hero-content p{font-size:16px!important}.hero-content{top:18%!important}.hero{max-height:none}.saints-footer nav{gap:4px 20px}}

@media(max-width:800px){
.notice{font-size:12px!important}
.eyebrow{font-size:12px!important}
.tag{font-size:12px!important}
.dates span{font-size:12px!important}
.stat{font-size:12px!important}
.dates strong{font-size:12px!important}
.eyebrow{font-size:12px!important}
.section h3{font-size:12px!important}
.brand a:last-child{font-size:12px!important}
.section-label{font-size:12px!important}
.nav-cta{font-size:12px!important}
.announcement{font-size:12px!important}
.hero-bottom{font-size:12px!important}
.stage-bottom{font-size:12px!important}
.product-arrows>span{font-size:12px!important}
.timeline small{font-size:12px!important}
.pricing>small{font-size:12px!important}
.footer-bottom{font-size:12px!important}
.prayer-intro .eyebrow{font-size:12px!important}
.prayer-controls small{font-size:12px!important}
.navigation nav{font-size:12px!important}
.product-tabs button{font-size:12px!important}
.hero-bottom{font-size:12px!important}
.announcement{font-size:12px!important}
.hero-bottom{font-size:12px!important}
.section-label{font-size:12px!important}
.details-gallery span{font-size:12px!important}
.stage-bottom{font-size:12px!important}
.preview-note{font-size:12px!important}
.footer-bottom{font-size:12px!important}
.eyebrow,.section-label{font-size:12px!important}
.wordmark span{font-size:12px!important}
.navigation nav{font-size:12px!important}
.nav-cta{font-size:12px!important}
.hero-bottom{font-size:12px!important}
.section-label{font-size:12px!important}
.stage-bottom{font-size:12px!important}
.product-tabs button{font-size:12px!important}
.product-arrows>span{font-size:12px!important}
.preview-note{font-size:12px!important}
.timeline small{font-size:12px!important}
.text-button{font-size:12px!important}
.quiz-link span{font-size:12px!important}
.prayer-content p{font-size:12px!important}
.launch-dates span{font-size:12px!important}
.launch-dates small{font-size:12px!important}
.pricing>small{font-size:12px!important}
.footer-top>a:last-child{font-size:12px!important}
.footer-bottom{font-size:12px!important}
.image-dialog p{font-size:12px!important}
.menu{font-size:12px!important}
.hero .eyebrow{font-size:12px!important}
.hero-bottom{font-size:12px!important}
.section-label{font-size:12px!important}
.stage-bottom{font-size:12px!important}
.preview-note{font-size:12px!important}
.questions .eyebrow{font-size:12px!important}
.footer-bottom{font-size:12px!important}
/* Shared editorial grid and centered storefront navigation. */
.announcement{font-size:12px!important}
.wordmark span{font-size:12px!important}
.navigation nav{font-size:12px!important}
.navigation nav{font-size:12px!important}
.nav-cta{font-size:12px!important}
.menu{font-size:12px!important}
.nav-cta{font-size:12px!important}
.details-gallery span{font-size:12px!important}
.announcement{font-size:12px!important}
.wordmark span{font-size:12px!important}
.hero-bottom{font-size:12px!important}
.details-gallery span{font-size:12px!important}
.brand small{font-size:12px!important}
.eyebrow{font-size:12px!important}
.subnav{font-size:12px!important}
.search{font-size:12px!important}
.months button{font-size:12px!important}
.pending{font-size:12px!important}
.subnav{font-size:12px!important}
#saved-count{font-size:12px!important}
.weekdays{font-size:12px!important}
.day-number i{font-size:12px!important}
.day-names{font-size:12px!important}
.day small{font-size:12px!important}
.calendar-key{font-size:12px!important}
.movable{font-size:12px!important}
.source-note{font-size:12px!important}
.day-names{font-size:12px!important}
.calendar-key{font-size:12px!important}
.hero-facts{font-size:12px!important}
.hero-photo figcaption span{font-size:12px!important}
.card-date time>span{font-size:12px!important}
.card-weekday{font-size:12px!important}
.card-bottom>span{font-size:12px!important}
.card-bottom .text-button{font-size:12px!important}
.calendar-topline{font-size:12px!important}
.day-names{font-size:12px!important}
.day-summary{font-size:12px!important}
.aliases span{font-size:12px!important}
.planning-detail>span{font-size:12px!important}
.planning-detail p{font-size:12px!important}
.planning-detail small{font-size:12px!important}
.date-rule summary{font-size:12px!important}
.date-rule p{font-size:12px!important}
.calendar-guide p{font-size:12px!important}
.calendar-topline{font-size:12px!important}
.hero-photo figcaption span{font-size:12px!important}
}
.saints-header .wordmark span{font-family:Lato,Arial,sans-serif;letter-spacing:.5px;font-size:12px;line-height:1.4}.saints-header #saved-count[hidden]{display:none!important}.inner-header{box-sizing:border-box;position:relative;top:auto;left:auto;width:94%;margin:22px auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 27px;background:#f5f5f0ed;border:1px solid #23282b24;border-radius:5px;color:#1E5F78;z-index:20;max-width:none}.inner-header a{color:inherit;text-decoration:none}.inner-header .wordmark{font-family:'EB Garamond',Georgia,serif;font-size:26px;letter-spacing:4px;line-height:1;flex-shrink:0}.inner-header .wordmark span{display:block;margin-top:8px}.inner-header nav{display:flex;gap:22px;align-items:center;font:12px Lato,Arial,sans-serif;position:static;background:none;padding:0;margin:0;border:0;width:auto}.inner-header .nav-cta{display:flex;align-items:center;gap:25px;padding:13px 16px;border:1px solid currentColor;font:11px Lato,Arial,sans-serif}.inner-header .menu{display:none;background:transparent;color:inherit;border:1px solid currentColor;font:14px Lato,sans-serif;padding:10px 14px}.calendar-account{text-align:right;margin-bottom:16px}.calendar-account .account{display:inline-flex;align-items:center;min-height:44px}.result-links{display:grid;gap:10px;margin:16px 0}.result-links>a:last-child{justify-self:start;text-decoration:underline}.inner-header~.wrap{margin:32px auto 60px}body:has(.inner-header){padding:0}.inner-header~.wrap{width:calc(100% - 32px)}
@media(max-width:1100px){.inner-header{gap:16px;padding:16px}.inner-header nav{gap:14px}.inner-header .nav-cta{gap:12px}}
@media(max-width:800px){.inner-header{width:calc(100% - 32px);margin:16px;justify-content:space-between;flex-wrap:nowrap}.inner-header .menu{display:block;min-height:44px}.inner-header .nav-cta{display:none}.inner-header nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;background:#F5F5F0;color:#1E5F78;padding:20px;border:1px solid #23282b24;flex-direction:column;align-items:stretch;gap:4px}.inner-header nav.open{display:flex}.inner-header nav a{font-size:14px;min-height:44px}.inner-header .wordmark span{font-size:12px!important}.inner-header~.wrap{margin:24px auto 40px}.saints-header .wordmark{letter-spacing:2px}}
@media(max-width:800px){body a,body button,body summary{min-height:44px!important}}
/* Compact reservation navigation label. */
@media(max-width:767px){.saints-header .nav-cta{white-space:nowrap}.inner-header .nav-cta{display:flex;font-size:12px;padding:8px 10px;gap:0}.inner-header .nav-cta span{display:none}.inner-header{gap:10px}.inner-header .wordmark{font-size:22px;letter-spacing:2px}.inner-header .menu{padding:8px;font-size:12px}}
.mobile-reserve-bar{display:none}
@media(max-width:767px){body.has-reserve-bar{padding-bottom:var(--reserve-bar-height,76px)!important}.mobile-reserve-bar{position:fixed;z-index:40;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#F5F5F0;border-top:1px solid #23282b24;color:#23282B;font:12px/1.4 Lato,Arial,sans-serif;min-height:64px}.mobile-reserve-bar>span{max-width:100px}.mobile-reserve-bar>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;background:#1E5F78;color:#F5F5F0;text-decoration:none;font:12px/1.4 Lato,Arial,sans-serif;text-align:center;gap:8px}.mobile-reserve-bar>a>span{font-size:16px}}

@media(max-width:767px){.mobile-reserve-bar[hidden]{display:flex!important;visibility:hidden;pointer-events:none}}

/* Fixed line artwork keeps decorative arrows identical across device fonts. */
.saints-arrow{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;vertical-align:middle;line-height:1}.saints-arrow svg{display:block;width:1em;height:1em;min-width:1em;overflow:visible}

/* Requested type hierarchy, shared across public pages. */
body{--body-size:17px;font-size:var(--body-size)!important}
body p,body li,body input,body textarea,body select{font-size:var(--body-size)!important}
body :is(.eyebrow,.section-label,.section-label span,.timeline article>span,.prayer-intro .eyebrow,.subnav,.search>span,.planning-detail>span,.aliases>span,.calendar-topline,.weekdays){font-size:12px!important;letter-spacing:1.5px}
body :is(small,.fine,.meta,.pending,.preview-note,.source-note,.day-summary,.deadline,.calendar-key,.card-weekday,.card-bottom>span,.date-rule p,.date-rule summary,.hero-facts,.prayer-controls small,.saints-copyright,.quiz-link span){font-size:14px!important}
body .saints-header nav a,body .saints-header .nav-cta{font-size:14px!important}
body .keepsake-tile h3{font-size:26px!important}
body .timeline h3{font-size:28px!important}
body .prayer-intro h3{font-size:36px!important}
body .collection-intro small{font-size:20px!important}
body .launch-dates :is(span,small){font-size:14px!important}
body .saints-footer :is(p,a){font-size:14px!important}
body .saints-footer .saints-footer-brand{font-size:32px!important}
body .hero-facts-strip h3{font-size:24px!important}
@media(max-width:767px){body{--body-size:16px}body .keepsake-tile h3{font-size:22px!important}body .timeline h3{font-size:24px!important}body .prayer-intro h3{font-size:30px!important}}

/* One full-width public header and one navigation breakpoint. */
body .saints-header{position:relative;inset:auto;width:100%;max-width:none;margin:0;border:0;border-bottom:1px solid #23282b24;border-radius:0;padding:18px clamp(16px,4vw,64px);display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:24px;background:#f5f5f0ed;color:#1E5F78;box-sizing:border-box;z-index:30}
body:has(#home) .saints-header{position:absolute;top:0;left:0;background:#142a2a28;color:#F5F5F0;border-bottom-color:#ffffff44}
body .saints-header .wordmark{font:26px/1 'EB Garamond',Georgia,serif;letter-spacing:4px;white-space:nowrap;text-decoration:none;flex-shrink:0;color:inherit}
body .saints-header .wordmark span{display:block;font:12px/1.4 Lato,Arial,sans-serif;letter-spacing:.5px;margin-top:8px}
body .saints-header nav{display:flex;position:static;flex-wrap:nowrap;align-items:center;gap:28px;width:auto;padding:0;margin:0;border:0;order:0;background:none}
body .saints-header nav a{white-space:nowrap;color:inherit;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
body .saints-header .nav-cta{display:inline-flex;align-items:center;justify-content:center;gap:16px;white-space:nowrap;border:1px solid currentColor;padding:12px 16px;min-height:44px;color:inherit;text-decoration:none}
body .saints-header .nav-cta span{display:inline-flex;font-size:18px}
body .saints-header .menu{display:none}
@media(max-width:1024px){body .saints-header{gap:12px;padding:16px}body .saints-header .wordmark{font-size:22px;letter-spacing:2px}body .saints-header .nav-cta{margin-left:auto;padding:10px;gap:8px}body .saints-header .nav-cta span{display:none}body .saints-header .menu{display:block;border:1px solid currentColor;background:none;color:inherit;font:14px Lato,Arial,sans-serif;padding:10px;min-height:44px;white-space:nowrap}body .saints-header nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;padding:20px;background:#F5F5F0;color:#1E5F78;flex-direction:column;align-items:stretch;gap:4px;border-bottom:1px solid #23282b24}body .saints-header nav.open{display:flex}}
.saved-days-page{max-width:1200px;margin:auto;padding:48px 24px 64px}.saved-days-intro h1{font-size:clamp(48px,6vw,80px);margin-bottom:24px}.saved-days-intro p{margin:20px 0}.saved-days-page .row h2{font-size:28px}.saved-days-page .date{font-size:14px}.saved-days-page .row{grid-template-columns:150px minmax(0,1fr) 240px}
@media(max-width:767px){.saved-days-page .row{grid-template-columns:1fr}.saved-days-page .row .actions{grid-column:1}}
