/* YAALKALAI RIP — professional broadcast edition */
body{font-size:15px;line-height:1.5;background:var(--bg);background-image:radial-gradient(ellipse at 90% 0,color-mix(in srgb,var(--cyan) 7%,transparent),transparent 45%)}
header{height:84px;padding:0 38px;border-bottom:1px solid var(--border);background:var(--theme-header,var(--panel));box-shadow:0 4px 28px #0001}
.brand{font-size:19px;letter-spacing:1.4px;gap:13px}.brand-mark{transform:none;border:0;border-radius:12px;width:40px;height:40px;background:var(--cyan);color:var(--accent-ink,#07181a);box-shadow:0 5px 20px color-mix(in srgb,var(--cyan) 15%,transparent);font-size:16px}.brand b{font-size:10px;vertical-align:2px;padding:4px 5px}
.header-right{gap:20px}.edition{display:none}.language-select{border:1px solid var(--border);border-radius:8px;padding:9px 10px;background:var(--panel);font-size:11px}.live-link{font-size:10px;letter-spacing:1px;padding:10px 14px}.book-top{padding:11px 16px;background:var(--cyan);border-radius:8px;color:var(--accent-ink,#07181a);font-weight:700;font-size:11px}.book-top span{color:inherit;margin-left:14px}.admin-link{font-size:11px;color:var(--muted)}
aside{top:84px;width:220px;padding:32px 18px;background:var(--theme-header,var(--panel));border-color:var(--border)}.side-label{font-size:9px;letter-spacing:2px;color:var(--muted);padding:0 13px;margin-bottom:18px}#side-categories{gap:6px}.side-nav{font-size:11px;border:1px solid transparent;border-radius:9px;padding:12px;gap:11px;color:var(--muted)}.side-nav.active{background:var(--accent-soft);color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 24%,transparent)}.side-nav:hover{background:var(--accent-soft)}.side-nav svg{width:16px;height:16px}.count{border-radius:5px;padding:1px 5px;font-size:9px;background:var(--bg);color:var(--muted)}.side-separator{margin:28px 12px}.side-copy{font-size:22px;line-height:1.5;letter-spacing:-.7px}.side-note{font-size:11px;line-height:1.9}.side-book{font-size:10px;padding-top:20px}.sidebar-bottom{font-size:8px;letter-spacing:1.2px}
main{margin-left:220px;padding:124px 42px 0;max-width:1840px}.page-top{position:relative;align-items:flex-end;gap:30px;padding:26px 0 35px;border-bottom:1px solid var(--border)}.page-top>div{max-width:690px}.page-top .eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:10px;letter-spacing:2.4px;color:var(--cyan);margin-bottom:16px}.page-top .eyebrow:before{content:'';width:22px;height:1px;background:currentColor}h1{font:600 clamp(34px,3.8vw,60px)/1.18 Manrope,Arial,sans-serif;letter-spacing:-2.2px;max-width:750px;margin:0 0 18px}.mobile-break{display:block}.page-top p{font-size:13px;line-height:1.9;margin:0;color:var(--muted);max-width:420px}.search-box{flex-shrink:0;width:255px;height:46px;border:1px solid var(--border);border-radius:10px;padding:0 14px;background:var(--panel);box-shadow:0 5px 18px #0001}.search-box input{font-size:11px;min-width:0}.search-box>span{display:none}.search-box svg{width:17px;height:17px;color:var(--muted)}
.toolbar{margin:24px 0 22px;gap:15px}#chips{gap:8px}.chip{border-radius:7px;padding:9px 13px;font-size:10px;letter-spacing:.15px;border-color:var(--border);background:transparent;color:var(--muted)}.chip.active{color:var(--accent-ink,#07181a);background:var(--cyan);border-color:var(--cyan)}.chip svg{width:13px;height:13px}.demo-note{border:1px solid var(--border);padding:10px 13px;border-radius:8px;font-size:10px;line-height:1.7;background:var(--panel);margin-bottom:28px}.demo-tag{font-size:8px;border-radius:4px;letter-spacing:1px}
.section{margin-bottom:40px}.section-heading{margin-bottom:20px;align-items:center;gap:12px}.section-heading h2{font:600 21px/1.4 Manrope,Arial,sans-serif;letter-spacing:-.6px;white-space:nowrap}.section-heading:after{content:'';height:1px;background:var(--border);flex:1;order:1}.section-heading>span{order:2;font-size:10px;letter-spacing:.2px;background:var(--panel);border:1px solid var(--border);padding:4px 9px;border-radius:20px}.live-pulse{width:7px;height:7px;margin-right:10px;box-shadow:0 0 0 5px color-mix(in srgb,var(--red) 12%,transparent)}
.event-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.event-card{border:1px solid var(--border);border-radius:13px;background:var(--panel);overflow:hidden;padding:7px 7px 17px;transition:border-color .2s,transform .2s,box-shadow .2s}.event-card:hover{border-color:var(--cyan);transform:translateY(-3px);box-shadow:0 12px 30px #0002}.thumb{border:0;border-radius:8px;isolation:isolate}.thumb:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0005);pointer-events:none;z-index:-1}.event-category{font-size:8px;letter-spacing:1.2px;margin:16px 10px 7px}.event-card h3{font-size:13px;line-height:1.7;margin:0 10px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:44px}.event-meta{font-size:9px;gap:5px;margin:12px 10px 0;padding-top:12px;border-top:1px solid var(--border);flex-wrap:wrap}.badge{font-size:8px;border-radius:5px;top:10px;left:10px;padding:6px 9px;backdrop-filter:blur(8px)}.badge.replay{font-size:8px;bottom:10px;right:10px}.play-hover span{width:50px;height:50px;background:#fff;color:#121a25;box-shadow:0 5px 30px #0003}.play-hover{background:#0003}.event-card:focus-visible{outline-offset:3px}
.inline-live-player{max-width:none;margin:0 0 24px;border:1px solid var(--border);border-radius:14px;box-shadow:0 14px 45px #0002;scroll-margin-top:108px;background:#000}.player-slot{scroll-margin-top:108px}.video-player{background:#000}.floating-player-shell.is-floating{border-radius:12px;box-shadow:0 16px 55px #0007}.floating-player-bar{letter-spacing:.1px}
.booking-banner{padding:35px;border-radius:14px;margin:50px 0 24px;background:radial-gradient(ellipse at 0 100%,var(--accent-soft),transparent 80%),var(--panel);border:1px solid var(--border);gap:23px}.banner-icon{width:54px;height:54px;border-radius:12px;background:var(--accent-soft)}.booking-banner .eyebrow{letter-spacing:1.8px;font-size:8px}.booking-banner h2{font-size:24px;letter-spacing:-.8px}.booking-banner p{font-size:12px;line-height:1.8}.primary{border-radius:8px;font-size:11px;padding:14px 18px}.booking-banner .primary{min-height:45px}footer{padding:25px 0 30px;font-size:9px}.footer-brand{font-size:12px}dialog{background:var(--panel);border-color:var(--border);border-radius:16px}dialog label{color:var(--white)}
@media(min-width:1600px){.event-grid{grid-template-columns:repeat(4,minmax(0,1fr))}main{padding-inline:52px}.inline-live-player{max-width:1100px}}
@media(max-width:1200px){header{padding-inline:26px}.header-right{gap:14px}main{padding-inline:28px}.search-box{width:220px}.page-top{align-items:flex-start;flex-direction:column;gap:24px}.page-top>div{max-width:100%}.search-box{width:100%;max-width:420px}h1{font-size:44px}.event-grid{gap:16px}.event-card h3{font-size:12px}.booking-banner{padding:26px}.booking-banner h2{font-size:21px}}
@media(max-width:950px){.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-banner{align-items:flex-start;flex-direction:column}.booking-banner .primary{margin-left:0}.banner-icon{display:none}.header-right{gap:12px}.book-top{display:none}h1{font-size:40px}}
@media(max-width:650px){header{height:70px;padding:0 16px;gap:12px}.brand{font-size:12px;gap:8px;letter-spacing:.7px}.brand-mark{width:29px;height:29px;border-radius:8px;font-size:12px}.brand b{font-size:8px;padding:3px}.header-right{gap:8px}.language-select{font-size:9px;padding:7px 4px;max-width:72px}.live-link{display:none}.admin-link{font-size:10px}.mobile-menu{font-size:19px}.mobile-menu.icon-button{width:auto;min-width:20px}.header-right .edition{display:none}aside{top:70px;width:240px;padding:28px 18px}main{margin-left:0;padding:94px 17px 0}.page-top{padding:12px 0 26px;gap:22px}.page-top .eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:15px}h1{font-size:36px;letter-spacing:-1.35px;line-height:1.22;margin-bottom:14px}.page-top p{font-size:12px;max-width:330px}.search-box{max-width:none;height:43px}.search-box input{font-size:12px}.toolbar{margin:20px -17px 20px 0}.chip{font-size:10px;padding:8px 11px}.demo-note{font-size:9px;padding:9px 11px;margin-bottom:24px}.section-heading{gap:10px;margin-bottom:16px}.section-heading h2{font-size:19px}.section-heading>span{font-size:8px;padding:3px 7px}.section{margin-bottom:30px}.event-grid{gap:13px}.event-card{padding:5px 5px 12px;border-radius:10px}.thumb{border-radius:6px}.event-category{font-size:7px;margin:11px 5px 6px;letter-spacing:.5px}.event-card h3{font-size:11px;line-height:1.65;margin-inline:5px;min-height:37px}.event-meta{font-size:8px;margin:9px 5px 0;padding-top:9px;gap:4px}.event-meta svg{display:none}.badge{font-size:6px;padding:4px 6px;top:6px;left:6px}.badge.replay{font-size:7px;bottom:6px;right:6px}.badge.scheduled{font-size:6px}.play-hover span{width:36px;height:36px;font-size:12px}.inline-live-player{border-radius:10px;scroll-margin-top:84px;margin-bottom:18px}.player-slot{scroll-margin-top:84px}.booking-banner{margin-top:35px;padding:24px;border-radius:11px;gap:18px}.booking-banner h2{font-size:23px;line-height:1.4}.booking-banner p{font-size:11px}.booking-banner .eyebrow{font-size:7px}.booking-banner .primary{width:100%}footer{gap:12px;padding-top:22px}.footer-brand{font-size:11px}footer>span{font-size:7px}footer button{font-size:8px}dialog{padding:30px 22px}}
@media(max-width:360px){h1{font-size:31px}.brand{font-size:10px}.event-grid{grid-template-columns:1fr}.event-card h3{min-height:0;font-size:13px}.event-meta{font-size:10px}}
@media(prefers-reduced-motion:reduce){.event-card:hover{transform:none}}
/* Admin-managed homepage banner */
.page-top.has-banner-image{isolation:isolate;overflow:hidden;min-height:325px;padding:38px;border:1px solid var(--border);border-radius:16px;align-items:flex-end;background:#101b2b;color:#fff}.page-banner-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.page-top.has-banner-image:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#06101de8 0%,#06101dbd 52%,#06101d66 100%)}.page-top.has-banner-image h1{font-size:clamp(30px,3.4vw,52px);max-width:660px;color:#fff}.page-top.has-banner-image p{color:#e1e7ef}.page-top.has-banner-image .eyebrow{color:#fff}.page-top.has-banner-image .hero-copy{position:relative;min-width:0}.page-top.has-banner-image .search-box{background:#0b1524cc;border-color:#ffffff50;color:#fff}.page-top.has-banner-image .search-box input{color:#fff}.page-top.has-banner-image .search-box input::placeholder{color:#d0d8e3}.page-top.has-banner-image .search-box svg{color:#d0d8e3}
@media(max-width:1200px){.page-top.has-banner-image{align-items:flex-start;padding:30px}.page-top.has-banner-image h1{font-size:38px}}
@media(max-width:650px){.page-top.has-banner-image{padding:25px 20px;min-height:320px;border-radius:12px;gap:24px}.page-top.has-banner-image h1{font-size:30px;letter-spacing:-1px;line-height:1.35;overflow-wrap:anywhere}.page-top.has-banner-image:after{background:#06101dc4}.page-top.has-banner-image p{font-size:11px;line-height:1.9}.page-top.has-banner-image .search-box{width:100%}}

/* Funeral notices open the dedicated memorial website. */
a.funerals-link{display:flex;align-items:center;gap:8px}.funerals-link .external-arrow{font-size:12px;opacity:.65}.side-nav.funerals-link .external-arrow{margin-left:auto}
