:root{--tribute-ink:#352f2a;--tribute-muted:#756b62;--tribute-gold:#ad8957;--tribute-line:rgba(173,137,87,.25);--tribute-paper:#fffdf9}
body{background:radial-gradient(circle at 12% 8%,rgba(200,169,126,.12),transparent 34rem),var(--bg);color:var(--tribute-ink)}
.tribute-page{width:min(860px,92%);margin:0 auto;padding:52px 0 90px}
.back-memorials{display:inline-block;margin-bottom:24px;color:var(--tribute-muted);font-size:.9rem}.back-memorials:hover{color:var(--tribute-gold)}
.tribute-header{display:grid;grid-template-columns:170px 1fr;gap:34px;align-items:center;padding:32px;background:rgba(255,253,249,.78);border:1px solid var(--tribute-line);border-radius:18px;box-shadow:0 14px 40px rgba(62,48,32,.07)}
.portrait{width:170px;aspect-ratio:4/5;border:5px solid #fff;border-radius:12px;box-shadow:0 8px 24px rgba(62,48,32,.16)}
.portrait--amma{background:#eee3d3 url("../photos/in_loving_memory.jpg") left top/200% auto no-repeat}
.eyebrow,.section-label{color:var(--tribute-gold);font-family:"Lora",serif;font-size:.7rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase}
.tribute-header h1{margin:7px 0 2px;color:var(--tribute-ink);font-size:clamp(2rem,5vw,3.5rem);line-height:1.05}
.familiar-name{margin:0 0 12px;color:var(--tribute-gold);font-family:"Cormorant Garamond",serif;font-size:1.35rem;font-style:italic}
.dates{margin:0;color:var(--tribute-muted);font-size:.92rem;letter-spacing:.025em}.subtitle{margin:18px 0 0;color:var(--tribute-muted);font-family:"Cormorant Garamond",serif;font-size:1.25rem;font-style:italic}
.tribute-body{margin-top:32px;padding:12px 44px 44px;background:var(--tribute-paper);border:1px solid rgba(232,226,216,.85);border-radius:18px;box-shadow:0 14px 40px rgba(62,48,32,.05)}
.tribute-section{padding:38px 0;border-bottom:1px solid var(--tribute-line)}.tribute-section:last-of-type{border-bottom:0}.tribute-section h2{margin:8px 0 18px;color:var(--tribute-ink);font-size:clamp(1.65rem,4vw,2.15rem)}
.tribute-section p{margin-bottom:1.15rem;font-size:clamp(1.02rem,2vw,1.1rem);line-height:1.9}.tribute-section p:last-child{margin-bottom:0}
.tribute-body blockquote{margin:4px 0;padding:30px 34px;background:linear-gradient(135deg,#fffaf1,#fffdf9);border-left:3px solid var(--tribute-gold);color:#705836;font-family:"Cormorant Garamond",serif;font-size:clamp(1.35rem,3vw,1.7rem);font-style:italic;line-height:1.55}
.closing{padding:46px 20px 0;color:var(--tribute-muted);text-align:center}.closing-mark{margin-bottom:14px;color:var(--tribute-gold);font-size:1.2rem;letter-spacing:.45em}.closing strong{display:block;margin-top:8px;color:var(--tribute-ink);font-family:"Cormorant Garamond",serif;font-size:1.65rem;font-weight:600}
@media(max-width:640px){.tribute-page{padding-top:38px}.tribute-header{grid-template-columns:105px 1fr;gap:20px;padding:22px}.portrait{width:105px}.tribute-body{padding:6px 24px 32px}.tribute-body blockquote{padding:24px}}
@media(max-width:430px){.tribute-header{grid-template-columns:86px 1fr;gap:16px;align-items:start}.portrait{width:86px}.tribute-header h1{font-size:1.8rem}.familiar-name{font-size:1.1rem}.dates span{display:block}.dates .date-separator{display:none}}
