@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:300;src:url(./cormorant-garamond-cyrillic-ext-300-normal-D8IReVS-.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-ext-300-normal-B5wCrnbP.woff) format("woff");unicode-range:U+0460-052F,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:300;src:url(./cormorant-garamond-cyrillic-300-normal-DZNkLIMe.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-300-normal-KEduutn5.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:300;src:url(./cormorant-garamond-vietnamese-300-normal-BTzPAsHw.woff2) format("woff2"),url(./cormorant-garamond-vietnamese-300-normal-ByHlPz7v.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:300;src:url(./cormorant-garamond-latin-ext-300-normal-BsCYHBWC.woff2) format("woff2"),url(./cormorant-garamond-latin-ext-300-normal-DueGyF8j.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:300;src:url(./cormorant-garamond-latin-300-normal-Cw-E_7L1.woff2) format("woff2"),url(./cormorant-garamond-latin-300-normal-BuXLI6C0.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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:400;src:url(./cormorant-garamond-cyrillic-ext-400-normal-W3Dto7M0.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-ext-400-normal-DLdKLAvx.woff) format("woff");unicode-range:U+0460-052F,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(./cormorant-garamond-cyrillic-400-normal-DD2KOZkl.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-400-normal-CVFrM67f.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./cormorant-garamond-vietnamese-400-normal-6K-YXo6g.woff2) format("woff2"),url(./cormorant-garamond-vietnamese-400-normal-4uxlocMh.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./cormorant-garamond-latin-ext-400-normal-Drx2k2n9.woff2) format("woff2"),url(./cormorant-garamond-latin-ext-400-normal-uvC0WHQr.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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(./cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(./cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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(./cormorant-garamond-cyrillic-ext-500-normal-Yta7XZ9C.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-ext-500-normal-lsPpqi9g.woff) format("woff");unicode-range:U+0460-052F,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(./cormorant-garamond-cyrillic-500-normal-CyAY5ZLS.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-500-normal-DkJXBcIH.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(./cormorant-garamond-vietnamese-500-normal-BZGLGj12.woff2) format("woff2"),url(./cormorant-garamond-vietnamese-500-normal-DqXqCC0q.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(./cormorant-garamond-latin-ext-500-normal-CH1kM7og.woff2) format("woff2"),url(./cormorant-garamond-latin-ext-500-normal-DYeaGGzO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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(./cormorant-garamond-latin-500-normal-BsRWmXhO.woff2) format("woff2"),url(./cormorant-garamond-latin-500-normal-zIXX3Q-H.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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:300;src:url(./cormorant-garamond-cyrillic-ext-300-italic-B31MkR9z.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-ext-300-italic-Dj41S4NK.woff) format("woff");unicode-range:U+0460-052F,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:300;src:url(./cormorant-garamond-cyrillic-300-italic-Bi4RSOgf.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-300-italic-Bo30KLu4.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:300;src:url(./cormorant-garamond-vietnamese-300-italic-CCKicgM4.woff2) format("woff2"),url(./cormorant-garamond-vietnamese-300-italic-DjSFy2Pr.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:300;src:url(./cormorant-garamond-latin-ext-300-italic-Bt0Wsy7Q.woff2) format("woff2"),url(./cormorant-garamond-latin-ext-300-italic-DambfolG.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:300;src:url(./cormorant-garamond-latin-300-italic-qkwBXYHn.woff2) format("woff2"),url(./cormorant-garamond-latin-300-italic-DRnsRYID.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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(./cormorant-garamond-cyrillic-ext-400-italic-BEGvmv_3.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-ext-400-italic-C_Uk1MUY.woff) format("woff");unicode-range:U+0460-052F,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(./cormorant-garamond-cyrillic-400-italic-D3GtrbRZ.woff2) format("woff2"),url(./cormorant-garamond-cyrillic-400-italic-AH1vqu4S.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./cormorant-garamond-vietnamese-400-italic-BoXDRTEW.woff2) format("woff2"),url(./cormorant-garamond-vietnamese-400-italic-CJpMwFnN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./cormorant-garamond-latin-ext-400-italic-BdEzgT7i.woff2) format("woff2"),url(./cormorant-garamond-latin-ext-400-italic-CQvLaSWn.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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(./cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2) format("woff2"),url(./cormorant-garamond-latin-400-italic-BLh7T8o8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:400;src:url(./dancing-script-vietnamese-400-normal-lz8MlVep.woff2) format("woff2"),url(./dancing-script-vietnamese-400-normal-D2srOv8f.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:400;src:url(./dancing-script-latin-ext-400-normal-C917Kz-3.woff2) format("woff2"),url(./dancing-script-latin-ext-400-normal-DaWfpMsu.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Dancing Script;font-style:normal;font-display:swap;font-weight:400;src:url(./dancing-script-latin-400-normal--YrtvvVF.woff2) format("woff2"),url(./dancing-script-latin-400-normal-BY5FxJb0.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:500;src:url(./dancing-script-vietnamese-500-normal-kNXngsQM.woff2) format("woff2"),url(./dancing-script-vietnamese-500-normal-DduN5Z2z.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:500;src:url(./dancing-script-latin-ext-500-normal-DwO33GHY.woff2) format("woff2"),url(./dancing-script-latin-ext-500-normal-C6S_bQcr.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Dancing Script;font-style:normal;font-display:swap;font-weight:500;src:url(./dancing-script-latin-500-normal-C3T38yDr.woff2) format("woff2"),url(./dancing-script-latin-500-normal-DJfTWzQB.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:300;src:url(./be-vietnam-pro-vietnamese-300-normal-DgHVdWqW.woff2) format("woff2"),url(./be-vietnam-pro-vietnamese-300-normal-CCFytK8Z.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:300;src:url(./be-vietnam-pro-latin-ext-300-normal-Dcmdtkil.woff2) format("woff2"),url(./be-vietnam-pro-latin-ext-300-normal-BzPhHJqr.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:300;src:url(./be-vietnam-pro-latin-300-normal-Y7NOBCwQ.woff2) format("woff2"),url(./be-vietnam-pro-latin-300-normal-B5D-7GXS.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(./be-vietnam-pro-vietnamese-400-normal-CRcqvyg1.woff2) format("woff2"),url(./be-vietnam-pro-vietnamese-400-normal-BuGn0gnm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(./be-vietnam-pro-latin-ext-400-normal-CiZNW1ec.woff2) format("woff2"),url(./be-vietnam-pro-latin-ext-400-normal-DYBYyMQr.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(./be-vietnam-pro-latin-400-normal-PpnXBOrz.woff2) format("woff2"),url(./be-vietnam-pro-latin-400-normal-bXgqVju9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--black: #0a1024;--ink: #0e1630;--brown: #0d1429;--umber: #182344;--sepia: #344973;--beige: #d988a6;--cream: #efcfda;--paper: #ecc8d4;--champagne: #e86a98;--champagne-soft: rgba(232, 106, 152, .55);--text: #e9c5d1;--muted: #b7728b;--dim: #485879;--serif: "Cormorant Garamond", "Times New Roman", serif;--hand: "Dancing Script", "Segoe Script", cursive;--sans: "Be Vietnam Pro", system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1);--ease-cine: cubic-bezier(.7, 0, .2, 1);--gutter: clamp(16px, 5vw, 64px);--nav-h: 60px;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--black)}h1,h2,h3,p{text-wrap:balance}body{margin:0;min-height:100svh;background:var(--black);color:var(--text);font-family:var(--sans);font-weight:300;font-size:16px;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}body.is-locked,body.lb-open{overflow:hidden;height:100svh}img,video{display:block;max-width:100%}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}a{color:inherit}:focus-visible{outline:1px solid var(--champagne);outline-offset:4px}.hand{font-family:var(--hand);font-weight:400}.ic{width:20px;height:20px}.fx-grain{position:fixed;top:-50%;right:-50%;bottom:-50%;left:-50%;z-index:90;pointer-events:none;background-image:var(--grain);background-size:180px;opacity:.075;mix-blend-mode:overlay;animation:grain .8s steps(5) infinite}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-4%,-1%)}80%{transform:translate(3%,3%)}to{transform:translate(0)}}.fx-vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:89;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 55%,rgba(0,0,0,.55) 100%)}.progress{position:fixed;inset:0 0 auto;height:1px;z-index:70;pointer-events:none}.progress span{display:block;height:100%;background:linear-gradient(90deg,transparent,var(--champagne));transform:scaleX(0);transform-origin:left}.btn-ghost{border:1px solid rgba(232,106,152,.4);border-radius:999px;padding:8px 16px;font-size:13px;letter-spacing:.04em;color:var(--cream);transition:background .3s,border-color .3s}.btn-ghost:hover{background:#e86a981f;border-color:var(--champagne)}.nav{position:fixed;inset:0 0 auto;z-index:60;height:calc(var(--nav-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(var(--gutter),env(safe-area-inset-right)) 0 max(var(--gutter),env(safe-area-inset-left));display:flex;align-items:center;gap:24px;transition:opacity 1.2s var(--ease),background .6s,transform 1s var(--ease)}.nav:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(#0a1024d9,#0a102400);opacity:0;transition:opacity .6s}.nav.is-solid:before{opacity:1}body.is-locked .nav,body.in-goodbye .nav{opacity:0;pointer-events:none}body.in-goodbye .progress,body.is-locked .progress{opacity:0}.nav-brand{font-family:var(--serif);font-style:italic;font-size:22px;letter-spacing:.02em;color:var(--cream);white-space:nowrap}.nav-chapters{display:flex;gap:clamp(12px,2vw,28px);margin:0 auto}.nav-link{display:flex;align-items:baseline;white-space:nowrap;gap:6px;text-decoration:none;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:6px 0;position:relative;transition:color .4s}.nav-link b{font-family:var(--serif);font-weight:400;font-size:15px;letter-spacing:0;color:var(--champagne);opacity:.6}.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--champagne);transform:scaleX(0);transition:transform .6s var(--ease)}.nav-link:hover,.nav-link.is-active{color:var(--cream)}.nav-link.is-active:after{transform:scaleX(1)}.nav-link.is-active b{opacity:1}.nav-tools{display:flex;align-items:center;gap:10px;margin-left:auto}.nav-chapters+.nav-tools{margin-left:0}.nav-btn{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(232,106,152,.25);color:var(--cream);transition:border-color .3s,background .3s}.nav-btn:hover{border-color:var(--champagne);background:#e86a9814}.nav-menu{display:none}@media(max-width:1400px){.nav-menu{display:grid}.nav-chapters+.nav-tools{margin-left:auto}.nav-chapters{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;margin:0;flex-direction:column;justify-content:center;align-items:center;gap:22px;background:#0a1024fc;opacity:0;visibility:hidden;transition:opacity .5s var(--ease),visibility 0s .5s}.nav.menu-open .nav-chapters{opacity:1;visibility:visible;transition:opacity .5s var(--ease)}.nav-link{font-size:13px;gap:14px}.nav-link b{font-size:26px;min-width:36px;text-align:right}}@media(max-width:480px){.nav{gap:12px}.nav-brand{font-size:15px}.nav-tools{gap:6px}}.intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:var(--black);display:grid;place-items:center;padding:var(--gutter);overflow:hidden;transition:opacity 1.4s ease}.intro[hidden]{display:none}.intro .dust,.goodbye .dust{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.intro-halo{position:absolute;left:50%;top:46%;width:min(120vw,1100px);aspect-ratio:1;translate:-50% -50%;background:radial-gradient(circle,rgba(232,106,152,.1),rgba(24,52,136,.04) 35%,transparent 62%);animation:breathe 9s ease-in-out infinite;pointer-events:none}@keyframes breathe{0%,to{opacity:.6;scale:1}50%{opacity:1;scale:1.06}}.intro-fly{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.fly{position:absolute;top:0;left:var(--x);width:clamp(64px,var(--w),230px);padding:5px 5px 16px;background:var(--paper);border-radius:2px;box-shadow:0 18px 40px -14px #000000d9,0 0 34px #e86a982e;opacity:0;animation:fly-up var(--d) linear var(--t) infinite;will-change:transform,opacity}.fly img{display:block;width:100%;height:auto}@keyframes fly-up{0%{opacity:0;transform:translate3d(0,105vh,0) rotate(calc(var(--r) * -1))}10%{opacity:.92}35%{transform:translate3d(var(--s),62vh,0) rotate(var(--r))}65%{transform:translate3d(calc(var(--s) * -.6),24vh,0) rotate(calc(var(--r) * -.5))}90%{opacity:.92}to{opacity:0;transform:translate3d(var(--s),-32vh,0) rotate(var(--r))}}.fly-hero{left:0;width:clamp(150px,40vmin,400px);padding:8px 8px 26px;animation:fly-hero 5.2s cubic-bezier(.45,.05,.4,.95) .3s 1 both}@keyframes fly-hero{0%{opacity:0;transform:translate3d(-45vw,78vh,0) rotate(-28deg) scale(.55)}14%{opacity:1}50%{transform:translate3d(calc(50vw - 50%),18vh,0) rotate(7deg) scale(1.08)}84%{opacity:1}to{opacity:0;transform:translate3d(112vw,-48vh,0) rotate(30deg) scale(.6)}}@media(prefers-reduced-motion:reduce){.intro-fly{display:none}}.intro-text{position:relative;z-index:1;max-width:900px;text-align:center;display:grid;gap:clamp(18px,3vh,34px);margin-top:-6vh}.intro-text:before{content:"";position:absolute;top:-22%;right:-14%;bottom:-22%;left:-14%;z-index:-1;background:radial-gradient(closest-side,rgba(10,16,36,.94),rgba(10,16,36,.82) 68%,transparent);opacity:0;animation:intro-shade 1.6s ease 4.2s forwards;pointer-events:none}@keyframes intro-shade{to{opacity:1}}.intro-line{margin:0;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(24px,4.2vw,46px);line-height:1.3;color:var(--cream);opacity:0;filter:blur(10px);letter-spacing:.06em;transform:translateY(10px);text-shadow:0 0 0 rgba(232,106,152,0);transition:opacity 2.6s ease,filter 2.6s ease,letter-spacing 3.4s var(--ease),transform 3s var(--ease),text-shadow 3s,color 2s}.intro-line.on{opacity:1;filter:blur(0);letter-spacing:.005em;transform:none;text-shadow:0 0 28px rgba(232,106,152,.45)}.intro-line.dim{color:var(--muted);text-shadow:none}.intro-btn{position:absolute;bottom:max(13vh,calc(env(safe-area-inset-bottom) + 64px));left:50%;translate:-50% 0;padding:16px 34px;border:1px solid rgba(232,106,152,.45);border-radius:999px;font-family:var(--serif);font-size:19px;letter-spacing:.12em;color:var(--cream);background:#141832eb;z-index:1;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity 2s ease,transform 2s var(--ease),background .5s,box-shadow .6s,border-color .5s;white-space:nowrap}.intro-btn:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;box-shadow:0 0 #e86a9859;animation:pulse 3.2s ease-out infinite}@keyframes pulse{0%{box-shadow:0 0 #e86a9859}to{box-shadow:0 0 0 18px #e86a9800}}.intro-btn.on{opacity:1;transform:none;pointer-events:auto}.intro-btn:hover{background:#3a2042f2;border-color:var(--champagne);box-shadow:0 0 40px #e86a9840}.intro-bloom{position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px;border-radius:50%;background:radial-gradient(circle,#ffdce8 0%,#f58cb2 30%,rgba(232,106,152,.4) 55%,transparent 70%);opacity:0;pointer-events:none}.intro.is-leaving .intro-line,.intro.is-leaving .intro-btn{opacity:0;filter:blur(14px);transition:opacity 1.4s ease,filter 1.4s ease}.intro.is-leaving .intro-bloom{animation:bloom 2.6s var(--ease-cine) forwards}@keyframes bloom{0%{opacity:0;transform:scale(1)}35%{opacity:1;transform:scale(30)}to{opacity:1;transform:scale(420)}}.intro.is-gone{opacity:0}.goodbye{position:relative;min-height:100svh;height:100svh;display:grid;place-items:center;overflow:hidden;background:#000;padding:var(--gutter)}.gb-light{position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:#ffd6e4;box-shadow:0 0 20px 6px #ffb4cdb3,0 0 80px 30px #e86a9840,0 0 220px 90px #e86a9814;opacity:0;transform:scale(.2);transition:opacity 3s ease,transform 3s var(--ease)}.gb-light.on{opacity:1;transform:scale(1);animation:flicker 5s ease-in-out 3s infinite}@keyframes flicker{0%,to{filter:brightness(1)}45%{filter:brightness(.82)}55%{filter:brightness(1.1)}}.gb-text{position:relative;display:grid;gap:18px;text-align:center;max-width:820px;translate:0 -20%;transition:filter 5s ease,opacity 5s ease}.gb-line{margin:0;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(21px,3.2vw,34px);line-height:1.35;color:var(--cream);opacity:0;filter:blur(8px);transform:translateY(8px);transition:opacity 2.8s ease,filter 2.8s ease,transform 3s var(--ease),color 2s}.gb-line.on{opacity:1;filter:blur(0);transform:none}.gb-line.dim{color:#5f7298}.gb-final{margin:30px 0 0;display:grid;gap:10px;opacity:0;filter:blur(6px);transition:opacity 3.6s ease,filter 3.6s ease}.gb-final.on{opacity:1;filter:blur(0)}.gb-title{font-family:var(--serif);font-weight:400;font-size:clamp(16px,2vw,21px);letter-spacing:.5em;margin-right:-.5em;color:var(--champagne);text-shadow:0 0 22px rgba(232,106,152,.5)}@media(max-width:760px){.gb-title{letter-spacing:.24em;margin-right:-.24em}}.gb-names{font-size:clamp(20px,2.6vw,26px);color:var(--beige)}.goodbye.is-fading .gb-text{opacity:0;filter:blur(14px)}.goodbye.is-fading .gb-light{opacity:0;transform:scale(.05);animation:none;transition:opacity 6s ease 1s,transform 7s var(--ease-cine) .5s}.gb-closing{position:absolute;left:0;right:0;top:50%;margin:0;padding-inline:var(--gutter);text-align:center;font-size:clamp(30px,5.4vw,60px);line-height:1.25;color:var(--cream);text-shadow:0 0 34px rgba(232,106,152,.5);opacity:0;filter:blur(10px);transform:translateY(-50%);transition:opacity 4s ease,filter 4s ease}.gb-closing.on{opacity:1;filter:blur(0)}.gb-replay{position:absolute;bottom:max(9vh,calc(env(safe-area-inset-bottom) + 40px));left:50%;translate:-50% 0;display:flex;align-items:center;gap:10px;padding:12px 22px;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);border:1px solid rgba(232,106,152,.2);border-radius:999px;opacity:0;pointer-events:none;transition:opacity 3s ease,color .4s,border-color .4s;white-space:nowrap}.gb-replay.on{opacity:1;pointer-events:auto}.gb-replay:hover{color:var(--cream);border-color:var(--champagne)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;grid-template-rows:1fr auto;opacity:0;transition:opacity .45s ease}.lightbox[hidden]{display:none}.lightbox.is-open{opacity:1}.lb-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#020307f5}.lb-stage{position:relative;margin:0;display:grid;place-items:center;padding:calc(64px + env(safe-area-inset-top)) clamp(8px,7vw,96px) 8px;min-height:0}.lb-img{max-width:100%;max-height:calc(100svh - 190px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:auto;height:auto;object-fit:contain;box-shadow:0 30px 80px #0009;transition:opacity .5s ease,transform .6s var(--ease),filter .6s ease}.lb-img.is-loading{opacity:0;transform:translate(calc(var(--dir, 0) * 24px)) scale(.985);filter:blur(6px)}.lb-meta{position:relative;text-align:center;padding:10px var(--gutter) calc(22px + env(safe-area-inset-bottom));display:grid;gap:2px}.lb-date{font-size:11px;letter-spacing:.3em;color:var(--champagne)}.lb-cap{margin:0;font-size:clamp(20px,2.4vw,26px);color:var(--cream);line-height:1.3}.lb-count{font-size:11px;letter-spacing:.2em;color:var(--dim)}.lb-btn{position:absolute;z-index:2;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:var(--cream);background:#0a102466;border:1px solid rgba(232,106,152,.2);transition:border-color .3s,background .3s}.lb-btn:hover{border-color:var(--champagne);background:#e86a981a}.lb-close{top:calc(12px + env(safe-area-inset-top));right:12px}.lb-prev,.lb-next{top:50%;translate:0 -50%}.lb-prev{left:14px}.lb-next{right:14px}@media(max-width:760px){.lb-prev,.lb-next{top:auto;bottom:calc(18px + env(safe-area-inset-bottom));translate:none;width:42px;height:42px}.lb-meta{padding-inline:64px}}@media(prefers-reduced-motion:reduce){.fx-grain,.intro-halo,.intro-btn:before{animation:none}}.chapter{position:relative}.ch-body{position:relative;padding:0 var(--gutter) clamp(90px,16vh,180px);max-width:1240px;margin:0 auto}.ch-head{text-align:center;max-width:760px;margin:0 auto clamp(56px,10vh,110px);opacity:0;transform:translateY(24px);filter:blur(6px);transition:opacity 1.8s ease,transform 1.8s var(--ease),filter 1.8s ease}.ch-head.is-in{opacity:1;transform:none;filter:none}.ch-title{margin:0 0 14px;font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(30px,5vw,58px);line-height:1.15;color:var(--cream)}.ch-lead{margin:0;font-size:clamp(21px,2.6vw,27px);color:var(--beige);line-height:1.4}.happy{padding:clamp(90px,18vh,190px) var(--gutter);overflow:hidden}.happy:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 30% at 20% 22%,rgba(232,106,152,.1),transparent 70%),radial-gradient(ellipse 55% 30% at 82% 62%,rgba(255,170,130,.07),transparent 70%);pointer-events:none}.happy .ch-head{position:relative}.hp-rule{display:block;width:96px;height:1px;margin:26px auto 0;background:linear-gradient(90deg,transparent,var(--champagne),transparent)}.hp-grid{position:relative;display:grid;gap:clamp(8px,1.3vw,18px);width:min(100%,1240px);margin-inline:auto}.hp-row{display:flex;justify-content:center;align-items:flex-start;gap:clamp(8px,1.3vw,18px)}.hp-item{position:relative;flex:1 1 0;min-width:0;padding:0;border:0;border-radius:4px;overflow:hidden;cursor:zoom-in;background:var(--umber);box-shadow:0 30px 60px -34px #000000f2,0 0 0 1px #e86a9824;opacity:0;transform:translateY(30px) scale(.975);filter:blur(8px);transition:opacity 1.5s ease calc(var(--i, 0) * .16s),transform 1.6s var(--ease) calc(var(--i, 0) * .16s),filter 1.5s ease calc(var(--i, 0) * .16s),box-shadow .7s ease}.hp-item.is-in{opacity:1;transform:none;filter:none}.hp-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 40%,transparent 58%,rgba(10,16,36,.32));transition:opacity .7s ease;pointer-events:none}.hp-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.8s var(--ease)}.hp-item:hover,.hp-item:focus-visible{box-shadow:0 34px 70px -34px #000000f2,0 0 0 1px #e86a9880,0 0 46px #e86a9833}.hp-item:focus-visible{outline:1px solid var(--champagne);outline-offset:3px}.hp-item:hover img{transform:scale(1.04)}.hp-item:hover:after{opacity:.35}.hp-row>.hp-item:only-child{flex:0 1 min(44%,520px)!important}@media(max-width:760px){.hp-row>.hp-item:only-child{flex-basis:100%!important}}.card{position:relative;min-height:100svh;display:grid;place-content:center;justify-items:center;text-align:center;padding:var(--gutter);overflow:hidden}.card-light{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;transition:opacity 3s ease}.card-above{position:relative;margin:0 0 clamp(30px,6vh,56px);font-size:clamp(25px,3.6vw,40px);line-height:1.3;color:var(--cream);text-shadow:0 0 26px rgba(232,106,152,.4);opacity:0;transition:opacity 2s ease}.card.is-in .card-above{opacity:1}.card-num{margin:0 0 18px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11px;letter-spacing:.5em;text-transform:uppercase;color:var(--muted);opacity:0;transition:opacity 2s ease .4s}.card-num b{font-family:var(--serif);font-weight:300;font-size:clamp(54px,9vw,104px);letter-spacing:.05em;line-height:1;color:var(--champagne);text-shadow:0 0 40px rgba(232,106,152,.25)}.card-name{margin:0;font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(30px,5.4vw,64px);line-height:1.1;color:var(--cream);opacity:0;filter:blur(10px);letter-spacing:.08em;transition:opacity 2.4s ease .9s,filter 2.4s ease .9s,letter-spacing 3.2s var(--ease) .9s}.card-line{display:block;width:1px;height:0;margin-top:40px;background:linear-gradient(var(--champagne),transparent);transition:height 2.4s var(--ease) 1.8s}.card-scroll{position:absolute;bottom:calc(26px + env(safe-area-inset-bottom));left:50%;width:22px;height:34px;margin-left:-11px;border:1px solid rgba(232,106,152,.3);border-radius:12px;opacity:0;transition:opacity 1.4s ease 3s}.card-scroll:after{content:"";position:absolute;left:50%;top:7px;width:2px;height:6px;margin-left:-1px;border-radius:1px;background:var(--champagne);animation:scrollhint 2.2s ease-in-out infinite}@keyframes scrollhint{0%{transform:translateY(0);opacity:1}70%{transform:translateY(12px);opacity:0}to{opacity:0}}.card.is-in .card-light,.card.is-in .card-num,.card.is-in .card-scroll{opacity:1}.card.is-in .card-name{opacity:1;filter:blur(0);letter-spacing:.005em}.card.is-in .card-line{height:70px}.card[data-mood=dawn] .card-light{background:radial-gradient(ellipse 60% 45% at 50% 55%,rgba(236,70,131,.16),transparent 70%),linear-gradient(100deg,transparent 30%,rgba(255,130,176,.12) 48%,transparent 62%);background-size:100% 100%,250% 100%;background-position:0 0,120% 0}.card[data-mood=dawn].is-in .card-light{animation:leak 7s var(--ease) forwards}@keyframes leak{0%{background-position:0 0,120% 0}to{background-position:0 0,-20% 0}}.sprocket{position:absolute;top:-40px;bottom:-40px;width:26px;background:repeating-linear-gradient(transparent 0 14px,rgba(233,197,209,.1) 14px 30px,transparent 30px 40px);border-left:1px solid rgba(232,106,152,.08);border-right:1px solid rgba(232,106,152,.08);opacity:0;transition:opacity 2s ease}.sprocket-l{left:clamp(6px,3vw,40px)}.sprocket-r{right:clamp(6px,3vw,40px)}.card[data-mood=reel].is-in .sprocket{opacity:1;animation:reel 1.4s linear infinite}@keyframes reel{to{transform:translateY(40px)}}.card[data-mood=reel] .card-light{background:radial-gradient(ellipse 50% 40% at 50% 50%,rgba(233,197,209,.08),transparent 70%)}.card[data-mood=reel].is-in .card-num b{animation:projflick 2.2s steps(1) .4s}@keyframes projflick{0%{opacity:.2}8%{opacity:1}12%{opacity:.4}20%{opacity:1}26%{opacity:.6}32%,to{opacity:1}}.card[data-mood=paper]{background:radial-gradient(ellipse at 50% 120%,rgba(18,39,102,.35),transparent 60%)}.card[data-mood=paper] .card-light{background:radial-gradient(circle at 50% 60%,rgba(255,110,163,.16),transparent 45%)}.card[data-mood=paper].is-in .card-light{animation:candle 4s ease-in-out infinite}@keyframes candle{0%,to{opacity:.85;transform:scale(1)}30%{opacity:1;transform:scale(1.04)}60%{opacity:.75;transform:scale(.98)}}.card[data-mood=paper] .card-name{font-family:var(--hand);font-style:normal;font-weight:400}.beam{position:absolute;top:-10%;left:50%;width:160vmax;height:120%;translate:-50% 0;background:conic-gradient(from 168deg at 50% 0%,transparent 0deg,rgba(255,200,218,.1) 10deg,rgba(255,200,218,.16) 12deg,rgba(255,200,218,.1) 14deg,transparent 24deg);filter:blur(6px);opacity:0;transition:opacity 3s ease;pointer-events:none}.card[data-mood=projector].is-in .beam{opacity:1;animation:beam 6s ease-in-out infinite}@keyframes beam{0%,to{opacity:.85}50%{opacity:1}52%{opacity:.7}54%{opacity:1}}.ch1{background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(19,37,91,.22),transparent 70%),linear-gradient(var(--black),#0c1329 40%,#0d142d 100%)}.diary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(30px,7vw,120px);row-gap:clamp(30px,6vh,70px);max-width:980px;margin:0 auto;perspective:1400px}.polaroid{margin:0;width:min(100%,400px);justify-self:center}.polaroid:nth-child(odd){justify-self:end}.polaroid:nth-child(2n){justify-self:start;margin-top:clamp(80px,18vh,220px)}.polaroid.is-portrait{width:min(100%,360px)}.pol-inner{position:relative;padding:14px 14px 18px;background:linear-gradient(160deg,#f3d8e1,#ecb3c8);box-shadow:0 1px #ffffff80 inset,0 30px 60px -20px #000c,0 8px 20px #0006;transform-origin:calc(50% + var(--side) * -60%) 50%;transform:rotate(var(--rot)) rotateY(calc(var(--side) * -55deg)) translate(calc(var(--side) * 50px));opacity:0;filter:brightness(.4) blur(2px);transition:transform 2.2s var(--ease),opacity 1.4s ease,filter 2.4s ease}.polaroid.is-in .pol-inner{transform:rotate(var(--rot));opacity:1;filter:none}.pol-photo{display:block;width:100%;overflow:hidden;background:#131a30;cursor:zoom-in}.pol-photo img{width:100%;height:100%;object-fit:cover;filter:sepia(.18) contrast(1.02) saturate(.92);transform:scale(1.12);transition:transform 3s var(--ease) .3s,filter .8s}.polaroid.is-in .pol-photo img{transform:scale(1)}.pol-photo:hover img{filter:sepia(0) contrast(1.04)}.polaroid figcaption{padding:14px 4px 0;display:grid;gap:2px;color:#152042}.polaroid .hand{font-size:clamp(19px,2vw,22px);line-height:1.25}.stamp{font-family:var(--sans);font-size:10.5px;font-weight:400;letter-spacing:.24em;color:#ac2a5a}.tape{position:absolute;top:-12px;left:50%;width:96px;height:26px;translate:-50% 0;rotate:calc(var(--rot) * -1.5);background:#eaa6bf8c;box-shadow:0 1px 3px #0003;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:2}@media(max-width:760px){.diary{grid-template-columns:1fr;row-gap:54px}.polaroid,.polaroid.is-portrait{width:84%;max-width:380px}.polaroid:nth-child(odd){justify-self:start}.polaroid:nth-child(2n){justify-self:end;margin-top:0}.pol-inner{padding:10px 10px 14px}}.ch2{background:linear-gradient(#0d142d,var(--black) 10%,#0b1226 60%,#0c142c)}.timeline{position:relative;padding-left:clamp(30px,7vw,110px)}.tl-spine{position:absolute;left:clamp(8px,2.6vw,40px);top:0;bottom:0;width:1px;background:#e86a981f}.tl-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent,var(--champagne) 6%,var(--champagne-soft));transform-origin:top;transform:scaleY(0);box-shadow:0 0 10px #e86a9880}.scene{position:relative;margin-bottom:clamp(110px,20vh,220px)}.scene-head{position:relative;max-width:560px;margin-bottom:clamp(28px,5vh,54px);opacity:0;transform:translate(-24px);transition:opacity 1.6s ease,transform 1.8s var(--ease)}.scene--r .scene-head{margin-left:auto;text-align:right;transform:translate(24px)}.scene-head.is-in{opacity:1;transform:none}.scene-dot{position:absolute;top:10px;left:calc(-1*clamp(30px,7vw,110px) + clamp(8px,2.6vw,40px) - 4px);width:9px;height:9px;border-radius:50%;background:var(--black);border:1px solid var(--champagne);transition:background 1s .6s,box-shadow 1s .6s}.scene-head.is-in .scene-dot{background:var(--champagne);box-shadow:0 0 14px 3px #e86a9880}.scene-date{display:block;font-size:11px;letter-spacing:.34em;color:var(--champagne);margin-bottom:6px}.scene-title{margin:0 0 8px;font-family:var(--serif);font-weight:300;font-size:clamp(30px,4.4vw,52px);line-height:1.08;color:var(--cream)}.scene-text{margin:0;font-size:clamp(20px,2.2vw,25px);line-height:1.35;color:var(--beige)}.scene-media{display:flex;flex-wrap:wrap;align-items:flex-start;gap:clamp(14px,2.4vw,34px)}.scene--r .scene-media{flex-direction:row-reverse}.frame{margin:0;position:relative;flex:0 0 auto}.frame:nth-child(1){width:60%}.frame:nth-child(1).is-portrait{width:44%}.frame:nth-child(2){width:36%;margin-top:14%}.frame:nth-child(2).is-portrait{width:31%}.frame:nth-child(3){width:40%;margin-left:9%;margin-right:9%;margin-top:2%}.frame:nth-child(3).is-portrait{width:32%}.frame:nth-child(4){width:34%;margin-top:7%}.frame:nth-child(5){width:38%;margin-left:4%;margin-right:4%}.frame:nth-child(6){width:30%;margin-top:10%}.frame:nth-child(n+4).is-landscape{width:46%}.scene-media.n1 .frame:nth-child(1).is-portrait{width:min(46%,440px);margin-inline:auto}.scene-media.n1 .frame:nth-child(1){width:78%}.scene-media.n2 .frame:nth-child(2){margin-top:18%}.scene-media.n2 .frame:nth-child(2).is-landscape{width:44%}.frame-inner{position:relative;overflow:hidden;background:#0b101f;clip-path:inset(0 0 100% 0);transition:clip-path 1.8s var(--ease-cine) calc(var(--j) * .18s);box-shadow:0 30px 70px -30px #000000e6}.frame:nth-child(3n+2) .frame-inner{clip-path:inset(0 100% 0 0)}.frame:nth-child(3n+3) .frame-inner{clip-path:inset(0 0 0 100%)}.frame.is-in .frame-inner{clip-path:inset(0 0 0 0)}.frame-inner img,.frame-inner video{width:100%;height:100%;object-fit:cover}.frame-inner img{transform:scale(1.22);filter:brightness(.35) saturate(.7) sepia(.2);transition:transform 3.6s var(--ease) calc(var(--j) * .18s),filter 2.6s ease calc(var(--j) * .18s + .3s)}.frame.is-in .frame-inner img{transform:scale(1.0001);filter:brightness(.96) saturate(.95) sepia(.08)}.frame-photo{display:block;width:100%;height:100%;cursor:zoom-in}.frame-photo:hover img{filter:brightness(1.04) saturate(1) sepia(0);transform:scale(1.03);transition-delay:0s;transition-duration:1.2s}.frame figcaption{margin-top:10px;font-size:clamp(17px,1.8vw,21px);line-height:1.3;color:var(--muted);opacity:0;transition:opacity 1.6s ease calc(var(--j) * .18s + 1s)}.scene--r .frame figcaption{text-align:right}.frame.is-in figcaption{opacity:1}.vplay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:10px;background:linear-gradient(transparent 50%,#00000073);transition:opacity .6s ease}.vplay.is-hidden{opacity:0;pointer-events:none}.vplay-ring{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(239,207,218,.6);background:#0a102459;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:var(--cream);transition:transform .6s var(--ease),border-color .4s,background .4s}.vplay-ring .ic{width:22px;height:22px;margin-left:3px}.vplay:hover .vplay-ring{transform:scale(1.08);border-color:var(--champagne);background:#e86a982e}.vplay-time{font-size:11px;letter-spacing:.2em;color:var(--cream);text-shadow:0 1px 6px rgba(0,0,0,.8)}.frame.is-video .frame-inner:after{content:"FILM";position:absolute;top:10px;left:12px;font-size:9px;letter-spacing:.3em;color:#efcfdabf;pointer-events:none}.interlude{position:relative;margin:0 calc(-1 * var(--gutter)) clamp(110px,20vh,220px) calc(-1 * clamp(30px,7vw,110px) - var(--gutter));min-height:82svh;display:grid;place-items:center;overflow:hidden;text-align:center;padding:var(--gutter)}.interlude-img{position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:linear-gradient(90deg,transparent,#000000 18%,#000000 82%,transparent);mask-image:linear-gradient(90deg,transparent,#000000 18%,#000000 82%,transparent);opacity:0;transition:opacity 3s ease}.interlude-img:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(var(--black),rgba(10,16,36,.35) 30%,rgba(10,16,36,.35) 70%,var(--black)),radial-gradient(ellipse at center,transparent 30%,rgba(10,16,36,.8))}.interlude-img img{width:100%;height:100%;object-fit:cover;filter:sepia(.35) brightness(.55) blur(1px);transform:scale(1.15);transition:transform 12s linear}.interlude.is-in .interlude-img{opacity:1}.interlude.is-in .interlude-img img{transform:scale(1)}.interlude-text{position:relative;max-width:780px;margin:0;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(26px,4vw,46px);line-height:1.25;color:var(--cream);text-shadow:0 2px 30px rgba(0,0,0,.8);opacity:0;filter:blur(8px);transition:opacity 2.4s ease .8s,filter 2.4s ease .8s}.interlude.is-in .interlude-text{opacity:1;filter:none}@media(max-width:760px){.scene-head,.scene--r .scene-head{text-align:left;margin-left:0;transform:translateY(16px)}.scene--r .scene-media{flex-direction:row}.scene-media{gap:14px 12px}.frame{translate:none!important}.frame:nth-child(1),.frame:nth-child(1).is-portrait,.scene-media.n1 .frame:nth-child(1),.scene-media.n1 .frame:nth-child(1).is-portrait{width:100%;margin:0}.frame:nth-child(1).is-portrait{width:88%}.frame:nth-child(n+2),.frame:nth-child(n+2).is-portrait,.frame:nth-child(n+4).is-landscape{width:calc(50% - 6px);margin:0}.frame:nth-child(odd):not(:first-child){margin-top:48px}.scene-media.n2 .frame:nth-child(2){width:78%;margin:0 0 0 auto}.scene--r .frame figcaption{text-align:left}.frame figcaption{font-size:17px}.vplay-ring{width:52px;height:52px}}.ch3{background:linear-gradient(#0c142c,#080c1a 30%,#080e1e 70%,var(--black))}.her-letters{width:min(100%,1120px);margin-inline:auto;padding:4vh var(--gutter) clamp(60px,10vh,110px)}.hl-list{display:grid;gap:clamp(70px,12vh,130px);margin-top:clamp(40px,8vh,80px)}.hl-item{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;gap:clamp(28px,5vw,70px);opacity:0;translate:0 28px;transition:opacity 1.6s ease,translate 1.8s var(--ease)}.hl-item.is-in{opacity:1;translate:0 0}.hl-item:nth-child(2n) .hl-photo{order:2}.hl-photo{display:block;width:100%;overflow:hidden;cursor:zoom-in;rotate:-1.4deg;box-shadow:0 40px 80px -36px #000000e6}.hl-item:nth-child(2n) .hl-photo{rotate:1.2deg}.hl-photo img{width:100%;height:100%;object-fit:cover}.hl-text{padding:clamp(26px,4vw,46px) clamp(22px,4vw,44px);color:#2b2118;box-shadow:0 30px 60px -34px #000000d9}.hl-kraft{background:linear-gradient(170deg,#f1dcaa,#e6cb8e)}.hl-white{background:linear-gradient(170deg,#f8f4ea,#ece6d6)}.hl-date{display:block;margin-bottom:14px;font-family:var(--sans);font-size:12px;letter-spacing:.2em;color:#7a6243}.hl-greeting,.hl-line,.hl-sign{margin:0;font-size:clamp(21px,2.3vw,25px);line-height:1.45;text-wrap:pretty}.hl-greeting{margin-bottom:12px;font-size:clamp(25px,2.8vw,30px)}.hl-line+.hl-line{margin-top:10px}.hl-sign{margin-top:22px;text-align:right}.hl-outro{margin:clamp(70px,12vh,120px) 0 0;text-align:center;font-size:clamp(24px,3vw,32px);color:var(--beige);opacity:0;transition:opacity 2s ease}.hl-outro.is-in{opacity:1}@media(max-width:760px){.hl-item{grid-template-columns:minmax(0,1fr);gap:22px}.hl-item:nth-child(2n) .hl-photo{order:0}.hl-photo{width:88%;margin-inline:auto}}.letter-room{position:relative;padding:4vh var(--gutter) clamp(110px,18vh,200px);display:grid;place-items:center}.letter-glow{position:absolute;top:-10%;right:0;bottom:0;left:0;background:radial-gradient(ellipse 50% 40% at 50% 35%,rgba(255,120,169,.14),transparent 70%);pointer-events:none}.paper{position:relative;width:min(100%,680px);padding:clamp(36px,7vw,76px) clamp(26px,7vw,78px) clamp(44px,7vw,80px);color:#111d42;background:radial-gradient(ellipse at 20% 10%,rgba(255,238,244,.7),transparent 50%),radial-gradient(ellipse at 90% 95%,rgba(189,61,108,.25),transparent 55%),linear-gradient(175deg,#f2d4de,#e8bfcd 60%,#e8a5bd);box-shadow:0 50px 100px -40px #000000e6,0 0 0 1px #86244826,0 0 120px #ff6ea314;rotate:-.6deg}.paper:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:var(--grain);background-size:180px;opacity:.09;mix-blend-mode:multiply;pointer-events:none}.paper:after{content:"";position:absolute;left:0;right:0;top:33%;height:1px;background:linear-gradient(90deg,transparent,rgba(134,36,72,.12),transparent);pointer-events:none}.lt-greeting,.lt-line,.lt-sign{margin:0;font-size:clamp(23px,3vw,30px);line-height:1.5;opacity:0;clip-path:inset(-10% 100% -10% 0);filter:blur(2px);transition:clip-path var(--dur, 1.6s) cubic-bezier(.45,.05,.4,1),opacity .8s ease,filter 1.4s ease}.lt-greeting{margin-bottom:22px;font-size:clamp(26px,3.4vw,34px)}.lt-line{text-wrap:pretty}.lt-line+.lt-line{margin-top:4px}.lt-gap{height:18px}.lt-sign{margin-top:38px;text-align:right;font-size:clamp(28px,3.6vw,38px)}.on.lt-greeting,.on.lt-line,.on.lt-sign{opacity:1;clip-path:inset(-10% -5% -10% 0);filter:none}.ed-bar{display:grid;gap:14px;margin-bottom:26px}.paper.is-editing .lt-greeting,.paper.is-editing .lt-body,.paper.is-editing .lt-sign,.paper:not(.is-editing) .ed-hint,.paper:not(.is-editing) .ed-fields{display:none}.ed-hint{margin:0;font-size:13px;color:#344973}.ed-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.paper .btn-ghost{color:#111d42;border-color:#12276659}.paper .btn-ghost:hover{background:#12276614}.ed-msg{font-size:12px;color:#88274b}.ed-fields{display:grid;gap:10px}.ed-input,.ed-area{width:100%;font-size:22px;color:#111d42;background:#fff4f88c;border:1px dashed rgba(18,39,102,.35);padding:10px 12px;line-height:1.45;resize:vertical}.ed-input:focus,.ed-area:focus{outline:none;border-color:#ac2a5a}.ch4{background:linear-gradient(var(--black),#080d1e 40%,#000000)}.cinema{max-width:1180px}.cinema-title{margin:0 auto clamp(36px,7vh,70px);max-width:820px;text-align:center;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(28px,4.6vw,54px);line-height:1.18;color:var(--cream);opacity:0;filter:blur(8px);transform:translateY(18px);transition:opacity 2.2s ease,filter 2.2s ease,transform 2.2s var(--ease)}.cinema-title.is-in{opacity:1;filter:none;transform:none;text-shadow:0 0 40px rgba(232,106,152,.2)}.screen-wrap{opacity:0;transform:scale(.96);filter:brightness(.2);transition:opacity 2s ease .3s,transform 2.4s var(--ease) .3s,filter 3s ease .3s}.screen-wrap.is-in{opacity:1;transform:none;filter:none}.screen{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:#000;border-radius:4px;box-shadow:0 0 0 1px #e86a981f,0 60px 140px -40px #e86a982e,0 40px 100px #000c;isolation:isolate;outline:none}.screen-bg{position:absolute;top:-40px;right:-40px;bottom:-40px;left:-40px;background-size:cover;background-position:center;filter:blur(36px) brightness(.4) saturate(.8);transform:scale(1.1);transition:background-image 1s ease}.reel{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer}.layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 1.3s ease;filter:contrast(1.04) saturate(.92) sepia(.06)}.layer.on{opacity:1}.layer.zoom{animation:slowzoom var(--zoom-dur, 12s) linear forwards}.layer.zoom-paused,.screen:not(.is-playing) .layer.zoom{animation-play-state:paused}@keyframes slowzoom{0%{transform:scale(1)}to{transform:scale(1.08)}}.screen.is-cut .reel:after{opacity:1}.reel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#000;opacity:0;transition:opacity .7s ease;pointer-events:none}.screen-leak{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse 40% 60% at 0% 20%,rgba(255,70,138,.18),transparent 70%),radial-gradient(ellipse 30% 50% at 100% 90%,rgba(255,120,169,.12),transparent 70%);mix-blend-mode:screen;animation:leakdrift 14s ease-in-out infinite alternate}@keyframes leakdrift{0%{opacity:.5;transform:translate(-2%)}50%{opacity:1}to{opacity:.6;transform:translate(2%)}}.screen-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.6))}.letterbox{position:absolute;left:0;right:0;height:0;background:#000;z-index:2;pointer-events:none;transition:height 1.2s var(--ease-cine)}.lb-top{top:0}.lb-bottom{bottom:0}.screen.is-playing .letterbox{height:6%}.screen-meta{position:absolute;left:clamp(16px,3vw,34px);bottom:calc(clamp(16px,3vw,34px) + 54px);z-index:3;display:grid;gap:2px;pointer-events:none;text-shadow:0 2px 14px rgba(0,0,0,.9);opacity:0;transform:translateY(8px)}.screen-meta.show{animation:meta 6s ease forwards}@keyframes meta{0%{opacity:0;transform:translateY(8px)}15%,75%{opacity:1;transform:none}to{opacity:0;transform:none}}.screen:not(.is-playing) .screen-meta.show{animation:none;opacity:1;transform:none}.sm-idx{font-size:10px;letter-spacing:.36em;color:var(--champagne)}.sm-title{font-family:var(--serif);font-style:italic;font-size:clamp(22px,3vw,34px);color:var(--cream);line-height:1.1}.sm-date{font-size:11px;letter-spacing:.28em;color:var(--beige)}.screen-start{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:grid;place-content:center;justify-items:center;gap:16px;background:radial-gradient(ellipse at center,#0a102433,#0a1024bf);transition:opacity 1.2s ease}.screen.is-started .screen-start{opacity:0;pointer-events:none}.ss-ring{width:86px;height:86px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(232,106,152,.55);color:var(--cream);box-shadow:0 0 60px #e86a9840;transition:transform .6s var(--ease),background .4s}.ss-ring .ic{width:28px;height:28px;margin-left:4px}.screen-start:hover .ss-ring{transform:scale(1.06);background:#e86a981f}.ss-label{font-family:var(--serif);font-size:18px;letter-spacing:.24em;color:var(--cream)}.controls{position:absolute;left:0;right:0;bottom:0;z-index:5;display:flex;align-items:center;gap:4px;padding:30px clamp(10px,2vw,22px) 12px;background:linear-gradient(transparent,#000000bf);transition:opacity .8s ease,transform .8s var(--ease)}.screen:not(.is-started) .controls{opacity:0;pointer-events:none}.screen.is-idle .controls{opacity:0;transform:translateY(8px)}.screen.is-idle{cursor:none}.cb{flex:0 0 auto;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:var(--cream);transition:background .3s,color .3s}.cb:hover{background:#e86a9824;color:#fff}.cb .ic{width:18px;height:18px}.cb-main .ic{width:22px;height:22px}.pb{flex:1 1 auto;height:30px;display:flex;align-items:center;margin:0 8px;cursor:pointer;touch-action:none}.pb-track{position:relative;display:block;width:100%;height:2px;background:#efcfda38;overflow:hidden;border-radius:1px;transition:height .2s}.pb:hover .pb-track{height:4px}.pb-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--champagne);transform-origin:left;transform:scaleX(0);box-shadow:0 0 8px var(--champagne)}.cb-time{flex:0 0 auto;font-size:11px;letter-spacing:.08em;color:var(--beige);font-variant-numeric:tabular-nums;margin-right:6px}.screen.is-full,.screen:fullscreen{aspect-ratio:auto;width:100vw;height:100vh;border-radius:0}.playlist{list-style:none;margin:clamp(22px,4vh,40px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.pl-item{width:100%;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"thumb thumb thumb" "num title dur";gap:8px 10px;text-align:left;align-items:baseline;opacity:.6;transition:opacity .5s}.pl-item:hover,.pl-item.is-current{opacity:1}.pl-thumb{grid-area:thumb;aspect-ratio:16 / 10;overflow:hidden;background:#0b101f;position:relative}.pl-thumb img{width:100%;height:100%;object-fit:cover;filter:sepia(.3) brightness(.75);transition:filter .6s,transform 1.2s var(--ease)}.pl-item:hover .pl-thumb img,.pl-item.is-current .pl-thumb img{filter:none;transform:scale(1.05)}.pl-item.is-current .pl-thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 0 1px var(--champagne)}.pl-num{grid-area:num;font-family:var(--serif);color:var(--champagne);font-size:15px}.pl-title{grid-area:title;font-size:13px;color:var(--cream);line-height:1.35}.pl-dur{grid-area:dur;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}@media(max-width:760px){.screen{aspect-ratio:4 / 5;margin-inline:calc(-1 * var(--gutter) + 6px);border-radius:2px}.screen[data-orient=landscape]{aspect-ratio:4 / 3.4}.screen-meta{bottom:68px}.cb{width:36px;height:36px}.cb-time{display:none}.playlist{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:46%;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--gutter));padding:0 var(--gutter) 8px;scrollbar-width:none}.playlist::-webkit-scrollbar{display:none}.playlist li{scroll-snap-align:start}}@media(prefers-reduced-motion:reduce){.layer.zoom,.screen-leak{animation:none}}.feedback{background:linear-gradient(#000000,var(--black) 40vh);padding-top:clamp(90px,16vh,170px)}.feedback .ch-body{max-width:760px}.feedback .ch-head{margin-bottom:clamp(36px,6vh,64px)}.fb-form{display:grid;gap:18px;padding:clamp(20px,4vw,34px);border:1px solid rgba(232,106,152,.18);border-radius:18px;background:linear-gradient(160deg,#1823448c,#0e163066);opacity:0;transform:translateY(20px);transition:opacity 1.4s ease,transform 1.4s var(--ease)}.fb-form.is-in{opacity:1;transform:none}.fb-field{display:grid;gap:8px}.fb-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.fb-input{width:100%;font:inherit;font-size:16px;color:var(--cream);background:#0a1024b3;border:1px solid rgba(232,106,152,.22);border-radius:10px;padding:12px 14px;transition:border-color .3s,box-shadow .3s}.fb-input::placeholder{color:var(--dim)}.fb-input:focus{outline:none;border-color:var(--champagne-soft);box-shadow:0 0 0 3px #e86a981f}.fb-text{resize:vertical;min-height:110px;line-height:1.6}.fb-photos{display:flex;flex-wrap:wrap;gap:10px}.fb-thumbs{display:contents}.fb-thumb{position:relative;width:76px;height:76px;border-radius:10px;overflow:hidden;border:1px solid rgba(232,106,152,.25)}.fb-thumb img{width:100%;height:100%;object-fit:cover}.fb-thumb-x{position:absolute;top:4px;right:4px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#0a1024cc}.fb-thumb-x .ic{width:14px;height:14px}.fb-pick{min-height:76px;padding:0 18px;border:1px dashed rgba(232,106,152,.4);border-radius:10px;font-size:14px;color:var(--beige);transition:border-color .3s,color .3s}.fb-pick:hover{border-color:var(--champagne);color:var(--cream)}.fb-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 18px}.fb-status{flex:1 1 200px;margin:0;font-size:14px;color:var(--beige)}.fb-status.is-bad{color:#ff9db8}.fb-submit{padding:12px 28px;border-radius:999px;border:1px solid var(--champagne-soft);background:#e86a9824;color:var(--cream);font-size:14px;letter-spacing:.12em;text-transform:uppercase;transition:background .3s,opacity .3s}.fb-submit:hover{background:#e86a9842}.fb-submit:disabled{opacity:.5;cursor:progress}.fb-empty{margin:48px 0 0;text-align:center;font-size:22px;color:var(--muted)}.fb-list{list-style:none;margin:clamp(40px,7vh,70px) 0 0;padding:0;display:grid;gap:18px}.fb-card{padding:20px clamp(18px,3vw,26px);border-radius:16px;background:#18234459;border:1px solid rgba(232,106,152,.1)}.fb-card.is-fresh{animation:fb-in 1.2s var(--ease)}@keyframes fb-in{0%{opacity:0;transform:translateY(-10px)}}.fb-card-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 14px}.fb-name{font-weight:500;font-size:24px;color:var(--champagne);overflow-wrap:anywhere}.fb-when{font-size:12px;letter-spacing:.08em;color:var(--dim)}.fb-msg{margin:8px 0 0;white-space:pre-line;overflow-wrap:anywhere;text-wrap:pretty;color:var(--text)}.fb-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:14px}.fb-gallery.n1{grid-template-columns:minmax(0,420px)}.fb-gallery.n3{grid-template-columns:repeat(3,1fr)}.fb-gallery-item{aspect-ratio:1;border-radius:10px;overflow:hidden}.fb-gallery.n1 .fb-gallery-item{aspect-ratio:auto}.fb-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.fb-gallery-item:hover img{transform:scale(1.04)}.fb-viewer{max-width:none;max-height:none;width:100%;height:100%;margin:0;padding:var(--gutter);border:0;background:#050814f0;place-items:center}.fb-viewer[open]{display:grid}.fb-viewer::backdrop{background:transparent}.fb-viewer img{max-width:100%;max-height:calc(100svh - 2 * var(--gutter));border-radius:6px;object-fit:contain}.fb-viewer-close{position:absolute;top:16px;right:16px;width:44px;height:44px;display:grid;place-items:center;color:var(--cream)}.fb-viewer-close .ic{width:22px;height:22px}
