.schedule-freshness { border-left: 2px solid #a79568; color: #5f6d62; margin: 18px 0; padding-left: 12px; }
.schedule-freshness p { font-size: .78rem; line-height: 1.7; margin: 3px 0; }
.schedule-freshness a { color: #254d40; text-underline-offset: 3px; }
.schedule-freshness .schedule-freshness-notice { color: #775c31; }
.page-home #home-schedule { scroll-margin-top: 140px; }
.home-schedule-search { margin: 20px 0 0; }
.home-schedule-search label { color: #40594a; display: block; font-size: .8rem; margin-bottom: 7px; }
.home-schedule-search > div { display: flex; gap: 8px; }
.home-schedule-search input { background: #fffef9; border: 1px solid #cbd5c4; border-radius: 4px; color: #233e35; flex: 1 1 0; font: inherit; font-size: .88rem; min-height: 46px; min-width: 0; padding: 9px 12px; width: 0; }
.home-schedule-search button { background: #254d40 !important; border: 1px solid #254d40; color: #fff; flex: 0 0 auto; min-height: 46px; padding: 9px 20px; width: auto; }
.page-home .home-schedule-preview .home-schedule-list { display: grid; gap: 9px; }
.page-home .home-schedule-row { color: inherit; text-decoration: none; transition: border-color .15s; }
.page-home .home-schedule-row:hover { border-color: #91a887; }
.page-home .home-schedule-row .home-schedule-event { color: #856b3d; font-size: 12px; margin: 0 0 4px; }
.page-home .home-schedule-row .home-schedule-funeral { font-size: 12px; margin-top: 5px; }
.page-home .home-schedule-preview-head { align-items: center; flex-direction: row; gap: 12px; }
.home-schedule-heading { min-width: 0; }
.home-schedule-heading > span { display: block; }
.page-home #home-schedule .home-schedule-playback { background: #fffef9 !important; border: 1px solid #c7d3bd !important; color: #254d40 !important; flex: 0 0 auto; font-size: 12px; min-height: 40px; padding: 8px 10px; width: auto; }
.page-home #home-schedule .home-schedule-playback > span { color: inherit; font-size: inherit; }
.page-home #home-schedule .home-schedule-playback[aria-pressed="true"] { background: #e2e9da !important; }
.home-schedule-playback[x-cloak] { display: none !important; }
.page-home .home-schedule-preview .home-schedule-list--auto { background: none; max-height: 320px; overflow-y: auto; overscroll-behavior-y: contain; padding-right: 5px; scroll-behavior: auto; scrollbar-width: thin; scrollbar-color: #b5c4a8 transparent; touch-action: pan-y; }
.page-home .home-schedule-list--auto > article { min-width: 0; }
@media (prefers-reduced-motion: reduce) {
    .page-home .home-schedule-row { transition: none; }
}
@media (max-width: 760px) {
    .home-schedule-search input { font-size: 1rem; }
    .home-schedule-search button { padding-left: 16px; padding-right: 16px; }
    .page-home .home-schedule-copy .storefront-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .page-home .home-schedule-copy .storefront-button { width: auto; }
    .page-home .home-schedule-copy .storefront-button.primary { grid-column: 1 / -1; }
    .page-home .home-schedule-row { grid-template-columns: 88px minmax(0, 1fr); gap: 10px; }
    .page-home .home-schedule-row .home-schedule-date { border-bottom: 0; border-right: 1px solid #dce1d7; padding: 0 9px 0 0; }
    .page-home .home-schedule-date strong { font-size: .82rem; white-space: nowrap; }
}
.page-home .home-resources{display:block;margin-bottom:28px}
.page-home .home-resources #home-schedule{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:start;background:#f0f3eb;border:1px solid #dce4d5;border-top:3px solid #b7a06a;border-radius:10px;padding:28px}
.page-home .home-resources .home-schedule-copy h2{font-size:clamp(21px,2.1vw,28px);line-height:1.45;margin:8px 0 12px}
.page-home .home-resources .home-schedule-copy>p{max-width:40em;margin:0;font-size:13px;line-height:1.85}
.page-home .home-resources .home-schedule-copy .storefront-actions{margin:14px 0;gap:8px}
.page-home .home-resources .home-schedule-copy .storefront-actions>a{min-height:42px}
.page-home .home-resources .schedule-freshness{margin:16px 0 0;padding-top:12px;border-top:1px solid #dce4d5;font-size:12px}
.page-home .home-resources .schedule-freshness p{font-size:12px;line-height:1.7;margin:3px 0}
.page-home .home-resources .home-schedule-preview{margin:0;min-width:0;padding:16px;background:#fff;border:1px solid #d5e1d7;box-shadow:none}
.page-home .home-resources .home-schedule-list--auto{max-height:330px}
.page-home .home-resources .home-hall-shortcuts{margin-top:16px;padding:14px 0 0;border-top:1px solid #dce4d5}
.page-home .home-resources .home-hall-shortcuts .home-section-heading{margin:0 0 8px}
.page-home .home-resources .home-hall-shortcuts h2{font-family:inherit;font-size:14px;margin:0}
.page-home .home-resources .home-hall-shortcuts .storefront-kicker,.page-home .home-resources .home-hall-coverage,.page-home .home-resources .home-hall-card-copy>span{display:none}
.page-home .home-resources .home-hall-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.page-home .home-resources .home-hall-card{grid-template-columns:28px minmax(0,1fr) auto;gap:8px;padding:10px 8px;border:0;border-radius:5px;min-height:48px}
.page-home .home-resources .home-hall-card .home-hall-icon{height:28px;width:28px;grid-row:1}
.page-home .home-resources .home-hall-card .home-hall-icon svg{height:17px;width:17px}
.page-home .home-resources .home-hall-card .home-hall-card-copy strong{font-size:12px;line-height:1.6}
.page-home .home-resources .home-hall-card>.home-hall-action{grid-row:1}
.page-home .home-service-details{margin:0 0 24px;padding:0;border-top:1px solid #dce4d5;border-bottom:1px solid #dce4d5}
.page-home .home-service-overview{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;cursor:pointer;list-style:none;min-height:52px}
.page-home .home-service-overview::-webkit-details-marker{display:none}
.page-home .home-service-overview h2{font-family:inherit;font-size:15px;margin:0}
.page-home .home-service-overview>span{font-size:22px;color:#71816b;transition:transform .2s}
.page-home .home-service-details[open]>.home-service-overview>span{transform:rotate(45deg)}
.page-home .home-service-overview:focus-visible{outline:2px solid #254d40;outline-offset:3px}
@media(max-width:900px){.page-home .home-resources .home-hall-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-home .home-resources #home-schedule{gap:22px;padding:22px}}
@media(max-width:600px){.page-home .home-resources #home-schedule{grid-template-columns:minmax(0,1fr);gap:18px;padding:19px 16px}.page-home .home-resources .home-schedule-copy h2{font-size:23px}.page-home .home-resources .home-schedule-preview{padding:12px}.page-home .home-resources .home-hall-grid{gap:4px}.page-home .home-resources .home-hall-card{padding:8px 3px;gap:5px}.page-home .home-resources .home-hall-card .home-hall-card-copy strong{font-size:12px}.page-home .home-resources .home-hall-card>.home-hall-action{display:none}}

/* Mobile groups retain source order and reserve the largest group's measured height. */
.home-schedule-group-controls { display:flex; align-items:center; flex-wrap:nowrap; gap:12px; margin:12px 0; }
.home-schedule-group-controls > span { display:inline-flex; align-items:center; flex:0 0 auto; white-space:nowrap; line-height:1; font-variant-numeric:tabular-nums; }
.home-schedule-group-controls[x-cloak] { display:none!important; }
.home-schedule-group-controls button { min-height:44px; padding:8px 16px; flex:0 0 auto; white-space:nowrap; }
.page-home .home-schedule-preview .home-schedule-list--grouped { max-height:none; overflow:visible; padding-right:0; align-content:start; transition:opacity 100ms linear; }
.page-home .home-schedule-preview .home-schedule-list--grouped.is-changing-group { opacity:0; }
.page-home .home-schedule-list > article[hidden] { display:none!important; }
.home-schedule-full-link { margin-top:12px; }
@media (prefers-reduced-motion:reduce) { .page-home .home-schedule-preview .home-schedule-list--grouped { transition:none; } }
