@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-cyrillic-ext-400-normal.32v5p7o1onmx1.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-ext-400-normal.2xtg83369w83b.woff)format("woff");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-display:swap;font-weight:400;src:url(../media/cormorant-garamond-cyrillic-400-normal.11o5m4_4883hj.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-400-normal.07wgonhhrnnza.woff)format("woff");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-display:swap;font-weight:400;src:url(../media/cormorant-garamond-vietnamese-400-normal.3rs0vhlo24a8i.woff2)format("woff2"),url(../media/cormorant-garamond-vietnamese-400-normal.0d3xrfc-ejn3y.woff)format("woff");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-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-ext-400-normal.2ddgqqcc0j4gc.woff2)format("woff2"),url(../media/cormorant-garamond-latin-ext-400-normal.3jg8wiyiaaz0i.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-400-normal.2tp5pqjy048ru.woff2)format("woff2"),url(../media/cormorant-garamond-latin-400-normal.1oqqt0sb12kid.woff)format("woff");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-display:swap;font-weight:400;src:url(../media/cormorant-garamond-cyrillic-ext-400-italic.2swrolxma22se.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-ext-400-italic.3fidmaenar2fh.woff)format("woff");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-display:swap;font-weight:400;src:url(../media/cormorant-garamond-cyrillic-400-italic.31-701_qan_xm.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-400-italic.3p6xf3gob9xpx.woff)format("woff");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-display:swap;font-weight:400;src:url(../media/cormorant-garamond-vietnamese-400-italic.0-hzcuw-60ar1.woff2)format("woff2"),url(../media/cormorant-garamond-vietnamese-400-italic.0hjp1wso7swbt.woff)format("woff");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-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-ext-400-italic.0hu3vpi5xb4js.woff2)format("woff2"),url(../media/cormorant-garamond-latin-ext-400-italic.2lidqle5um77z.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-400-italic.3vgpwwuad6sup.woff2)format("woff2"),url(../media/cormorant-garamond-latin-400-italic.24o5xopq7kri0.woff)format("woff");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-display:swap;font-weight:500;src:url(../media/cormorant-garamond-cyrillic-ext-500-normal.3p9n1kbofaiuj.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-ext-500-normal.33mgt1d1bg_gi.woff)format("woff");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-display:swap;font-weight:500;src:url(../media/cormorant-garamond-cyrillic-500-normal.43akfudhqanpp.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-500-normal.0rl3w5erjn0qg.woff)format("woff");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-display:swap;font-weight:500;src:url(../media/cormorant-garamond-vietnamese-500-normal.0lw3na3h3xv8a.woff2)format("woff2"),url(../media/cormorant-garamond-vietnamese-500-normal.0ztqgisdtn80t.woff)format("woff");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-display:swap;font-weight:500;src:url(../media/cormorant-garamond-latin-ext-500-normal.2oynf2hza_ffq.woff2)format("woff2"),url(../media/cormorant-garamond-latin-ext-500-normal.3q_x4fjs7um7q.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(../media/cormorant-garamond-latin-500-normal.2bif34ejqyosb.woff2)format("woff2"),url(../media/cormorant-garamond-latin-500-normal.014rho2pjc981.woff)format("woff");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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/dm-sans-latin-ext-400-normal.0_mlbjjysj-9a.woff2)format("woff2"),url(../media/dm-sans-latin-ext-400-normal.20edsl4fvw0xl.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/dm-sans-latin-400-normal.2o7k1_w7_w7bj.woff2)format("woff2"),url(../media/dm-sans-latin-400-normal.12jnqtfk91av5.woff)format("woff");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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/dm-sans-latin-ext-500-normal.3r_2hmgyghopi.woff2)format("woff2"),url(../media/dm-sans-latin-ext-500-normal.0hc3k9jh99u9h.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/dm-sans-latin-500-normal.2f4st7_5x_v78.woff2)format("woff2"),url(../media/dm-sans-latin-500-normal.366wxi7rk3-vz.woff)format("woff");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}
:root{--ink:#170915;--plum:#250d1d;--wine:#641f37;--rose:#dea4b4;--gold:#b88a72;--ivory:#f4e9df;--muted:#d5bab9;--serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",sans-serif;--ease:cubic-bezier(.32,.72,0,1)}*{box-sizing:border-box}html{background:var(--ink)}body{color:var(--ivory);font-family:var(--sans);margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}img,video{max-width:100%;display:block}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:4px;outline:2px solid #ffd4b7}::selection{color:#210715;background:#c6748e}.experience{isolation:isolate;background:var(--ink);width:100%;min-height:100dvh;position:relative;overflow:hidden}.grain{z-index:10;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 170 170' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E");position:fixed;inset:0}.experience:after{content:"";pointer-events:none;z-index:1;background:linear-gradient(#11071282,#0000 18% 82%,#120713a8);position:absolute;inset:0}.visitor-header{z-index:20;background:linear-gradient(#180918ba,#0000);justify-content:space-between;align-items:center;height:82px;padding:0 clamp(22px,4vw,74px);display:flex;position:absolute;top:0;left:0;right:0}.wordmark{color:#f7c7bd;font:italic 38px var(--serif);letter-spacing:-.035em;background:0 0;border:0;padding:0}.wordmark span{margin-left:7px;font-size:.45em}.visitor-nav{gap:clamp(16px,2.5vw,42px);display:flex}.visitor-nav button{color:#f4dbd7b6;letter-spacing:.14em;text-transform:uppercase;transition:color .4s var(--ease);background:0 0;border:0;padding:12px 0;font-size:11px}.visitor-nav button:hover,.visitor-nav button.active{color:#fff}.header-tools{gap:10px;display:flex}.icon-button{color:#ffe5d9;background:#35172a99;border:1px solid #ffd9cd55;border-radius:50%;place-items:center;width:42px;height:42px;font-size:19px;display:grid}.menu-trigger{display:none}.preview-ribbon{z-index:22;color:#301626;background:#f4e9df;border-radius:50px;padding:7px 14px;font-size:12px;position:absolute;top:87px;right:4vw}.concept-label{z-index:18;color:#e5bbb7aa;letter-spacing:.17em;text-transform:uppercase;font-size:9px;position:absolute;bottom:74px;left:clamp(22px,4vw,74px)}.scene-menu{z-index:30;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);background:#1b0a1ae8;padding:120px max(8vw,24px) 80px;position:fixed;inset:0;overflow:auto}.scene-menu[hidden]{display:none}.scene-menu .eyebrow{margin-bottom:25px}.scene-menu button{width:100%;color:var(--ivory);text-align:left;font:italic clamp(32px,5vw,64px) var(--serif);background:0 0;border:0;align-items:baseline;gap:24px;padding:6px 0;display:flex}.scene-menu button span{color:#dca0a9;font:11px var(--sans);letter-spacing:.2em}.visitor-main{z-index:2;min-height:100dvh;animation:scene-arrive .95s var(--ease) both;position:relative}.scene-layout{min-height:100dvh;padding:110px clamp(24px,7vw,120px) 105px;position:relative;overflow:hidden}.eyebrow{letter-spacing:.36em;text-transform:uppercase;color:#eebdb5;font-size:10px;font-weight:500}.scene-layout h1{font:400 clamp(64px,7vw,118px)/.93 var(--serif);letter-spacing:-.055em;margin:18px 0}.scene-layout h1 em{color:#f3bdb3;font-weight:400}.scene-intro{color:#e2c6c0;font:italic clamp(21px,2vw,31px)/1.2 var(--serif);max-width:420px}.pill-button{color:#fff;letter-spacing:.15em;text-transform:uppercase;min-height:54px;transition:transform .55s var(--ease),box-shadow .55s var(--ease);background:linear-gradient(115deg,#b76675,#9b4866);border:1px solid #ffe2d09a;border-radius:100px;justify-content:space-between;align-items:center;gap:30px;padding:7px 8px 7px 25px;font-size:11px;display:inline-flex;box-shadow:0 0 40px #d3788340,inset 0 1px #fff5}.pill-button:hover{transform:translateY(-4px);box-shadow:0 0 55px #d3788377}.pill-button:active{transform:scale(.98)}.pill-arrow{width:39px;height:39px;transition:transform .5s var(--ease);background:#fff2;border-radius:50%;place-items:center;font-size:20px;display:grid}.pill-button:hover .pill-arrow{transform:translate(3px,-2px)}.ornament{color:#e6b59f;font:italic 27px var(--serif);align-items:center;gap:14px;display:flex}.ornament i{background:linear-gradient(90deg,#0000,#e0b49f);width:50px;height:1px;display:block}.ornament i:last-child{transform:rotate(180deg)}.text-link{color:#fbe4db;text-transform:uppercase;letter-spacing:.17em;background:0 0;border:0;border-bottom:1px solid #f5d7c277;padding:10px 0;font-size:11px}.fine-print{color:#d5afb2;font-size:11px;line-height:1.5}.scene-heading{text-align:center}.scene-heading h1{margin-bottom:8px}.scene-heading p:not(.eyebrow){font:italic 22px var(--serif);color:#e1bfbe;margin:0}.entrance-layout{background:radial-gradient(at 74% 46%,#9b485b55,#0000 36%),radial-gradient(at 2% 90%,#63213d,#0000 50%),#170918;align-items:center;display:flex}.entrance-ambient{z-index:2;pointer-events:none;background:linear-gradient(90deg,#170918 4%,#0000 58%),linear-gradient(#0000 62%,#190916 98%);position:absolute;inset:0}.arch-stage{width:min(47vw,690px);height:86%;animation:arch-breathe 13s var(--ease) infinite alternate;position:absolute;top:7%;right:8%}.arch-image{object-fit:cover;object-position:54% center;border-radius:48% 48% 2px 2px/23% 23% 0 0;width:100%;height:100%;-webkit-mask-image:linear-gradient(#000 70%,#0000);mask-image:linear-gradient(#000 70%,#0000)}.arch-glow{filter:blur(8px);border-radius:48% 48% 2px 2px/23% 23% 0 0;position:absolute;inset:-3%;box-shadow:0 0 90px #ffab8366,0 0 180px #b5465577}.arch-outline{pointer-events:none;border:2px solid #ffbe9566;border-radius:48% 48% 2px 2px/23% 23% 0 0;position:absolute;inset:0;box-shadow:0 0 30px #f7b688aa,inset 0 0 35px #e6a16b55}.entrance-copy{z-index:3;width:52%;padding-left:2vw;position:relative}.entrance-copy h1{font-size:clamp(80px,9vw,156px);line-height:.78}.entrance-copy h1 em{display:block}.entrance-copy h1 span{color:#ffc9bd;margin-top:24px;font-style:italic;display:block}.entrance-copy .scene-intro{margin:22px 0 26px}.countdown{letter-spacing:.17em;color:#e9c0b8;text-transform:uppercase;margin-top:22px;font-size:11px}.side-caption{z-index:3;writing-mode:vertical-rl;letter-spacing:.35em;color:#edc9bb;font-size:9px;position:absolute;top:40%;right:24px}.chapters-layout{background:linear-gradient(#0e1026d9,#241126f0),radial-gradient(at 50% 105%,#8e3659,#181021 64%);flex-direction:column;justify-content:center;align-items:center;display:flex}.garden-glow{pointer-events:none;background:radial-gradient(at 50% 75%,#bc617d44,#0000 57%);position:absolute;inset:0}.chapters-layout .scene-heading{z-index:2;margin-bottom:32px;position:relative}.chapters-layout h1{font-size:clamp(58px,6.3vw,105px)}.chapter-collection{z-index:2;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(8px,1.3vw,24px);width:min(100%,1390px);display:grid;position:relative}.chapter-door{color:#fff;min-width:0;height:clamp(250px,43vh,405px);transition:transform .75s var(--ease),box-shadow .75s var(--ease);background:#311529;border:1px solid #efba9677;border-radius:45% 45% 7px 7px/18% 18% 7px 7px;flex-direction:column;padding:7px;display:flex;position:relative;overflow:hidden;box-shadow:0 0 28px #e48d8d22,inset 0 0 8px #f9d4ab44}.chapter-door:before{content:"";border-radius:inherit;z-index:3;pointer-events:none;border:1px solid #f6ceae44;position:absolute;inset:4px}.chapter-door:hover,.chapter-door:focus-visible{transform:translateY(-12px);box-shadow:0 0 36px #e99b8555}.door-top{z-index:2;font:italic 18px var(--serif);text-shadow:0 2px 8px #000;position:absolute;top:24px;left:0;right:0}.door-image{border-radius:45% 45% 0 0/22% 22% 0 0;flex:1;min-height:0;overflow:hidden}.door-image img{object-fit:cover;width:100%;height:100%;transition:transform 1s var(--ease)}.chapter-door:hover img{transform:scale(1.1)}.door-caption{background:#150b1bed;flex-direction:column;justify-content:center;align-items:center;min-height:72px;display:flex}.door-caption strong{font:23px var(--serif);white-space:nowrap}.door-caption small{letter-spacing:.15em;color:#e6b7b2;text-transform:uppercase;margin-top:8px;font-size:8px}.theme-amber{border-color:#e8b990aa}.theme-night{border-color:#b5a6d0aa}.childhood-layout{background:radial-gradient(at 55% 30%,#c8875f66,#0000 40%),linear-gradient(90deg,#24101c,#563024 56%,#1b0b1b);grid-template-columns:35% 42% 23%;align-items:center;display:grid}.window-light{filter:blur(12px);pointer-events:none;background:linear-gradient(90deg,#0000,#ffd89c33,#0000);width:35%;height:85%;position:absolute;top:-20%;left:40%;transform:rotate(12deg)}.childhood-text,.scrapbook,.childhood-note{z-index:2;position:relative}.childhood-text h1{font-size:clamp(58px,6.7vw,112px)}.age-selector{flex-wrap:wrap;gap:9px;margin:35px 0 20px;display:flex}.age-selector button{color:#f7ded5;width:46px;height:46px;font:22px var(--serif);background:#48253b;border:1px solid #ffd2bf77;border-radius:50%}.age-selector button.selected,.age-selector button:hover{background:#b5687b;box-shadow:0 0 23px #e8919e66}.scrapbook{place-items:center;min-height:480px;display:grid}.paper-behind{background:#a66758;width:68%;height:74%;position:absolute;transform:rotate(9deg);box-shadow:0 20px 50px #10081499}.polaroid{aspect-ratio:4/5.2;color:#654544;width:min(65%,355px);transition:transform .6s var(--ease);background:#f6e7d7;border:0;padding:12px 12px 47px;position:relative;transform:rotate(-5deg);box-shadow:0 25px 65px #14070eb0}.polaroid:hover{transform:rotate(0)scale(1.04)}.polaroid img,.polaroid video{object-fit:cover;width:100%;height:100%}.polaroid>span{font:italic 18px var(--serif);margin-top:9px;display:block}.childhood-note{text-align:center}.script-word{color:#f3cab8;font:italic clamp(35px,4vw,63px)/.9 var(--serif);margin-bottom:30px;display:block}.gallery-layout{background:radial-gradient(at 50% 65%,#9d5d5366,#0000 54%),linear-gradient(#1b111e,#301620 80%,#130c17);flex-direction:column;justify-content:center;align-items:center;display:flex}.gallery-layout .scene-heading{margin-bottom:22px}.gallery-layout h1{font-size:clamp(55px,6vw,95px)}.gallery-stage{place-items:center;width:min(960px,85vw);height:clamp(260px,48vh,480px);display:grid;position:relative}.gallery-feature{z-index:3;max-width:72%;height:100%;transition:transform .7s var(--ease);background:#e6c7b3;border:1px solid #f6d6bd77;padding:9px;position:relative;transform:rotate(-2deg);box-shadow:0 0 50px #f8a27833,0 25px 55px #0c0714aa}.gallery-feature:hover{transform:rotate(0)scale(1.02)}.gallery-feature img,.gallery-feature video{object-fit:contain;background:#27151d;width:100%;height:100%}.hanging{opacity:.55;background:#e1c3ad;width:29%;height:61%;padding:5px;position:absolute;top:18%;box-shadow:0 20px 50px #0e0917}.hanging img{object-fit:cover;width:100%;height:100%}.hanging-left{left:0;transform:rotate(-9deg)}.hanging-right{right:0;transform:rotate(9deg)}.gallery-controls{align-items:center;gap:25px;margin-top:18px;display:flex}.gallery-controls button,.lightbox>button:not(.lightbox-close){color:#fff;background:#3c1a2d99;border:1px solid #f4d5c277;border-radius:50%;width:44px;height:44px;font-size:20px}.gallery-controls span{font:19px var(--serif);letter-spacing:.15em}.gallery-caption{color:#d8b4af;font:italic 20px var(--serif);text-align:center;margin:10px}.present-layout{background:radial-gradient(at 67% 49%,#b46c7166,#0000 44%),linear-gradient(110deg,#1b0b1a,#572638 65%,#1c0b1a);grid-template-columns:44% 48% 8%;align-items:center;display:grid}.present-copy{z-index:3;position:relative}.present-copy h1{font-size:clamp(74px,8vw,135px)}.present-copy .scene-intro{margin-bottom:32px}.present-portrait{place-items:center;height:min(74vh,730px);display:grid;position:relative}.portrait-halo{border-radius:49% 49% 0 0/25% 25% 0 0;width:75%;height:85%;position:absolute;box-shadow:0 0 90px #ffb77b77}.portrait-arch{aspect-ratio:3/4;border:1px solid #f7c69a99;border-radius:47% 47% 2px 2px/23% 23% 0 0;height:92%;overflow:hidden;box-shadow:0 0 35px #f1ac7e66}.portrait-arch img,.portrait-arch video{object-fit:cover;width:100%;height:100%}.portrait-index{letter-spacing:.24em;color:#efd3c3;font-size:9px;position:absolute;bottom:0}.present-thumbs{flex-direction:column;gap:12px;display:flex}.present-thumbs button{background:#efd2c0;border:1px solid #ffdac78a;width:70px;height:94px;padding:4px}.present-thumbs img,.present-thumbs video{object-fit:cover;width:100%;height:100%}.watch-layout{background:#190a17;flex-direction:column;justify-content:flex-end;display:flex}.watch-visual,.watch-shade{position:absolute;inset:0}.watch-visual img,.watch-visual video{object-fit:cover;object-position:center 42%;width:100%;height:100%;animation:watch-zoom 12s var(--ease) infinite alternate}.watch-shade{background:linear-gradient(90deg,#150a18bf,#0000 80%),linear-gradient(#0000 35%,#130813ed)}.watch-copy,.watch-player,.watch-next{z-index:2;position:relative}.watch-copy h1{max-width:700px}.watch-copy p:not(.eyebrow){font:italic 25px var(--serif)}.watch-player{align-items:center;gap:22px;width:100%;margin-top:32px;display:flex}.watch-player>button:not(.watch-progress){color:#fff;background:#2a1224aa;border:1px solid #f7d7c388;border-radius:50%;flex:none;width:48px;height:48px}.watch-player>span{white-space:nowrap;letter-spacing:.16em;font-size:11px}.watch-progress{background:0 0;border:0;flex:1;height:14px;padding:5px 0;position:relative}.watch-progress:before{content:"";background:#e3c4b388;height:3px;display:block}.watch-progress span{transform-origin:0;background:#fff3e9;width:100%;height:3px;position:absolute;top:5px;left:0}.watch-next{align-self:flex-end;margin-top:17px}.letter-layout{background:radial-gradient(at 75%,#8c486177,#0000 55%),linear-gradient(100deg,#21101c,#4c2133);grid-template-columns:43% 57%;align-items:center;display:grid}.letter-copy{z-index:2;position:relative}.letter-copy h1{max-width:600px}.letter-copy .scene-intro{margin-bottom:34px}.letter-envelope{height:min(70vh,670px);transition:transform .8s var(--ease);place-items:center;display:grid;position:relative;transform:rotate(-3deg)}.letter-envelope.opened{transform:rotate(0)translateY(-8px)}.letter-envelope:before{content:"";background:#65253c;width:79%;height:80%;position:absolute;transform:rotate(7deg);box-shadow:0 20px 60px #150712a9}.letter-paper{color:#49302c;background:linear-gradient(145deg,#f8e6d1,#e8cdb6);width:min(76%,520px);max-height:100%;padding:42px 50px;position:relative;overflow:auto;box-shadow:0 18px 55px #190b1699}.paper-ornament{font:32px var(--serif);color:#a8666a}.letter-paper h2{font:italic 44px var(--serif);margin:12px 0 25px}.letter-paper h3{font:italic 30px var(--serif)}.letter-paper p{font:23px/1.32 var(--serif)}.paper-signature{text-align:right;margin-top:50px}.wax-seal{z-index:4;color:#ffdfcc;width:70px;height:70px;font:italic 36px var(--serif);background:#8f344b;border:2px solid #e6a292;border-radius:50%;position:absolute;bottom:5%;right:9%;box-shadow:0 10px 25px #220a1a99}.surprise-layout{text-align:center;background:radial-gradient(at 50% 64%,#9b3d5188,#0000 55%),linear-gradient(#190918,#2f0e24 65%,#170918);flex-direction:column;justify-content:center;align-items:center;display:flex}.surprise-layout h1{margin-bottom:0}.surprise-layout .scene-intro{margin:12px auto}.surprise-glow{filter:blur(90px);background:#c4495766;border-radius:50%;height:50%;position:absolute;top:28%;left:30%;right:30%}.gift{filter:drop-shadow(0 30px 25px #0f0612);width:min(380px,60vw);height:min(27vh,250px);min-height:170px;transition:transform .7s var(--ease);background:0 0;border:0;margin:30px 0 18px;position:relative}.gift:hover{transform:translateY(-7px)}.gift-body{background:linear-gradient(130deg,#8f2d45,#48132f);border:2px solid #d68878;height:65%;position:absolute;bottom:0;left:10%;right:10%;box-shadow:inset 0 0 25px #f5ab8755}.gift-body i,.gift-lid i{background:linear-gradient(90deg,#b97668,#e5b58e,#a85e5a);width:12%;height:100%;position:absolute;left:44%}.gift-lid{z-index:2;height:25%;transition:transform 1s var(--ease);background:linear-gradient(110deg,#9c3851,#672137);border:2px solid #dda085;position:absolute;top:24%;left:5%;right:5%}.gift-lid b{border:12px solid #db9f87;border-radius:50% 50% 20%;width:38%;height:75%;position:absolute;top:-93%;left:31%;transform:rotate(-15deg)}.gift-light{filter:blur(25px);opacity:0;height:35%;transition:opacity 1s var(--ease);background:#ffbf8499;position:absolute;top:32%;left:20%;right:20%}.gift.opened .gift-lid{transform:translateY(-115px)rotate(-17deg)}.gift.opened .gift-light{opacity:1}.gift-reveal{z-index:2;max-width:560px;animation:scene-arrive .8s var(--ease) both;margin-bottom:13px}.gift-reveal h2{font:italic 38px var(--serif);margin:0}.gift-reveal p{font:22px var(--serif);margin:5px}.surprise-media{max-height:180px;margin:auto}.surprise-layout>.text-link{z-index:2;margin-top:18px;position:relative}.finale-layout{text-align:center;background:radial-gradient(at 50% 70%,#583561aa,#0000 62%),linear-gradient(#101326,#1e1028 75%,#110a1b);flex-direction:column;justify-content:center;align-items:center;display:flex}.star-field{opacity:.46;background-image:radial-gradient(#fff5e0 1px,#0000 1px),radial-gradient(#ffd2cf 1px,#0000 1px);background-position:0 0,40px 70px;background-size:130px 160px,190px 210px;position:absolute;inset:0}.finale-layout>.eyebrow,.finale-layout h1,.finale-message,.finale-layout .pill-button{z-index:2;position:relative}.finale-layout h1{max-width:1000px;font-size:clamp(59px,6.5vw,105px)}.constellation{width:min(800px,78vw);height:clamp(200px,34vh,350px);margin:15px 0;position:relative}.constellation-line{background:linear-gradient(90deg,#0000,#f9c6b7,#0000);width:84%;height:1px;position:absolute;top:50%;left:8%;transform:rotate(-8deg);box-shadow:0 0 25px #ffc6b7}.star-memory{width:20%;height:72%;animation:float-memory 7s var(--ease) infinite alternate;background:#e9d2bd;padding:6px 6px 22px;position:absolute;box-shadow:0 0 35px #eeb6b366}.star-memory img,.star-memory video{object-fit:cover;width:100%;height:100%}.star-memory-0{top:23%;left:9%;transform:rotate(-10deg)}.star-memory-1{animation-delay:-2s;top:2%;left:40%}.star-memory-2{animation-delay:-4s;top:22%;right:8%;transform:rotate(8deg)}.finale-message{font:italic 36px var(--serif);color:#f9d7c9;margin:0 0 24px}.visitor-footer{z-index:18;background:linear-gradient(#0000,#160817c9);border-top:1px solid #ffdbcb22;justify-content:space-between;align-items:center;height:68px;padding:0 clamp(22px,4vw,74px);display:flex;position:absolute;bottom:0;left:0;right:0}.scene-label{letter-spacing:.18em;white-space:nowrap;font-size:11px}.scene-label b{color:#b68c90}.scene-label small{color:#d9aeb0;text-transform:uppercase;margin-left:15px;font-size:9px}.scene-dots{gap:8px;display:flex}.scene-dots button{background:0 0;border:0;width:20px;height:28px;position:relative}.scene-dots button:before{content:"";width:6px;height:6px;transition:transform .45s var(--ease),background .45s var(--ease);background:#a97a8a;border-radius:50%;position:absolute;top:12px;left:7px}.scene-dots button.current:before{background:#fff2e7;transform:scale(1.6)}.footer-arrows{gap:9px;display:flex}.footer-arrows button{color:#fff;background:#2b1325aa;border:1px solid #f8d5c377;border-radius:50%;width:37px;height:37px;font-size:18px}.footer-arrows button:disabled{opacity:.3;cursor:default}.lightbox{z-index:40;background:#110710f2;justify-content:space-around;align-items:center;gap:15px;padding:65px 20px 30px;display:flex;position:fixed;inset:0}.lightbox-close{color:#fff;background:0 0;border:0;font-size:40px;position:absolute;top:20px;right:25px}.lightbox-visual{flex-direction:column;align-items:center;max-width:calc(100vw - 170px);max-height:100%;display:flex}.lightbox-visual img,.lightbox-visual video{object-fit:contain;max-width:100%;max-height:78dvh}.lightbox-visual p{font:italic 23px var(--serif);text-align:center}@keyframes scene-arrive{0%{opacity:0;transform:translateY(25px)scale(1.01)}to{opacity:1;transform:none}}@keyframes arch-breathe{to{transform:translateY(-12px)scale(1.025)}}@keyframes watch-zoom{to{transform:scale(1.07)}}@keyframes float-memory{to{translate:0 -10px}}@media (max-width:1050px){.visitor-nav{gap:12px}.visitor-nav button{font-size:9px}.chapter-collection{grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px}.chapter-door{height:260px}.chapters-layout{padding-top:125px}.childhood-layout{grid-template-columns:38% 45% 17%}.childhood-note .script-word{font-size:36px}.present-thumbs{display:none}.present-layout{grid-template-columns:45% 55%}}@media (max-width:700px){.visitor-header{height:65px;padding:0 20px}.wordmark{font-size:31px}.visitor-nav{display:none}.menu-trigger{display:grid}.icon-button{width:38px;height:38px}.scene-layout{min-height:100dvh;padding:88px 22px 105px}.scene-layout h1{font-size:clamp(56px,14vw,83px)}.eyebrow{letter-spacing:.25em;font-size:8px}.scene-intro{font-size:20px}.visitor-footer{height:58px;padding:0 19px}.scene-label small{display:none}.scene-dots{gap:2px}.scene-dots button{width:16px}.footer-arrows{gap:5px}.footer-arrows button{width:32px;height:32px}.concept-label{max-width:200px;font-size:7px;bottom:66px;left:20px}.entrance-layout{align-items:flex-end;padding-bottom:125px}.entrance-ambient{background:linear-gradient(#0000 30%,#1a0a1bd9 67%,#1a0a1b 97%)}.arch-stage{width:86%;height:61%;top:8%;right:-5%}.entrance-copy{z-index:4;width:100%;padding:0}.entrance-copy h1{margin:13px 0;font-size:clamp(70px,18vw,105px)}.entrance-copy h1 em{display:inline}.entrance-copy h1 span{margin-top:7px}.entrance-copy .ornament{display:none}.entrance-copy .scene-intro{margin:8px 0 22px}.side-caption{display:none}.chapters-layout{padding:92px 0 100px;display:block}.chapters-layout .scene-heading{margin-bottom:22px;padding:0 22px}.chapters-layout h1{font-size:clamp(52px,12vw,73px)}.scene-heading p:not(.eyebrow){font-size:18px}.chapter-collection{scroll-snap-type:x mandatory;scrollbar-width:none;gap:14px;padding:7px max(20px,50vw - 117.5px) 22px;display:flex;overflow-x:auto}.chapter-collection::-webkit-scrollbar{display:none}.chapter-door{scroll-snap-align:center;flex:0 0 235px;height:min(50dvh,410px);min-height:260px}.door-caption strong{font-size:26px}.childhood-layout{text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:95px;display:flex}.childhood-text h1{margin:7px 0;font-size:62px}.childhood-text .scene-intro{margin:6px auto}.age-selector{justify-content:center;margin:17px 0 5px}.age-selector button{width:44px;height:44px}.scrapbook{width:100%;height:min(42dvh,420px);min-height:0;margin-top:14px}.polaroid{width:auto;max-width:70%;height:90%;padding:8px 8px 35px}.polaroid>span{font-size:15px}.paper-behind{width:56%;height:75%}.childhood-note{margin-top:10px}.script-word{display:none}.gallery-layout{justify-content:flex-start;padding:95px 17px 90px}.gallery-layout .scene-heading{margin-bottom:24px}.gallery-layout h1{margin:8px 0;font-size:clamp(52px,12vw,74px)}.gallery-stage{width:100%;height:min(43dvh,420px);min-height:250px}.gallery-feature{max-width:79%}.hanging{width:28%;height:48%;top:23%}.gallery-controls{margin-top:15px}.gallery-caption{font-size:17px}.present-layout{text-align:center;flex-direction:column-reverse;justify-content:center;gap:18px;padding-top:78px;display:flex}.present-portrait{flex:none;width:100%;height:min(47dvh,440px)}.portrait-arch{height:93%}.present-copy h1{margin:5px 0;font-size:clamp(65px,15vw,91px)}.present-copy .scene-intro{margin:7px auto 20px}.watch-layout{padding-bottom:112px}.watch-shade{background:linear-gradient(#0000 15%,#16081788 52%,#160817f5 98%)}.watch-copy h1{font-size:clamp(70px,16vw,100px)}.watch-copy p:not(.eyebrow){font-size:20px}.watch-player{gap:10px;margin-top:12px}.watch-player>button:not(.watch-progress){width:41px;height:41px}.watch-next{margin-top:10px}.letter-layout{flex-direction:column;justify-content:flex-start;gap:20px;padding-top:92px;display:flex}.letter-copy{text-align:center}.letter-copy h1{margin:8px 0;font-size:clamp(58px,13vw,75px)}.letter-copy .scene-intro{margin:5px}.letter-copy .text-link{display:none}.letter-envelope{width:100%;height:min(53dvh,510px);transform:none}.letter-paper{width:min(88%,430px);max-height:100%;padding:30px}.letter-paper h2{font-size:35px}.letter-paper p{font-size:20px}.wax-seal{width:53px;height:53px;font-size:27px;bottom:1%;right:1%}.surprise-layout h1{font-size:clamp(72px,17vw,105px)}.gift{width:min(320px,75vw);height:min(25dvh,230px);margin:23px 0 17px}.gift-reveal h2{font-size:31px}.gift-reveal p{font-size:19px}.finale-layout h1{font-size:clamp(58px,12.5vw,85px)}.constellation{width:98vw;height:min(33dvh,300px)}.star-memory{width:25%;height:70%}.star-memory-0{left:3%}.star-memory-1{left:37%}.star-memory-2{right:2%}.finale-message{font-size:29px}.lightbox{gap:4px;padding:70px 6px 30px}.lightbox-visual{max-width:calc(100vw - 100px)}.lightbox-visual img,.lightbox-visual video{max-height:69dvh}}@media (max-width:360px){.scene-layout{padding-left:16px;padding-right:16px}.header-tools{gap:5px}.effects-button{display:none}.entrance-copy h1{font-size:67px}.chapter-door{flex-basis:210px}.chapter-collection{padding-left:calc(50vw - 105px);padding-right:calc(50vw - 105px)}.age-selector{gap:5px}.age-selector button{width:40px;height:40px}.visitor-footer{padding:0 12px}.scene-dots button{width:14px}}@media (max-height:650px) and (min-width:701px){.scene-layout{padding-top:83px;padding-bottom:78px}.chapter-door{height:32vh;min-height:190px}.chapters-layout .scene-heading{margin-bottom:16px}.scene-layout h1{font-size:70px}.scrapbook{min-height:340px}.present-portrait{height:70vh}.gift{height:24vh}.constellation{height:26vh}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.effects-off *,.effects-off :before,.effects-off :after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}@supports (padding:max(0px)){.visitor-header{height:calc(82px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);padding-left:max(22px, env(safe-area-inset-left));padding-right:max(22px, env(safe-area-inset-right))}.visitor-footer{height:calc(68px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);padding-left:max(22px, env(safe-area-inset-left));padding-right:max(22px, env(safe-area-inset-right))}.scene-menu{padding-top:calc(120px + env(safe-area-inset-top));padding-bottom:calc(80px + env(safe-area-inset-bottom))}.lightbox{padding-top:calc(65px + env(safe-area-inset-top));padding-bottom:calc(30px + env(safe-area-inset-bottom))}}@media (max-width:650px){.visitor-header{height:calc(65px + env(safe-area-inset-top));padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}.visitor-footer{height:calc(58px + env(safe-area-inset-bottom));padding-left:max(19px, env(safe-area-inset-left));padding-right:max(19px, env(safe-area-inset-right))}}.visitor-header{z-index:32}.scene-menu-close{top:calc(94px + env(safe-area-inset-top));right:max(22px, env(safe-area-inset-right));z-index:2;color:#ffe5d9;background:#35172a;border:1px solid #ffd9cd66;border-radius:50%;width:44px;height:44px;font-size:26px;position:fixed}.gallery-feature img,.gallery-feature video{object-fit:cover}.unlock-page{background:radial-gradient(at 50% 35%,#7a3655,#1c0b19 65%);place-items:center;min-height:100dvh;padding:20px;display:grid}.unlock-page form{background:#2b1426;border:1px solid #e3b39d77;width:min(500px,100%);padding:clamp(30px,6vw,60px);box-shadow:0 30px 70px #100716aa}.unlock-page h1{font:italic clamp(54px,8vw,82px)/.95 var(--serif);margin:18px 0}.unlock-page p:not(.eyebrow){font:22px var(--serif);color:#e2c5c0}.unlock-page label{letter-spacing:.13em;text-transform:uppercase;gap:9px;margin:25px 0;font-size:11px;display:grid}.unlock-page input{color:#fff;background:#482639;border:1px solid #d9aca9;width:100%;min-height:48px;padding:10px}.unlock-page .pill-button{width:100%}@media (max-width:700px){.icon-button{width:44px;height:44px}.visitor-footer{height:64px}.scene-dots{display:none}.footer-arrows button{width:44px;height:44px}.concept-label{bottom:72px}.age-selector button,.watch-player>button:not(.watch-progress){width:44px;height:44px}}.entrance-layout{background:radial-gradient(at 73% 40%,#a76a5555,#0000 40%),radial-gradient(at 15% 90%,#763d5370,#0000 55%),#180d19}.entrance-copy h1{max-width:780px;font-size:clamp(68px,7.8vw,132px);line-height:.86}.entrance-copy h1 .birthday-title,.finale-layout h1 .birthday-title{color:#fff5e8;margin:0;font-style:normal;display:block}.entrance-copy h1 .birthday-title-line,.finale-layout h1 .birthday-title-line{margin:0;font-style:normal;display:block}.entrance-copy h1 .birthday-word,.finale-layout h1 .birthday-word{max-width:100%;font-style:inherit;color:inherit;margin:0;display:inline-block}.entrance-copy h1 .birthday-title-line:last-child,.finale-layout h1 .birthday-title-line:last-child{color:#f6c6a3;text-shadow:0 0 38px #d88d7466;margin-top:.12em;font-style:italic}.entrance-copy h1 .birthday-letter,.finale-layout h1 .birthday-letter{font-style:inherit;opacity:0;animation:birthday-letter 1s var(--ease) both;margin:0;display:inline-block}.birthday-title-line:last-child .birthday-letter{animation-name:birthday-letter-glow}.entrance-copy .scene-intro{max-width:440px}@keyframes birthday-letter{0%{opacity:0;transform:translateY(.35em)rotate(5deg)}to{opacity:1;transform:translate(0,0)rotate(0)}}@keyframes birthday-letter-glow{0%{opacity:0;text-shadow:0 0 30px #ffd29b99;transform:translateY(.4em)}to{opacity:1;text-shadow:0 0 22px #c67b6255;transform:translate(0,0)}}.balloon-field{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.balloon{pointer-events:auto;opacity:.82;transform-origin:50% 100%;background:0 0;border:0;width:clamp(42px,5.2vw,76px);height:clamp(110px,14vw,185px);padding:0;animation:5.8s cubic-bezier(.45,0,.55,1) infinite alternate balloon-sway;display:block;position:absolute}.balloon-body{background:radial-gradient(circle at 28% 22%, #fff8dfcc 0, #fff8df33 14%, transparent 33%), radial-gradient(ellipse at 70% 75%, #44172c77, transparent 52%), linear-gradient(125deg, var(--balloon-light,#eac8a6), var(--balloon-color,#98536b) 62%, #492238);width:92%;height:59%;transform:translateX(var(--nudge-x,0));transition:transform .65s var(--ease);border-radius:49% 51% 47% 53%/47% 48% 52% 53%;position:absolute;top:0;left:4%;box-shadow:inset -12px -13px 20px #2b0d2444,inset 8px 9px 14px #fff6d255,0 18px 28px #10071355}.balloon-body:after{content:"";background:var(--balloon-color,#98536b);clip-path:polygon(50% 0,100% 100%,0 100%);width:12%;height:9px;position:absolute;bottom:-7px;left:44%}.balloon-string{transform-origin:top;background:linear-gradient(#e9cdb0bb,#e9cdb022);width:1px;height:42%;position:absolute;top:58%;left:50%;transform:rotate(4deg)}.balloon:nth-child(3n+2){--balloon-color:#c89a74;--balloon-light:#fff0c8;animation-delay:-2.1s}.balloon:nth-child(3n+3){--balloon-color:#85506e;--balloon-light:#d9b7bd;animation-delay:-3.9s}.balloon-field-entrance .balloon-1{width:54px;top:13%;left:3%}.balloon-field-entrance .balloon-2{width:45px;top:5%;left:41%}.balloon-field-entrance .balloon-3{width:61px;top:12%;right:5%}.balloon-field-entrance .balloon-4{width:48px;bottom:8%;right:46%}.balloon-field-surprise .balloon-1{top:19%;left:8%}.balloon-field-surprise .balloon-2{width:58px;top:9%;right:10%}.balloon-field-surprise .balloon-3{width:44px;bottom:13%;right:16%}.balloon.released{pointer-events:none;animation:3.2s cubic-bezier(.23,.5,.2,1) both balloon-release}@keyframes balloon-sway{0%{transform:translate(-6px,7px)rotate(-4deg)}to{transform:translate(7px,-14px)rotate(4deg)}}@keyframes balloon-release{0%{opacity:.85;transform:translate(0,0)rotate(0)}to{opacity:0;transform:translate(30px,-120vh)rotate(11deg)}}.balloon-field-finale .balloon{pointer-events:none;opacity:0;animation:5.8s cubic-bezier(.27,.55,.3,1) both balloon-release;top:auto;bottom:-26%}.balloon-field-finale .balloon-1{animation-delay:.35s;left:4%}.balloon-field-finale .balloon-2{width:58px;animation-delay:.75s;left:15%}.balloon-field-finale .balloon-3{animation-delay:.12s;left:27%}.balloon-field-finale .balloon-4{width:55px;animation-delay:1.1s;left:38%}.balloon-field-finale .balloon-5{animation-delay:.5s;left:48%}.balloon-field-finale .balloon-6{width:50px;animation-delay:1.4s;left:59%}.balloon-field-finale .balloon-7{animation-delay:.26s;left:70%}.balloon-field-finale .balloon-8{width:56px;animation-delay:.88s;left:82%}.balloon-field-finale .balloon-9{animation-delay:1.7s;left:92%}.age-selector{overscroll-behavior-inline:contain;scrollbar-width:thin;flex-wrap:nowrap;width:min(100%,580px);padding:5px 2px 12px;overflow-x:auto}.age-selector button{flex:none}.age-memory-strip{z-index:3;gap:9px;max-width:100%;padding:6px;display:flex;position:absolute;bottom:-48px;left:50%;overflow-x:auto;transform:translate(-50%)}.scrapbook:has(.age-memory-strip){margin-bottom:48px}.age-memory-strip button{opacity:.65;width:58px;height:65px;transition:opacity .4s var(--ease), transform .4s var(--ease);background:#f6e9dc;border:1px solid #f9dfbf66;flex:0 0 58px;padding:3px}.age-memory-strip button.selected{opacity:1;transform:translateY(-5px)}.age-memory-strip img,.age-memory-strip video{object-fit:cover;width:100%;height:100%}.polaroid img,.polaroid video,.gallery-feature img,.gallery-feature video{animation:photo-reveal .8s var(--ease) both}.watch-visual img,.watch-visual video{animation:photo-reveal .9s var(--ease) both, watch-zoom 12s var(--ease) infinite alternate}@keyframes photo-reveal{0%{opacity:0;transform:translateY(12px)scale(1.015)}to{opacity:1;transform:translate(0,0)scale(1)}}.wishes-envelope:before{background:linear-gradient(135deg,#a97063,#5d3347)}.wishes-envelope:not(.opened) .letter-paper{opacity:.18;transform:translateY(36px)scale(.95)}.wishes-envelope .letter-paper{transition:transform .9s var(--ease), opacity .9s var(--ease)}.wishes-envelope:after{content:"A birthday card for Kavita";z-index:2;color:#fff3df;width:74%;height:77%;font:italic clamp(26px, 3vw, 42px) var(--serif);text-align:center;pointer-events:none;transition:transform .9s var(--ease), opacity .9s var(--ease);background:linear-gradient(135deg,#b87c71,#73314b);place-items:center;padding:26px;display:grid;position:absolute;box-shadow:0 20px 60px #16071499,inset 0 0 0 2px #f9cfaf66}.wishes-envelope.opened:after{opacity:0;transform:translateY(-70px)rotate(-8deg)}.wishes-envelope.opened .letter-paper>*{animation:birthday-letter .7s var(--ease) both}.wishes-envelope.opened .letter-paper>:nth-child(2){animation-delay:.12s}.wishes-envelope.opened .letter-paper>:nth-child(3){animation-delay:.22s}.wishes-envelope.opened .letter-paper>:nth-child(4){animation-delay:.32s}.wishes-envelope .wax-seal{z-index:4}.gift{perspective:900px;transform-style:preserve-3d}.gift-body{background:linear-gradient(108deg,#552237,#9a4760 30%,#6d2945 67%,#41182e);border-radius:3px 3px 12px 12px;box-shadow:inset 0 2px 20px #ffc1a855,inset -16px -12px 24px #25081777,0 24px 45px #13061688}.gift-lid{transform-origin:15% 75%;transition:transform 1s var(--ease), opacity .3s .8s;background:linear-gradient(110deg,#5d253d,#b35970 40%,#70263f);border-radius:5px;box-shadow:inset 0 3px 10px #ffe0b477,0 11px 19px #1f091f77}.gift.opened .gift-lid{opacity:0;transform:translate3d(-23px,-70px,65px)rotate(-22deg)rotateY(-16deg)}.gift-light{z-index:1;filter:none;transition:opacity .9s var(--ease), transform 1s var(--ease);background:radial-gradient(#ffe8accc,#ffc79555 50%,#0000 75%);transform:scale(.45)}.gift.opened .gift-light{transform:scale(1.8)}.gift-shimmer{z-index:3;opacity:.42;width:25%;height:56%;animation:gift-shimmer 4s var(--ease) infinite;pointer-events:none;background:linear-gradient(90deg,#0000,#fff1cf88,#0000);position:absolute;top:33%;left:35%;transform:skew(-25deg)translate(-80px)}.gift.opened .gift-shimmer{opacity:0;animation:none}@keyframes gift-shimmer{50%,to{transform:skew(-25deg)translate(190px)}}.gift-reveal{max-width:min(680px,90vw)}.gift-reveal h2{color:#fff1dd}.gift-reveal p{line-height:1.25}.birthday-cake{justify-items:center;margin-top:8px;display:grid}.cake-message{color:#ffe7be;font:italic 19px var(--serif)!important}.cake-art{filter:drop-shadow(0 22px 24px #110512aa);background:0 0;border:0;width:min(280px,64vw);height:178px;padding:0;display:block;position:relative}.cake-candles{z-index:4;align-items:flex-end;gap:11px;height:55px;display:flex;position:absolute;top:3px;left:50%;transform:translate(-50%)}.cake-candle{background:repeating-linear-gradient(135deg,#fbe4bd 0 5px,#bc6672 5px 9px);border-radius:2px;width:10px;height:34px;display:block;position:relative;box-shadow:inset -2px 0 2px #4a1f3280}.candle-flame{background:radial-gradient(circle at 50% 72%,#fff6d0 0 18%,#ffd786 36%,#f69b5b 68%,#0000 75%);border-radius:65% 35% 60% 40%;width:13px;height:22px;animation:.9s ease-in-out infinite alternate flame-flicker;position:absolute;bottom:34px;left:50%;transform:translate(-50%)rotate(-8deg);box-shadow:0 0 13px #ffc472cc,0 0 27px #f7a46088}.cake-candle:nth-child(2n) .candle-flame{animation-delay:-.4s}@keyframes flame-flicker{0%{opacity:.84;transform:translate(-50%)scale(.9)rotate(-12deg)}to{opacity:1;transform:translate(-50%)scale(1.1)rotate(8deg)}}.candles-out .candle-flame{opacity:0;animation:none}.cake-top{z-index:3;background:radial-gradient(at 40% 40%,#fff9e8,#efc4af 75%);border-radius:50%;width:70%;height:30px;position:absolute;top:49px;left:15%;box-shadow:0 3px 8px #592c3a77}.cake-tier{background:linear-gradient(90deg,#cf8c8d,#ffe3cb 24%,#f5d2b8 60%,#a25c6b);border-bottom:5px solid #a0465d;border-radius:5px 5px 45% 45%/5px 5px 19% 19%;width:70%;display:block;position:absolute;left:15%;box-shadow:inset -12px 0 18px #85475677,inset 8px 0 15px #fff6dd77}.cake-tier-top{z-index:2;height:51px;top:65px}.cake-tier-bottom{z-index:1;background:linear-gradient(90deg,#94495d,#f0c4ad 22%,#e7b4a1 60%,#79384f);width:86%;height:60px;top:91px;left:7%}.cake-plate{z-index:0;background:linear-gradient(#ffe1b5,#a77473);border-radius:50%;width:94%;height:18px;position:absolute;bottom:19px;left:3%;box-shadow:0 7px 10px #21081888}.cake-action{min-height:44px}.cake-action:disabled{opacity:.8;cursor:default}.confetti-burst{z-index:8;pointer-events:none;width:0;height:0;position:absolute;top:55%;left:50%}.confetti-burst i{opacity:0;border-radius:1px;width:5px;height:12px;animation:1.7s cubic-bezier(.18,.65,.42,1) both confetti-burst;display:block;position:absolute}@keyframes confetti-burst{0%{opacity:0;transform:translate(0,0)rotate(0)}15%{opacity:1}to{opacity:0;transform:translate3d(var(--confetti-x), var(--confetti-y), 0) rotate(660deg)}}.finale-layout{background:radial-gradient(at 50% 57%,#8b52668a,#0000 60%),radial-gradient(at 75% 10%,#b38b6755,#0000 40%),linear-gradient(#120e22,#301b32 72%,#160e21)}.finale-layout h1{text-shadow:0 0 48px #efb7aa44;max-width:1100px;font-size:clamp(55px,6.3vw,102px);line-height:.88}.finale-message{max-width:760px;font-size:clamp(25px,3vw,37px)}.finale-layout .constellation{z-index:2}.finale-layout .star-memory{animation:memory-rise 1.3s var(--ease) both, float-memory 7s var(--ease) 1.3s infinite alternate}.finale-layout .star-memory-1{animation-delay:.25s,1.55s}.finale-layout .star-memory-2{animation-delay:.5s,1.8s}@keyframes memory-rise{0%{opacity:0;translate:0 28px}to{opacity:1;translate:0}}@media (max-width:700px){.entrance-copy h1{font-size:clamp(49px,11.8vw,75px);line-height:.9}.entrance-copy h1 .birthday-title-line:last-child{margin-top:.18em}.balloon-field-entrance .balloon-1{width:40px;top:10%;left:4%}.balloon-field-entrance .balloon-2{width:36px;top:8%;left:47%}.balloon-field-entrance .balloon-3{width:43px;top:23%;right:3%}.balloon-field-entrance .balloon-4{width:36px;bottom:42%;right:18%}.age-selector{justify-content:flex-start;margin:16px 0 4px}.scrapbook{padding-bottom:62px}.wishes-envelope:after{width:88%;height:78%}.surprise-layout{justify-content:flex-start;padding-top:108px}.surprise-layout h1{font-size:clamp(55px,14vw,78px)}.surprise-layout .gift{height:190px;margin:14px 0 6px}.gift.opened .gift-lid{transform:translate3d(-10px,-35px,45px)rotate(-19deg)rotateY(-12deg)}.gift-reveal h2{font-size:29px}.cake-art{height:160px}.finale-layout h1{font-size:clamp(46px,11.4vw,74px)}.balloon-field-finale .balloon{width:43px}}@media (max-width:370px){.entrance-copy h1{font-size:47px}.surprise-layout h1{font-size:54px}.finale-layout h1{font-size:44px}}@media (prefers-reduced-motion:reduce){.balloon,.birthday-letter,.candle-flame,.confetti-burst i{opacity:1;animation:none!important}.balloon-field-finale{display:none}}.effects-off .balloon-field-finale,.effects-off .confetti-burst{display:none}.effects-off .birthday-letter{opacity:1}.scene-backdrop{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.scene-backdrop img,.scene-backdrop video{object-fit:cover;opacity:.5;width:100%;height:100%}.scene-backdrop:after{content:"";background:linear-gradient(90deg,#180a1ca8,#180a1c45 55%,#180a1c9c);position:absolute;inset:0}.scene-accent-media{z-index:2;aspect-ratio:4/5;background:#f5e2ce;width:clamp(110px,15vw,220px);padding:6px;position:absolute;bottom:14%;right:3%;transform:rotate(5deg);box-shadow:0 24px 55px #11071388}.scene-accent-media img,.scene-accent-media video{object-fit:cover;width:100%;height:100%}.scene-palette-champagne .scene-layout:after,.theme-champagne .scene-layout:after{content:"";z-index:0;pointer-events:none;background:#ad784126;position:absolute;inset:0}.scene-palette-midnight .scene-layout:after,.theme-midnight .scene-layout:after{content:"";z-index:0;pointer-events:none;background:#25457b30;position:absolute;inset:0}.theme-champagne{--rose:#f3c8a0;--gold:#ead0a5}.theme-midnight{--rose:#b9afd8;--gold:#ddd0d2}.typography-modern .scene-layout h1,.scene-font-modern .scene-layout h1{font-family:var(--sans);letter-spacing:-.075em;font-weight:400}.buttons-outlined .pill-button{background:#3b1a2b99;border-color:#f5cfaf;box-shadow:inset 0 1px #fff5d155}.transition-soft .visitor-main{animation-duration:.5s}.transition-none .visitor-main,.scene-animation-none .visitor-main{animation:none}.scene-animation-soft .visitor-main{animation-duration:.55s}.scene-animation-cinematic .visitor-main{animation-duration:var(--scene-duration,1s)}.scene-align-center .entrance-copy,.scene-align-center .present-copy,.scene-align-center .letter-copy,.scene-align-center .watch-copy{text-align:center}.scene-align-right .entrance-copy,.scene-align-right .present-copy,.scene-align-right .letter-copy,.scene-align-right .watch-copy{text-align:right}.scene-layout-centered .entrance-copy{width:min(760px,70%);margin-inline:auto}.scene-layout-centered .present-layout,.scene-layout-centered .letter-layout{grid-template-columns:1fr 1fr}.scene-layout-immersive .entrance-copy h1,.scene-layout-immersive .finale-layout h1{font-size:clamp(80px,9vw,148px)}.birthday-title.text-fade .birthday-letter{animation-name:birthday-letter-fade}.birthday-title.text-shimmer .birthday-letter{animation-name:birthday-letter-glow}.birthday-title.text-none .birthday-letter{opacity:1;animation:none}.birthday-title.glow-none .birthday-title-line:last-child{text-shadow:none}.birthday-title.glow-radiant .birthday-title-line:last-child{text-shadow:0 0 26px #ffe3a3ad,0 0 70px #d5888299}@keyframes birthday-letter-fade{0%{opacity:0}to{opacity:1}}.wordmark-logo{object-fit:cover;vertical-align:middle;border-radius:50%;width:28px;height:28px;margin-right:8px;display:inline-block}.media-fallback-label{color:#f5e9d2;font:12px var(--sans);text-align:center;background:#180a1ccc;border-radius:8px;padding:8px 12px;position:absolute;bottom:16px;left:16px;right:16px}.media-loading{opacity:0!important;animation-play-state:paused!important}.media-unavailable{background:#24101c;padding:20%;object-fit:contain!important}.balloon{animation-duration:var(--balloon-duration,5.8s)}.balloon-field-finale .balloon,.balloon-field-release .balloon{animation:balloon-release var(--balloon-duration,5.8s) cubic-bezier(.27,.55,.3,1) both}.balloon-field-release .balloon:nth-child(2){animation-delay:.3s}.balloon-field-release .balloon:nth-child(3){animation-delay:.6s}.balloon-color-gold .balloon{--balloon-color:#c89a74;--balloon-light:#fff0c8}.balloon-color-burgundy .balloon{--balloon-color:#98536b;--balloon-light:#e2b2b6}.balloon-style-pearl .balloon-body{background:radial-gradient(circle at 25% 22%, #fff9edee 0, #f9e4d0a0 25%, transparent 51%), linear-gradient(130deg, var(--balloon-light), var(--balloon-color))}.balloon-size-small .balloon{scale:.76}.balloon-size-large .balloon{scale:1.2}.balloon-direction-up:not(.balloon-field-finale):not(.balloon-field-release) .balloon:not(.released){animation-name:balloon-drift-up}.balloon-placement-balanced .balloon-field-entrance .balloon-1{left:12%}.balloon-placement-balanced .balloon-1{left:16%}.balloon-placement-balanced .balloon-2{left:auto;right:18%}@keyframes balloon-drift-up{0%{transform:translate(-3px,13px)rotate(-2deg)}to{transform:translate(5px,-22px)rotate(3deg)}}.gift-style-pearl .gift-body,.gift-style-pearl .gift-lid{border-radius:10px}.gift-color-champagne .gift-body,.gift-color-champagne .gift-lid{background:linear-gradient(110deg,#815f60,#efc5a9 43%,#ad7a74)}.gift-color-midnight .gift-body,.gift-color-midnight .gift-lid{background:linear-gradient(110deg,#17233a,#4a5a70 45%,#232139)}.ribbon-rose .gift-body i,.ribbon-rose .gift-lid i{background:linear-gradient(90deg,#9f5670,#e7a5aa,#a8526a)}.ribbon-ivory .gift-body i,.ribbon-ivory .gift-lid i{background:linear-gradient(90deg,#c3a28b,#fff0d9,#bd987d)}.gift:not(.gift-glow-on) .gift-light{display:none}.gift-animation-unfold.opened .gift-lid{transform:translate3d(0,-100px,65px)rotateX(65deg)}.cake-color-ivory .cake-tier{background:linear-gradient(90deg,#b88e83,#fff4d8 24%,#ead9ba 60%,#a87573)}.cake-color-cocoa .cake-tier{background:linear-gradient(90deg,#4c2930,#a46a59 24%,#8d5649 60%,#45242e)}.cake-design-petal .cake-top{box-shadow:0 3px 8px #592c3a77,0 0 0 7px #f7d9cb77}.candle-style-gold .cake-candle{background:linear-gradient(90deg,#8e6639,#f9df9e,#aa7444)}.flames-still .candle-flame{animation:none}.letter-paper blockquote{color:#623e3d;font:italic 25px/1.3 var(--serif);border-left:2px solid #a8666a;margin:22px 0;padding-left:20px}.letter-paper cite,.wish-sender{color:#875d5a;font:15px var(--sans);margin-top:8px;display:block}.memory-motion-zoom{animation:photo-zoom .9s var(--ease) both!important}.memory-motion-filmstrip{animation:photo-filmstrip .8s var(--ease) both!important}.memory-motion-polaroid,.memory-motion-scrapbook{animation:photo-polaroid .9s var(--ease) both!important}.memory-motion-slide{animation:photo-slide .8s var(--ease) both!important}.memory-motion-parallax{animation:photo-parallax 7s var(--ease) infinite alternate!important}.memory-motion-montage{animation:photo-montage .8s var(--ease) both!important}@keyframes photo-zoom{0%{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes photo-filmstrip{0%{opacity:0;transform:translate(35px)}to{opacity:1;transform:translate(0)}}@keyframes photo-polaroid{0%{opacity:0;transform:translateY(25px)rotate(-4deg)}to{opacity:1;transform:translateY(0)rotate(0)}}@keyframes photo-slide{0%{opacity:0;transform:translate(-35px)}to{opacity:1;transform:translate(0)}}@keyframes photo-parallax{0%{transform:scale(1.02)translate(-1%)}to{transform:scale(1.06)translate(1%)}}@keyframes photo-montage{0%{opacity:0;transform:scale(.92)rotate(3deg)}to{opacity:1;transform:scale(1)rotate(0)}}@media (max-width:700px){.scene-accent-media,.balloons-desktop-only{display:none}.mobile-compact .scene-layout{padding-top:78px;padding-bottom:82px}.scene-layout-centered .entrance-copy{width:100%}.scene-layout-immersive .entrance-copy h1,.scene-layout-immersive .finale-layout h1{font-size:clamp(46px,11vw,72px)}}.scene-layout h1,.scene-intro,.finale-message,.gift-reveal,.letter-paper{overflow-wrap:anywhere}.door-caption{padding:10px 6px}.door-caption strong{white-space:normal;text-wrap:balance;max-width:100%;line-height:1.1}.polaroid{padding-bottom:58px}.polaroid>span{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.1;display:-webkit-box;overflow:hidden}.age-note-title{color:#f3cab8;font:italic 26px/1.2 var(--serif);margin:18px 0 0}.birthday-wish+.birthday-wish{border-top:1px solid #a8666a40;margin-top:24px;padding-top:14px}.scroll-area{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a8666a #e8cdb6}.wordmark{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:30%;overflow:hidden}.header-tools{flex:none}.visitor-nav{min-width:0}.visitor-nav button{text-overflow:ellipsis;white-space:nowrap;max-width:150px;min-height:44px;overflow:hidden}.icon-button,.footer-arrows button,.lightbox-close{min-width:44px;min-height:44px}.scene-label{text-overflow:ellipsis;min-width:0;max-width:30%;overflow:hidden}.scene-dots{flex:none;gap:0}.footer-arrows{flex:none}.scene-dots button{width:44px;height:44px}.scene-dots button:before{top:19px;left:19px}.scene-menu .scene-menu-close{font:26px var(--sans);place-items:center;padding:0;display:grid}.lightbox-visual{min-width:0}.lightbox-visual p{overflow-wrap:anywhere}.watch-progress{min-height:44px}.watch-progress:before{position:absolute;inset:20px 0 auto}.watch-progress span{top:20px}.pill-arrow{flex:none}.pill-button{text-align:left;max-width:100%;line-height:1.5}.text-link{min-height:44px;line-height:1.5}.effects-off .birthday-title .birthday-letter{opacity:1;animation:none!important}.effects-off [class*=memory-motion-]{animation:none!important}@media (prefers-reduced-motion:reduce){.birthday-title .birthday-word .birthday-letter{opacity:1;animation:none!important}[class*=memory-motion-]{animation:none!important}}@media (max-width:1050px){.visitor-nav{display:none}.menu-trigger{display:grid}}@media (max-width:700px){.wordmark{max-width:55%}.visitor-footer{height:calc(64px + env(safe-area-inset-bottom))}.preview-ribbon{top:calc(72px + env(safe-area-inset-top));font-size:10px}.scene-layout{padding-bottom:calc(105px + env(safe-area-inset-bottom))}.entrance-layout{padding-bottom:calc(125px + env(safe-area-inset-bottom))}.unlock-page input{font-size:16px}.polaroid{padding-bottom:48px}}
