@font-face{font-family:Vazirmatn;src:url('../fonts/Vazirmatn-Regular.woff2') format('woff2');font-display:swap;font-weight:400} :root{--ink:#283630;--muted:#737970;--paper:#f6f5ef;--gold:#a77d43;--line:#dddcd2;--dark:#23372f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{font-family:Vazirmatn,Tahoma,sans-serif;background:var(--paper);color:var(--ink);line-height:1.9}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.container{max-width:1200px}.site-header{padding:26px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:24px;line-height:1.3}.brand small{display:block;font-size:10px;color:var(--muted);margin-top:6px}nav{gap:34px;font-size:13px}nav a:hover,.text-link:hover{color:var(--gold)}.btn{border-radius:5px;font-size:13px;padding:13px 24px}.btn-outline-mem{border:1px solid #aeb2a6;color:var(--ink)}.btn-outline-mem:hover{background:#e9e8df}.btn-gold{background:var(--gold);color:#fff;border:1px solid var(--gold)}.btn-gold:hover{background:#896432;color:white}.btn span{margin-right:22px}.hero{padding-top:70px;padding-bottom:80px}.eyebrow{font-size:11px;color:var(--gold);letter-spacing:.4px}.intro .eyebrow{display:flex;align-items:center;gap:10px}.intro .eyebrow span{width:22px;height:1px;background:var(--gold)}.hero-pretitle{font-size:14px;margin:35px 0 14px;color:var(--muted)}h1{font-size:clamp(36px,4.2vw,57px);line-height:1.7;letter-spacing:-2px;margin-bottom:24px}h1 span{color:var(--gold)}.lead-copy{font-size:14px;color:var(--muted);line-height:2.3;margin-bottom:30px}.text-link{font-size:13px;margin-right:24px;border-bottom:1px solid #b8bcb0;padding-bottom:6px}.sample-tag{font-size:10px;margin-top:35px;color:#777c72}.memorial-card{max-width:445px;margin-right:auto;background:var(--dark);color:#f0ece1;padding:27px 32px 0;position:relative;box-shadow:15px 20px 0 #e9e8df;border-radius:180px 180px 6px 6px;border:1px solid #344b40}.card-top{display:flex;justify-content:space-between;font-size:10px;margin:6px 10px 24px;padding-top:28px;color:#ccc9b7}.tiny-latin{font-family:Georgia,serif;font-size:9px;letter-spacing:1.6px}.portrait-wrap{position:relative;margin:auto;width:78%}.portrait{display:block;width:100%;height:260px;object-fit:cover;border-radius:150px 150px 3px 3px;border:1px solid #647363;filter:sepia(.2)}.portrait-caption{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:#d4d7ca;font-size:10px}.memorial-name{text-align:center;padding:23px 0}.memorial-name p{font-size:11px;color:#c3c7b5;margin-bottom:5px}.memorial-name h2{font-size:28px;line-height:1.7}.dates{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:15px;font-size:16px;color:#e1cfaa}.dates small{display:block;font-size:9px;color:#acb8a9}.dates i{width:44px;height:1px;background:#8d957a}.card-bottom{text-align:center;border-top:1px solid #4b5b4c;padding:12px;font-size:11px;color:#c5cbbd}.quote-band{text-align:center;background:#eceee6;padding:28px 0}.ornament{font-size:27px;color:var(--gold)}.quote-band p{font-size:20px;margin:4px 0 8px}.quote-label{font-size:10px;color:var(--muted)}.section{padding-top:90px;padding-bottom:90px}.section-title{font-size:31px;line-height:1.9;letter-spacing:-.7px;margin-top:14px}.fine-line{width:52px;height:1px;background:var(--gold);margin:24px 0}.muted{color:var(--muted);font-size:13px}.section-kicker{font-size:11px;color:var(--gold)}.story-opening{font-size:21px;line-height:2;margin:15px 0 22px}.story>p:not(.story-opening){font-size:14px;color:#70776d;line-height:2.3}.life-notes{border-top:1px solid var(--line);padding-top:20px;margin-top:30px}.life-notes small,.event-details small,.event-address small,.grave-grid small{display:block;font-size:10px;color:var(--muted);margin-bottom:6px}.life-notes strong{font-size:13px;font-weight:400}.ceremony-section{padding:70px 0;background:#eeeee7;border-block:1px solid #e2e3d9}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.section-heading>p{color:var(--muted);font-size:12px;margin-bottom:12px}.event-card{background:#faf9f4;border:1px solid #dddfd2;padding:30px;border-radius:8px;height:100%}.event-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.event-icon{font-size:31px;color:var(--gold)}.pill{background:#eeeee4;color:#727962;padding:4px 12px;border-radius:30px;font-size:10px}.event-card h3{font-size:23px}.event-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.event-details strong{font-size:14px;font-weight:400}.event-address{display:flex;gap:17px;border-top:1px solid var(--line);padding-top:22px}.event-address>span{font-size:30px;color:var(--gold)}.event-address p{font-size:14px;margin:0}.event-address div>span{font-size:11px;color:var(--muted)}.resting-card{background:var(--dark);color:#eeeede;border-radius:8px;padding:32px;height:100%}.resting-card .eyebrow{color:#d2b584}.resting-card h3{font-size:29px;line-height:1.8;margin:20px 0}.resting-details>p{font-size:13px}.resting-details>p span{font-size:10px;color:#b6c0b1;margin-right:8px}.grave-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #4b5c4c;padding-top:14px}.grave-grid small{color:#b6c0b1}.grave-grid strong{font-size:17px;font-weight:400}.resting-note{font-size:10px;color:#bac2b0;margin:20px 0 0}.photo-card{margin:0}.photo-card img{width:100%;height:auto;border-radius:7px;background:#e6e6dc}.photo-card figcaption{font-size:13px;margin-top:16px}.photo-card figcaption>span{color:var(--gold);font-size:11px;margin-left:15px}.photo-card small{display:block;font-size:10px;color:var(--muted);margin-right:32px;margin-top:4px}.candle-section{text-align:center;border:1px solid var(--line);background:#eeeee6;padding:45px 20px 30px;border-radius:180px 180px 8px 8px;max-width:780px;margin-bottom:85px}.candle-section h2{font-size:30px;line-height:1.8;margin:17px 0}.candle-section>p{font-size:13px;color:var(--muted)}.candle-section .candle-status{font-size:10px;margin:15px 0 0}.candle-art{height:85px;position:relative;width:60px;margin:0 auto 20px}.wax{position:absolute;bottom:0;left:17px;width:26px;height:47px;border-radius:3px;background:linear-gradient(90deg,#c3bdae,#f3efe3,#ccc5b5)}.flame{position:absolute;top:6px;left:24px;width:13px;height:24px;border-radius:80% 5% 70% 50%;transform:rotate(-20deg);background:#9b9e8f}.is-lit .flame{background:#e6b55c;box-shadow:0 0 30px 14px #e8b66455;animation:flicker 2s ease-in-out infinite}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:28px;padding-bottom:28px}.site-footer p{font-size:11px;color:var(--muted);margin:0}.skip-link{position:absolute;top:-80px;right:20px;padding:12px;background:white;z-index:10}.skip-link:focus{top:10px}@keyframes flicker{50%{transform:rotate(-14deg) scale(.92)}}@media(max-width:991px){.memorial-card{margin:auto;max-width:430px}.hero{padding-top:40px}.intro{text-align:center}.intro .eyebrow{justify-content:center}.hero-pretitle{margin-top:20px}.sample-tag{margin-top:20px}h1{font-size:44px}.section{padding-block:55px}.story-opening{font-size:19px}}@media(max-width:575px){.container{padding-inline:22px}.site-header{padding:18px 0}.brand{font-size:21px}.btn{padding:11px 17px}.btn-outline-mem{font-size:11px}.hero{padding-bottom:50px}h1{font-size:35px;letter-spacing:-1px}.lead-copy{font-size:13px}.hero .row{--bs-gutter-y:2.5rem}.text-link{margin-right:15px;font-size:11px}.memorial-card{padding:20px 23px 0;box-shadow:8px 11px 0 #e9e8df}.memorial-name h2{font-size:25px}.portrait{height:235px}.card-top{font-size:9px}.tiny-latin{font-size:8px}.quote-band p{font-size:16px}.section-heading{display:block}.section-heading>p{margin-top:8px}.section-title{font-size:27px}.ceremony-section{padding-block:45px}.event-card,.resting-card{padding:24px}.event-details{grid-template-columns:1fr}.candle-section{width:calc(100% - 32px);border-radius:100px 100px 8px 8px;margin-bottom:45px}.candle-section h2{font-size:27px}.site-footer{flex-wrap:wrap;justify-content:center;text-align:center}.site-footer p{width:100%;order:3}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.is-lit .flame{animation:none}}@media print{body{background:white;color:black}.site-header nav,.site-header button,.candle-section button,.sample-tag{display:none}.hero{padding-block:20px}.hero .col-lg-6{width:50%}h1{font-size:28px}.memorial-card{box-shadow:none;break-inside:avoid}.section,.ceremony-section{padding-block:25px}.photo-card,.event-card,.resting-card{break-inside:avoid}.section-heading{margin-bottom:15px}.candle-section{margin-bottom:20px}.site-footer{padding-block:10px}}/* Personal tribute and fixed local music player */
:root{--dock-height:112px}body{padding-bottom:calc(var(--dock-height) + 20px)}.dates{gap:12px;font-size:12px}.memorial-name h2{font-size:27px}.lead-copy{line-height:2.2}.letter-section{background:#e9ebe2;border-block:1px solid #dcded1}.letter-date{display:inline-block;border:1px solid #b9bea9;color:#757e63;padding:7px 18px;border-radius:30px;font-size:12px;margin-top:16px}.letter-mark{display:block;font-family:Georgia,serif;font-size:155px;color:#bac1a8;line-height:1;margin-top:25px}.letter-paper{background:#faf9f3;border:1px solid #dedfd2;border-radius:7px;padding:42px;box-shadow:12px 12px 0 #dfe2d5}.letter-paper p{font-size:14px;line-height:2.5;color:#606b5f;margin-bottom:24px}.letter-paper .drop-opening{font-size:20px;color:var(--ink);line-height:2}.letter-pause{text-align:center;font-size:21px;color:var(--gold);padding:12px 0 28px}.letter-signature{border-top:1px solid var(--line);padding-top:22px;font-size:12px;color:var(--gold)}.poster-card img{height:470px;object-fit:contain;background:#dfe2d8;padding:14px}.music-dock{position:fixed;bottom:0;left:0;right:0;z-index:1050;background:#20352f;color:#f6f3e7;border-top:1px solid #72806b;box-shadow:0 -8px 35px #17291d22;padding:15px 24px calc(15px + env(safe-area-inset-bottom));}.music-inner{max-width:1156px;margin:auto;display:flex;align-items:center;gap:24px}.track-info{display:flex;align-items:center;gap:13px;min-width:235px}.track-emblem{width:48px;height:48px;position:relative;border:1px solid #8a946e;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#30483b;color:#d3b77f}.track-emblem>span{font-size:25px}.track-emblem i{position:absolute;bottom:9px;width:2px;height:3px;background:#dbbf86}.track-emblem i:nth-of-type(1){left:17px}.track-emblem i:nth-of-type(2){left:22px}.track-emblem i:nth-of-type(3){left:27px}.music-dock.is-playing .track-emblem i{animation:equalizer .8s ease-in-out infinite alternate}.music-dock.is-playing .track-emblem i:nth-of-type(2){animation-delay:.25s}.music-dock.is-playing .track-emblem i:nth-of-type(3){animation-delay:.5s}.track-copy{display:flex;flex-direction:column;line-height:1.6}.track-copy small{font-size:9px;color:#c4bc9b;margin-bottom:3px}.track-copy strong{font-family:Georgia,serif;font-size:15px;letter-spacing:.3px;font-weight:400}.track-copy>span{font-size:10px;color:#afbdad;text-align:right}.music-buttons{display:flex;gap:12px;align-items:center}.music-buttons button{display:flex;align-items:center;justify-content:center;border:1px solid #829075;cursor:pointer;flex-shrink:0}.music-play{width:44px;height:44px;border-radius:50%;background:#d0b17c;color:#23352a;font-size:16px}.music-stop{border-radius:6px;padding:9px 12px;background:transparent;color:#dfdfce;font-size:11px;gap:7px}.music-buttons button:hover{filter:brightness(1.15)}.track-progress{flex:1;min-width:0}.track-time{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:#c4c9b6}.track-time p{direction:rtl;margin:0;font-size:10px;text-align:center}.music-dock input[type=range]{accent-color:#cbae75;width:100%;height:4px;cursor:pointer;display:block;margin-top:9px}.track-volume{width:95px;flex-shrink:0}.track-volume label{font-size:10px;color:#c4c9b6}.music-dock audio[controls]{display:block;max-width:100%;margin:12px auto 0}.music-dock audio:not([controls]){display:none}.music-dock noscript{font-size:11px;text-align:center}.music-dock.is-blocked #music-status{color:#edcf93}@keyframes equalizer{to{height:11px}}@media(max-width:991px){.music-inner{gap:17px}.track-info{min-width:205px}.track-volume{display:none}.letter-mark{display:none}.letter-paper{padding:28px}}@media(max-width:575px){:root{--dock-height:150px}.music-dock{padding:12px 18px calc(12px + env(safe-area-inset-bottom))}.music-inner{flex-wrap:wrap;justify-content:space-between;gap:9px}.track-info{min-width:0;flex:1}.track-copy strong{font-size:13px}.track-emblem{width:38px;height:38px;flex-shrink:0}.track-emblem i{display:none}.music-buttons{gap:8px}.music-play{width:39px;height:39px}.music-stop{padding:8px}.track-progress{flex-basis:100%;width:100%}.track-time{font-size:9px}.track-time p{font-size:9px}.letter-paper{padding:24px;box-shadow:6px 6px 0 #dfe2d5}.letter-paper .drop-opening{font-size:18px}.letter-paper p{font-size:13px}.poster-card img{height:430px}.dates{font-size:11px}}@media(prefers-reduced-motion:reduce){.music-dock.is-playing .track-emblem i{animation:none}}@media print{body{padding-bottom:0}.music-dock{display:none!important}.letter-mark{display:none}.letter-paper{box-shadow:none;padding:20px}.letter-section{background:white}.poster-card img{height:380px}}

/* Preserve the complete supplied memorial frame. */
.memorial-card .portrait{height:auto;aspect-ratio:981/1280;object-fit:contain;border-radius:7px;filter:none}
/* Equal gallery frames: preserve entire photos and memorial poster. */
#gallery .gallery-poster>img,#gallery .gallery-frame{height:470px;width:100%;border-radius:7px;background:#dfe2d8;box-sizing:border-box}
#gallery .gallery-poster>img{object-fit:contain;padding:14px}
.memory-carousel{position:relative;overflow:hidden;touch-action:pan-y}
.memory-slide{height:100%;width:100%;padding:14px 14px 48px;box-sizing:border-box}
.memory-slide[hidden]{display:none}
#gallery .memory-slide img{display:block;height:100%;width:100%;object-fit:contain;border-radius:3px;background:transparent}
.gallery-arrow{position:absolute;top:calc(50% - 22px);width:44px;height:44px;border:1px solid #ffffff70;border-radius:50%;background:#23372fe8;color:#f5ecd8;font-size:21px;display:grid;place-items:center;cursor:pointer;box-shadow:0 3px 12px #0002}
.gallery-arrow:hover{background:#a77d43}.gallery-prev{right:10px}.gallery-next{left:10px}
.gallery-dots{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);display:flex;gap:5px;direction:rtl}
.gallery-dots button{position:relative;border:0;width:26px;height:26px;padding:0;background:transparent;cursor:pointer}
.gallery-dots button:after{content:'';display:block;margin:auto;width:7px;height:7px;border-radius:50%;background:#909b87}
.gallery-dots button[aria-pressed=true]:after{width:20px;border-radius:10px;background:var(--gold)}
.gallery-count{position:absolute;bottom:19px;right:20px;font-size:11px;color:#53624e}
#story-mute:disabled{opacity:.65;cursor:default}
@media(max-width:575px){#gallery .gallery-poster>img,#gallery .gallery-frame{height:430px}.gallery-arrow{width:40px;height:40px}}
@media print{.gallery-arrow,.gallery-dots{display:none}}
