/* Eternal Viewing Memorials — soft ivory / candle gold / sea slate */
.evm-page{
	--evm-ink:#2A3B3D;
	--evm-ink-soft:#5A6D6F;
	--evm-paper:#FBFAF6;
	--evm-panel:#F1EEE6;
	--evm-gold:#B98A2F;
	--evm-gold-soft:#E8D9B8;
	--evm-live:#B23A3A;
	--evm-teal:#2E6E6A;
	--evm-radius:10px;
	font-family:'Source Sans 3',system-ui,sans-serif;
	background:var(--evm-paper);
	color:var(--evm-ink);
	line-height:1.6;
	font-size:17px;
	padding-bottom:40px;
}
.evm-wrap{max-width:880px;margin:0 auto;padding:0 20px}
.evm-page a{color:var(--evm-teal)}

/* status band */
.evm-status-band{background:var(--evm-panel);padding:14px 0}
.evm-status-band .evm-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between}
.evm-badge{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.85rem;letter-spacing:.06em;padding:6px 14px;border-radius:999px;text-transform:uppercase;color:#fff}
.evm-badge.live{background:var(--evm-live)}
.evm-badge.live .dot{width:9px;height:9px;border-radius:50%;background:#fff;animation:evm-pulse 1.6s ease-in-out infinite}
@keyframes evm-pulse{0%,100%{opacity:1}50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){.evm-badge.live .dot{animation:none}}
.evm-badge.upcoming{background:var(--evm-gold)}
.evm-badge.replay{background:var(--evm-ink-soft)}
.evm-tz-note{font-size:.92rem;color:var(--evm-ink-soft)}
.evm-tz-note strong{color:var(--evm-ink)}
.evm-countdown{font-weight:700;color:var(--evm-gold);font-size:.95rem}

/* heading */
.evm-memorial-head{text-align:center;padding:38px 20px 26px}
.evm-eyebrow{font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;color:var(--evm-gold);font-weight:700;margin-bottom:10px}
.evm-name{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(2rem,5.5vw,3.1rem);line-height:1.15;margin:0;color:var(--evm-ink)}
.evm-dates{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.25rem;color:var(--evm-ink-soft);margin-top:6px}
.evm-dates::before,.evm-dates::after{content:" ~ ";color:var(--evm-gold)}
.evm-intro{color:var(--evm-ink-soft);margin-top:8px}

/* portrait */
.evm-portrait{text-align:center;margin-bottom:22px}
.evm-portrait img{border-radius:var(--evm-radius);max-width:280px;height:auto;box-shadow:0 6px 24px rgba(42,59,61,.15)}

/* player */
.evm-player{position:relative;background:#10191A;border-radius:var(--evm-radius);aspect-ratio:16/9;overflow:hidden;box-shadow:0 8px 30px rgba(42,59,61,.18)}
.evm-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.evm-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#D9D4C5;text-align:center;padding:20px}
.evm-flame{width:34px;height:34px;fill:var(--evm-gold)}
.evm-placeholder p{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-style:italic;margin:0}
.evm-placeholder small{font-size:.9rem;color:#9AA6A0}

/* details */
.evm-details{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 8px}
@media(max-width:640px){.evm-details{grid-template-columns:1fr}}
.evm-card{background:#fff;border:1px solid var(--evm-gold-soft);border-radius:var(--evm-radius);padding:18px 20px}
.evm-card h3{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--evm-gold);margin:0 0 6px}
.evm-card p{font-size:1.02rem;margin:0}
.evm-card .sub{color:var(--evm-ink-soft);font-size:.92rem;margin-top:2px}

/* obituary */
.evm-obituary{background:#fff;border:1px solid var(--evm-gold-soft);border-radius:var(--evm-radius);padding:26px 28px;margin:22px 0;font-size:1.05rem}
.evm-obituary h2,.evm-obituary h3{font-family:'Cormorant Garamond',serif;color:var(--evm-ink)}

/* help */
.evm-help{background:var(--evm-panel);border-radius:var(--evm-radius);padding:24px;margin:26px 0}
.evm-help h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.5rem;margin:0 0 10px}
.evm-help ol{padding-left:22px;display:grid;gap:8px;font-size:1rem;margin:0}
.evm-call{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.evm-phone{background:var(--evm-teal);color:#fff !important;text-decoration:none;font-weight:700;font-size:1.15rem;padding:12px 22px;border-radius:999px;display:inline-block}
.evm-call span{color:var(--evm-ink-soft);font-size:.92rem}

/* condolences */
.evm-condolence{text-align:center;padding:8px 0 20px}
.evm-condolence a{display:inline-block;border:1.5px solid var(--evm-gold);color:var(--evm-gold);text-decoration:none;font-weight:700;padding:11px 26px;border-radius:999px}
.evm-condolence p{color:var(--evm-ink-soft);font-size:.95rem;margin-top:10px}

/* search */
.evm-search{display:flex;gap:10px;max-width:520px;margin:18px auto 0}
.evm-search input{flex:1;padding:13px 18px;border:1.5px solid var(--evm-gold-soft);border-radius:999px;font-size:1rem;background:#fff;color:var(--evm-ink)}
.evm-search input:focus{outline:2px solid var(--evm-gold);outline-offset:1px}
.evm-search button{background:var(--evm-teal);color:#fff;border:0;font-weight:700;font-size:1rem;padding:13px 24px;border-radius:999px;cursor:pointer}
@media(max-width:480px){.evm-search{flex-direction:column}.evm-search button{width:100%}}

/* directory */
.evm-directory{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:28px 0}
.evm-dir-card{background:#fff;border:1px solid var(--evm-gold-soft);border-radius:var(--evm-radius);overflow:hidden;text-decoration:none;color:var(--evm-ink);transition:box-shadow .15s ease,transform .15s ease}
.evm-dir-card:hover{box-shadow:0 8px 24px rgba(42,59,61,.15);transform:translateY(-2px)}
@media (prefers-reduced-motion:reduce){.evm-dir-card:hover{transform:none}}
.evm-dir-photo{aspect-ratio:4/3;background:var(--evm-panel);overflow:hidden}
.evm-dir-photo img{width:100%;height:100%;object-fit:cover}
.evm-dir-photo-empty{display:flex;align-items:center;justify-content:center}
.evm-dir-photo-empty svg{width:36px;height:36px;fill:var(--evm-gold-soft)}
.evm-dir-body{padding:14px 16px 18px}
.evm-dir-body h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.35rem;margin:8px 0 2px;line-height:1.2}
.evm-dir-body .sub{color:var(--evm-ink-soft);font-size:.9rem;margin:0}
.evm-dir-body .evm-badge{font-size:.72rem;padding:4px 10px}

.evm-empty{text-align:center;padding:40px 0;color:var(--evm-ink-soft)}
.evm-pagination{text-align:center;margin:20px 0}
