/* Preview v5 integration: scoped to the public home page only. */
body.home-page, body.home-page * { box-sizing: border-box; }
body.home-page { margin: 0; }
body.home-page a { text-decoration: none; }
body.home-page button { font: inherit; }
body.home-page .visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
body.home-page {
  --v5-navy: #10274a;
  --v5-navy-2: #193b69;
  --v5-blue: #1856ab;
  --v5-blue-light: #e9f2ff;
  --v5-gold: #b68129;
  --v5-ink: #1d2b40;
  --v5-muted: #69768a;
  --v5-paper: #f5f7fb;
  --v5-white: #fff;
  --v5-border: #e4eaf0;
  --v5-shadow: 0 8px 28px rgba(27, 50, 77, .07);
  background: var(--v5-paper);
  color: var(--v5-ink);
  font-family: system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  overflow-x: hidden;
}

body.home-page .skip-link { position: fixed; top: -60px; left: 16px; z-index: 100; padding: 10px 14px; background: #fff; color: var(--v5-navy); border-radius: 8px; }
body.home-page .skip-link:focus { top: 16px; }
body.home-page .site-header { position: relative; z-index: 40; background: rgba(255,255,255,.97); border-bottom: 1px solid var(--v5-border); box-shadow: 0 3px 14px rgba(16,39,74,.06); }
body.home-page .header-inner { display: flex; align-items: center; justify-content: space-between; max-width: 1500px; min-height: 74px; margin: 0 auto; padding: 0 30px; gap: 28px; }
body.home-page .brand { display: inline-flex; align-items: center; gap: 11px; color: var(--v5-navy); }
body.home-page .brand-logo { display: block; flex: 0 0 58px; width: 58px; height: 58px; object-fit: contain; }
body.home-page .brand-mark { display: grid; place-items: center; width: 31px; height: 48px; color: var(--v5-gold); font: 700 39px/1 Georgia, serif; }
body.home-page .brand > span:last-child { display: block; }
body.home-page .brand strong { display: block; color: var(--v5-navy); font: 700 24px/1 Georgia, serif; letter-spacing: -.02em; }
body.home-page .brand small { display: block; margin-top: 6px; padding-top: 5px; border-top: 1px solid #dce3eb; color: var(--v5-muted); font: 700 10px/1.2 system-ui, sans-serif; letter-spacing: 1.1px; text-transform: uppercase; }
body.home-page .top-nav { display: flex; align-items: center; margin-left: auto; gap: 3px; }
body.home-page .top-nav a { padding: 11px 12px; border-radius: 8px; color: #314058; font: 650 15px system-ui, sans-serif; white-space: nowrap; }
body.home-page .top-nav a:hover, body.home-page .top-nav a.active { background: var(--v5-blue-light); color: var(--v5-blue); }
body.home-page .top-nav a.active { background: var(--v5-blue-light); color: var(--v5-blue); }
body.home-page .header-actions { display: flex; align-items: center; gap: 14px; }
body.home-page .top-nav .auth-nav-link { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
body.home-page .auth-nav-link svg { display: block; flex: none; width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
body.home-page .header-search { width: 39px; height: 39px; border: 0; background: transparent; }
body.home-page .header-search svg { display: block; width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
body.home-page .support-btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 18px; border-radius: 10px; background: #b08331; color: #fff; font: 700 15px system-ui, sans-serif; box-shadow: 0 3px 11px rgba(176,131,49,.12); }
body.home-page .support-btn svg { display: block; width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
body.home-page .font-controls { display: inline-flex; gap: 4px; padding: 5px; border: 1px solid var(--v5-border); border-radius: 11px; background: #fff; }
body.home-page .font-controls button { min-width: 40px; height: 36px; border: 0; border-radius: 8px; background: #fff; color: var(--v5-navy); font-weight: 750; cursor: pointer; }
body.home-page .font-controls button:hover { background: var(--v5-blue-light); }
body.home-page .home-menu-toggle { display: none; border: 1px solid var(--v5-border); background: #fff; color: var(--v5-navy); border-radius: 9px; }
body.home-page .back-to-top { position: fixed; right: max(18px, env(safe-area-inset-right)); bottom: max(18px, env(safe-area-inset-bottom)); z-index: 50; min-height: 44px; padding: 0 17px; border: 1px solid #cbdcf2; border-radius: 8px; background: var(--v5-blue); color: #fff; font: 700 14px/1 system-ui, sans-serif; cursor: pointer; box-shadow: var(--v5-shadow); visibility: hidden; opacity: 0; pointer-events: none; transform: translateY(8px); transition: opacity .2s, transform .2s, visibility .2s; }
body.home-page .back-to-top.visible { visibility: visible; opacity: 1; pointer-events: auto; transform: translateY(0); }
body.home-page .back-to-top:hover { background: var(--v5-navy-2); }
body.home-page .back-to-top:focus-visible { outline: 3px solid var(--v5-gold); outline-offset: 3px; }
@media print { body.home-page .back-to-top { display: none; } }

body.home-page .hero { position: relative; min-height: 289px; overflow: hidden; isolation: isolate; color: var(--v5-navy); background-position: right center; background-size: auto 165%; background-repeat: no-repeat; }
body.home-page .today-art { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(16,39,74,.18), rgba(16,39,74,.04)); }
body.home-page .hero-inner { width: min(1500px, calc(100% - 60px)); margin: 0 auto; padding: 28px 44px 24px; }
body.home-page .hero-eyebrow { display: block; margin-bottom: 10px; color: var(--v5-gold); font: 800 11px/1.2 system-ui, sans-serif; letter-spacing: 1.15px; }
body.home-page .hero h2 { max-width: 720px; margin: 9px 0 4px; color: var(--v5-navy); font: 700 clamp(31px, 3.15vw, 49px)/1.14 Georgia, 'Times New Roman', serif; letter-spacing: -.035em; }
body.home-page .hero-subtitle { margin: 0 0 12px; color: #284364; font: 20px/1.25 Georgia, 'Times New Roman', serif; }
body.home-page .hero-quote { max-width: 435px; margin: 0 0 19px; color: #344c65; font: italic 15px/1.5 Georgia, serif; }
body.home-page .hero-day-summary { display: grid; grid-template-columns: 205px minmax(0, 1fr) 172px; align-items: stretch; width: 100%; max-width: 1110px; border: 1px solid rgba(208,216,224,.9); border-radius: 15px; box-shadow: 0 7px 23px rgba(25,49,79,.13); backdrop-filter: blur(9px); overflow: hidden; background: rgba(255,255,255,.93); }
/* Keep the day summary as one composed card when older shared styles are present. */
body.home-page.home-v5 .hero-day-summary { display: grid; grid-template-columns: 205px minmax(0, 1fr) 172px; align-items: stretch; width: 100%; max-width: 1110px; min-height: 104px; margin: 0; padding: 0; border: 1px solid rgba(208,216,224,.9); border-radius: 15px; overflow: hidden; background: rgba(255,255,255,.93); }
body.home-page.home-v5 .hero-day-summary > .summary-date,
body.home-page.home-v5 .hero-day-summary > .summary-saints,
body.home-page.home-v5 .hero-day-summary > .summary-fast { min-width: 0; min-height: 104px; margin: 0; padding: 15px 19px; background: transparent; }
body.home-page.home-v5 .hero-day-summary > .summary-date + .summary-saints,
body.home-page.home-v5 .hero-day-summary > .summary-saints + .summary-fast { border-left: 1px solid #e1e7ec; }
body.home-page .summary-date, body.home-page .summary-saints, body.home-page .summary-fast { min-width: 0; min-height: auto; padding: 15px 19px; background: transparent; backdrop-filter: none; }
body.home-page .summary-date + .summary-saints, body.home-page .summary-saints + .summary-fast { border-left: 1px solid #e1e7ec; }
body.home-page .summary-label { display: block; margin: 0 0 8px; color: #8c682e; font: 800 10px/1.35 system-ui, sans-serif; letter-spacing: 1px; }
body.home-page .summary-date time { display: flex; align-items: center; gap: 13px; }
body.home-page .date-number { display: inline-block; flex: 0 0 61px; width: 61px; color: var(--v5-navy); font: 700 44px/1 Georgia, 'Times New Roman', serif; letter-spacing: -1.8px; text-align: right; }
body.home-page .date-details { flex: 0 0 104px; min-width: 104px; }
body.home-page .date-details b, body.home-page .date-details small { display: block; font-family: system-ui, Arial, sans-serif; }
body.home-page .date-details b { color: var(--v5-navy); font-size: 12px; font-weight: 700; }
body.home-page .date-details small { margin-top: 2px; color: var(--v5-muted); font-size: 12px; }
body.home-page .summary-saints-text { max-width: 620px; color: #233a5a; font-family: system-ui, Arial, sans-serif; font-size: 13px; font-weight: 550; line-height: 1.5; overflow-wrap: break-word; }
body.home-page .summary-day-feast { margin-bottom: 6px; color: #b42318; font: 700 15px/1.4 system-ui, Arial, sans-serif; overflow-wrap: break-word; }
body.home-page .summary-fast { display: flex; align-items: center; gap: 12px; }
body.home-page .summary-fast .summary-label { margin-bottom: 4px; }
body.home-page .fast-icon { display: grid; place-items: center; flex: none; width: 34px; height: 34px; border: 0; border-radius: 50%; background: #ecf6e7; color: #478d37; font-size: 20px; }
body.home-page .summary-fast strong { display: block; color: #284b31; font-family: system-ui, Arial, sans-serif; font-size: 13px; line-height: 1.35; }
body.home-page .hero-day-summary.is-sunday .summary-date .summary-label,
body.home-page .hero-day-summary.is-sunday .date-number,
body.home-page .hero-day-summary.is-sunday .date-details b,
body.home-page .hero-day-summary.is-sunday .date-details small,
body.home-page .hero-day-summary.is-major-feast .summary-date .summary-label,
body.home-page .hero-day-summary.is-major-feast .date-number,
body.home-page .hero-day-summary.is-major-feast .date-details b,
body.home-page .hero-day-summary.is-major-feast .date-details small { color: #b42318; }
body.home-page .hero-day-summary.is-sunday .summary-saints .summary-label,
body.home-page .hero-day-summary.is-sunday .summary-saints-text,
body.home-page .hero-day-summary.is-sunday .summary-saints-text *,
body.home-page .hero-day-summary.is-major-feast .summary-saints .summary-label,
body.home-page .hero-day-summary.is-major-feast .summary-saints-text,
body.home-page .hero-day-summary.is-major-feast .summary-saints-text * { color: #b42318; }
body.home-page .summary-date.is-sunday .summary-label,
body.home-page .summary-date.is-sunday .date-number,
body.home-page .summary-date.is-sunday .date-details b,
body.home-page .summary-date.is-sunday .date-details small { color: #b42318; }
body.home-page .summary-saints.is-major-feast .summary-label,
body.home-page .summary-saints.is-major-feast .summary-saints-text { color: #b42318; }
body.home-page .hero-day-controls { display: flex; align-items: center; justify-content: flex-end; width: 100%; max-width: 1110px; margin-top: 9px; gap: 20px; }
body.home-page .sidebar-notice p { margin: 12px 0; font-size: 14px; line-height: 1.6; overflow-wrap: anywhere; }
body.home-page .right-sidebar .embed-code-field { width: 100%; min-width: 0; font-size: 12px; box-sizing: border-box; }
body.home-page .sidebar-notice a { color: var(--v5-blue); font-size: 14px; }
body.home-page .summary-reading-links { margin-top: 8px; color: #5f7085; font: italic 12px/1.4 Georgia, 'Times New Roman', serif; }
body.home-page .hero-day-nav { display: flex; justify-content: flex-end; align-items: center; width: auto; max-width: none; margin-top: 0; border: 0; border-radius: 9px; overflow: visible; background: transparent; gap: 6px; }
body.home-page .hero-day-nav a, body.home-page .hero-day-nav span { flex: 0 0 76px; width: 76px; box-sizing: border-box; padding: 4px 6px; border: 1px solid rgba(198,210,221,.75); border-radius: 7px; background: rgba(255,255,255,.83); color: #244b7d; font-family: system-ui, Arial, sans-serif; font-size: 11px; line-height: 1.4; text-align: center; font-weight: 700; }
body.home-page .hero-day-nav a.current { margin: 0; border-color: var(--v5-blue); background: var(--v5-blue); color: #fff; }
body.home-page .hero-day-nav a:hover { background: #fff; }
body.home-page .hero-day-nav a.current:hover,
body.home-page .hero-day-nav a.current:focus-visible { background: var(--v5-navy-2); color: #fff; border-color: var(--v5-navy-2); }
body.home-page .hero-reading-links { display: flex; flex-wrap: wrap; gap: 7px 16px; margin-top: 15px; color: #284364; font: italic 14px Georgia, serif; }
body.home-page .hero-calendar-summary { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 12px; color: #284364; font-size: 13px; }
body.home-page .hero-calendar-line { display: inline; }
body.home-page .hero-calendar-great-feast { color: #fff; font-weight: 800; }
body.home-page .hero-fasting-icons { display: inline-flex; gap: 5px; align-items: center; }
body.home-page .hero-fasting-icons .fasting-icon-image, body.home-page .hero-fasting-icons .fasting-icon-fallback { width: 25px; height: 25px; }

body.home-page .layout-shell { display: grid; grid-template-columns: minmax(0, 1fr) 250px; gap: 22px; width: min(1500px, calc(100% - 60px)); margin: 0 auto; }
body.home-page .reading-main { min-width: 0; padding: 23px 0 70px; }
body.home-page .reading-topline { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
body.home-page .section-label { display: block; color: var(--v5-gold); font: 800 11px/1.2 system-ui, sans-serif; letter-spacing: 1.5px; }
body.home-page .reading-topline h2 { margin: 7px 0 0; color: var(--v5-navy); font: 700 32px/1.1 Georgia, serif; }
body.home-page .readings-layout { display: grid; gap: 20px; }
body.home-page .reading-panel { display: block; padding: 19px 21px 13px; overflow: hidden; border: 1px solid #e8edf3; border-radius: 15px; background: #fff; box-shadow: var(--v5-shadow); }
body.home-page .reading-card-head { display: flex; align-items: center; gap: 11px; padding: 0; border-bottom: 0; background: transparent; }
body.home-page .reading-emblem { display: grid; place-items: center; flex: 0 0 49px; width: 49px; height: 49px; border: 0; border-radius: 15px; background: #e5f1ff; color: #0d5bb6; font-size: 17px; }
body.home-page .reading-emblem svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
body.home-page .reading-card-head > div:last-child { min-width: 0; }
body.home-page .reading-title-line { display: flex; align-items: baseline; flex-wrap: wrap; gap: 0 .35em; min-width: 0; }
body.home-page .reading-card-head .read-type { display: inline; color: #142747; font: 700 17px/1.25 Georgia, 'Times New Roman', serif; letter-spacing: 0; }
body.home-page .reading-card-head .reading-topic-inline { color: #142747; font: 700 17px/1.25 Georgia, 'Times New Roman', serif; overflow-wrap: anywhere; }
body.home-page .reading-card-head strong { display: block; margin-top: 4px; color: #152541; font: italic 700 17px/1.25 Georgia, serif; text-decoration-line: overline; text-decoration-thickness: 1px; text-decoration-offset: 3px; overflow-wrap: anywhere; }
body.home-page .reading-card > .reading-topic { margin: 12px 0 13px; padding: 0; color: #142747; font: 700 19px/1.28 Georgia, 'Times New Roman', serif; overflow-wrap: anywhere; }
body.home-page .reading-topline > .font-controls { flex: 0 0 auto; margin-left: auto; }
body.home-page .reading-content-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 15px; align-items: stretch; }
body.home-page .reading-content-grid > .reading-text { min-width: 0; max-width: none; margin: 0; }
body.home-page .reading-content-grid > .commentary-card { min-width: 0; padding: 15px 16px; border: 0; border-radius: 13px; background: #eef7ff; }
body.home-page .reading-content-grid > .commentary-card:has(> .commentary-text[hidden]) { display: none; }
body.home-page .commentary-heading { display: flex; align-items: center; gap: 10px; margin-bottom: 13px; padding: 0; color: #124c96; font: 800 12px/1.2 system-ui, sans-serif; letter-spacing: .2px; }
body.home-page .commentary-heading > span:last-child { display: block; }
body.home-page .commentary-heading strong, body.home-page .commentary-heading small { display: block; }
body.home-page .commentary-heading small { margin-top: 3px; color: inherit; font-size: 12px; font-weight: 600; letter-spacing: 0; }
body.home-page .commentary-circle { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; background: #dbeeff; color: #1267b6; font-size: 13px; letter-spacing: 0; }
body.home-page .commentary-circle svg { display: block; width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
body.home-page .apostle .reading-emblem { background: #e5f1ff; color: #0d5bb6; }
body.home-page .apostle .reading-card-head .read-type, body.home-page .apostle .reading-card-head .reading-topic-inline, body.home-page .apostle .commentary-heading { color: #142747; }
body.home-page .apostle .reading-card-head strong { color: #152541; }
body.home-page .apostle .commentary-card { background: #eef7ff; }
body.home-page .gospel .reading-emblem { background: #fff1d8; color: #ae7413; }
body.home-page .gospel .reading-card-head .read-type, body.home-page .gospel .reading-card-head .reading-topic-inline, body.home-page .gospel .commentary-heading { color: #4f3715; }
body.home-page .gospel .reading-card-head .reading-topic-inline { color: #4f3715; }
body.home-page .gospel .reading-card-head strong { color: #4f3715; }
body.home-page .gospel .commentary-card { background: #fff7e9; }
body.home-page .gospel .commentary-circle { background: #ffedc9; color: #aa7119; }
body.home-page .reading-content-grid:has(> .commentary-card > .commentary-text[hidden]) { grid-template-columns: minmax(0, 800px); justify-content: center; }
body.home-page .reading-copy-actions { display: flex; justify-content: flex-start; gap: 8px; padding: 0 24px 22px; }
body.home-page .panel-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 22px 26px 15px; border-bottom: 1px solid var(--v5-border); }
body.home-page .panel-heading .label { color: var(--v5-navy); font: 750 20px/1.25 Georgia, serif; }
body.home-page .panel-heading .read-type { display: block; color: var(--v5-gold); font: 800 10px/1.2 system-ui, sans-serif; letter-spacing: 1.4px; }
body.home-page .panel-heading .reading-topic { display: block; margin-top: 5px; color: var(--v5-navy); font: 700 21px/1.2 Georgia, serif; }
body.home-page .panel-heading strong { color: var(--v5-blue); font: 700 15px/1.3 Georgia, serif; }
body.home-page .reading-text { max-width: 800px; padding: 24px 30px 30px; color: #27384c; font: calc(17px * var(--reader-scale, 1))/1.52 Georgia, 'Times New Roman', serif; white-space: pre-line; text-align: left; }
body.home-page #apostleText, body.home-page #gospelText, body.home-page .reading-text { font-weight: 400 !important; padding-top: 24px !important; padding-bottom: 30px !important; text-align: left !important; text-align-last: auto !important; }
body.home-page .reading-text p { margin: 0 0 1em; }
body.home-page .commentary-text { max-width: 800px; margin: 0 30px 24px; padding: 18px 20px; border-left: 3px solid var(--v5-gold); border-radius: 0 9px 9px 0; background: #fffaf0; color: #4c5665; font-size: calc(15px * var(--reader-scale, 1)); line-height: 1.65; white-space: pre-line; text-align: left; }
body.home-page .reading-panel .commentary-text { margin: 0; padding: 0 !important; border-left: 0; border-radius: 0; background: transparent; color: #37455a; font: calc(13.5px * var(--reader-scale, 1))/1.62 system-ui, Arial, sans-serif; }
body.home-page .commentary-question { display: block; margin-bottom: 9px; color: var(--v5-navy); }
body.home-page .reading-panel .commentary-question { display: none; }
body.home-page .reading-copy-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 15px; padding: 15px 8px 3px; border-top: 1px solid #f0f2f6; }
body.home-page .reading-copy-actions .text-button { border: 1px solid #cbd7e2; border-radius: 8px; background: #fff; color: var(--v5-blue); padding: 9px 13px; font-weight: 700; }
body.home-page .reading-copy-actions .text-button:hover { background: var(--v5-blue-light); }
body.home-page .reading-copy-actions .text-button { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 7px 11px; font-size: 12px; }
body.home-page .reading-copy-actions .text-button svg { display: block; width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
body.home-page .reading-copy-actions .copy-reading-button { border-color: #165db5; background: #165db5; color: #fff; }
body.home-page .reading-copy-actions .copy-reading-button:hover { border-color: #0e4e9e; background: #0e4e9e; }
body.home-page .reading-copy-actions .share-reading-button { border-color: #d9e3ee; background: #fff; color: #486485; }
body.home-page .reading-copy-actions .share-reading-button:hover { border-color: #9db8d6; background: #f4f8fd; }
body.home-page .apostle .reading-copy-actions .copy-reading-button { border-color: #165db5; background: #165db5; color: #fff; }
body.home-page .apostle .reading-copy-actions .share-reading-button { border-color: #b8d2ef; background: #fff; color: #165db5; }
body.home-page .apostle .reading-copy-actions .share-reading-button:hover { border-color: #165db5; background: #eef6ff; }
body.home-page .gospel .reading-copy-actions .copy-reading-button { border-color: #ad7418; background: #ad7418; color: #fff; }
body.home-page .gospel .reading-copy-actions .share-reading-button { border-color: #e5c98f; background: #fff; color: #9a6715; }
body.home-page .gospel .reading-copy-actions .share-reading-button:hover { border-color: #ad7418; background: #fff8eb; }
body.home-page .reading-export-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
body.home-page .reading-export-actions .text-button { border: 1px solid var(--v5-border); border-radius: 9px; background: #fff; color: var(--v5-blue); padding: 11px 14px; font-weight: 700; }
body.home-page .public-embed-section { margin-top: 18px; }
body.home-page .public-embed-panel { border: 1px solid var(--v5-border); border-radius: 11px; background: #fff; }
body.home-page .public-embed-panel summary { padding: 14px 18px; color: var(--v5-navy); cursor: pointer; font-weight: 700; }
body.home-page .public-embed-content { padding: 0 18px 18px; }

body.home-page .home-section { margin-top: 38px; }
body.home-page .section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 15px; }
body.home-page .section-heading h2 { margin: 6px 0 0; color: var(--v5-navy); font: 700 27px/1.2 Georgia, serif; }
body.home-page .section-heading-link { color: var(--v5-blue); font-weight: 750; white-space: nowrap; }
body.home-page .section-heading-link:hover { color: var(--v5-navy); }
body.home-page .video-teaser { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr); overflow: hidden; border: 1px solid var(--v5-border); border-radius: 14px; background: #fff; box-shadow: var(--v5-shadow); }
body.home-page .video-preview { min-width: 0; background: #10274a; }
body.home-page .video-preview iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; }
body.home-page .video-preview-empty { display: grid; place-items: center; min-height: 220px; color: #fff; font: 800 11px system-ui, sans-serif; letter-spacing: 1.4px; }
body.home-page .video-info { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 25px 27px; }
body.home-page .video-info h3 { margin: 8px 0 9px; color: var(--v5-navy); font: 700 23px/1.23 Georgia, serif; }
body.home-page .video-info p { margin: 0 0 18px; color: var(--v5-muted); line-height: 1.55; }
body.home-page .btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; border: 1px solid transparent; border-radius: 8px; font-weight: 750; transition: background .15s ease, border-color .15s ease, color .15s ease; }
body.home-page .btn.primary { background: var(--v5-navy); color: #fff; }
body.home-page .btn.primary:hover { background: var(--v5-blue); }
body.home-page .btn.outline { border-color: #cbd7e2; background: #fff; color: var(--v5-blue); }
body.home-page .btn.outline:hover { border-color: var(--v5-blue); background: var(--v5-blue-light); }
body.home-page .article-teasers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
body.home-page .article-teaser { display: block; padding: 20px 21px; border: 1px solid var(--v5-border); border-radius: 14px; background: #fff; box-shadow: var(--v5-shadow); }
body.home-page .article-teaser:hover { border-color: #cbd7e2; background: #fbfdff; }
body.home-page .article-teaser > span { color: var(--v5-gold); font: 800 10px/1.2 system-ui, sans-serif; letter-spacing: 1.3px; }
body.home-page .article-teaser h3 { margin: 8px 0 7px; color: var(--v5-navy); font: 700 19px/1.25 Georgia, serif; }
body.home-page .article-teaser p { margin: 0 0 14px; color: var(--v5-muted); line-height: 1.5; }
body.home-page .article-teaser strong { color: var(--v5-blue); font-size: 13px; }
body.home-page .home-media-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 22px; }
body.home-page .home-media-column { min-width: 0; }
body.home-page .home-block-title { margin: 0 0 12px; color: var(--v5-navy); font: 700 27px/1.2 Georgia, serif; }
body.home-page .video-card, body.home-page .article-link-list { overflow: hidden; border: 1px solid var(--v5-border); border-radius: 14px; background: #fff; box-shadow: var(--v5-shadow); }
body.home-page .video-card iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; }
body.home-page .video-card-body { padding: 19px 22px 22px; }
body.home-page .video-card-body .label { color: var(--v5-gold); font-size: 11px; font-weight: 800; letter-spacing: 1px; }
body.home-page .video-card-body h2 { margin: 7px 0 8px; color: var(--v5-navy); font: 700 22px/1.25 Georgia, serif; }
body.home-page .video-card-body p { margin: 0 0 17px; color: var(--v5-muted); line-height: 1.55; }
body.home-page .primary-button { display: inline-flex; padding: 10px 14px; border-radius: 8px; background: var(--v5-navy); color: #fff; font-weight: 750; }
body.home-page .article-link-list { display: grid; }
body.home-page .article-link-list a { padding: 17px 19px; border-bottom: 1px solid var(--v5-border); }
body.home-page .article-link-list a:last-child { border-bottom: 0; }
body.home-page .article-link-list a:hover { background: var(--v5-blue-light); }
body.home-page .article-link-list span { display: block; color: var(--v5-navy); font-weight: 750; line-height: 1.35; }
body.home-page .article-link-list small { display: block; margin-top: 6px; color: var(--v5-muted); line-height: 1.45; }
body.home-page .home-block-footer { margin-top: 10px; text-align: right; }
body.home-page .home-block-footer .text-button { color: var(--v5-blue); font-weight: 750; }
body.home-page .memorial-banner { display: flex; align-items: center; gap: 18px; margin-top: 30px; padding: 21px 24px; border: 1px solid #eadfc9; border-radius: 14px; background: #fffaf0; }
body.home-page .memorial-banner-icon { color: var(--v5-gold); font-size: 28px; }
body.home-page .memorial-banner-copy { flex: 1; }
body.home-page .memorial-banner-copy h2 { margin: 0 0 5px; color: var(--v5-navy); font: 700 21px Georgia, serif; }
body.home-page .memorial-banner-copy p { margin: 0; color: var(--v5-muted); }
body.home-page .memorial-banner-button { padding: 10px 14px; border-radius: 8px; background: var(--v5-gold); color: #fff; font-weight: 750; }
body.home-page .section-card { display: flex; align-items: center; gap: 18px; margin-top: 22px; padding: 24px 26px; border: 1px solid var(--v5-border); border-radius: 14px; background: #fff; box-shadow: var(--v5-shadow); }
body.home-page .info-service { background: #fffaf0; border-color: #eadfc9; }
body.home-page .info-service .service-icon { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; border-radius: 12px; background: #f2e6c8; color: var(--v5-gold); font-size: 25px; }
body.home-page .section-card .service-copy { flex: 1; min-width: 0; }
body.home-page .section-card .service-copy h2 { margin: 7px 0 7px; color: var(--v5-navy); font: 700 23px/1.2 Georgia, serif; }
body.home-page .section-card .service-copy p { max-width: 650px; margin: 0 0 16px; color: var(--v5-muted); line-height: 1.55; }
body.home-page .calendar-service { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .72fr); align-items: center; gap: 22px; }
body.home-page .calendar-service .site-banner-slot { margin-top: 0; }
body.home-page .calendar-service .site-banner-item { box-shadow: none; }
body.home-page .site-banner-slot { display: grid; gap: 14px; margin-top: 22px; }
body.home-page .site-banner-item { overflow: hidden; border: 1px solid var(--v5-border); border-radius: 14px; background: #fff; box-shadow: var(--v5-shadow); }
body.home-page .site-banner-link { display: block; }
body.home-page .site-banner-image { display: block; width: 100%; height: auto; }
body.home-page .calendar-preview { flex: 0 0 190px; padding: 15px 16px; border: 1px solid #dce6ef; border-radius: 11px; background: #f5f9fd; color: var(--v5-navy); }
body.home-page .preview-top { display: flex; justify-content: space-between; gap: 8px; font: 800 17px Georgia, serif; }
body.home-page .preview-top span { color: var(--v5-gold); font: 800 7px/1.2 system-ui, sans-serif; letter-spacing: .8px; }
body.home-page .calendar-image-symbol { margin: 11px 0 4px; color: var(--v5-blue); font-size: 27px; }
body.home-page .preview-month { color: var(--v5-gold); font: 800 10px system-ui, sans-serif; letter-spacing: 1.2px; }
body.home-page .preview-dates { margin-top: 9px; color: #71839b; font: 11px/1.8 system-ui, sans-serif; }
body.home-page .calendar-service h2 { margin: 7px 0 7px; color: var(--v5-navy); font: 700 23px/1.2 Georgia, serif; }
body.home-page .calendar-service p { max-width: 650px; margin: 0 0 16px; color: var(--v5-muted); }
body.home-page .right-sidebar { display: flex; flex-direction: column; gap: 13px; padding: 44px 0 70px; }
body.home-page .rail-card { padding: 15px; border: 1px solid var(--v5-border); border-radius: 14px; background: #fff; box-shadow: var(--v5-shadow); }
body.home-page .rail-card h2 { margin: 0 0 12px; color: var(--v5-navy); font: 700 17px Georgia, serif; }
body.home-page .rail-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
body.home-page .rail-heading h2 { margin: 0; font: 800 12px system-ui, sans-serif; white-space: nowrap; }
body.home-page .rail-heading a { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 7px; color: var(--v5-navy); font-size: 24px; line-height: 1; }
body.home-page .rail-heading a:hover { background: var(--v5-blue-light); }
body.home-page .weekdays, body.home-page .calendar-days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 3px; text-align: center; }
body.home-page .weekdays { margin-bottom: 7px; color: #91a0b4; font-size: 11px; }
body.home-page .calendar-days a, body.home-page .calendar-days span { display: grid; place-items: center; min-width: 0; height: 29px; border-radius: 50%; color: #50617c; font-size: 11px; }
body.home-page .calendar-days a:hover { background: var(--v5-blue-light); }
body.home-page .calendar-days a.today { background: var(--v5-blue); color: #fff; font-weight: 800; }
body.home-page .calendar-days .outside { color: transparent; }
body.home-page .widget-hint { margin: 11px 0 0; color: #a0a9b5; text-align: center; font-size: 10px; }
body.home-page .sidebar-services a, body.home-page .quick-actions a, body.home-page .quick-actions button { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 34px; padding: 7px 8px; border: 1px solid #e5ebf1; border-radius: 8px; background: #fff; color: #394c66; font-size: 11px; text-align: left; }
body.home-page .sidebar-services a + a, body.home-page .quick-actions a + a, body.home-page .quick-actions button { margin-top: 7px; }
body.home-page .sidebar-services a:hover, body.home-page .quick-actions a:hover, body.home-page .quick-actions button:hover { background: #f7fafe; border-color: #cfdfea; }
body.home-page .sidebar-services a, body.home-page .quick-actions a { gap: 9px; }
body.home-page .sidebar-services a > span:nth-child(2), body.home-page .quick-actions a > span:nth-child(2), body.home-page .quick-actions button > span:last-child { flex: 1; }
body.home-page .action-icon { display: inline-grid; flex: 0 0 22px; place-items: center; width: 22px; height: 22px; color: var(--v5-gold); }
body.home-page .action-icon svg { display: block; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
body.home-page .quick-actions .install-home-quick { justify-content: flex-start; gap: 9px; cursor: pointer; }
body.home-page .quick-actions .quick-embed-panel { margin-top: 7px; border: 1px solid #e5ebf1; border-radius: 8px; background: #fff; }
body.home-page .embed-widgets { margin-top: 14px; }
body.home-page .embed-widgets .quick-embed-panel { margin-top: 7px; border: 1px solid #e5ebf1; border-radius: 8px; background: #fff; }
body.home-page .embed-widgets .quick-embed-panel summary { display: flex; align-items: center; gap: 9px; min-height: 34px; padding: 7px 8px; color: #394c66; cursor: pointer; font-size: 11px; font-weight: 400; list-style: none; }
body.home-page .quick-actions .quick-embed-panel summary::-webkit-details-marker, body.home-page .embed-widgets .quick-embed-panel summary::-webkit-details-marker { display: none; }
body.home-page .quick-actions .quick-embed-panel summary::after, body.home-page .embed-widgets .quick-embed-panel summary::after { margin-left: auto; content: '›'; color: #687a91; }
body.home-page .quick-actions .quick-embed-panel[open] summary::after, body.home-page .embed-widgets .quick-embed-panel[open] summary::after { content: '⌄'; }
body.home-page .quick-actions .quick-embed-panel .public-embed-content, body.home-page .embed-widgets .quick-embed-panel .public-embed-content { padding: 0 8px 8px; }
body.home-page .quick-actions .quick-embed-panel .embed-code-field, body.home-page .embed-widgets .quick-embed-panel .embed-code-field { width: 100%; min-height: 70px; box-sizing: border-box; font-size: 9px; }
body.home-page .print-reading-content { display: none; }
body.home-page .quick-actions .install-home-quick .install-home-icon { display: inline-grid; flex: 0 0 22px; place-items: center; width: 22px; height: 22px; }
body.home-page .install-home-icon { display: grid; place-items: center; flex: 0 0 21px; width: 21px; height: 21px; border-radius: 50%; background: #eef2f6; color: #52657d; }
body.home-page .install-home-icon svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linejoin: round; stroke-linecap: round; }
body.home-page .install-home-dialog { width: min(440px, calc(100% - 32px)); padding: 0; border: 1px solid var(--v5-border); border-radius: 14px; background: #fff; color: var(--v5-navy); box-shadow: 0 18px 55px rgba(16,39,74,.22); }
body.home-page .install-home-dialog::backdrop { background: rgba(16,39,74,.4); }
body.home-page .install-home-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 18px 13px; border-bottom: 1px solid var(--v5-border); }
body.home-page .install-home-dialog-header h2 { margin: 0; color: var(--v5-navy); font: 700 21px/1.25 Georgia, serif; }
body.home-page .install-home-close { display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 1px solid var(--v5-border); border-radius: 8px; background: #fff; color: var(--v5-navy); font-size: 23px; line-height: 1; cursor: pointer; }
body.home-page .install-home-instructions { padding: 17px 18px 3px; color: #283d59; font-size: 14px; line-height: 1.65; }
body.home-page .install-home-instructions p { margin: 0 0 12px; }
body.home-page .install-home-instructions ol { margin: 8px 0 0; padding-left: 21px; }
body.home-page .install-home-instructions li { margin-bottom: 7px; }
body.home-page .install-home-done { margin: 0 18px 18px; padding: 10px 14px; border: 1px solid #cbd7e2; border-radius: 8px; background: #fff; color: var(--v5-blue); font-weight: 750; cursor: pointer; }
body.home-page .install-home-done:hover, body.home-page .install-home-close:hover { background: var(--v5-blue-light); }
@media print {
  body.home-page > * { display: none !important; }
  body.home-page .print-reading-content { display: block !important; margin: 24px; color: #172b4d; font: 16px/1.6 Georgia, 'Times New Roman', serif; }
  body.home-page .print-reading-content .print-document-title { margin: 0 0 18px; text-align: center; font: 700 22px/1.4 Georgia, 'Times New Roman', serif; }
  body.home-page .print-reading-content .print-reading-block { margin: 0 0 24px; }
  body.home-page .print-reading-content .print-reading-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 9px; }
  body.home-page .print-reading-content .print-reading-icon { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; border-radius: 14px; }
  body.home-page .print-reading-content .print-reading-icon svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
  body.home-page .print-reading-content .print-reading-title { display: block; font: 700 18px/1.25 Georgia, 'Times New Roman', serif; }
  body.home-page .print-reading-content .print-reading-title strong:first-child { text-decoration: underline; text-underline-offset: 3px; }
  body.home-page .print-reading-content .print-reading-reference { display: block; margin-top: 3px; color: inherit; font: italic 700 17px/1.25 Georgia, 'Times New Roman', serif; }
  body.home-page .print-reading-content .print-reading-block-apostle { color: #142747; }
  body.home-page .print-reading-content .print-reading-block-apostle .print-reading-icon, body.home-page .print-reading-content .print-reading-block-apostle .print-commentary-icon { background: #e5f1ff; color: #0d5bb6; }
  body.home-page .print-reading-content .print-reading-block-gospel { color: #4f3715; }
  body.home-page .print-reading-content .print-reading-block-gospel .print-reading-icon, body.home-page .print-reading-content .print-reading-block-gospel .print-commentary-icon { background: #fff1d8; color: #ae7413; }
  body.home-page .print-reading-content .print-reading-block-paremias .print-reading-icon, body.home-page .print-reading-content .print-reading-block-paremias .print-commentary-icon { background: #f1ecff; color: #6b52a3; }
  body.home-page .print-reading-content .print-commentary-heading { display: flex; align-items: center; gap: 9px; margin-top: 18px; color: inherit; font: 800 12px/1.2 Arial, sans-serif; letter-spacing: .4px; }
  body.home-page .print-reading-content .print-commentary-heading small { display: block; margin-top: 3px; font-size: 12px; font-weight: 600; letter-spacing: 0; }
  body.home-page .print-reading-content .print-commentary-icon { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; }
  body.home-page .print-reading-content .print-commentary-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
  body.home-page .print-reading-content p { margin: 12px 0; }
}
body.home-page .site-footer { margin-top: 0; background: var(--v5-navy); color: #dce7f5; }
body.home-page .footer-inner { display: grid; grid-template-columns: 1.25fr 1fr 1fr 1fr; gap: 28px; width: min(1500px, calc(100% - 60px)); margin: 0 auto; padding: 42px 0 30px; }
body.home-page .footer-inner section { min-width: 0; }
body.home-page .footer-brand strong { display: block; color: #fff; font: 700 20px Georgia, serif; }
body.home-page .footer-inner h2 { margin: 0 0 10px; color: #fff; font: 700 17px Georgia, serif; }
body.home-page .footer-inner p { margin: 0; color: #c5d3e3; line-height: 1.6; overflow-wrap: anywhere; }
body.home-page .footer-inner .footer-links { margin-top: 14px; }
body.home-page .footer-inner .footer-links a { color: #fff; }
body.home-page .footer-bottom { display: flex; justify-content: space-between; gap: 16px; width: min(1500px, calc(100% - 60px)); margin: 0 auto; padding: 16px 0 22px; border-top: 1px solid rgba(255,255,255,.15); color: #aebfd3; font-size: 12px; }
body.home-page .footer-content { width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 42px 0 28px; }
body.home-page .footer-column h2, body.home-page .footer-wide h2 { color: #fff; font: 700 18px Georgia, serif; }
body.home-page .footer-column p, body.home-page .footer-wide p { color: #c5d3e3; line-height: 1.6; }
body.home-page .footer-links a { color: #fff; }
body.home-page .footer-note { width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 16px 0 22px; border-top: 1px solid rgba(255,255,255,.15); color: #aebfd3; }

@media (max-width: 820px) {
  body.home-page .header-inner { position: relative; flex-direction: row; align-items: center; justify-content: space-between; min-height: 66px; padding: 10px 16px; }
  body.home-page .brand strong { font-size: 19px; }
  body.home-page .brand small { font-size: 8px; }
  body.home-page .top-nav { display: none; position: absolute; top: 66px; left: 12px; right: 12px; padding: 10px; grid-template-columns: repeat(2, 1fr); border: 1px solid var(--v5-border); border-radius: 11px; background: #fff; box-shadow: var(--v5-shadow); }
  body.home-page .top-nav.is-open { display: grid; }
  body.home-page .top-nav a { text-align: center; }
  body.home-page .home-menu-toggle { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; font-size: 21px; }
  body.home-page .header-actions { margin-left: auto; gap: 2px; }
  body.home-page .support-btn { display: none; }
  body.home-page .header-inner > .font-controls { margin-left: auto; }
  body.home-page .hero-inner { width: min(100%, 720px); padding: 25px 22px 20px; }
  body.home-page .hero { min-height: 0; }
  body.home-page .hero-day-summary, body.home-page.home-v5 .hero-day-summary { grid-template-columns: 1fr 1fr; min-height: 0; }
  body.home-page .summary-date { grid-column: 1; grid-row: 1; }
  body.home-page .summary-fast { grid-column: 2; grid-row: 1; }
  body.home-page .summary-saints { grid-column: 1 / -1; grid-row: 2; }
  body.home-page.home-v5 .summary-date time { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 8px; }
  body.home-page.home-v5 .summary-date .date-number { width: 54px; font-size: 40px; letter-spacing: 0; }
  body.home-page.home-v5 .summary-date .date-details { min-width: 0; width: auto; }
  body.home-page.home-v5 .summary-date .date-details b { font-size: 11px; overflow-wrap: anywhere; }
  body.home-page.home-v5 .summary-date .date-details small { font-size: 11px; overflow-wrap: anywhere; }
  body.home-page.home-v5 .hero-day-summary > .summary-date + .summary-saints { border-left: 0; border-top: 1px solid #e1e7ec; }
  body.home-page .summary-date, body.home-page .summary-saints, body.home-page .summary-fast { min-height: auto; }
  body.home-page.home-v5 .hero-day-summary > .summary-date,
  body.home-page.home-v5 .hero-day-summary > .summary-saints,
  body.home-page.home-v5 .hero-day-summary > .summary-fast { min-height: auto; }
  body.home-page .summary-date, body.home-page .summary-saints, body.home-page .summary-fast { padding: 12px 16px; }
  body.home-page .hero-day-controls { align-items: center; gap: 10px; }
  body.home-page .hero-day-nav { justify-content: flex-end; gap: 5px; margin-top: 0; }
  body.home-page .hero-day-nav a, body.home-page .hero-day-nav span { padding: 5px 8px; font-size: 11px; }
  body.home-page .layout-shell { width: min(100% - 32px, 720px); }
  body.home-page .layout-shell { grid-template-columns: 1fr; }
  body.home-page .reading-main { padding-top: 30px; }
  body.home-page .reading-topline { align-items: flex-start; }
  body.home-page .reading-topline h2 { font-size: 26px; }
  body.home-page .reading-text, body.home-page .commentary-text { max-width: none; }
  body.home-page .video-teaser { grid-template-columns: 1fr; }
  body.home-page .video-info { padding: 21px 22px 23px; }
  body.home-page .home-media-grid { grid-template-columns: 1fr; }
  body.home-page .memorial-banner { align-items: flex-start; flex-wrap: wrap; }
  body.home-page .section-card { align-items: flex-start; flex-wrap: wrap; }
  body.home-page .calendar-preview { flex-basis: 180px; margin-left: auto; }
  body.home-page .right-sidebar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0 0 55px; }
  body.home-page .footer-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); width: min(100% - 32px, 720px); }
  body.home-page .footer-bottom { width: min(100% - 32px, 720px); }
}

@media (max-width: 720px) {
  body.home-page .reading-content-grid { grid-template-columns: 1fr; }
  body.home-page .reading-content-grid > .commentary-card { border-top: 1px solid #e6dcc8; border-left: 0; }
}

@media (max-width: 520px) {
  body.home-page .header-inner > .font-controls { display: none; }
  body.home-page .brand-logo { flex-basis: 44px; width: 44px; height: 44px; }
  body.home-page .brand-mark { width: 25px; height: 40px; font-size: 30px; }
  body.home-page .top-nav { top: 61px; }
  body.home-page .hero h2 { font-size: 34px; }
  body.home-page .hero-subtitle { font-size: 17px; max-width: 270px; }
  body.home-page .hero-quote { font-size: 13px; max-width: 300px; }
  body.home-page .hero-day-controls { align-items: flex-start; flex-direction: column; gap: 7px; }
  body.home-page .hero-day-nav { width: 100%; justify-content: space-between; }
  body.home-page .summary-date, body.home-page .summary-saints, body.home-page .summary-fast { padding: 11px 12px; }
  body.home-page .panel-heading { display: block; padding: 18px 19px 12px; }
  body.home-page .reading-panel { padding: 17px 18px 12px; }
  body.home-page .reading-card-head { padding: 0; }
  body.home-page .reading-card > .reading-topic { padding: 0; font-size: 19px; }
  body.home-page .reading-content-grid { grid-template-columns: 1fr; }
  body.home-page .reading-content-grid:has(> .commentary-text[hidden]) { grid-template-columns: 1fr; }
  body.home-page .reading-content-grid > .commentary-card { border-top: 1px solid #e6dcc8; border-left: 0; }
  body.home-page .panel-heading strong { display: block; margin-top: 6px; }
  body.home-page .reading-text { padding: 20px 18px 23px; }
  body.home-page .commentary-text { margin: 0; }
  body.home-page .reading-copy-actions { padding: 15px 18px 20px; }
  body.home-page .reading-export-actions { display: grid; }
  body.home-page .reading-export-actions .text-button { text-align: center; }
  body.home-page .section-heading { align-items: flex-start; }
  body.home-page .section-heading h2 { font-size: 24px; }
  body.home-page .section-heading-link { font-size: 13px; }
  body.home-page .article-teasers { grid-template-columns: 1fr; }
  body.home-page .section-card { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 14px; padding: 20px 18px; }
  body.home-page .section-card .service-copy { grid-column: 1 / -1; }
  body.home-page .info-service .service-icon { grid-row: 1; }
  body.home-page .info-service .btn { grid-column: 1 / -1; justify-self: start; }
  body.home-page .calendar-service .calendar-preview { grid-column: 1 / -1; width: 100%; margin: 0; }
  body.home-page .calendar-service { grid-template-columns: 1fr; }
  body.home-page .calendar-service .site-banner-slot { grid-column: 1 / -1; }
  body.home-page .right-sidebar { grid-template-columns: 1fr; padding-bottom: 45px; }
  body.home-page .footer-inner { grid-template-columns: 1fr; width: min(100% - 32px, 720px); }
  body.home-page .footer-bottom { display: grid; width: min(100% - 32px, 720px); }
}
body.home-page .rail-card.sidebar-questions { background: #edf5ff; border: 1px solid #c9ddf5; border-top: 4px solid #195cb2; padding: 20px; }
body.home-page .sidebar-questions-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; }
body.home-page .sidebar-questions-icon { display: grid; place-items: center; flex: 0 0 40px; height: 40px; color: #195cb2; background: #dbeaff; border-radius: 8px; }
body.home-page .sidebar-questions-label { font: 600 11px/1.5 Arial, sans-serif; color: #526e91; text-transform: uppercase; }
body.home-page .sidebar-questions-heading h2 { margin: 3px 0 0; font-size: 22px; line-height: 1.2; }
body.home-page .sidebar-question-item { padding: 16px 0; border-top: 1px solid #ccdcf0; overflow-wrap: anywhere; }
body.home-page .sidebar-question-item h3 { margin: 0 0 8px; font: 600 15px/1.5 Arial, sans-serif; }
body.home-page .sidebar-question-item h3 a { color: #102e54; text-decoration: none; }
body.home-page .sidebar-question-item p { margin: 0 0 10px; font: 400 14px/1.65 Arial, sans-serif; color: #4d617b; }
body.home-page .sidebar-question-more { font: 600 13px/1.5 Arial, sans-serif; color: #195cb2; text-decoration: none; }
body.home-page .sidebar-questions-all { display: block; padding-top: 14px; border-top: 1px solid #ccdcf0; font: 600 14px/1.5 Arial, sans-serif; color: #195cb2; text-decoration: none; }
body.home-page .sidebar-questions a:hover { text-decoration: underline; }
body.home-page .sidebar-questions a:focus-visible { outline: 2px solid #195cb2; outline-offset: 3px; }
body.home-page .day-share-dialog { width: min(560px, calc(100% - 32px)); max-height: 85vh; overflow: auto; box-sizing: border-box; padding: 22px; border: 1px solid #d8e3ef; border-radius: 8px; background: #fff; color: #10274a; }
body.home-page .day-share-dialog::backdrop { background: rgb(16 39 74 / 55%); }
body.home-page .day-share-dialog h2 { margin: 0 0 16px; font-size: 24px; }
body.home-page .day-share-dialog img { display: block; width: 100%; height: auto; }
body.home-page .day-share-dialog p { font-size: 14px; line-height: 1.6; }
body.home-page .day-share-actions { display: flex; flex-wrap: wrap; gap: 10px; }
body.home-page .day-share-actions button:disabled { opacity: .55; cursor: wait; }
body.home-page .day-share-modes { display: flex; gap: 0; padding: 0; margin: 0 0 18px; border: 0; }
body.home-page .day-share-modes legend { padding: 0; margin-bottom: 8px; font: 400 14px/1.5 Arial, sans-serif; color: #526580; }
body.home-page .day-share-modes label { position: relative; display: flex; flex: 1; cursor: pointer; }
body.home-page .day-share-modes input { position: absolute; opacity: 0; width: 1px; height: 1px; }
body.home-page .day-share-modes span { display: block; width: 100%; padding: 11px 8px; text-align: center; border: 1px solid #cbd9ea; background: #f5f8fc; color: #405775; font: 600 14px/1.4 Arial, sans-serif; }
body.home-page .day-share-modes label:first-of-type span { border-radius: 6px 0 0 6px; }
body.home-page .day-share-modes label:last-of-type span { border-radius: 0 6px 6px 0; }
body.home-page .day-share-modes input:checked + span { color: #fff; background: #185bb5; border-color: #185bb5; }
body.home-page .day-share-modes input:focus-visible + span { outline: 2px solid #185bb5; outline-offset: 3px; }
body.home-page .mobile-quick-actions:empty { display: none; }
body.home-page .mobile-quick-actions > .quick-actions { margin: 20px 0; }
