*,::after,::before{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img{max-width:100%}::selection{background:var(--selection)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}.wrap--narrow{max-width:760px}.wrap--mid{max-width:900px}.site-nav{position:sticky;top:0;z-index:20;background:var(--nav-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--hairline)}.brand,.nav-inner{display:flex;align-items:center}.nav-inner{max-width:var(--maxw);margin:0 auto;padding:16px var(--gutter);justify-content:space-between;gap:20px}.brand{gap:11px}.brand-word{font-family:var(--font-display);font-weight:600;color:var(--ink)}.nav-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.nav-link{color:var(--nav-link);border-bottom:2px solid transparent;padding:5px 0 4px;transition:color .18s ease,border-color .18s ease}.nav-link:hover{color:var(--accent)}.nav-link.active{border-bottom-color:var(--accent);color:var(--ink)}.nav-toggle{display:none;background:0 0;border:0;cursor:pointer;width:42px;height:42px;padding:9px;margin:-6px -9px -6px 0;flex-direction:column;justify-content:center;gap:5px}.nav-toggle__bar{display:block;width:24px;height:2px;border-radius:2px;background:var(--ink);transition:transform .22s ease,opacity .22s ease}.cross-mark{position:relative;display:inline-block;width:.77em;height:1em;flex:none;color:var(--cross-color, var(--accent))}.cross-mark::after,.cross-mark::before{content:"";position:absolute;background:currentColor;border-radius:2px}.cross-mark::before{left:40%;top:0;width:20%;height:100%}.cross-mark::after{left:10%;top:27%;width:80%;height:20%}.eyebrow{font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin:0 0 20px}.display,.page-title,.section-head{font-family:var(--font-display);color:var(--ink);margin:0}.page-title,.section-head{font-weight:500}.page-title{line-height:1.05;font-size:clamp(32px,7.5vw,54px)}.section-head{font-size:clamp(25px,5.5vw,30px)}.rule-line{height:1px;background:var(--hairline);border:0}.btn{display:inline-block;font-family:var(--font-body);cursor:pointer;text-align:center;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn:hover{transform:translateY(-2px)}.btn--ghost,.btn--pill,.btn--tag{text-transform:uppercase;font-weight:600;border-radius:30px}.btn--pill{font-size:11.5px;letter-spacing:.2em;color:#fff;background:var(--accent);padding:13px 28px}.btn--ghost,.btn--tag{font-size:12px;letter-spacing:.16em;color:var(--accent);border:1px solid var(--accent-border);padding:12px 26px}.btn--tag{letter-spacing:.12em;padding:12px 22px;border-radius:8px}.media-frame{border-radius:var(--frame-radius);overflow:hidden;box-shadow:var(--shadow);border:var(--frame-border)}.media-frame video{width:100%;aspect-ratio:16/9;display:block;background:#000}.eulogies{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.eulogy-video{aspect-ratio:16/10;width:100%;display:block;border-radius:10px;background:#000;object-fit:cover}.eulogy-name,.eulogy-role{font-family:var(--font-display)}.eulogy-name{font-weight:600;font-size:19px;color:var(--ink);margin:14px 0 2px}.eulogy-role{font-style:italic;font-size:15px;color:var(--muted);margin:0}.card-images{display:flex;gap:24px;justify-content:center;flex-wrap:wrap}.card-images img{width:240px;border-radius:10px;height:auto;box-shadow:var(--shadow-soft)}.poem-panel{background:var(--dark-surface);border-radius:18px;padding:56px clamp(24px,5vw,60px);text-align:center}.poem-label{font-size:11.5px;letter-spacing:.3em;text-transform:uppercase;font-weight:600;color:var(--accent-on-dark);margin:0 0 26px}.poem-body{font-family:var(--font-display);font-style:italic;font-size:21px;line-height:1.72;color:#f1ebf6;max-width:600px;margin:0 auto}.poem-body p{margin:0 0 1.1em}.poem-body p:last-child{margin-bottom:0}.poem-credit{font-family:var(--font-body);font-size:13px;letter-spacing:.06em;color:var(--muted-on-dark);margin:30px 0 0}.link-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.all-saints-date{font-family:var(--font-body);font-size:14px;color:var(--muted);margin:0 0 24px}.audio-card{background:var(--surface-alt);border-radius:14px;padding:20px 24px;border:1px solid var(--hairline);box-shadow:var(--shadow-soft)}.audio-card audio{width:100%;display:block}.credits .by,.lyrics{font-family:var(--font-display);color:var(--ink)}.lyrics{white-space:pre-line;text-align:center}.credits{margin-top:32px;padding-top:24px;border-top:1px solid var(--hairline)}.credits .by{font-weight:600;margin:0 0 4px}.coming-soon .soon,.credits .by--muted{font-family:var(--font-display);font-style:italic;color:var(--muted);margin:0}.coming-soon,.credits{text-align:center}.coming-soon .soon{font-size:20px;margin:32px 0 0}.site-footer{border-top:1px solid var(--hairline);margin-top:24px}.footer-bouquet{text-align:center}.footer-bouquet__frame{width:220px;max-width:55%;aspect-ratio:558/494;margin:8px auto 0;overflow:hidden}.footer-bouquet__img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.footer-inner{max-width:var(--maxw);margin:0 auto;padding:40px var(--gutter);justify-content:space-between;flex-wrap:wrap;gap:16px}.footer-inner,.footer-mark,.footer-meta{display:flex;align-items:center}.footer-mark{gap:10px;font-family:var(--font-display);font-style:italic;font-size:18px;color:var(--muted)}.footer-meta{gap:20px;flex-wrap:wrap}.footer-copy{letter-spacing:.1em;color:var(--faint)}.footer-back,.footer-copy,.footer-note,.footer-toggle{font-family:var(--font-body);font-size:11px}.footer-toggle{font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent-border);border-radius:30px;padding:7px 15px;transition:background .18s ease,color .18s ease}.footer-toggle:hover{background:var(--accent);color:#fff}.footer-back,.footer-note{color:var(--muted)}.footer-note{font-weight:600;letter-spacing:.16em;text-transform:uppercase}.footer-back{letter-spacing:.06em;border-bottom:1px solid var(--hairline);padding-bottom:1px}.footer-back:hover{color:var(--accent)}@media (max-width:760px){.eulogies{grid-template-columns:1fr}.site-nav.js-nav .nav-toggle,.site-nav.js-nav.nav-open .nav-links{display:flex}.site-nav.js-nav .nav-links{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;align-items:stretch;background:var(--nav-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--hairline);padding:4px 0 10px}.site-nav.js-nav .nav-link{padding:13px var(--gutter);border-bottom:0}.site-nav.js-nav .nav-link.active{border-bottom:0;color:var(--accent)}.nav-open .nav-toggle__bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-open .nav-toggle__bar:nth-child(2){opacity:0}.nav-open .nav-toggle__bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-links{gap:6px}}