/* Be with Him: presentation only. Stable app IDs and feature behavior are retained. */
:root{--ink:#35483b;--muted:#60695d;--paper:#f6f2e8;--card:#fffcf5;--deep:#435b48;--violet:#576b51;--gold:#ad8c4c;--gold-soft:#e9d9b3;--rose:#876954;--line:#dedfcf;--sage:#e5eadd;--shadow:0 14px 36px rgba(67,91,72,.08)}
/* A small seasonal invitation, with the three-day introduction kept free. */
body{background:var(--paper);color:var(--ink)}
.topbar{background:var(--paper);border-bottom-color:var(--line)}
.brand-name{color:var(--deep);font-size:32px;letter-spacing:-.035em;font-weight:400}
.topbar-identity img{width:52px;height:52px;border-radius:15px}
.topbar .eyebrow{color:var(--muted)}
.brand-welcome{max-width:1180px;width:100%;margin:0 auto;padding:8px 0 3px;text-align:center}
.brand-tagline{margin:0;color:var(--deep);font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:clamp(19px,2.2vw,25px);line-height:1.5;font-weight:400}
.brand-welcome::after{content:"";display:block;width:48px;height:2px;margin:14px auto 1px;background:var(--gold-soft);border-radius:2px}
.section-rail .daily-feature-tabs .top-tab{background:var(--sage);border-color:#c4d0bb;box-shadow:none;color:var(--deep)}
.feature-icon{color:var(--deep)}
.section-rail .daily-feature-tabs .top-tab:hover{background:#d8e3cf;border-color:#8ca282}
.section-rail .top-tabs .top-tab{background:var(--card);border-color:var(--line);box-shadow:none;color:var(--deep)}
.section-rail .top-tabs .top-tab:hover{background:#edf1e5;border-color:#a6b39a}
.section-rail .top-tab.active,.section-rail .daily-feature-tabs .top-tab.active{background:var(--deep);border-color:var(--deep);color:#fffcf5}
.section-rail .top-tab.active .feature-icon{color:var(--gold-soft)}
.topbar .reminder-top-btn{background:var(--gold-soft);border-color:#d1bd90;color:var(--deep)}
.hero{background:linear-gradient(125deg,#435b48 0%,#586f55 65%,#778268 100%)}
.still-card.feature{background:linear-gradient(145deg,#435b48,#788368)}
.pray-btn{background:var(--gold-soft);color:var(--deep)}
.quick-intention-form{background:var(--card);border-color:var(--line);box-shadow:0 4px 18px rgba(67,91,72,.035)}
.quick-intention-form textarea{background:#fffef9;border-color:#c7d0bf;color:var(--ink)}
.gold-card{background:#eee2c7;border-color:#dac8a3}
.rose-card{background:#e9ecdf;border-color:#ccd5bf}
.ticker-label,.section-rail .ticker-label{background:var(--gold-soft);color:var(--deep)}
.reconciliation-callout{background:linear-gradient(125deg,#eee5cd,#faf7ed);border-color:#d8c79d}
.primary,.ascension-link{background:var(--deep)}
.login-card,.modal,.account-modal{color:var(--ink)}
.site-footer{color:var(--muted)}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:560px){
 .brand-name{font-size:24px}.topbar-identity img{width:46px;height:46px;flex-basis:46px}
 .brand-welcome{padding:3px 8px 0}.brand-tagline{font-size:20px;max-width:320px;margin:0 auto;line-height:1.45}
 .brand-welcome::after{margin-top:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.view.active{animation:none}}

/* Keep scrolling intentions inside the space between the fixed label and control. */
.section-rail .ticker-wrap{display:grid;grid-template-columns:auto minmax(0,1fr) 44px;align-items:stretch;isolation:isolate}
.section-rail .ticker-label{grid-column:1;grid-row:1;position:relative;z-index:1;min-width:0}
.section-rail .ticker-window{grid-column:2;grid-row:1;display:block;position:relative;min-width:0;width:100%;max-width:100%;overflow:hidden;contain:paint}
.section-rail .ticker{width:max-content;max-width:none;flex:none}
.section-rail .pause{grid-column:3;grid-row:1;width:44px;min-width:44px;position:relative;z-index:1;background:var(--deep);color:var(--card)}
/* Show the complete symbol without cropping its arch or olive leaves. */
.header-mark{position:relative;display:block;overflow:hidden;width:52px;height:52px;flex:0 0 52px;border-radius:15px}
.topbar-identity .header-mark img{position:static;display:block;width:100%;height:100%;max-width:100%;border-radius:0;object-fit:contain}
/* A validated member session also has a visible sign-out action. */
#logoutBtn[hidden]{display:none!important}
body.signed-in #logoutBtn{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:560px){
 .header-mark{width:46px;height:46px;flex-basis:46px;border-radius:12px}
 .mobile-actions{bottom:calc(10px + env(safe-area-inset-bottom,0px) + var(--mobile-keyboard-inset,0px))}
 .mobile-actions>.top-actions{min-width:0}
 .container{padding-bottom:max(116px,calc(var(--mobile-dock-height,54px) + 26px + env(safe-area-inset-bottom,0px)))}
 .site-footer{padding-bottom:calc(var(--mobile-dock-height,54px) + 26px + env(safe-area-inset-bottom,0px))}
 html{scroll-padding-bottom:calc(var(--mobile-dock-height,54px) + 26px + env(safe-area-inset-bottom,0px))}
 .toast{left:14px;right:14px;bottom:calc(var(--mobile-dock-height,54px) + 26px + env(safe-area-inset-bottom,0px) + var(--mobile-keyboard-inset,0px));z-index:26;overflow-wrap:anywhere;max-height:40dvh;overflow-y:auto;visibility:hidden}
 .toast.show{visibility:visible}
}
@media(prefers-reduced-motion:reduce){
 .section-rail .ticker{width:auto;max-width:100%;white-space:normal;overflow-wrap:anywhere;animation:none;padding:12px}
 .section-rail .ticker-window{overflow:auto;max-height:92px}
}

/* Launch flow: prayer first, with a compact menu and quiet secondary choices. */
.section-rail{max-width:1260px;width:100%;margin:0 auto;padding-top:12px;gap:10px;box-sizing:border-box}
.compact-navigation{display:flex;gap:8px;align-items:center}
.section-rail .compact-navigation .top-tab{width:auto;flex:0 1 auto!important;min-height:44px;min-width:78px;padding:10px 18px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--deep);box-shadow:none;font-size:14px;font-weight:650}
.section-rail .compact-navigation #resourceMenuButton{margin-left:auto;min-width:92px}
.section-rail .top-tabs[hidden]{display:none!important}
.section-rail .top-tabs .top-tab.active,.section-rail .compact-navigation .top-tab.active,.section-rail .compact-navigation [aria-expanded=true]{background:var(--deep);color:#fffcf5;border-color:var(--deep)}
.section-rail .compact-navigation .top-tab:hover:not(.active):not([aria-expanded=true]){background:#e5eadd;color:var(--deep)}
#resourceMenu{padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--card)}
#landing{max-width:920px;margin:0 auto}
.today-welcome{margin:0 0 18px;color:var(--muted);font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:20px;line-height:1.45}
.today-prayer-card{padding:32px 36px;border-radius:24px;background:linear-gradient(125deg,#435b48,#586f55 70%,#778268);color:#fffcf5;box-shadow:var(--shadow)}
.today-prayer-card .day-pill{margin:0;color:#fffcf5;line-height:1.5;max-width:100%;box-sizing:border-box}
.today-prayer-card h1{font-size:clamp(32px,5vw,48px);line-height:1.12;margin:20px 0 12px;max-width:730px;font-weight:400;letter-spacing:-.025em;overflow-wrap:anywhere}
.today-prayer-invitation{margin:0 0 22px;line-height:1.5;color:#f1f1e6}
.today-prayer-card .today-pray-button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:50px;padding:13px 27px;background:var(--gold-soft);color:#35483b;border:1px solid var(--gold-soft);border-radius:999px;font:inherit;font-weight:800;cursor:pointer}
.today-prayer-card .today-pray-button:hover{background:#f3e6c6}
.today-prayer-card .today-pray-button:disabled{opacity:.65;cursor:wait}
.today-prayer-note{font-size:13px;margin:12px 0 0;color:#f1f1e6}
.today-prayer-card .text-button{color:#fffcf5;text-decoration:underline;margin-top:8px}
.home-daily-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 24px}
.home-daily-links .top-tab{display:flex;align-items:center;justify-content:center;gap:10px;min-height:62px;padding:14px;background:var(--sage);color:var(--deep);border:1px solid #c4d0bb;border-radius:15px;font:inherit;font-weight:650;box-shadow:none;cursor:pointer}
.home-daily-links .top-tab:hover{background:#d8e3cf;color:var(--deep)}
.home-daily-links .feature-icon{flex:0 0 22px;width:22px;height:22px}
.home-community{padding:24px 26px;border:1px solid var(--line);border-radius:21px;background:var(--card)}
.home-community .eyebrow{margin:0 0 7px}.home-community h2,.home-explore h2{font-size:28px;margin:0 0 12px;font-weight:400}
#homeIntentionPreview{margin:0 0 18px;color:var(--muted);font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:20px;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}
.home-community-actions{display:flex;gap:10px 18px;align-items:center;flex-wrap:wrap}
.home-community-actions button,.home-extra-links button{min-height:44px}
.text-button{border:0;background:transparent;color:var(--deep);font:inherit;font-weight:650;cursor:pointer;padding:8px 0;text-underline-offset:4px}.text-button:hover{text-decoration:underline}
.home-explore{margin:30px 0 24px}.home-explore h2{margin-bottom:16px}
.explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.explore-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:20px;min-height:92px;min-width:0;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--deep);font:inherit;text-align:left;cursor:pointer}
.explore-grid button:hover{background:#edf1e5;border-color:#a6b39a}.explore-grid strong{font-size:16px;font-weight:650}.explore-grid span{font-size:13px;color:var(--muted)}
.home-extra-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 20px;margin-top:12px;font-size:14px}
.home-install{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-top:1px solid var(--line)}.home-install strong{font-weight:650}.home-install p{font-size:14px;margin:4px 0 0;color:var(--muted)}.home-install button{min-height:48px;flex-shrink:0}
.footer-brand{display:block;margin-bottom:8px;font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:17px}
#communityBanner{margin-bottom:18px}#communityBanner .ticker-wrap{display:grid;grid-template-columns:auto minmax(0,1fr) 44px;isolation:isolate;border-radius:14px}
#communityBanner .ticker-wrap[hidden]{display:none!important}#communityBanner .ticker-label{position:relative;z-index:1;display:flex;align-items:center;padding:0 16px;min-height:54px;background:var(--gold-soft);color:var(--deep)}
#communityBanner .ticker-window{display:block;position:relative;min-width:0;width:100%;overflow:hidden;contain:paint}#communityBanner .ticker{width:max-content;max-width:none;min-height:54px;line-height:54px}
#communityBanner .pause{width:44px;position:relative;z-index:1;background:var(--deep);color:var(--card)}
.novena-next{padding:20px 24px;background:var(--sage);border:1px solid #c4d0bb;border-radius:18px;margin:0 0 24px}.novena-next[hidden]{display:none}.novena-next .eyebrow{margin:0 0 6px}.novena-next>p:not(.eyebrow){font-size:20px;line-height:1.5;margin:0 0 6px;font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif}
.wider-event-search{margin-top:26px}.wider-event-search h2{font-size:27px;margin:0 0 10px}.local-event-links h2{font-size:27px;margin:5px 0 10px}.events-intro{color:var(--muted);line-height:1.6;margin-bottom:22px}.event-card h2{font-weight:400}
.exam-length-choice{margin:0 0 20px;padding:20px;border-radius:17px;background:var(--sage);border:1px solid #c4d0bb}.exam-length-choice>strong{font-size:18px}.exam-length-choice p{line-height:1.55;margin:8px 0 15px;font-size:14px}.exam-length-choice [role=group]{display:flex;gap:8px;flex-wrap:wrap}.exam-length-choice button{min-height:48px}.exam-length-choice button.active{background:var(--deep);color:#fffcf5;border-color:var(--deep)}
.about-view{max-width:850px;margin:0 auto}.about-view .still-card p{line-height:1.75}.about-view .still-card h2{font-size:28px;margin-top:26px}
.install-modal{position:relative}.install-guide-close{position:absolute;right:16px;top:16px;min-width:44px;min-height:44px}
@media(max-width:560px){
 .section-rail{padding:10px 14px 0;gap:8px}.section-rail .compact-navigation .top-tab{font-size:13px;padding:9px 14px;min-width:70px}.section-rail .compact-navigation #resourceMenuButton{min-width:82px}
 #resourceMenu{padding:10px;gap:8px}.today-welcome{font-size:18px;margin-bottom:15px}.today-prayer-card{padding:24px 22px;border-radius:21px}.today-prayer-card h1{font-size:34px;margin:17px 0 12px}.today-prayer-invitation{font-size:15px;margin-bottom:18px}.today-prayer-card .day-pill{font-size:12px;padding:6px 10px}.today-prayer-card .today-pray-button{width:100%;justify-content:space-between;padding:13px 22px}.today-prayer-note{text-align:center}
 .home-daily-links{gap:9px;margin:10px 0 20px}.home-daily-links .top-tab{padding:12px 8px;font-size:13px;gap:7px;min-height:58px}.home-daily-links .feature-icon{width:20px;height:20px;flex-basis:20px}
 .home-community{padding:20px}.home-community h2,.home-explore h2{font-size:26px}#homeIntentionPreview{font-size:18px}.home-community-actions{gap:8px 14px}.home-community-actions button{font-size:14px}
 .explore-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.explore-grid button{padding:17px 14px;min-height:87px}.explore-grid strong{font-size:15px}.explore-grid span{font-size:12px}.home-explore{margin-top:26px}.home-extra-links{display:grid;font-size:13px}
 .home-install{display:block;padding:20px 0}.home-install button{margin-top:14px;width:100%}.novena-next{padding:18px}.exam-length-choice{padding:17px}.exam-length-choice [role=group]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.exam-length-choice button{padding:10px;font-size:13px}
}
@media(max-width:360px){.home-daily-links .top-tab{flex-direction:column;gap:5px;min-height:68px}.today-prayer-card h1{font-size:30px}.explore-grid span{font-size:12px}}
@media(prefers-reduced-motion:reduce){#communityBanner .ticker{width:auto;max-width:100%;white-space:normal;line-height:1.5;padding:12px;animation:none}#communityBanner .ticker-window{overflow:auto;max-height:92px}}

/* Keep private people records readable on small screens. */
.people-subscribers summary{cursor:pointer;min-height:44px}.people-subscribers summary h3{display:inline;font-size:25px}.people-subscribers .activity-breakdown-wrap{max-width:100%;overflow-x:auto}.people-subscribers td{overflow-wrap:anywhere;min-width:100px}.novena-reminder-choice input[type=time]{width:100%;min-height:44px;font:inherit;color:var(--deep);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:8px}.account-modal input[type=email]{width:100%;min-height:44px;font:inherit;padding:10px;border:1px solid var(--line);border-radius:10px}.people-subscribers .account-actions{flex-wrap:wrap}.people-subscribers button{white-space:normal}.people-subscribers[hidden]{display:none!important}

.novena-other-days{margin-top:18px}.novena-other-days>summary{cursor:pointer;min-height:44px;padding:12px;color:var(--deep);font-weight:700}

.newsletter-confirmation{text-align:center;padding:22px 6px 18px}.newsletter-confirmation h3{font-size:28px;margin:14px 0 12px}.newsletter-confirmation-mark{display:inline-grid;place-items:center;width:62px;height:62px;border-radius:50%;background:#e3ebdf;color:#31483c;font-size:34px;font-weight:700}.newsletter-confirmation:focus{outline:none}#newsletterDialog [hidden]{display:none!important}#newsletterDialog [data-newsletter-status]:not(:empty){padding:12px;border-radius:10px;background:#f1e8d9;color:#473e32;font-weight:600}

/* Reminder choices and enlarged reading remain inside narrow screens. */
#reminderDialog{max-height:calc(100dvh - 24px);overflow:auto;max-width:calc(100vw - 24px)}
#reminderDialog .modal{min-width:0}#deviceReminderForm{display:grid;gap:14px}#deviceReminderForm fieldset{min-width:0;margin:0;padding:14px;border:1px solid var(--line);border-radius:12px}#deviceReminderForm legend{font-weight:700;padding:0 5px}#deviceReminderForm .account-check{padding:8px 0;font-size:16px;min-height:44px}#deviceReminderForm button{white-space:normal;min-height:48px}#deviceReminderStatus{line-height:1.6;overflow-wrap:anywhere}#myNovenaReminders{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}#myNovenaReminders h3{font-size:24px}#myNovenaReminders p{line-height:1.6}.novena-reminder-choice>span{min-width:0;flex:1}.novena-reminder-choice small{display:block;line-height:1.55;margin-top:6px}#visitorAccountStatus{line-height:1.6;overflow-wrap:anywhere}dialog button,dialog a,dialog p{overflow-wrap:anywhere}button,input,select,textarea{scroll-margin-block:120px}#reminderDialog [hidden]{display:none!important}
@media(max-width:380px){.modal-actions{flex-wrap:wrap}.modal-actions button{flex:1 1 100%}}

@media(max-width:560px){
 .mobile-actions{position:fixed;inset:auto 0 0;bottom:0;transform:none;left:0;right:0;border-radius:16px 16px 0 0;padding:6px 10px calc(6px + env(safe-area-inset-bottom,0px));border-bottom:0}
 .mobile-actions[data-keyboard-open="true"]{visibility:hidden;pointer-events:none}
}

/* Each prayer card grows with its text; links never sit on top of its paragraph. */
.novena-detail-days{display:flex;flex-direction:column;gap:18px}
.novena-day-panel{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:0;height:auto;overflow:visible;scroll-margin-top:130px}
.novena-day-panel h3,.novena-day-panel p{margin:0;line-height:1.6;min-width:0;overflow-wrap:anywhere}
.novena-day-panel a.secondary,.novena-day-panel button.secondary{display:block;position:static;align-self:flex-start;box-sizing:border-box;max-width:100%;height:auto;min-height:48px;line-height:1.5;margin:4px 0 0;white-space:normal;overflow-wrap:anywhere;text-decoration:none;flex-shrink:0}
.novena-day-panel:focus{outline:none}.novena-day-panel:focus-visible{outline:2px solid var(--deep);outline-offset:4px}
.novena-other-days{margin:0}.novena-other-days .novena-day-panel{margin-top:12px}.novena-other-days summary{padding:12px 0;min-height:44px}
.novena-detail-reminders{border-top:1px solid var(--line);padding-top:16px}.novena-detail-reminders p{line-height:1.6}
.notification-arrival{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:var(--paper);padding:24px;text-align:center}.notification-arrival .serif{font-size:28px;line-height:1.5}.notification-arrival[hidden]{display:none!important}

.novena-source-credit a{color:var(--deep);text-underline-offset:3px}

/* The brand symbol is transparent artwork, with no decorative app tile. */
.brand-mark,.login-mark,.install-app-mark{border:0;border-radius:0;box-shadow:none;background:transparent}
.login-mark img,.brand-mark img,.install-app-mark img,.account-brand img{object-fit:contain}

.footer-brand{display:block;margin-bottom:10px}
.site-footer a{color:var(--deep);text-underline-offset:4px;overflow-wrap:anywhere}
.footer-social{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;margin:8px auto 16px;max-width:760px}
.footer-social a{display:inline-flex;align-items:center;min-height:44px;padding:6px 4px}
.site-footer a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}

/* Optional email signup stays in the page flow, after the primary prayer. */
.home-email-invitation{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;margin:0 0 24px;border:1px solid var(--line);border-radius:20px;background:var(--card);min-width:0}
.home-email-invitation>div{min-width:0}.home-email-invitation h2{margin:0 0 8px;font-size:26px;line-height:1.25;font-weight:400}.home-email-invitation p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}.home-email-invitation button{flex-shrink:0;max-width:100%;min-height:48px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:700px){.home-email-invitation{display:block;padding:20px}.home-email-invitation button{width:100%;margin-top:16px}}

.reminder-email-choice{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);min-width:0}.reminder-email-choice h3{margin:0 0 10px;font-size:25px;line-height:1.3}.reminder-email-choice p{font-size:15px;line-height:1.6}.reminder-email-choice button{width:100%;max-width:100%;min-height:48px;white-space:normal}.reminder-email-choice .account-hint{font-size:13px;color:var(--muted)}

/* Warm intention text is distinct from the green heading and prayer actions. */
#homeIntentionPreview{display:block;-webkit-line-clamp:unset;margin:0;padding:18px 20px;min-height:4.5em;box-sizing:border-box;border-left:4px solid #ad8c4c;border-radius:4px 14px 14px 4px;background:#f1e5d5;color:#765036;overflow:visible;white-space:pre-wrap;overflow-wrap:anywhere}
.home-intention-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px 12px;margin:6px 0 14px;color:#765036;font-size:13px}.home-intention-controls[hidden]{display:none!important}.home-intention-controls>div{display:flex;flex-wrap:wrap;gap:16px}.home-intention-controls button{color:#765036;min-height:44px;font-size:13px}.home-community-actions{margin-top:16px}
@media(max-width:560px){#homeIntentionPreview{padding:16px}.home-intention-controls>div{gap:12px}}

/* Quiet, accessible navigation and comfortable touch targets. */
.skip-to-prayer{position:fixed;top:-100px;left:12px;z-index:2000;padding:14px 20px;border-radius:12px;background:var(--deep);color:white}
.skip-to-prayer:focus{top:12px}
:focus-visible{outline:3px solid #8b6c32;outline-offset:4px}
#mainContent:focus{outline:none}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* A clear first step for visitors arriving from an invitation. */
.prayer-start-note{font-size:13px;line-height:1.5;color:var(--muted);margin:12px 0 18px;text-align:center}
.prayer-needs-entry{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:17px 20px;margin:0 0 18px;border:1px solid var(--line);border-radius:16px;background:#f4eddf;color:var(--deep);text-align:left;font:inherit;cursor:pointer}
.prayer-needs-entry strong{display:block;font-size:16px;margin-bottom:5px}.prayer-needs-entry span span{display:block;font-size:14px;line-height:1.5}.prayer-needs-entry:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.share-invitation{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.share-invitation textarea{display:block;box-sizing:border-box;width:100%;font:inherit;font-size:16px;line-height:1.5;margin:8px 0 12px;resize:vertical;min-height:130px}

/* Gospel first, with reflection and a smaller daily prayer beside it. */
.today-gospel-card{padding:34px 36px;border-radius:24px;background:linear-gradient(125deg,#354e3d,#60765a);color:#fffcf5;box-shadow:var(--shadow)}.today-gospel-card .day-pill{color:inherit}.today-gospel-card h1{font-size:clamp(34px,5vw,50px);font-weight:400;line-height:1.1;margin:18px 0 12px}.today-gospel-card p{max-width:650px;line-height:1.6}.gospel-home-reference{font-size:20px}.today-gospel-card .primary{background:var(--gold-soft);color:var(--deep);border-color:var(--gold-soft);min-height:48px}
.home-daily-links.daily-next-steps{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);padding:0;border:0;background:none;max-width:none;align-items:stretch}.reflection-entry{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:12px;padding:26px;background:var(--sage);color:var(--deep);border:1px solid var(--line);border-radius:20px;font:inherit;cursor:pointer}.reflection-entry strong{font:400 clamp(25px,3vw,34px)/1.15 Georgia,serif}.reflection-entry>span:last-child{margin-top:auto;font-size:25px}.today-prayer-card.compact-prayer{padding:24px;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:20px;box-shadow:none}.compact-prayer h2{font-size:23px;font-weight:400;line-height:1.2;margin:12px 0}.today-prayer-card.compact-prayer .day-pill{color:var(--muted);background:none;border:0;padding:0;font-size:11px}.today-prayer-card.compact-prayer .today-prayer-note{color:var(--muted);font-size:11px;text-align:left}.today-prayer-card.compact-prayer .text-button{color:var(--deep)}.compact-prayer .today-pray-button{padding:10px 18px!important;min-height:44px!important;width:100%}
.video-reflection{margin-top:22px}.video-reflection h2{font-size:30px}.video-reflection p{line-height:1.65}.video-player:empty{display:none}.video-player{aspect-ratio:16/9;background:#202820;margin:18px 0;border-radius:14px;overflow:hidden}.video-player iframe{width:100%;height:100%;border:0}.video-privacy,.bible-version-note{font-size:13px;color:var(--muted);line-height:1.65}.bible-reading-links{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.bible-reading-links a{padding:10px 14px;border:1px solid var(--line);border-radius:10px;color:var(--deep)}.secondary-reading{background:var(--sage);color:var(--deep)}.secondary-reading small{color:var(--muted)}
@media(max-width:600px){.today-gospel-card{padding:26px 22px}.today-gospel-card .primary{width:100%}.reflection-entry{padding:20px 16px;gap:9px}.reflection-entry>span:not(.eyebrow){font-size:13px}.today-prayer-card.compact-prayer{padding:18px 14px}.compact-prayer h2{font-size:21px}.video-reflection{padding:22px}.video-reflection h2{font-size:26px}}

.reflection-switcher{margin-bottom:24px}.reflection-switcher .top-tab{padding:12px;min-height:44px;border:0;border-radius:11px;color:var(--deep);background:transparent;font:inherit;cursor:pointer}.reflection-switcher .top-tab.active{background:var(--deep);color:#fff}

.video-player{min-height:200px}.video-player iframe{min-height:200px}

.reflection-timer-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.reflection-bible-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid rgba(255,255,255,.5);border-radius:999px;color:#fff;text-decoration:none;font:600 14px/1.3 var(--sans, sans-serif)}.reflection-bible-link:hover{background:rgba(255,255,255,.12)}.reflection-bible-link:focus-visible{outline:3px solid var(--gold-soft);outline-offset:4px}

.daily-video-link{display:inline-flex;justify-content:center;align-items:center;min-height:44px;text-decoration:none;max-width:100%;box-sizing:border-box}.daily-video-reflection{border-top:4px solid var(--deep)}

/* One welcoming route for a busy family's morning. */
.family-home-entry{display:flex;align-items:center;gap:20px;width:100%;padding:26px;margin:22px 0;border:1px solid #d5c393;border-radius:22px;background:#eee4c9;color:var(--deep);text-align:left;font:inherit;cursor:pointer}.family-home-entry>span:nth-child(2){display:flex;flex-direction:column;gap:8px;flex:1}.family-home-entry strong{font:400 clamp(25px,3vw,34px)/1.15 Georgia,serif}.family-home-entry small{color:var(--muted);font-size:12px}.family-home-entry .eyebrow{font-size:10px}.family-sun{font-size:44px;color:#927539}.family-home-entry>span:last-child{font-size:26px}.family-welcome{max-width:680px;margin:8px auto 28px;text-align:center}.family-welcome h1{font-size:clamp(35px,5vw,54px);line-height:1.12;margin:14px 0}.family-welcome p{line-height:1.7;color:var(--muted)}.family-chips,.family-route{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.family-chips span{font-size:11px;padding:8px 11px;border-radius:99px;background:var(--sage);color:var(--deep)}.family-route{margin:0 auto 24px;gap:16px;color:var(--deep);font-size:12px;font-weight:700}.family-card{max-width:740px;margin:0 auto 20px;padding:30px;border:1px solid var(--line);border-radius:22px;background:var(--card);box-sizing:border-box}.family-card h2{font-size:30px;line-height:1.2;margin:12px 0 18px}.family-card p{line-height:1.75}.family-card small{display:block;color:var(--muted);font-size:12px;line-height:1.7;margin-top:14px}.family-gospel{background:var(--sage)}.family-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.family-actions a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box;min-height:44px}.family-question{padding:18px;background:#f1ead6;border-radius:14px;color:var(--deep);font-weight:600}.family-card details{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}.family-card summary{cursor:pointer;min-height:44px;line-height:1.5;font-weight:600;color:var(--deep)}.family-prayer{background:var(--deep);color:#fff}.family-prayer .eyebrow,.family-prayer small{color:#e2d9b9}.family-response{font-style:italic}.family-challenge{padding:18px 20px;background:var(--sage);border-radius:14px;margin:20px 0}.family-challenge p{margin-bottom:0}.family-lesson-label{color:var(--muted);font-size:12px}.family-extra{box-shadow:none}.family-finish{max-width:680px;margin:32px auto;text-align:center}.family-finish h2{font-size:32px}.family-finish button{margin:8px}.family-card iframe{border:0;border-radius:12px;max-width:100%;margin-top:16px}.family-card svg{width:100%;max-height:320px;color:#263e33}.family-drawing-space{border:2px dashed #a6b1a7;border-radius:14px;height:150px;margin:20px 0}#familyColorSheet{background:white;color:#22382e;padding:20px;border-radius:14px;margin-bottom:20px}
@media(max-width:600px){.family-home-entry{gap:14px;padding:22px 18px}.family-sun{font-size:32px}.family-home-entry>span:nth-child(2)>span:not(.eyebrow){font-size:13px;line-height:1.5}.family-card{padding:24px 20px}.family-actions>*{width:100%}.family-card h2{font-size:27px}.family-route{gap:13px;font-size:11px}}
@media print{body.printing-family *{visibility:hidden!important}body.printing-family #familyColorSheet,body.printing-family #familyColorSheet *{visibility:visible!important}body.printing-family #familyColorSheet{position:absolute;left:0;top:0;width:100%;margin:0;padding:18px;box-sizing:border-box}body.printing-family .app,body.printing-family main,body.printing-family #family{display:block!important}body.printing-family #familyColorSheet svg{max-height:300px}body.printing-family .family-drawing-space{height:220px}}
@media print{body.printing-family .topbar,body.printing-family .sidebar,body.printing-family main>*:not(#family),body.printing-family #family>*:not(.family-extra),body.printing-family .family-extra:not(:has(#familyColorSheet)){display:none!important}body.printing-family #family .family-extra:has(#familyColorSheet){display:block!important;border:0;margin:0;padding:0}body.printing-family #family .family-extra:has(#familyColorSheet)>*:not(#familyColorSheet){display:none!important}}

.bible-reader{margin:24px 0;padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:16px}.bible-reader summary{min-height:44px;cursor:pointer;font-weight:700}.bible-reader-controls{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.bible-reader-controls label{display:flex;flex-direction:column;gap:6px;font-size:13px}.bible-reader-controls select{width:100%;min-height:44px;max-width:100%;padding:10px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink);font:inherit}.bible-reader-text{white-space:pre-wrap;font:400 21px/1.85 Georgia,serif;overflow-wrap:anywhere}.bible-reader-copyright{font-size:12px;line-height:1.6;color:var(--muted);white-space:pre-wrap}@media(max-width:600px){.bible-reader{padding:18px}.bible-reader-controls{grid-template-columns:1fr}}

.family-color-choices{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.family-color-choices button[aria-pressed="true"]{background:var(--deep);color:white}.family-card #familyColorSheet{padding:0;border:1px solid var(--line);overflow:hidden}.family-card #familyColorImage{display:block;width:100%;height:auto;background:#fff}@media print{body.printing-family #familyColorSheet{padding:0;width:7.5in;max-width:100%;height:auto}body.printing-family #familyColorImage{width:100%;height:auto;max-height:9.7in;object-fit:contain}}

.resource-book-cover{display:block;width:160px;max-width:100%;height:220px;object-fit:contain;margin:18px auto 22px;background:#fff;border-radius:6px}

.gospel-home-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.today-gospel-card .gospel-home-heading h1{flex:1;min-width:0}.today-gospel-card .gospel-home-reference{flex:none;max-width:45%;margin-left:auto;color:inherit;font-size:16px;line-height:1.5;text-align:right;text-decoration:underline;text-underline-offset:4px;padding:12px 0;overflow-wrap:anywhere}.today-gospel-card .gospel-home-reference:focus-visible{outline:2px solid currentColor;outline-offset:5px}@media(max-width:600px){.gospel-home-heading{gap:12px}.today-gospel-card .gospel-home-heading h1{font-size:30px}.today-gospel-card .gospel-home-reference{font-size:14px;max-width:42%}}

.bible-reader-entry{margin:28px 0;padding:24px;border:2px solid #a4b59e;border-radius:20px;background:#f1f5ed}.bible-reader-entry #bibleReaderTitle{margin:0 0 10px;font-size:clamp(27px,4vw,36px);color:var(--deep)}.bible-reader-invitation{color:var(--muted);line-height:1.6}.bible-reader-actions{margin:18px 0}.bible-reader-entry .bible-reader{margin:16px 0 0;background:var(--card)}.bible-reader-entry .bible-reader summary{color:var(--deep);font-size:16px}.bible-reader-actions button{min-height:48px}@media(max-width:600px){.bible-reader-entry{padding:18px}.bible-reader-actions{display:grid;grid-template-columns:1fr}.bible-reader-entry .bible-reader{padding:16px}}

#eventsCity{box-sizing:border-box;width:100%;margin:8px 0 18px;padding:12px 14px;min-height:46px;border:1px solid var(--line);border-radius:12px;font:inherit;background:white;color:var(--ink)}

.today-gospel-card{position:relative}.gospel-card-open{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:24px;background:transparent;cursor:pointer}.gospel-card-open:hover{background:rgba(255,255,255,.035)}.gospel-card-open:focus-visible{outline:3px solid var(--gold-soft);outline-offset:5px}.gospel-card-invitation{display:block;margin-top:20px;font-weight:700;text-decoration:underline;text-underline-offset:4px}.today-gospel-card span.gospel-home-reference{text-decoration:none}.gospel-reading-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.gospel-reading-heading h2{font-size:30px;margin:12px 0}.catholic-gospel-link{margin-left:auto;max-width:45%;text-align:right;color:var(--deep);text-decoration:underline;text-underline-offset:4px;line-height:1.5;padding:12px 0;font-weight:600}@media(max-width:600px){.gospel-reading-heading h2{font-size:26px}.catholic-gospel-link{font-size:14px}}

.gospel-source-links{display:flex;flex-direction:column;align-items:flex-end;gap:10px;margin-left:auto;max-width:55%;text-align:right}.gospel-source-links a{color:var(--deep);text-decoration:underline;text-underline-offset:4px;font-size:14px;line-height:1.5;padding:3px 0}.gospel-source-links .catholic-gospel-link{max-width:100%;font-size:18px}.gospel-source-links small{font-size:11px;line-height:1.5;color:var(--muted);max-width:220px}.gospel-reading-heading{align-items:flex-start;margin:24px 0}.gospel-suggestion{margin-top:0}@media(max-width:600px){.gospel-source-links{max-width:58%}.gospel-source-links a{font-size:12px}.gospel-source-links .catholic-gospel-link{font-size:16px}.gospel-reading-heading h2{font-size:24px}}

.site-footer .footer-social{column-gap:32px;row-gap:10px;text-decoration:none}.site-footer .footer-social a{display:inline-flex;text-decoration:none;border-bottom:0;background-image:none;padding:6px 0}.site-footer .footer-social a span{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
