:root{color-scheme:light;--paper:#f4f1e9;--ink:#283e36;--muted:#62685e;--line:#d4d4c6;--gold:#857448;font-family:'Trebuchet MS',Arial,sans-serif;background:var(--paper);color:var(--ink)}
*{box-sizing:border-box}body{margin:0}a{color:inherit}a:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:7px}::selection{background:#d9dfcf}.skip{position:absolute;top:-100px;left:20px;background:var(--ink);color:var(--paper);padding:12px;z-index:10}.skip:focus{top:12px}
.site-header{max-width:1440px;margin:auto;padding:32px 6%;display:flex;justify-content:space-between;align-items:center;gap:20px}.family-home{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-size:19px;letter-spacing:-.6px}.family-home svg{width:38px;height:38px}.header-label,.eyebrow{font-size:10px;font-weight:400;letter-spacing:2.2px;line-height:1.6}.header-label{color:var(--muted)}
main{max-width:1280px;margin:auto}.portrait-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(44px,8vw,120px);align-items:center;padding:42px 6% 75px}.portrait{margin:0}.portrait-frame{padding:12px;background:#e9e5da;border:1px solid #dcd7c9;box-shadow:0 14px 45px #283e3610}.portrait img{display:block;width:100%;height:auto;object-fit:contain}.portrait figcaption{font-size:10px;color:var(--muted);margin-top:16px;letter-spacing:.35px;line-height:1.7}.portrait figcaption span{padding:0 4px}.introduction{padding:4px 0 25px}.eyebrow{margin:0 0 25px;color:var(--gold)}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(76px,8.7vw,124px);font-weight:400;letter-spacing:-5px;line-height:.96;margin:0}h1 span{font-style:italic}.small-rule{width:45px;height:1px;background:#a89974;margin:35px 0 24px}.relationship{font-size:14px;letter-spacing:.4px}.dedication{font-family:Georgia,'Times New Roman',serif;font-size:clamp(28px,3.1vw,43px);line-height:1.25;letter-spacing:-.8px;margin:32px 0 22px}.dedication em{font-weight:400}.intro-note{font-size:13px;line-height:1.85;color:var(--muted);margin:0}
.remembrance{border-top:1px solid var(--line);text-align:center;margin:0 6%;padding:65px 24px 75px}.family-mark{width:52px;height:52px;margin-bottom:25px;color:#7e886c}.remembrance .eyebrow{margin-bottom:18px}h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(32px,4vw,48px);letter-spacing:-1.2px;line-height:1.15;margin:0 0 22px}.remembrance>p:last-child{font-size:14px;line-height:1.9;color:var(--muted);margin:0}
footer{max-width:1440px;margin:auto;padding:27px 6% 32px;border-top:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:25px;font-size:11px;color:var(--muted)}.back-link{display:flex;align-items:center;gap:9px;text-decoration:none;white-space:nowrap}.back-link svg{width:18px;height:18px}.back-link:hover{text-decoration:underline;text-underline-offset:4px}.photo-note{max-width:300px}.photo-note summary{cursor:pointer;text-underline-offset:4px}.photo-note p{font-size:12px;line-height:1.7}.photo-note a{text-underline-offset:3px}.footer-name{white-space:nowrap}
@media(min-width:1600px){.portrait-section{padding-top:55px}}@media(max-width:700px){.site-header{padding:23px 7%}.header-label{font-size:8px;letter-spacing:1.3px}.family-home{font-size:16px}.family-home svg{width:31px;height:31px}.portrait-section{grid-template-columns:1fr;gap:35px;padding:23px 8% 48px}.portrait{max-width:420px;width:100%;margin:auto}.portrait-frame{padding:9px}.portrait figcaption{font-size:9px}.introduction{text-align:center;padding:0}.introduction .eyebrow{margin-bottom:19px}h1{font-size:80px;letter-spacing:-3.5px;line-height:1}h1 br{display:none}h1 span::before{content:' '}.small-rule{margin:26px auto 20px}.relationship{font-size:13px}.dedication{font-size:34px;margin-top:25px}.intro-note{font-size:12px}.remembrance{padding:45px 12px 50px;margin:0 8%}.remembrance>p:last-child{font-size:13px}footer{padding:24px 8%;flex-wrap:wrap;gap:24px}.photo-note{order:3;width:100%;max-width:none}.footer-name{font-size:10px}.family-mark{margin-bottom:20px}}
@media(max-width:370px){.header-label{display:none}h1{font-size:65px}.footer-name{white-space:normal}}@media print{.site-header,footer,.skip{display:none}body{background:white}.portrait-section{padding:20px;gap:40px}.remembrance{padding:20px}.portrait-frame{box-shadow:none}.portrait-section{grid-template-columns:1fr 1fr}h1{font-size:68px}}
