@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/8cabccbf8ff73b77-s.2dbc-et3k6kfe.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/932d3869cac5e2f5-s.0slbgzy4000md.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/28c5fc0db96362f0-s.0d4lnz92g9ol4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/97ea1d7b8ac40ba2-s.p.253cfg7mpxmwg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/01d6212a423b17a1-s.p.273-hd1b-0-z9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/8cabccbf8ff73b77-s.2dbc-et3k6kfe.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/932d3869cac5e2f5-s.0slbgzy4000md.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/28c5fc0db96362f0-s.0d4lnz92g9ol4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/97ea1d7b8ac40ba2-s.p.253cfg7mpxmwg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/01d6212a423b17a1-s.p.273-hd1b-0-z9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/8cabccbf8ff73b77-s.2dbc-et3k6kfe.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/932d3869cac5e2f5-s.0slbgzy4000md.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/28c5fc0db96362f0-s.0d4lnz92g9ol4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/97ea1d7b8ac40ba2-s.p.253cfg7mpxmwg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/01d6212a423b17a1-s.p.273-hd1b-0-z9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/459ba3e7ebcd29d3-s.26a4qkxezf9-r.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fdbf446d127afa2d-s.1hzlq6xrrxf6u.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b57845f0cf557e59-s.33on4mq75bz97.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9eff0a3f1ba11d74-s.p.2xsoqmjk136f4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6f3ab718e3727c1a-s.p.0v7knm2wof07y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/459ba3e7ebcd29d3-s.26a4qkxezf9-r.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fdbf446d127afa2d-s.1hzlq6xrrxf6u.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b57845f0cf557e59-s.33on4mq75bz97.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9eff0a3f1ba11d74-s.p.2xsoqmjk136f4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6f3ab718e3727c1a-s.p.0v7knm2wof07y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/459ba3e7ebcd29d3-s.26a4qkxezf9-r.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fdbf446d127afa2d-s.1hzlq6xrrxf6u.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b57845f0cf557e59-s.33on4mq75bz97.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9eff0a3f1ba11d74-s.p.2xsoqmjk136f4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6f3ab718e3727c1a-s.p.0v7knm2wof07y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond Fallback;src:local(Times New Roman);ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.0%;size-adjust:96.98%}.b2cmXq_className{font-family:Cormorant Garamond,Cormorant Garamond Fallback}.b2cmXq_variable{--font-serif:"Cormorant Garamond", "Cormorant Garamond Fallback"}
@font-face{font-family:Nunito Sans;font-style:normal;font-weight:200 1000;font-stretch:100%;font-display:swap;src:url(../media/eaf40559951680c4-s.1jg2wqmry50dw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:200 1000;font-stretch:100%;font-display:swap;src:url(../media/325b8707bd86f089-s.097t91mu4nbwo.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:200 1000;font-stretch:100%;font-display:swap;src:url(../media/64b071e9bd2bec73-s.2a66m7dsu0m6t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:200 1000;font-stretch:100%;font-display:swap;src:url(../media/400b3f9692b7519e-s.p.1puy2ov14w4rp.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:200 1000;font-stretch:100%;font-display:swap;src:url(../media/0069d14c43d1997c-s.p.3bm7l-ln3bnu5.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.YW-MTq_className{font-family:Nunito Sans,Nunito Sans Fallback;font-style:normal}.YW-MTq_variable{--font-sans:"Nunito Sans", "Nunito Sans Fallback"}
:root{--bg:#f7f2ea;--paper:#fffdf9;--ink:#3b332b;--muted:#7d7166;--line:#e6dccd;--accent:#9a6b4a;--accent-soft:#f0e4d6;--danger:#a4473d;--ok:#5c7a52;--radius:14px;--serif:var(--font-serif), Georgia, serif;--sans:var(--font-sans), system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);margin:0;font-size:17px;line-height:1.65}img{max-width:100%;display:block}a{color:var(--accent)}.wrap{max-width:680px;margin:0 auto;padding:0 18px}.hero{text-align:center;padding:56px 0 36px}.portrait{object-fit:cover;border:5px solid var(--paper);border-radius:50%;width:168px;height:168px;margin:0 auto 24px;box-shadow:0 6px 24px #503c2826}.portrait-empty{background:var(--accent-soft);color:var(--accent);font-family:var(--serif);place-items:center;font-size:64px;display:grid}.hero h1{font-family:var(--serif);margin:0;font-size:clamp(34px,8vw,50px);font-weight:500;line-height:1.15}.hero .title{font-family:var(--serif);color:var(--accent);margin:6px 0 0;font-size:21px;font-style:italic}.dates{color:var(--muted);letter-spacing:.18em;margin:10px 0 20px;font-size:15px}.quote{font-family:var(--serif);max-width:30ch;margin:0 auto;font-size:22px;font-style:italic}.divider{background:var(--accent);opacity:.5;border:0;width:64px;height:1px;margin:32px auto}.intro{color:var(--muted);text-align:center;max-width:52ch;margin:0 auto}h2{font-family:var(--serif);text-align:center;margin:0 0 20px;font-size:30px;font-weight:500}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 2px 10px #503c280d}section{padding:28px 0}label{color:var(--muted);margin-bottom:6px;font-size:15px;display:block}.optional{opacity:.8;font-size:13px}input,textarea{width:100%;font:inherit;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px 14px;font-size:16px}input:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}textarea{resize:vertical;min-height:150px}.row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field{margin-bottom:16px}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.tabs{grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 16px;display:grid}.tab{font:inherit;cursor:pointer;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:12px;font-size:16px}.tabs-3{grid-template-columns:1fr 1fr 1fr;gap:6px}.tabs-3 .tab{padding:12px 4px;font-size:15px}.tab[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.btn{font:inherit;cursor:pointer;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 22px;font-size:17px;font-weight:600;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{color:var(--accent);background:0 0}.btn.small{padding:8px 14px;font-size:14px}.btn.danger{border-color:var(--danger);color:var(--danger);background:0 0}.btn.ok{border-color:var(--ok);background:var(--ok);color:#fff}.btn.block{width:100%}.recorder{text-align:center;border:1px dashed var(--line);border-radius:var(--radius);background:#fff;padding:20px 12px}.rec-btn{cursor:pointer;background:var(--accent);color:#fff;border:0;border-radius:50%;place-items:center;width:84px;height:84px;margin:0 auto 10px;font-size:30px;display:grid;box-shadow:0 4px 16px #9a6b4a59}.rec-btn.on{background:var(--danger);animation:1.4s infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 #a4473d73}50%{box-shadow:0 0 0 14px #a4473d00}}.timer{font-variant-numeric:tabular-nums;color:var(--muted)}audio{width:100%;margin:10px 0}.photos{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;margin-top:10px;display:grid}.thumb{aspect-ratio:1;background:var(--accent-soft);border-radius:10px;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%}.thumb button{color:#fff;cursor:pointer;background:#0000008c;border:0;border-radius:50%;width:26px;height:26px;font-size:14px;position:absolute;top:4px;right:4px}.file-label{border:1px dashed var(--line);color:var(--accent);cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:14px;font-size:16px;display:flex}.note{color:var(--muted);font-size:14px}.error{color:var(--danger);margin:10px 0;font-size:15px}.success{text-align:center;padding:34px 18px}.success .mark{color:var(--accent);font-size:40px}.memories{gap:16px;display:grid}.memory .relation{font-family:var(--serif);color:var(--accent);margin-top:1px;font-size:17px;font-style:italic}.memory .who{font-family:var(--serif);margin:0;font-size:21px;font-weight:600}.memory .when{color:var(--muted);font-size:13px}.memory p{white-space:pre-wrap;margin:12px 0 0}.memory .gallery{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-top:12px;display:grid}.gthumb{position:relative}.remove-media{cursor:pointer;color:#fff;font:inherit;background:#a4473deb;border:0;border-radius:8px;padding:6px 4px;font-size:13px;font-weight:600;position:absolute;bottom:6px;left:6px;right:6px}.memory .gallery .gthumb>button:first-child{aspect-ratio:1;cursor:zoom-in;background:var(--accent-soft);border:0;border-radius:10px;padding:0;display:block;overflow:hidden}.memory .gallery img{object-fit:cover;width:100%;height:100%}.empty{text-align:center;color:var(--muted);font-style:italic}.lightbox{z-index:2000;touch-action:pan-y;background:#14100cf0;place-items:center;display:grid;position:fixed;inset:0}.lightbox img{object-fit:contain;-webkit-user-select:none;user-select:none;max-width:100vw;max-height:86vh}.lb-close,.lb-nav{cursor:pointer;color:#fff;background:#ffffff24;border:0;border-radius:50%;place-items:center;display:grid;position:absolute}.lb-close{width:44px;height:44px;font-size:20px;top:14px;right:14px}.lb-nav{width:48px;height:48px;padding-bottom:4px;font-size:34px;line-height:1;top:50%;transform:translateY(-50%)}.lb-prev{left:10px}.lb-next{right:10px}.lb-remove{cursor:pointer;font:inherit;color:#fff;background:#a4473df2;border:0;border-radius:999px;padding:10px 14px;font-size:14px;font-weight:600;position:absolute;top:14px;left:14px}.lb-count{text-align:center;color:#fffc;font-size:15px;position:absolute;bottom:18px;left:0;right:0}footer{text-align:center;color:var(--muted);padding:40px 0 50px;font-size:14px}.admin-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:24px 0 8px;display:flex}.admin-bar h1{font-family:var(--serif);margin:0;font-size:30px;font-weight:500}.meta{color:var(--muted);flex-wrap:wrap;gap:6px 14px;margin-top:4px;font-size:15px;display:flex}.actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.badge{background:var(--accent);color:#fff;border-radius:999px;margin-left:6px;padding:0 8px;font-size:13px;display:inline-block}@media (max-width:480px){body{font-size:16px}.row{grid-template-columns:1fr;gap:0}.card{padding:18px}.hero{padding-top:40px}.portrait{width:140px;height:140px}}
