:root{font-family:PingFang SC,Hiragino Sans GB,Noto Sans CJK SC,sans-serif;color:#fff7fb;background:#130d1e;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink: #fff7fb;--rose: #fa6bb7;--hot-rose: #ff3f9c;--violet: #9d73fa;--milk: #fff0f8;--glass: rgba(255, 244, 250, .13);--shutter-violet: rgba(37, 19, 59, .94);--shutter-rose: rgba(100, 21, 68, .94);--shutter-indigo: rgba(18, 18, 55, .96);--shutter-amber: rgba(66, 29, 16, .95);--shutter-sky: rgba(22, 52, 81, .94);--shutter-ocean: rgba(11, 36, 60, .95);--shutter-coral: rgba(82, 24, 42, .95);--shutter-gold: rgba(67, 39, 12, .95);--shutter-stage: rgba(22, 10, 42, .96);--shutter-plum: rgba(39, 12, 40, .95);--shutter-pink: rgba(65, 17, 48, .95);--shutter-orchid: rgba(52, 18, 61, .95);--shutter-lilac: rgba(47, 22, 66, .95);--shutter-forest: rgba(16, 42, 39, .95);--shutter-sunset: rgba(66, 27, 27, .95)}*{box-sizing:border-box}html{min-width:320px;background:#130d1e;scroll-behavior:smooth}body{min-width:320px;margin:0;background:#130d1e;overflow-x:hidden}body.is-gated{overflow:hidden}button,input{font:inherit}button{color:inherit}img{display:block;max-width:100%}::selection{color:#301127;background:#ffa5d2}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gift-site{min-height:100svh;overflow:clip;background:#130d1e}.experience{position:fixed;inset:0;overflow:hidden;opacity:0;pointer-events:none}.experience.is-active{position:relative;inset:auto;overflow:clip;opacity:1;pointer-events:auto;transition:opacity .7s ease}.gate-screen{position:fixed;z-index:100;inset:0;display:grid;place-items:center;overflow:hidden;isolation:isolate;background:#24102f;color:#fff7fb}.gate-photo-backdrop{position:absolute;z-index:-3;inset:-8%;width:116%;height:116%;object-fit:cover;filter:blur(22px) saturate(1.5) brightness(.42);transform:scale(1.06)}.gate-screen:before{position:absolute;z-index:-2;inset:0;content:"";background:linear-gradient(135deg,#220b374d,#60144978 48%,#1225467a)}.gate-screen:after{position:absolute;z-index:-1;inset:0;content:"";opacity:.32;background:radial-gradient(ellipse at 52% 48%,transparent 8%,rgba(8,5,19,.82) 100%)}.gate-aurora{position:absolute;z-index:-1;width:62vw;aspect-ratio:1;border-radius:50%;filter:blur(70px);opacity:.38;pointer-events:none;animation:aurora-drift 18s ease-in-out infinite alternate}.gate-aurora--one{top:-24%;left:-14%;background:#ff319f}.gate-aurora--two{right:-20%;bottom:-35%;background:#597cff;animation-delay:-8s}.gate-grain{position:absolute;z-index:5;inset:0;pointer-events:none;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' 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='.32'/%3E%3C/svg%3E");mix-blend-mode:screen}.gate-butterfly{position:absolute;top:calc(50% - 184px);left:calc(50% + 87px);width:88px;height:74px;z-index:3}.gate-form{position:relative;z-index:4;width:min(380px,calc(100vw - 52px));padding:40px 38px 35px;border:1px solid rgba(255,255,255,.32);border-radius:26px;background:linear-gradient(150deg,#ffffff29,#ffffff0e);box-shadow:0 32px 100px #0d022242,inset 0 1px #ffffff38;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.gate-form label{display:block;margin:0 0 22px;font-family:Songti SC,STSong,"Noto Serif CJK SC",serif;font-size:21px;letter-spacing:.42em;text-align:center;text-indent:.42em;text-shadow:0 2px 20px rgba(255,123,200,.35)}.gate-step-indicator{display:none}.gate-input-row{display:flex;align-items:center;height:54px;border-bottom:1px solid rgba(255,255,255,.58)}.gate-input-row input{min-width:0;flex:1;border:0;outline:0;color:#fff8fc;background:transparent;font-size:20px;letter-spacing:.24em;text-align:center}.gate-input-row input:focus-visible{outline:1px solid rgba(255,255,255,.52);outline-offset:5px;border-radius:8px}.gate-input-row button{display:grid;width:45px;height:45px;place-items:center;border:0;border-radius:50%;background:transparent;cursor:pointer;transition:background .25s,transform .25s}.gate-input-row button:hover{background:#ffffff26;transform:translate(3px)}.gate-input-row button svg{width:21px;fill:none;stroke:#ffe5f4;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.gate-underline{position:absolute;left:17%;right:17%;bottom:21px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,138,204,.5),transparent)}.gate-corner-mark{position:absolute;right:30px;bottom:24px;color:#ffffff94;font-size:19px}.gate-form.is-invalid{animation:gate-nudge .36s ease}.butterfly-moment{display:block;pointer-events:none}.butterfly-svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 6px 16px rgba(255,78,174,.35))}.butterfly-wings{fill:#ffd8ef;stroke:#ffffffe6;stroke-width:.8}.butterfly-wing-detail{fill:none;stroke:#c34791;stroke-width:.65;stroke-linecap:round;opacity:.75}.gift-cover,.gift-opening{position:fixed;z-index:90;inset:0;display:grid;place-items:center;overflow:hidden;isolation:isolate;background:#250f31;color:#fff}.gift-cover-backdrop{position:absolute;z-index:-4;inset:-7%;width:114%;height:114%;object-fit:cover;filter:blur(18px) saturate(1.6) brightness(.4);transform:scale(1.05)}.gift-cover:before{position:absolute;z-index:-3;inset:0;content:"";background:linear-gradient(148deg,#300c3985,#5d134c7a 43%,#14203fa8)}.gift-cover-aurora{position:absolute;z-index:-2;inset:-15%;opacity:.74;background:radial-gradient(ellipse at 23% 35%,rgba(255,48,153,.42),transparent 36%),radial-gradient(ellipse at 78% 72%,rgba(112,78,255,.45),transparent 35%),radial-gradient(ellipse at 55% 14%,rgba(255,170,119,.25),transparent 29%);animation:aurora-drift 22s ease-in-out infinite alternate}.gift-cover-bloom{position:absolute;z-index:-1;width:min(64vw,760px);aspect-ratio:1;border-radius:50%;background:#f861b740;filter:blur(105px);animation:bloom-breathe 7s ease-in-out infinite alternate}.gift-cover-orbit{position:absolute;width:min(74vw,940px);aspect-ratio:1;border:1px solid rgba(255,223,243,.14);border-radius:50%;pointer-events:none}.gift-cover-orbit--one{transform:rotate(-19deg) scaleY(.68)}.gift-cover-orbit--two{width:min(94vw,1190px);transform:rotate(22deg) scaleY(.7);opacity:.5}.gift-album{position:relative;z-index:2;display:block;width:clamp(280px,30vw,410px);height:min(69svh,690px);min-height:470px;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.68);border-radius:5px 16px 16px 5px;color:#fff;background:#451334;box-shadow:0 46px 140px #07021280,18px 0 30px #ff8bd22b,inset 5px 0 #ffffff2e;cursor:pointer;transform-style:preserve-3d}.gift-album:before,.gift-album:after{position:absolute;z-index:3;top:0;bottom:0;width:51%;content:"";background:linear-gradient(130deg,#4f1842b8,#18193794);border:1px solid rgba(255,255,255,.24);transition:transform 1.2s cubic-bezier(.76,0,.24,1)}.gift-album:before{left:0;transform-origin:left center;border-right:0}.gift-album:after{right:0;transform-origin:right center;border-left:0}.gift-album-photo{position:absolute;inset:0;overflow:hidden}.gift-album-photo img{width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(1.15)}.gift-album-veil{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#19092314 25%,#1a071dc7),linear-gradient(135deg,rgba(251,75,167,.16),transparent 45%,rgba(76,91,213,.22))}.gift-album-copy{position:absolute;z-index:4;right:23px;bottom:49px;left:23px;display:grid;gap:13px;color:#fffafd;text-align:center;text-shadow:0 2px 18px rgba(0,0,0,.84),0 0 12px rgba(26,7,36,.65)}.gift-album-kicker{color:#fffafd;font-size:9px;letter-spacing:.3em;opacity:.98}.gift-album-title{color:#fffafd;font-family:Songti SC,STSong,"Noto Serif CJK SC",serif;font-size:clamp(23px,2.3vw,29px);letter-spacing:.16em;text-indent:.16em}.gift-album-subtitle{color:#fffafd;font-family:Songti SC,STSong,"Noto Serif CJK SC",serif;font-size:12px;letter-spacing:.24em;opacity:.96}.gift-seal{position:absolute;z-index:5;top:43%;left:50%;display:grid;width:122px;aspect-ratio:1;place-items:center;border:1px solid rgba(255,235,248,.7);border-radius:50%;background:radial-gradient(circle,#ffafda80,#7f266cc2 72%);box-shadow:0 0 24px #ff57af99,0 0 90px #ff52b985,inset 0 0 20px #ffffff45;transform:translate(-50%,-50%)}.gift-seal .butterfly-svg{width:88px;height:74px}.gift-album-edge{position:absolute;z-index:4;inset:8px 10px 8px 8px;border:1px solid rgba(255,255,255,.3);pointer-events:none}.gift-album:focus-visible{outline:3px solid #fff4fb;outline-offset:7px}.gift-open-hint{position:absolute;bottom:max(4vh,20px);z-index:2;margin:0;color:#ffedf8db;font-family:Songti SC,STSong,"Noto Serif CJK SC",serif;font-size:12px;letter-spacing:.28em;text-shadow:0 1px 20px rgba(0,0,0,.34)}.gift-opening{z-index:95;background:#160c23}.gift-opening-photo{position:absolute;inset:-6%;width:112%;height:112%;object-fit:cover;filter:blur(13px) saturate(1.4) brightness(.5)}.gift-opening-wash{position:absolute;inset:0;background:radial-gradient(ellipse at center,#ffd4f37a,#c1389924 40%,#160924ad 78%)}.gift-opening-left,.gift-opening-right{position:absolute;z-index:2;top:0;bottom:0;width:52%;background:linear-gradient(145deg,#de70b9f0,#44205bf0);box-shadow:0 0 40px #ff87d06b;transform-style:preserve-3d}.gift-opening-left{left:-1%;transform-origin:left center}.gift-opening-right{right:-1%;transform-origin:right center}.gift-opening-flash{position:absolute;z-index:4;width:26vmin;aspect-ratio:1;border-radius:50%;background:#fff;filter:blur(32px);box-shadow:0 0 160px 50px #ff9bd3}.gift-opening-butterfly{position:absolute;z-index:5;width:120px;height:100px;filter:drop-shadow(0 0 24px #ff8ac8)}.visual-scene{position:relative;display:grid;min-height:108svh;isolation:isolate;overflow:clip;align-items:center;background:#16101f;--scene-ink: 20, 13, 30}.visual-scene.pace-slow{min-height:122svh}.visual-scene.pace-pause{min-height:128svh}.visual-scene.pace-fast{min-height:103svh}.visual-scene.pace-dramatic{min-height:136svh}.scene-backdrop{position:absolute;z-index:-3;inset:-9%;width:118%;height:118%;object-fit:cover;filter:blur(25px) saturate(1.48) brightness(.55);transform-origin:center}.scene-aurora{position:absolute;z-index:-2;inset:0;pointer-events:none;background:radial-gradient(ellipse at 48% 35%,rgba(249,77,172,.22),transparent 47%),radial-gradient(ellipse at 87% 84%,rgba(81,105,239,.2),transparent 43%),linear-gradient(125deg,#140d1e47,#160b211f 44%,#0a0e1f8c)}.visual-scene:after{position:absolute;z-index:1;inset:0;content:"";pointer-events:none;background:linear-gradient(180deg,rgba(var(--scene-ink),.28),transparent 18%,transparent 76%,rgba(var(--scene-ink),.55))}.scene-stage{position:relative;z-index:2;display:grid;width:100%;height:100svh;min-height:100svh;align-items:center;justify-items:center;overflow:clip;perspective:1500px}.scene-photo-group{position:absolute;inset:0;width:100%;height:100%}.scene-cinema>.scene-stage,.scene-burst>.scene-stage,.scene-seaside>.scene-stage,.scene-midpoint-burst>.scene-stage,.scene-dream-layer>.scene-stage,.scene-waterfall>.scene-stage{position:sticky;top:0;align-self:start}.scene-photo{position:absolute;display:block;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.68);border-radius:4px;background:#1f152bb8;box-shadow:0 26px 80px #04031161,0 0 0 1px #ffffff21;transform-style:preserve-3d}.scene-photo>img{width:100%;height:100%;object-fit:cover;object-position:center}.scene-photo.is-lead{z-index:4}.scene-photo.treatment-glow{border-color:#ffe8f6db;box-shadow:0 0 0 1px #ffa7db73,0 0 44px #ff4ab059,0 28px 90px #00000073}.scene-photo.treatment-landscape{border:7px solid rgba(255,248,239,.8);box-shadow:0 25px 80px #00051073,0 0 36px #71c6ff33}.scene-photo.treatment-matte{padding:12px;border:0;border-radius:2px;background:linear-gradient(145deg,#fff5fa,#eed9e5);box-shadow:0 30px 84px #13051a5c}.scene-photo.treatment-matte>img{height:100%}.scene-photo.treatment-album{padding:10px 10px 33px;border:0;border-radius:2px;background:linear-gradient(155deg,#fff9fb,#eddae9);box-shadow:0 24px 75px #0c061e70}.album-corner{position:absolute;right:7px;bottom:9px;left:7px;height:16px;background:radial-gradient(circle at 10px -2px,transparent 13px,rgba(255,255,255,.9) 13.5px) 0 0 / 20px 18px repeat-x;opacity:.95}.scene-photo.treatment-feather{overflow:visible;border:0;border-radius:20px;background:transparent;box-shadow:0 20px 90px #0a051b61}.scene-photo.treatment-feather>img:not(.scene-photo-glow){position:relative;z-index:1;border-radius:18px;mask-image:radial-gradient(ellipse 92% 92% at center,#000 70%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 92% 92% at center,#000 70%,transparent 100%)}.scene-photo-glow{position:absolute;z-index:0;inset:-7%;width:114%!important;height:114%!important;object-fit:cover;filter:blur(32px) saturate(1.45);opacity:.66}.venetian-blinds{position:absolute;z-index:5;inset:0;display:block;overflow:hidden;perspective:850px;pointer-events:none}.venetian-blind{position:absolute;top:0;bottom:0;display:block;border-right:1px solid rgba(255,245,250,.2);box-shadow:0 0 18px #ffffff14;backface-visibility:hidden}.palette-violet{--scene-ink: 24, 13, 39}.palette-rose{--scene-ink: 45, 9, 33}.palette-indigo{--scene-ink: 13, 15, 42}.palette-amber{--scene-ink: 42, 19, 12}.palette-sky{--scene-ink: 8, 34, 58}.palette-ocean{--scene-ink: 4, 20, 38}.palette-coral{--scene-ink: 47, 15, 27}.palette-gold{--scene-ink: 39, 24, 8}.palette-stage{--scene-ink: 14, 6, 29}.palette-plum{--scene-ink: 34, 9, 36}.palette-pink{--scene-ink: 38, 8, 28}.palette-orchid{--scene-ink: 33, 9, 39}.palette-lilac{--scene-ink: 37, 13, 48}.palette-forest{--scene-ink: 8, 26, 25}.palette-sunset{--scene-ink: 38, 12, 24}.palette-violet .scene-aurora{background:radial-gradient(ellipse at 67% 22%,rgba(120,101,255,.43),transparent 41%),radial-gradient(ellipse at 25% 73%,rgba(249,62,164,.36),transparent 48%),linear-gradient(130deg,#110c283d,#1a0926a6)}.palette-rose .scene-aurora{background:radial-gradient(ellipse at 21% 18%,rgba(255,48,147,.47),transparent 46%),radial-gradient(ellipse at 81% 80%,rgba(238,104,190,.3),transparent 40%),linear-gradient(120deg,#340a2538,#1f0a2299)}.palette-indigo .scene-aurora{background:radial-gradient(ellipse at 24% 35%,rgba(57,101,239,.36),transparent 43%),radial-gradient(ellipse at 80% 22%,rgba(164,65,208,.26),transparent 39%),linear-gradient(130deg,#090c261a,#080d229c)}.palette-amber .scene-aurora,.palette-gold .scene-aurora{background:radial-gradient(ellipse at 64% 24%,rgba(255,164,64,.4),transparent 43%),radial-gradient(ellipse at 16% 81%,rgba(255,92,125,.3),transparent 43%),linear-gradient(126deg,#290f0c29,#19091b94)}.palette-sky .scene-aurora{background:radial-gradient(ellipse at 21% 30%,rgba(45,193,255,.33),transparent 41%),radial-gradient(ellipse at 86% 75%,rgba(255,76,169,.38),transparent 42%),linear-gradient(130deg,#081e3624,#11103294)}.palette-ocean .scene-aurora{background:radial-gradient(ellipse at 73% 24%,rgba(51,185,255,.43),transparent 45%),radial-gradient(ellipse at 14% 78%,rgba(116,100,244,.3),transparent 48%),linear-gradient(130deg,#061d3024,#0813288a)}.palette-stage .scene-aurora{background:radial-gradient(ellipse at 51% 42%,rgba(253,38,151,.27),transparent 43%),radial-gradient(ellipse at 13% 16%,rgba(74,102,255,.48),transparent 36%),radial-gradient(ellipse at 90% 18%,rgba(175,39,254,.34),transparent 34%),linear-gradient(150deg,#0f052505,#0b06198c)}.palette-plum .scene-aurora{background:radial-gradient(ellipse at 28% 24%,rgba(255,66,174,.33),transparent 46%),radial-gradient(ellipse at 75% 73%,rgba(134,78,237,.33),transparent 48%),linear-gradient(135deg,#1f0a282e,#12081f91)}.palette-forest .scene-aurora{background:radial-gradient(ellipse at 17% 28%,rgba(89,198,151,.33),transparent 43%),radial-gradient(ellipse at 85% 76%,rgba(63,177,226,.3),transparent 46%),linear-gradient(132deg,#0a282321,#07141c8c)}.palette-sunset .scene-aurora{background:radial-gradient(ellipse at 22% 17%,rgba(255,111,147,.39),transparent 44%),radial-gradient(ellipse at 83% 78%,rgba(255,166,87,.3),transparent 43%),linear-gradient(138deg,#260b221c,#16092091)}.layout-hero .scene-photo.is-lead{left:50%;top:50%;width:min(48vw,690px);height:92svh;border-radius:8px;translate:-50% -50%}.layout-hero .scene-photo.is-lead>img{object-fit:contain;background:#0a08141f}.layout-fan .scene-photo.is-lead{left:50%;top:47%;width:min(42vw,560px);height:88svh;border-radius:14px;translate:-50% -50%}.layout-fan .scene-photo:not(.is-lead){width:min(18vw,245px);height:min(39svh,350px);border-radius:8px}.layout-fan .scene-photo--0{left:5%;top:13%}.layout-fan .scene-photo--2{right:5%;top:9%}.layout-fan .scene-photo--3{left:4%;bottom:9%}.layout-fan .scene-photo--4{right:4%;bottom:7%}.layout-fan .scene-photo--5{left:22%;top:2%;width:min(14vw,185px);height:31svh}.layout-fan .scene-photo--6{right:22%;bottom:1%;width:min(14vw,185px);height:31svh}.layout-cinema .scene-photo.is-lead,.layout-burst .scene-photo.is-lead,.layout-seaside .scene-photo.is-lead,.layout-dream-layer .scene-photo.is-lead{inset:0;width:100%;height:100%;border:0;border-radius:0;box-shadow:none}.layout-cinema .scene-photo.is-lead>img,.layout-burst .scene-photo.is-lead>img,.layout-seaside .scene-photo.is-lead>img,.layout-dream-layer .scene-photo.is-lead>img{object-fit:cover}.layout-cinema .scene-photo:not(.is-lead){top:auto;bottom:9%;width:min(20vw,260px);height:min(36svh,330px);border:1px solid rgba(255,255,255,.76)}.layout-cinema .scene-photo--0{left:8%}.layout-cinema .scene-photo--1{left:30%;bottom:4%}.layout-cinema .scene-photo--2{right:30%;bottom:5%}.layout-cinema .scene-photo--3{right:8%}.scene-filmstrip{min-height:166svh}.scene-filmstrip .scene-stage{position:sticky;top:0;height:100svh}.layout-filmstrip .scene-photo-group{display:flex;width:max-content;height:100%;align-items:center;gap:5vw;padding:0 12vw}.layout-filmstrip .scene-photo{position:relative;flex:0 0 min(58vw,780px);width:min(58vw,780px);height:75svh;border-radius:5px}.visual-scene.is-active .layout-filmstrip .scene-photo-group{animation:film-drift 16s cubic-bezier(.18,.55,.3,1) .2s 1 both}.layout-filmstrip .scene-photo:nth-child(2n){height:62svh}.layout-burst .scene-photo:not(.is-lead){width:min(20vw,260px);height:min(36svh,330px);border:1px solid rgba(255,255,255,.85);box-shadow:0 0 30px #98b2ff47,0 26px 65px #0203128c}.layout-burst .scene-photo--0{left:4%;top:9%}.layout-burst .scene-photo--1{left:25%;top:4%}.layout-burst .scene-photo--2{right:25%;top:5%}.layout-burst .scene-photo--3{right:4%;top:11%}.layout-burst .scene-photo--4{left:11%;bottom:8%}.layout-burst .scene-photo--5{left:39%;bottom:4%}.layout-burst .scene-photo--6{right:11%;bottom:9%}.layout-burst .scene-photo--7{right:30%;bottom:4%}.layout-seaside .scene-photo.is-lead{filter:saturate(1.08)}.layout-seaside .scene-photo:not(.is-lead){top:50%;width:min(22vw,295px);height:min(61svh,610px);border-radius:4px}.layout-seaside .scene-photo--0{left:5%;translate:0 -50%}.layout-seaside .scene-photo--1{left:28%;width:min(18vw,235px);height:min(48svh,450px);translate:0 -43%}.layout-seaside .scene-photo--2{right:28%;width:min(18vw,235px);height:min(48svh,450px);translate:0 -58%}.layout-seaside .scene-photo--3{right:5%;translate:0 -50%}.layout-seaside .scene-photo--4,.layout-seaside .scene-photo--5,.layout-seaside .scene-photo--6{top:auto;bottom:4%;width:min(14vw,180px);height:25svh}.layout-seaside .scene-photo--4{left:18%}.layout-seaside .scene-photo--5{left:43%}.layout-seaside .scene-photo--6{right:18%}.layout-portrait-film .scene-photo.is-lead{left:50%;top:50%;width:min(44vw,590px);height:89svh;translate:-50% -50%}.layout-portrait-film .scene-photo:not(.is-lead){width:min(19vw,245px);height:min(46svh,440px);top:50%;translate:0 -50%}.layout-portrait-film .scene-photo--0{left:5%;top:38%}.layout-portrait-film .scene-photo--1{left:8%;top:67%}.layout-portrait-film .scene-photo--3{right:8%;top:34%}.layout-portrait-film .scene-photo--4{right:4%;top:65%}.layout-portrait-film .scene-photo--5{left:50%;top:8%;width:min(15vw,195px);height:27svh;translate:-50% 0}.layout-luminous-pair .scene-photo.is-lead{right:11%;top:50%;width:min(48vw,650px);height:88svh;translate:0 -50%;border-radius:3px}.layout-luminous-pair .scene-photo:not(.is-lead){left:10%;width:min(22vw,285px);height:min(45svh,440px)}.layout-luminous-pair .scene-photo--0{top:8%}.layout-luminous-pair .scene-photo--2{top:54%;left:22%}.layout-luminous-pair .scene-photo--3{top:30%;left:2%;width:min(14vw,175px);height:28svh}.layout-midpoint-burst .scene-photo.is-lead{inset:0;width:100%;height:100%;border:0;border-radius:0;box-shadow:none}.layout-midpoint-burst .scene-photo:not(.is-lead){width:min(24vw,310px);height:min(44svh,420px);border:1px solid rgba(255,255,255,.85);box-shadow:0 0 38px #696bff6b,0 25px 75px #00000080}.layout-midpoint-burst .scene-photo--0{left:5%;top:8%}.layout-midpoint-burst .scene-photo--1{right:5%;top:7%}.layout-midpoint-burst .scene-photo--3{right:12%;bottom:7%}.layout-dream-layer .scene-photo:not(.is-lead){width:min(20vw,255px);height:min(40svh,390px);opacity:.76;border:1px solid rgba(255,237,250,.5);box-shadow:0 0 70px #f868cc42}.layout-dream-layer .scene-photo--0{left:5%;top:14%}.layout-dream-layer .scene-photo--1{left:26%;bottom:5%}.layout-dream-layer .scene-photo--2{right:26%;top:5%}.layout-dream-layer .scene-photo--3{right:4%;bottom:10%}.layout-dream-layer .scene-photo--4{right:15%;top:17%;width:min(15vw,190px);height:29svh}.layout-portrait-spread .scene-photo.is-lead{left:15%;top:50%;width:min(43vw,590px);height:89svh;translate:0 -50%}.layout-portrait-spread .scene-photo:not(.is-lead){width:min(19vw,245px);height:min(42svh,405px)}.layout-portrait-spread .scene-photo--0{left:3%;top:6%}.layout-portrait-spread .scene-photo--1{right:7%;top:8%}.layout-portrait-spread .scene-photo--2{right:1%;top:47%}.layout-portrait-spread .scene-photo--3{right:11%;bottom:5%}.layout-portrait-spread .scene-photo--4{left:42%;top:2%;width:min(16vw,200px);height:28svh}.layout-portrait-spread .scene-photo--5{left:3%;bottom:3%}.layout-portrait-spread .scene-photo--6{left:39%;bottom:3%;width:min(15vw,190px);height:28svh}.layout-page-turn .scene-photo.is-lead{left:50%;top:50%;width:min(43vw,580px);height:88svh;translate:-50% -50%}.layout-page-turn .scene-photo:not(.is-lead){width:min(16vw,205px);height:34svh}.layout-page-turn .scene-photo--0{left:5%;top:4%}.layout-page-turn .scene-photo--1{left:5%;top:53%}.layout-page-turn .scene-photo--3{right:5%;top:3%}.layout-page-turn .scene-photo--4{right:4%;top:40%}.layout-page-turn .scene-photo--5{right:8%;bottom:3%}.layout-page-turn .scene-photo--6{left:26%;top:1%;width:min(14vw,175px);height:23svh}.layout-page-turn .scene-photo--7{left:27%;bottom:1%;width:min(14vw,175px);height:23svh}.layout-page-turn .scene-photo--8{right:27%;bottom:2%;width:min(13vw,165px);height:21svh}.layout-polaroid-fan .scene-photo.is-lead{left:50%;top:48%;width:min(44vw,590px);height:84svh;translate:-50% -50%;rotate:-1deg}.layout-polaroid-fan .scene-photo:not(.is-lead){width:min(17vw,220px);height:min(36svh,350px)}.layout-polaroid-fan .scene-photo--0{left:5%;top:7%}.layout-polaroid-fan .scene-photo--1{left:8%;bottom:4%}.layout-polaroid-fan .scene-photo--2{right:6%;top:5%}.layout-polaroid-fan .scene-photo--3{right:3%;bottom:7%}.layout-polaroid-fan .scene-photo--5{left:21%;top:2%;width:min(14vw,175px);height:25svh}.layout-polaroid-fan .scene-photo--6{right:20%;bottom:2%;width:min(14vw,175px);height:25svh}.layout-polaroid-fan .scene-photo--7{right:21%;top:2%;width:min(14vw,175px);height:25svh}.layout-waterfall .scene-photo.is-lead{inset:0;width:100%;height:100%;border:0;border-radius:0;box-shadow:none}.layout-waterfall .scene-photo:not(.is-lead){top:50%;width:min(24vw,315px);height:min(51svh,500px);translate:0 -50%}.layout-waterfall .scene-photo--0{left:7%}.layout-waterfall .scene-photo--1{left:29%;top:48%;width:min(18vw,230px);height:min(38svh,365px)}.layout-waterfall .scene-photo--3{right:6%;top:52%}.layout-story-cascade .scene-photo.is-lead{left:50%;top:50%;width:min(46vw,620px);height:86svh;translate:-50% -50%}.layout-story-cascade .scene-photo:not(.is-lead){width:min(18vw,235px);height:min(38svh,360px)}.layout-story-cascade .scene-photo--0{left:6%;top:6%}.layout-story-cascade .scene-photo--1{right:7%;top:6%}.layout-story-cascade .scene-photo--2{left:6%;bottom:5%}.layout-story-cascade .scene-photo--3{right:7%;bottom:5%}.layout-story-cascade .scene-photo--4{left:25%;top:1%;width:min(15vw,185px);height:26svh}.layout-story-cascade .scene-photo--5{right:24%;bottom:1%;width:min(15vw,185px);height:26svh}.layout-story-cascade .scene-photo--6{left:26%;bottom:1%;width:min(14vw,175px);height:25svh}.layout-story-cascade .scene-photo--7{right:26%;top:1%;width:min(14vw,175px);height:25svh}.festival-lightburst{position:absolute;z-index:1;top:50%;left:50%;width:min(54vw,650px);aspect-ratio:1;border-radius:50%;background:#ff41ae3d;filter:blur(80px);transform:translate(-50%,-50%);pointer-events:none}.scene-midpoint-butterfly{position:absolute;z-index:6;top:7%;left:50%;width:82px;height:68px;translate:-50% 0}.scene-midpoint-butterfly:after{position:absolute;z-index:-1;inset:-18px;content:"";border:1px solid rgba(255,237,250,.42);border-radius:50%;box-shadow:0 0 28px #ff5abf66}.letter-reveal,.letter-section,.birthday-ending{position:relative;display:grid;min-height:112svh;overflow:clip;isolation:isolate;place-items:center;background:#1d102d;color:#fff7fb}.letter-reveal{min-height:114svh;align-content:center;gap:28px;background:radial-gradient(ellipse at center,#63285d,#271337 52%,#100d25)}.letter-reveal-backdrop{position:absolute;z-index:-2;inset:-8%;width:116%;height:116%;object-fit:cover;filter:blur(26px) saturate(1.4) brightness(.32)}.letter-reveal-aurora{position:absolute;z-index:-1;inset:-12%;background:radial-gradient(ellipse at 50% 40%,rgba(255,114,198,.5),transparent 30%),radial-gradient(ellipse at 22% 82%,rgba(94,91,230,.42),transparent 43%),radial-gradient(ellipse at 85% 16%,rgba(255,172,119,.27),transparent 35%);filter:blur(32px);animation:aurora-drift 18s ease-in-out infinite alternate}.letter-reveal-label{z-index:2;font-family:Songti SC,STSong,"Noto Serif CJK SC",serif;font-size:clamp(19px,2.5vw,28px);letter-spacing:.42em;text-indent:.42em;text-shadow:0 2px 25px rgba(255,131,207,.45)}.letter-reveal-core{position:relative;z-index:3;display:grid;width:min(45vw,460px);aspect-ratio:1;place-items:center}.letter-reveal-core:before,.letter-reveal-core:after{position:absolute;inset:8%;content:"";border:1px solid rgba(255,229,248,.32);border-radius:50%;box-shadow:inset 0 0 54px #ff58ba1c,0 0 45px #ff58ba1f;animation:seal-pulse 4.8s ease-in-out infinite}.letter-reveal-core:after{inset:21%;border-color:#ffe0f536;animation-delay:-2.3s}.reveal-trigger{position:relative;z-index:5;display:grid;width:146px;height:146px;padding:0;place-items:center;border:1px solid rgba(255,238,250,.72);border-radius:50%;background:radial-gradient(circle,#ffbae48a,#7e3279ab 62%,#3a1d5a59);box-shadow:0 0 35px #ff5dbd70,0 0 130px #ec4ecc7a,inset 0 0 32px #ffffff47;cursor:pointer;touch-action:manipulation}.reveal-trigger:before{position:absolute;inset:-12px;content:"";border:1px solid rgba(255,230,248,.26);border-radius:50%}.reveal-trigger:focus-visible{outline:3px solid white;outline-offset:13px}.reveal-butterfly{display:block;width:100px;height:84px}.reveal-halo{position:absolute;inset:-32px;border-radius:50%;background:#ff51b92e;filter:blur(34px)}.reveal-flight{position:absolute;width:88px;height:74px}.letter-reveal-hint{z-index:2;margin:0;font-family:Songti SC,STSong,"Noto Serif CJK SC",serif;font-size:12px;letter-spacing:.3em;opacity:.78}.letter-reveal-light{position:absolute;z-index:1;width:13vmin;aspect-ratio:1;border-radius:50%;background:#fff;filter:blur(60px);opacity:.35;transition:transform 1.4s ease,opacity 1.4s ease}.letter-reveal.is-open .letter-reveal-light{opacity:.85;transform:scale(13)}.letter-reserve{width:min(70vw,820px);height:76svh;border:1px solid rgba(255,246,251,.12);border-radius:5px;background:linear-gradient(140deg,#fffafa17,#ffe7f209);box-shadow:0 30px 100px #0000002e,inset 0 0 60px #ffffff09}.letter-paper{position:relative;display:grid;width:min(74vw,840px);min-height:76svh;padding:clamp(20px,4vw,48px);place-items:center;overflow:hidden;border:1px solid rgba(255,250,250,.8);border-radius:3px;color:#593e4f;background:radial-gradient(ellipse at 18% 12%,#fffffff5,#fff8f8f2 58%,#f5e6ed);box-shadow:0 30px 110px #0903124d,inset 0 0 45px #ffffffd1;transform-origin:top center}.letter-paper.is-empty:after{position:absolute;top:52px;left:50%;width:42px;height:1px;content:"";background:#b97a9e66;transform:translate(-50%)}.letter-paper>img{position:relative;z-index:1;max-width:100%;max-height:72svh;object-fit:contain;box-shadow:0 20px 40px #5b2c4626}.birthday-ending{min-height:125svh;align-content:center;gap:32px;background:#100c22}.ending-backdrop{position:absolute;z-index:-2;inset:-8%;width:116%;height:116%;object-fit:cover;filter:blur(28px) saturate(1.5) brightness(.4)}.birthday-ending:before{position:absolute;z-index:-1;inset:0;content:"";background:radial-gradient(ellipse at 50% 43%,rgba(226,70,170,.22),transparent 42%),linear-gradient(140deg,#0d0c2640,#260a2796)}.ending-photo{position:relative;z-index:2;display:grid;width:min(82vw,820px);height:min(66svh,650px);margin:0;place-items:center;border:1px solid rgba(255,244,251,.7);background:#fff4fa13;box-shadow:0 30px 110px #00000061,0 0 60px #ff68c529}.ending-message{position:relative;z-index:3;max-width:78vw;margin:0;color:#fff;font-family:Songti SC,STSong,"Noto Serif CJK SC",serif;font-size:clamp(16px,2vw,23px);line-height:1.8;letter-spacing:.16em;text-align:center;text-shadow:0 2px 25px rgba(255,119,196,.45)}.ending-butterfly{position:absolute;z-index:5;right:17%;bottom:14%;width:88px;height:74px}.ending-bloom{position:absolute;z-index:1;width:15vmin;aspect-ratio:1;border-radius:50%;background:#ff79c4;filter:blur(64px);opacity:.35}.music-control{position:fixed;z-index:70;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));display:grid;width:52px;height:52px;padding:0;place-items:center;border:1px solid rgba(255,244,251,.4);border-radius:50%;color:#fff;background:#1e112a94;box-shadow:0 8px 35px #0003;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer}.music-control svg{width:21px;fill:currentColor;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.music-control:focus-visible{outline:3px solid white;outline-offset:4px}@keyframes aurora-drift{0%{transform:translate3d(-3%,-2%,0) rotate(-7deg) scale(.92)}to{transform:translate3d(5%,4%,0) rotate(9deg) scale(1.08)}}@keyframes bloom-breathe{0%{opacity:.58;transform:scale(.84)}to{opacity:.94;transform:scale(1.14)}}@keyframes gate-nudge{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes film-drift{0%{transform:translate3d(9vw,0,0)}to{transform:translate3d(-23vw,0,0)}}@keyframes seal-pulse{0%,to{transform:scale(.96);opacity:.56}50%{transform:scale(1.05);opacity:.95}}@media(max-width:900px){.gate-form{width:min(360px,calc(100vw - 48px))}.gate-butterfly{top:calc(50% - 162px);left:calc(50% + 67px);width:78px;height:66px}.gift-album{width:clamp(290px,58vw,420px);height:min(72svh,670px)}.gift-seal{width:110px}.gift-seal .butterfly-svg{width:82px;height:68px}.layout-hero .scene-photo.is-lead{width:min(64vw,640px);height:91svh}.layout-fan .scene-photo.is-lead{width:50vw;height:85svh}.layout-fan .scene-photo:not(.is-lead){width:20vw;height:30svh}.layout-cinema .scene-photo:not(.is-lead){width:23vw;height:30svh}.layout-seaside .scene-photo:not(.is-lead){width:25vw;height:49svh}.layout-seaside .scene-photo--1,.layout-seaside .scene-photo--2{width:20vw;height:37svh}.layout-luminous-pair .scene-photo.is-lead{right:5%;width:53vw}.layout-luminous-pair .scene-photo:not(.is-lead){left:4%;width:25vw;height:40svh}.layout-portrait-spread .scene-photo.is-lead{left:9%;width:48vw}.layout-portrait-spread .scene-photo:not(.is-lead){width:20vw;height:35svh}.layout-page-turn .scene-photo.is-lead{width:48vw}.layout-page-turn .scene-photo:not(.is-lead){width:18vw;height:30svh}.layout-polaroid-fan .scene-photo.is-lead{width:51vw}}@media(max-width:620px){.gate-screen{height:100vh;height:100dvh;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));box-sizing:border-box}.gate-photo-backdrop,.gift-cover-backdrop{filter:blur(13px) saturate(1.38) brightness(.43)}.gate-aurora{width:100vw;filter:blur(56px);opacity:.3}.gate-form{width:min(380px,100%);padding:clamp(30px,9vw,38px) clamp(18px,7vw,27px) 32px;border-radius:24px}.gate-form label{max-width:100%;margin-bottom:17px;font-size:clamp(18px,5.2vw,20px);letter-spacing:.28em;text-indent:.28em}.gate-step-indicator{display:flex;justify-content:center;gap:7px;margin:-3px 0 12px}.gate-step-indicator span{width:14px;height:3px;border-radius:999px;background:#fff5fc52;transition:background-color .24s ease,box-shadow .24s ease,width .24s ease}.gate-step-indicator--date span:nth-child(1),.gate-step-indicator--identity span:nth-child(-n+2),.gate-step-indicator--self span{background:#ffdbf0f0;box-shadow:0 0 12px #ff90cb9e}.gate-input-row{height:58px}.gate-input-row input{min-height:48px;font-size:max(18px,5vw);letter-spacing:.16em}.gate-input-row button{width:48px;height:48px;flex:0 0 48px;background:#ffffff12}.gate-butterfly{top:calc(50% - 143px);left:calc(50% + 53px);width:66px;height:56px}.gate-corner-mark{right:18px;bottom:15px}.gift-cover-aurora{inset:-3%;opacity:.58}.gift-cover-orbit--one{width:119vw}.gift-cover-orbit--two{width:144vw}.gift-album{width:min(83vw,385px);height:min(69svh,625px);min-height:425px}.gift-album-copy{right:14px;bottom:35px;left:14px;gap:10px}.gift-album-kicker{font-size:8px}.gift-album-title{font-size:22px}.gift-album-subtitle{font-size:11px}.gift-seal{top:42%;width:91px}.gift-seal .butterfly-svg{width:67px;height:56px}.gift-open-hint{bottom:max(4.5vh,20px);font-size:11px}.gift-opening-butterfly{width:72px;height:60px}.gift-opening-left,.gift-opening-right{width:52%}.visual-scene{min-height:114svh}.visual-scene.pace-slow{min-height:126svh}.visual-scene.pace-pause{min-height:132svh}.visual-scene.pace-fast{min-height:110svh}.visual-scene.pace-dramatic{min-height:140svh}.scene-backdrop{inset:-5%;width:110%;height:110%;filter:blur(14px) saturate(1.35) brightness(.53)}.scene-aurora{opacity:.88}.scene-stage{height:100svh;min-height:100svh}.scene-photo{border-radius:3px}.scene-photo.treatment-matte{padding:7px}.scene-photo.treatment-album{padding:7px 7px 24px}.scene-photo-glow{filter:blur(19px) saturate(1.3)}.layout-hero .scene-photo.is-lead{left:50%;top:50%;width:94vw;height:91svh;border-radius:7px}.layout-hero .scene-photo.is-lead>img{object-fit:cover;object-position:center 52%}.layout-fan .scene-photo.is-lead{left:50%;top:47%;width:79vw;height:82svh}.layout-fan .scene-photo:not(.is-lead){width:28vw;height:30svh}.layout-fan .scene-photo--0{left:1%;top:6%}.layout-fan .scene-photo--2{right:1%;top:5%}.layout-fan .scene-photo--3{left:1%;bottom:5%}.layout-fan .scene-photo--4{right:1%;bottom:5%}.layout-fan .scene-photo--5{left:21%;top:1%;width:22vw;height:23svh}.layout-fan .scene-photo--6{right:21%;bottom:1%;width:22vw;height:23svh}.layout-cinema .scene-photo:not(.is-lead){bottom:8%;width:32vw;height:25svh}.layout-cinema .scene-photo--0{left:1%}.layout-cinema .scene-photo--1{left:23%;bottom:3%}.layout-cinema .scene-photo--2{right:23%;bottom:3%}.layout-cinema .scene-photo--3{right:1%}.scene-filmstrip{min-height:145svh}.scene-filmstrip .scene-stage{position:relative;top:auto;height:100svh}.layout-filmstrip .scene-photo-group{gap:5vw;padding:0 7vw;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.layout-filmstrip .scene-photo-group::-webkit-scrollbar{display:none}.layout-filmstrip .scene-photo{flex-basis:78vw;width:78vw;height:69svh;scroll-snap-align:center}.layout-filmstrip .scene-photo:nth-child(2n){height:57svh}.visual-scene.is-active .layout-filmstrip .scene-photo-group{animation:none}.layout-burst .scene-photo:not(.is-lead){width:30vw;height:25svh}.layout-burst .scene-photo--0{left:1%;top:5%}.layout-burst .scene-photo--1{left:24%;top:2%}.layout-burst .scene-photo--2{right:24%;top:2%}.layout-burst .scene-photo--3{right:1%;top:6%}.layout-burst .scene-photo--4{left:1%;bottom:5%}.layout-burst .scene-photo--5{left:35%;bottom:2%}.layout-burst .scene-photo--6{right:1%;bottom:5%}.layout-burst .scene-photo--7{right:29%;bottom:2%}.layout-seaside .scene-photo:not(.is-lead){top:50%;width:34vw;height:43svh}.layout-seaside .scene-photo--0{left:1%}.layout-seaside .scene-photo--1{left:1%;top:24%;width:29vw;height:28svh;translate:none}.layout-seaside .scene-photo--2{right:1%;top:22%;width:29vw;height:28svh;translate:none}.layout-seaside .scene-photo--3{right:1%;top:50%}.layout-seaside .scene-photo--4,.layout-seaside .scene-photo--5,.layout-seaside .scene-photo--6{bottom:2%;width:27vw;height:22svh}.layout-seaside .scene-photo--4{left:4%}.layout-seaside .scene-photo--5{left:36%}.layout-seaside .scene-photo--6{right:4%}.layout-portrait-film .scene-photo.is-lead{left:50%;top:49%;width:76vw;height:83svh}.layout-portrait-film .scene-photo:not(.is-lead){top:50%;width:30vw;height:29svh}.layout-portrait-film .scene-photo--0{left:0;top:23%}.layout-portrait-film .scene-photo--1{left:0;top:77%}.layout-portrait-film .scene-photo--3{right:0;top:23%}.layout-portrait-film .scene-photo--4{right:0;top:77%}.layout-portrait-film .scene-photo--5{left:50%;top:2%;width:24vw;height:17svh}.layout-luminous-pair .scene-photo.is-lead{right:2%;top:49%;width:83vw;height:78svh}.layout-luminous-pair .scene-photo:not(.is-lead){left:1%;width:34vw;height:26svh}.layout-luminous-pair .scene-photo--0{top:2%}.layout-luminous-pair .scene-photo--2{top:auto;bottom:2%;left:4%}.layout-luminous-pair .scene-photo--3{top:31%;left:0;width:25vw;height:22svh}.layout-midpoint-burst .scene-photo:not(.is-lead){width:34vw;height:28svh}.layout-midpoint-burst .scene-photo--0{left:1%;top:4%}.layout-midpoint-burst .scene-photo--1{right:1%;top:5%}.layout-midpoint-burst .scene-photo--3{right:3%;bottom:4%}.layout-dream-layer .scene-photo:not(.is-lead){width:29vw;height:28svh}.layout-dream-layer .scene-photo--0{left:0;top:8%}.layout-dream-layer .scene-photo--1{left:13%;bottom:4%}.layout-dream-layer .scene-photo--2{right:12%;top:4%}.layout-dream-layer .scene-photo--3{right:0;bottom:8%}.layout-dream-layer .scene-photo--4{right:3%;top:20%;width:22vw;height:19svh}.layout-portrait-spread .scene-photo.is-lead{left:50%;top:48%;width:78vw;height:82svh;translate:-50% -50%}.layout-portrait-spread .scene-photo:not(.is-lead){width:30vw;height:26svh}.layout-portrait-spread .scene-photo--0{left:0;top:4%}.layout-portrait-spread .scene-photo--1{right:0;top:5%}.layout-portrait-spread .scene-photo--2{right:0;top:38%}.layout-portrait-spread .scene-photo--3{right:0;bottom:3%}.layout-portrait-spread .scene-photo--4{left:0;top:35%;width:25vw;height:20svh}.layout-portrait-spread .scene-photo--5{left:0;bottom:3%}.layout-portrait-spread .scene-photo--6{left:35%;bottom:1%;width:25vw;height:20svh}.layout-page-turn .scene-photo.is-lead{left:50%;top:48%;width:77vw;height:82svh}.layout-page-turn .scene-photo:not(.is-lead){width:29vw;height:24svh}.layout-page-turn .scene-photo--0{left:0;top:3%}.layout-page-turn .scene-photo--1{left:0;top:38%}.layout-page-turn .scene-photo--3{right:0;top:4%}.layout-page-turn .scene-photo--4{right:0;top:35%}.layout-page-turn .scene-photo--5{right:0;bottom:2%}.layout-page-turn .scene-photo--6{left:19%;top:2%;width:24vw;height:18svh}.layout-page-turn .scene-photo--7{left:22%;bottom:2%;width:24vw;height:19svh}.layout-page-turn .scene-photo--8{right:19%;bottom:1%;width:24vw;height:19svh}.layout-polaroid-fan .scene-photo.is-lead{left:50%;top:47%;width:78vw;height:80svh}.layout-polaroid-fan .scene-photo:not(.is-lead){width:29vw;height:26svh}.layout-polaroid-fan .scene-photo--0{left:0;top:5%}.layout-polaroid-fan .scene-photo--1{left:0;bottom:5%}.layout-polaroid-fan .scene-photo--2{right:0;top:5%}.layout-polaroid-fan .scene-photo--3{right:0;bottom:5%}.layout-polaroid-fan .scene-photo--5{left:22%;top:1%;width:23vw;height:18svh}.layout-polaroid-fan .scene-photo--6{right:20%;bottom:1%;width:23vw;height:18svh}.layout-polaroid-fan .scene-photo--7{right:20%;top:1%;width:23vw;height:18svh}.layout-waterfall .scene-photo:not(.is-lead){top:50%;width:32vw;height:34svh}.layout-waterfall .scene-photo--0{left:1%}.layout-waterfall .scene-photo--1{left:4%;top:18%;width:27vw;height:22svh;transform:none}.layout-waterfall .scene-photo--3{right:1%;top:52%}.layout-story-cascade .scene-photo.is-lead{left:50%;top:49%;width:83vw;height:76svh}.layout-story-cascade .scene-photo:not(.is-lead){width:30vw;height:25svh}.layout-story-cascade .scene-photo--0{left:0;top:3%}.layout-story-cascade .scene-photo--1{right:0;top:3%}.layout-story-cascade .scene-photo--2{left:0;bottom:3%}.layout-story-cascade .scene-photo--3{right:0;bottom:3%}.layout-story-cascade .scene-photo--4{left:30%;top:1%;width:24vw;height:17svh}.layout-story-cascade .scene-photo--5{right:26%;bottom:1%;width:24vw;height:17svh}.layout-story-cascade .scene-photo--6{left:26%;bottom:1%;width:23vw;height:17svh}.layout-story-cascade .scene-photo--7{right:30%;top:1%;width:23vw;height:17svh}.scene-midpoint-butterfly{top:6%;width:67px;height:56px}.scene-backdrop,.letter-reveal-backdrop{filter:blur(14px) saturate(1.28) brightness(.48)}.letter-reveal,.letter-section,.birthday-ending{min-height:112svh}.letter-reveal-core{width:min(78vw,390px)}.reveal-trigger{width:108px;height:108px}.reveal-butterfly,.reveal-flight{width:68px;height:57px}.letter-reveal-label{font-size:20px}.letter-reveal-hint{font-size:11px}.letter-reserve,.letter-paper{width:88vw;min-height:72svh}.letter-paper{padding:18px}.ending-photo{width:90vw;height:min(59svh,530px)}.ending-butterfly{right:9%;bottom:12%;width:64px;height:54px}.music-control{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:48px;height:48px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.scene-backdrop,.scene-photo-glow{filter:none}.gate-aurora,.gift-cover-aurora,.letter-reveal-aurora{animation:none}}.butterfly-flight{position:fixed;top:0;left:0;z-index:75;display:block;width:88px;height:74px;padding:0;border:0;color:inherit;background:transparent;filter:drop-shadow(0 4px 13px rgba(255,103,190,.38));transform-origin:50% 50%;pointer-events:none;will-change:transform,opacity}.butterfly-flight--gate{z-index:110}.butterfly-flight--gift,.butterfly-flight--letter{z-index:140;pointer-events:auto;cursor:pointer;touch-action:manipulation}.butterfly-flight--opening{z-index:140}.butterfly-flight--midpoint{z-index:86}.butterfly-flight--ending{z-index:115}.butterfly-flight--free{width:26px;height:22px}.butterfly-flight:focus-visible{outline:2px solid rgba(255,255,255,.95);outline-offset:8px;border-radius:50%}.butterfly-flight.is-scripted[aria-disabled=true]{pointer-events:none}.butterfly-svg{display:block;width:100%;height:100%;overflow:visible}.butterfly-wings{fill:#ffd8ef;stroke:#fffffff0;stroke-width:.8;transform-box:view-box}.butterfly-wings--left{transform-origin:23px 20px;animation:wing-flap-left .34s ease-in-out infinite alternate}.butterfly-wings--right{transform-origin:25px 20px;animation:wing-flap-right .34s ease-in-out infinite alternate}.butterfly-wing-detail{fill:none;stroke:#c34791;stroke-width:.65;stroke-linecap:round;opacity:.78}.butterfly-wing-spot{fill:#fff7fbd1;stroke:#b25391bf;stroke-width:.45}.butterfly-body{fill:#8c315f;stroke:#ffe4f3;stroke-width:.5}.butterfly-antenna{fill:none;stroke:#ffe2f1;stroke-width:.7;stroke-linecap:round}.visual-scene{--scene-base: #21112c;position:relative;display:block;min-height:158svh;isolation:isolate;overflow:clip;background:var(--scene-base);contain:paint}.visual-scene.pace-slow{min-height:170svh}.visual-scene.pace-pause{min-height:182svh}.visual-scene.pace-dramatic{min-height:174svh}.visual-scene.scene-filmstrip{min-height:285svh}.visual-scene.scene-photo-sequence{min-height:250svh}.visual-scene.scene-id-closing-gallery{min-height:200svh}.visual-scene:after{z-index:3;background:linear-gradient(180deg,rgba(8,5,18,.15),transparent 21%,transparent 77%,rgba(8,5,18,.48))}.palette-violet{--scene-base: #29113b}.palette-rose{--scene-base: #441329}.palette-indigo{--scene-base: #11172d}.palette-amber,.palette-gold{--scene-base: #422515}.palette-sky{--scene-base: #10293f}.palette-ocean{--scene-base: #0b2635}.palette-coral{--scene-base: #3b172c}.palette-stage{--scene-base: #100b25}.palette-plum{--scene-base: #30132f}.palette-pink{--scene-base: #401733}.palette-orchid{--scene-base: #2e163c}.palette-lilac{--scene-base: #2e1d42}.palette-forest{--scene-base: #102d2b}.palette-sunset{--scene-base: #3b1828}.scene-backdrop{position:absolute;z-index:0;inset:-11%;width:122%;height:122%;object-fit:cover;filter:blur(24px) saturate(1.48) brightness(.68);transform-origin:center;pointer-events:none;will-change:transform,opacity}.scene-base-wash{position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(142deg,#12091f14,#1b092238 44%,#080f2157),radial-gradient(ellipse at 50% 56%,#22112705,#09081742 84%)}.scene-light-field{position:absolute;z-index:2;inset:-21%;pointer-events:none;background:radial-gradient(ellipse at 18% 24%,rgba(255,92,182,.32),transparent 34%),radial-gradient(ellipse at 78% 29%,rgba(132,117,255,.26),transparent 34%),radial-gradient(ellipse at 54% 80%,rgba(255,176,115,.18),transparent 38%);filter:blur(38px);mix-blend-mode:screen;will-change:transform,opacity}.palette-ocean .scene-light-field{background:radial-gradient(ellipse at 70% 30%,rgba(80,190,255,.34),transparent 37%),radial-gradient(ellipse at 17% 82%,rgba(161,117,255,.24),transparent 40%)}.palette-stage .scene-light-field{background:radial-gradient(ellipse at 25% 22%,rgba(47,119,255,.44),transparent 29%),radial-gradient(ellipse at 72% 20%,rgba(255,67,174,.37),transparent 32%),radial-gradient(ellipse at 55% 77%,rgba(124,60,255,.34),transparent 38%)}.palette-gold .scene-light-field{background:radial-gradient(ellipse at 35% 42%,rgba(255,177,91,.29),transparent 36%),radial-gradient(ellipse at 77% 70%,rgba(180,84,69,.2),transparent 38%)}.scene-grain,.scene-vignette{position:absolute;z-index:3;inset:0;pointer-events:none}.scene-grain{opacity:.09;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E");mix-blend-mode:soft-light}.scene-vignette{background:radial-gradient(ellipse at 50% 47%,transparent 35%,rgba(7,5,19,.4) 100%)}.scene-composition-stage{position:sticky;z-index:4;top:0;display:block;width:100%;height:100svh;min-height:580px;overflow:clip;perspective:1350px;perspective-origin:50% 44%}.scene-composition-group{position:absolute;inset:0;width:100%;height:100%}.composition-photo{position:absolute;display:block;margin:0;overflow:hidden;border:1px solid rgba(255,247,252,.7);border-radius:5px;background:#1e152694;box-shadow:0 26px 78px #0503115c,0 0 0 1px #ffffff1f;transform-style:preserve-3d;transform-origin:50% 50%}.composition-photo-image{display:block;width:100%;height:100%;background:#0d0c1538;transform-origin:center}.composition-photo.is-lead{z-index:5}.composition-photo.treatment-focus{border-color:#fff1f9cc;box-shadow:0 32px 94px #0603146b,0 0 34px #ff74c226}.composition-photo.treatment-glass{border-color:#fff8fc8a;background:#fff4fb21;box-shadow:0 17px 58px #0804144d,inset 0 1px #ffffff47;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.composition-photo.treatment-matte{padding:8px;border:0;border-radius:3px;background:linear-gradient(150deg,#fff9fb,#eedce6);box-shadow:0 25px 74px #09041459}.composition-photo.treatment-album{padding:8px 8px 24px;border:0;border-radius:3px;background:linear-gradient(150deg,#fff9fb,#ecd6e5);box-shadow:0 22px 68px #0904145e}.composition-album-edge{position:absolute;right:7px;bottom:6px;left:7px;height:10px;background:radial-gradient(circle at 8px -2px,transparent 10px,rgba(255,255,255,.9) 10.5px) 0 0 / 17px 12px repeat-x}.composition-layout-hero .composition-photo.is-lead{left:50%;top:50%;width:min(38vw,580px);height:77svh;translate:-50% -50%;border-radius:8px}.scene-id-first-light .composition-photo.is-lead{width:min(39vw,590px);height:81svh;border-radius:12px;box-shadow:0 0 0 1px #fff5fc40,0 38px 130px #0502138a,0 0 58px #ff8dcb3b}.scene-id-first-light .composition-photo.is-lead{inset:0;width:100%;height:100%;translate:0 0;border:0;border-radius:0;box-shadow:none}.scene-id-first-light .composition-photo.is-lead:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,rgba(19,9,33,.08),transparent 28%,transparent 69%,rgba(19,9,33,.24));pointer-events:none}.composition-layout-fan .composition-photo.is-lead{left:31%;top:50%;width:min(35vw,510px);height:75svh;translate:-50% -50%}.composition-layout-fan .composition-photo:not(.is-lead){width:min(15vw,215px);height:24svh;border-radius:5px}.composition-layout-fan .composition-photo--0{left:61%;top:17%}.composition-layout-fan .composition-photo--2{left:80%;top:17%}.composition-layout-fan .composition-photo--3{left:61%;top:43%}.composition-layout-fan .composition-photo--4{left:80%;top:43%}.composition-layout-fan .composition-photo--5{left:61%;top:69%}.composition-layout-fan .composition-photo--6{left:80%;top:69%}.scene-id-city-shadows .composition-photo.is-lead{left:50%;top:49%;width:min(51vw,760px);height:67svh;translate:-50% -50%}.scene-id-city-shadows .composition-photo:not(.is-lead){width:min(20vw,275px);height:39svh;top:31%}.scene-id-city-shadows .composition-photo--0{left:11%}.scene-id-city-shadows .composition-photo--1{right:11%;top:14%}.scene-id-city-shadows .composition-photo--2{right:11%;top:58%}.composition-layout-photo-sequence .scene-composition-group.is-sequence{position:absolute;inset:0}.composition-layout-photo-sequence .composition-photo{left:50%;top:50%;width:min(43vw,650px);height:78svh;translate:-50% -50%;border-radius:7px}.composition-layout-photo-sequence .composition-photo[data-orientation=landscape]{width:min(66vw,960px);height:67svh}.scene-id-campus-burst .composition-photo{width:min(40vw,600px);height:78svh}.scene-id-campus-burst .composition-photo[data-orientation=landscape]{width:min(66vw,960px);height:68svh}.scene-id-closing-gallery .composition-photo[data-orientation=landscape]{width:min(74vw,1060px);height:68svh}.composition-layout-qipao-editorial .composition-photo.is-lead{left:47%;top:50%;width:min(35vw,520px);height:77svh;translate:-50% -50%;border-color:#ffddaea8;box-shadow:0 0 0 1px #ffb96133,0 34px 100px #0a050d7a}.composition-layout-qipao-editorial .composition-photo--1{left:76%;top:34%;width:min(19vw,275px);height:45svh}.composition-layout-qipao-editorial .composition-photo--2{left:76%;top:75%;width:min(18vw,260px);height:28svh}.composition-layout-qipao-editorial .composition-photo--1:after,.composition-layout-qipao-editorial .composition-photo--2:after{position:absolute;inset:0;content:"";border:1px solid rgba(255,240,213,.3);pointer-events:none}.composition-photo.treatment-dress-focus{border-color:#ffddaeb8;box-shadow:0 30px 92px #0d070b80,0 0 36px #e4a8612e}.composition-photo.treatment-warm-glass{border-color:#ffdfbb94;box-shadow:0 22px 70px #0d070b66,0 0 25px #f5a25d1f}.scene-glass-field{position:absolute;z-index:2;inset:0;background:radial-gradient(ellipse at 42% 48%,rgba(255,197,125,.12),transparent 35%),radial-gradient(ellipse at 86% 18%,rgba(255,231,180,.11),transparent 26%);pointer-events:none;mix-blend-mode:screen}.scene-id-black-qipao .scene-backdrop{filter:blur(32px) saturate(1.15) brightness(.39)}.scene-id-city-shadows .scene-backdrop{filter:blur(28px) saturate(1.22) brightness(.43)}.scene-id-festival-wow .scene-backdrop{filter:blur(22px) saturate(1.5) brightness(.58)}.scene-id-black-qipao .scene-base-wash{background:linear-gradient(110deg,#3618103b,#2d111b5c 53%,#120a177a)}.composition-layout-festival-stage .composition-photo.is-lead{inset:0;z-index:1;width:100%;height:100%;border:0;border-radius:0;box-shadow:none}.composition-layout-festival-stage .composition-photo.is-lead:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,#0906140d 35%,#09051675 78%,#090516ad);pointer-events:none}.composition-layout-festival-stage .composition-photo:not(.is-lead){z-index:6;left:50%;top:70%;width:min(19vw,268px);height:24svh;border-color:#fff5fad1;box-shadow:0 15px 54px #0000006b,0 0 24px #ff52b133}.composition-layout-festival-stage .composition-photo--0:not(.is-lead){left:19%}.composition-layout-festival-stage .composition-photo--2:not(.is-lead){left:81%}.festival-lightburst{position:absolute;z-index:0;left:50%;top:47%;width:min(35vw,500px);aspect-ratio:1;border-radius:50%;translate:-50% -50%;background:radial-gradient(circle,rgba(255,225,246,.62),rgba(255,91,192,.17) 36%,transparent 72%);filter:blur(18px);mix-blend-mode:screen;pointer-events:none}.scene-id-low-light-dream .composition-photo.is-lead{left:48%;top:50%;width:min(38vw,560px);height:74svh;translate:-50% -50%}.scene-id-low-light-dream .composition-photo:not(.is-lead){width:min(16vw,220px);height:33svh}.scene-id-low-light-dream .composition-photo--0{left:16%;top:18%}.scene-id-low-light-dream .composition-photo--1{left:72%;top:17%}.scene-id-low-light-dream .composition-photo--2{left:21%;top:60%}.scene-id-low-light-dream .composition-photo--3{left:73%;top:60%}.scene-id-mirror-album .composition-photo{width:min(42vw,630px);height:78svh}.scene-id-bright-portraits .composition-photo{width:min(42vw,630px);height:77svh}.scene-id-soft-play .composition-photo.is-lead{left:50%;top:50%;width:min(33vw,480px);height:70svh;translate:-50% -50%}.scene-id-soft-play .composition-photo:not(.is-lead){width:min(18vw,245px);height:31svh}.scene-id-soft-play .composition-photo--0{left:18%;top:18%}.scene-id-soft-play .composition-photo--1{left:76%;top:18%}.scene-id-soft-play .composition-photo--2{left:19%;top:62%}.scene-id-soft-play .composition-photo--3{left:76%;top:62%}.scene-id-soft-play .composition-photo--5{left:34%;top:12%;width:min(15vw,200px);height:27svh}.scene-id-soft-play .composition-photo--6{left:66%;top:65%;width:min(15vw,200px);height:27svh}.scene-id-soft-play .composition-photo--7{left:61%;top:12%;width:min(15vw,200px);height:27svh}.scene-id-green-water .composition-photo.is-lead{left:35%;top:50%;width:min(34vw,500px);height:71svh;translate:-50% -50%}.scene-id-green-water .composition-photo:not(.is-lead){left:72%;width:min(21vw,300px);height:30svh}.scene-id-green-water .composition-photo--0{top:16%}.scene-id-green-water .composition-photo--1{top:52%}.scene-id-green-water .composition-photo--3{left:83%;top:34%;width:min(14vw,200px);height:40svh}.scene-caption{position:absolute;z-index:8;width:min(28vw,390px);color:#fff8fce6;pointer-events:none;text-shadow:0 2px 20px rgba(4,3,13,.65)}.scene-caption p{margin:6px 0;font:18px/1.75 Songti SC,STSong,serif;letter-spacing:.06em}.scene-caption-location,.scene-caption-note{font-size:10px;letter-spacing:.2em;opacity:.74}.scene-caption--lower-left{left:max(6vw,env(safe-area-inset-left));bottom:9vh;text-align:left}.scene-caption--lower-right{right:max(6vw,env(safe-area-inset-right));bottom:9vh;text-align:right}.scene-caption--lower-third{left:50%;bottom:7vh;translate:-50% 0;width:min(64vw,760px);text-align:center}.scene-caption--upper-left{top:10vh;left:max(6vw,env(safe-area-inset-left));text-align:left}.scene-caption--upper-right{top:10vh;right:max(6vw,env(safe-area-inset-right));text-align:right}.scene-venetian-environment{position:absolute;z-index:0;inset:0;display:flex;overflow:hidden;pointer-events:none;perspective:1000px}.scene-venetian-environment span{position:absolute;top:0;bottom:0;display:block;background:#091827d4;border-inline:1px solid rgba(255,247,251,.17);box-shadow:0 0 20px #110d221f;backface-visibility:hidden}.palette-ocean.scene-venetian-environment span{background:#08202ddb}.letter-reveal{position:fixed;z-index:125;inset:0;display:grid;grid-template-rows:1fr auto 1fr;place-items:center;min-height:100svh;overflow:hidden;isolation:isolate;background:#25112e;color:#fff8fc}.letter-reveal-backdrop{position:absolute;z-index:-4;inset:-10%;width:120%;height:120%;object-fit:cover;filter:blur(27px) saturate(1.25) brightness(.34)}.letter-reveal:before{position:absolute;z-index:-3;inset:0;content:"";background:radial-gradient(ellipse at 50% 47%,rgba(243,91,178,.18),transparent 44%),linear-gradient(125deg,#200d2d61,#0e122a99)}.letter-reveal-aurora{position:absolute;z-index:-2;inset:-24%;background:radial-gradient(ellipse at 24% 40%,rgba(255,95,191,.33),transparent 34%),radial-gradient(ellipse at 80% 66%,rgba(112,112,255,.25),transparent 37%);filter:blur(40px);animation:aurora-drift 18s ease-in-out infinite alternate}.letter-reveal-grain{position:absolute;z-index:-1;inset:0;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' 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='.4'/%3E%3C/svg%3E");pointer-events:none}.letter-reveal-label{position:absolute;top:20%;z-index:2;font:24px Songti SC,STSong,serif;letter-spacing:.32em;text-indent:.32em;text-shadow:0 4px 28px rgba(255,113,194,.45)}.letter-reveal-core{position:absolute;left:50%;top:49%;display:grid;width:250px;aspect-ratio:1;place-items:center;border-radius:50%;translate:-50% -50%;pointer-events:none}.letter-seal-ring{position:absolute;inset:10%;border:1px solid rgba(255,231,247,.44);border-radius:50%;box-shadow:inset 0 0 42px #ff59bb14,0 0 48px #ff69cb24;animation:seal-pulse 5.3s ease-in-out infinite}.letter-seal-ring--inner{inset:25%;border-color:#ffe1f442;animation-delay:-2.6s}.letter-reveal-hint{position:absolute;left:50%;bottom:17%;z-index:4;width:min(78vw,460px);margin:0;translate:-50% 0;color:#fff5fce0;font:13px/1.7 Songti SC,STSong,serif;letter-spacing:.25em;text-align:center;text-shadow:0 2px 18px rgba(6,2,20,.7)}.letter-reveal-light{position:absolute;z-index:1;width:11vmin;aspect-ratio:1;border-radius:50%;background:#fff;filter:blur(58px);opacity:.25;transition:transform 1.4s ease,opacity 1.4s ease}.letter-reveal.is-open .letter-reveal-light{opacity:.8;transform:scale(13)}.letter-section{position:relative;display:grid;min-height:135svh;padding:13svh 4vw;place-items:center;overflow:clip;isolation:isolate;background:radial-gradient(ellipse at 26% 21%,rgba(255,226,239,.12),transparent 39%),linear-gradient(140deg,#301a33,#21142d 66%,#151527)}.letter-section:before{position:absolute;inset:0;content:"";background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E");opacity:.12;pointer-events:none}.letter-paper{z-index:1;width:min(68vw,800px);min-height:86svh;padding:clamp(26px,5vw,62px);border:1px solid rgba(255,250,250,.78);border-radius:3px;color:#593e4f;background:radial-gradient(ellipse at 18% 12%,#fffffff7,#fff8f8f5 58%,#f5e6ed);box-shadow:0 35px 130px #05020f6b,inset 0 0 50px #ffffffc7;transform-origin:top center}.letter-paper:before{position:absolute;inset:15px;content:"";border:1px solid rgba(177,117,152,.18);pointer-events:none}.letter-paper.is-empty{position:relative}.paper-fiber{position:absolute;inset:0;opacity:.12;background:repeating-linear-gradient(0deg,transparent 0 35px,rgba(186,134,162,.22) 36px,transparent 37px)}.letter-paper.has-letter-photos{display:grid;gap:24px;justify-items:center}.letter-photo-trigger{position:relative;display:grid;max-width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.letter-photo-trigger img{max-width:100%;max-height:74svh;object-fit:contain;box-shadow:0 18px 45px #5b2c4624}.letter-photo-trigger:focus-visible{outline:3px solid #7b4a6e;outline-offset:6px}.letter-page-seam{position:absolute;right:0;bottom:0;left:0;height:18svh;background:linear-gradient(transparent,#ffedf609);pointer-events:none}.letter-photo-zoom{position:fixed;z-index:180;inset:0;display:grid;padding:max(24px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));place-items:center;border:0;background:#0c0814eb;cursor:zoom-out}.letter-photo-zoom img{max-width:100%;max-height:100%;object-fit:contain}.final-transition{position:relative;min-height:72svh;overflow:hidden;isolation:isolate;background:#271329}.final-transition-photo{position:absolute;inset:-12%;width:124%;height:124%;object-fit:cover;filter:blur(34px) saturate(1.25) brightness(.38);opacity:.68;transform:scale(1.08)}.final-transition:before{position:absolute;z-index:1;inset:0;content:"";background:radial-gradient(ellipse at 50% 45%,rgba(255,182,137,.24),transparent 36%),linear-gradient(180deg,#140a1c1f,#14091ca8)}.final-transition-light{position:absolute;z-index:2;left:50%;top:50%;width:24vw;aspect-ratio:1;border-radius:50%;translate:-50% -50%;background:#ffa48e61;filter:blur(74px)}.final-transition-grain{position:absolute;z-index:3;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' 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='.4'/%3E%3C/svg%3E")}.birthday-ending{position:relative;display:grid;min-height:150svh;padding:10svh 5vw 15svh;align-content:center;justify-items:center;gap:clamp(18px,3vh,30px);overflow:hidden;isolation:isolate;background:#160d21}.ending-backdrop{position:absolute;z-index:-3;inset:-10%;width:120%;height:120%;object-fit:cover;filter:blur(32px) saturate(1.35) brightness(.38)}.ending-base-glow{position:absolute;z-index:-2;inset:0;background:radial-gradient(ellipse at 50% 47%,rgba(255,147,188,.26),transparent 40%),radial-gradient(ellipse at 82% 22%,rgba(251,183,121,.14),transparent 35%),linear-gradient(160deg,#170b222e,#160a1ea6)}.ending-photo{position:relative;z-index:2;display:grid;width:min(76vw,920px);height:min(62svh,670px);margin:0;padding:12px;place-items:center;overflow:hidden;border:1px solid rgba(255,244,250,.64);background:#fff4fa14;box-shadow:0 34px 120px #02010c7a,0 0 70px #ffa7c921}.ending-photo>img{width:100%;height:100%;object-fit:contain}.ending-title{position:relative;z-index:3;margin:8px 0 0;color:#fff5f9;font:400 clamp(27px,4.4vw,54px)/1.15 "Songti SC","STSong",serif;letter-spacing:.18em;text-indent:.18em;text-shadow:0 4px 34px rgba(255,157,196,.38)}.ending-message-slot{position:relative;z-index:3;width:min(74vw,720px);min-height:clamp(24px,5svh,50px);margin:0;color:#fff6faeb;font:17px/1.9 Songti SC,STSong,serif;letter-spacing:.12em;text-align:center;text-shadow:0 2px 22px rgba(255,144,191,.38)}.ending-message-slot:not(.has-message){visibility:hidden}.ending-finale-mark{color:#ffdec6d6;font-size:19px;text-shadow:0 0 24px rgba(255,181,158,.52)}.ending-bloom{position:absolute;z-index:1;left:50%;bottom:8%;width:19vmin;aspect-ratio:1;border-radius:50%;translate:-50% 0;background:#ff81b047;filter:blur(70px)}.music-controls{position:fixed;z-index:80;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));display:flex;gap:7px;align-items:center;padding:5px;border:1px solid rgba(255,244,251,.25);border-radius:99px;background:#1e112a73;box-shadow:0 8px 35px #0000002e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.music-control,.music-mute{display:grid;width:42px;height:42px;padding:0;place-items:center;border:0;border-radius:50%;color:#fff;background:#ffffff12;cursor:pointer}.music-control svg{width:18px;fill:currentColor;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.music-mute svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.music-mute.is-muted{color:#ffffff80}.music-control:focus-visible,.music-mute:focus-visible{outline:2px solid white;outline-offset:3px}.gift-seal{position:absolute;z-index:5;top:42%;left:50%;display:grid;width:92px;aspect-ratio:1;place-items:center;translate:-50% -50%;border:1px solid rgba(255,236,249,.68);border-radius:50%;background:radial-gradient(circle,#ffb8e23b,#5c2c6a6b);box-shadow:0 0 46px #ff5ebe52,inset 0 0 24px #fff3;pointer-events:none}.gift-seal-ring{position:absolute;inset:9px;border:1px solid rgba(255,245,252,.52);border-radius:50%}.gift-seal-ring:after{position:absolute;inset:8px;content:"";border:1px solid rgba(255,228,245,.29);border-radius:50%}.gift-opening-orbit{position:absolute;z-index:4;width:30vmin;aspect-ratio:1;border:1px solid rgba(255,239,251,.72);border-radius:50%;box-shadow:0 0 45px #ff89d080,inset 0 0 32px #ffffff38}@keyframes wing-flap-left{0%{transform:rotateY(0) rotate(-2deg)}to{transform:rotateY(-22deg) rotate(-4deg)}}@keyframes wing-flap-right{0%{transform:rotateY(0) rotate(2deg)}to{transform:rotateY(22deg) rotate(4deg)}}@media(max-width:900px){.scene-composition-stage{min-height:100svh}.composition-layout-fan .composition-photo.is-lead{left:33%;width:43vw;height:75svh}.composition-layout-fan .composition-photo:not(.is-lead){width:17vw;height:23svh}.composition-layout-fan .composition-photo--0,.composition-layout-fan .composition-photo--3,.composition-layout-fan .composition-photo--5{left:60%}.composition-layout-fan .composition-photo--2,.composition-layout-fan .composition-photo--4,.composition-layout-fan .composition-photo--6{left:80%}.composition-layout-qipao-editorial .composition-photo.is-lead{left:45%;width:43vw}.composition-layout-qipao-editorial .composition-photo--1{left:72%;width:21vw}.composition-layout-qipao-editorial .composition-photo--2{left:74%;width:20vw}.scene-id-first-light .composition-photo.is-lead{width:49vw}}@media(max-width:620px){.butterfly-flight--free{width:24px;height:20px}.butterfly-flight{width:62px;height:52px}.butterfly-flight--gift,.butterfly-flight--letter{z-index:145}.visual-scene{min-height:148svh}.visual-scene.pace-slow{min-height:158svh}.visual-scene.pace-pause{min-height:170svh}.visual-scene.pace-fast{min-height:138svh}.visual-scene.pace-dramatic{min-height:164svh}.visual-scene.scene-filmstrip{min-height:255svh}.visual-scene.scene-photo-sequence{min-height:235svh}.visual-scene.scene-id-closing-gallery{min-height:180svh}.scene-backdrop{inset:-6%;width:112%;height:112%;filter:blur(18px) saturate(1.3) brightness(.54)}.scene-light-field{inset:-15%;filter:blur(30px);opacity:.72}.scene-composition-stage{min-height:100svh;height:100svh}.composition-layout-hero .composition-photo.is-lead,.composition-layout-photo-sequence .composition-photo,.scene-id-campus-burst .composition-photo{left:50%;top:50%;width:82vw;height:78svh;translate:-50% -50%;border-radius:6px}.scene-id-first-light .composition-photo.is-lead{inset:50% auto auto 50%;width:84vw;height:82svh;translate:-50% -50%;border:1px solid rgba(255,245,252,.25);border-radius:7px;box-shadow:0 30px 90px #0502137a;object-position:50% 41%}.composition-layout-photo-sequence .composition-photo[data-orientation=landscape],.scene-id-campus-burst .composition-photo[data-orientation=landscape]{width:92vw;height:60svh}.composition-layout-fan .composition-photo.is-lead{left:50%;top:49%;width:74vw;height:73svh}.composition-layout-fan .composition-photo:not(.is-lead){width:24vw;height:24svh}.composition-layout-fan .composition-photo--0{left:2%;top:7%}.composition-layout-fan .composition-photo--2{left:74%;top:7%}.composition-layout-fan .composition-photo--3{left:2%;top:38%}.composition-layout-fan .composition-photo--4{left:74%;top:38%}.composition-layout-fan .composition-photo--5{left:2%;top:69%;width:21vw;height:19svh}.composition-layout-fan .composition-photo--6{left:77%;top:69%;width:21vw;height:19svh}.scene-id-city-shadows .composition-photo.is-lead{width:86vw;height:65svh}.scene-id-city-shadows .composition-photo:not(.is-lead){width:25vw;height:25svh}.scene-id-city-shadows .composition-photo--0{left:1%;top:10%}.scene-id-city-shadows .composition-photo--1{right:1%;top:10%}.scene-id-city-shadows .composition-photo--2{right:3%;top:68%}.composition-layout-qipao-editorial .composition-photo.is-lead{left:50%;top:49%;width:68vw;height:75svh}.composition-layout-qipao-editorial .composition-photo--1{left:3%;top:16%;width:25vw;height:31svh}.composition-layout-qipao-editorial .composition-photo--2{left:72%;top:60%;width:25vw;height:32svh}.scene-id-low-light-dream .composition-photo.is-lead{left:50%;top:50%;width:78vw;height:72svh}.scene-id-low-light-dream .composition-photo:not(.is-lead){width:25vw;height:24svh}.scene-id-low-light-dream .composition-photo--0{left:1%;top:8%}.scene-id-low-light-dream .composition-photo--1{left:74%;top:8%}.scene-id-low-light-dream .composition-photo--2{left:1%;top:70%}.scene-id-low-light-dream .composition-photo--3{left:74%;top:70%}.scene-id-mirror-album .composition-photo,.scene-id-bright-portraits .composition-photo,.scene-id-closing-gallery .composition-photo{width:84vw;height:76svh}.scene-id-mirror-album .composition-photo[data-orientation=landscape],.scene-id-bright-portraits .composition-photo[data-orientation=landscape],.scene-id-closing-gallery .composition-photo[data-orientation=landscape]{width:92vw;height:59svh}.scene-id-soft-play .composition-photo.is-lead{left:50%;top:50%;width:72vw;height:69svh}.scene-id-soft-play .composition-photo:not(.is-lead){width:25vw;height:22svh}.scene-id-soft-play .composition-photo--0{left:1%;top:9%}.scene-id-soft-play .composition-photo--1{left:74%;top:9%}.scene-id-soft-play .composition-photo--2{left:1%;top:68%}.scene-id-soft-play .composition-photo--3{left:74%;top:68%}.scene-id-soft-play .composition-photo--5{left:19%;top:2%;width:22vw;height:18svh}.scene-id-soft-play .composition-photo--6{left:58%;top:79%;width:22vw;height:18svh}.scene-id-soft-play .composition-photo--7{left:58%;top:2%;width:22vw;height:18svh}.scene-id-green-water .composition-photo.is-lead{left:45%;top:49%;width:67vw;height:67svh}.scene-id-green-water .composition-photo:not(.is-lead){left:75%;width:25vw;height:26svh}.scene-id-green-water .composition-photo--0{top:13%}.scene-id-green-water .composition-photo--1{left:2%;top:61%}.scene-id-green-water .composition-photo--3{left:74%;top:65%;width:24vw;height:25svh}.composition-layout-festival-stage .composition-photo:not(.is-lead){left:50%;top:74%;width:27vw;height:21svh}.composition-layout-festival-stage .composition-photo--0{left:19%}.composition-layout-festival-stage .composition-photo--2{left:81%}.festival-lightburst{width:58vw}.scene-caption{width:min(53vw,280px)}.scene-caption p{font-size:14px}.scene-caption--lower-left,.scene-caption--lower-right{bottom:7vh}.scene-caption--lower-third{bottom:5vh;width:82vw}.letter-reveal-label{top:21%;font-size:20px}.letter-reveal-core{width:190px;top:49%}.letter-reveal-hint{bottom:16%;font-size:11px}.letter-section{min-height:128svh;padding:9svh 6vw}.letter-paper{width:88vw;min-height:84svh;padding:22px}.letter-photo-trigger img{max-height:72svh}.final-transition{min-height:60svh}.birthday-ending{min-height:135svh;padding:8svh 5vw 12svh;gap:18px}.ending-photo{width:91vw;height:min(59svh,540px);padding:8px}.ending-title{font-size:clamp(26px,8vw,38px)}.ending-message-slot{width:84vw;min-height:34px;font-size:14px}.music-controls{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom))}.music-control,.music-mute{width:38px;height:38px}.gift-seal{width:78px}}@media(prefers-reduced-motion:reduce){.butterfly-wings--left,.butterfly-wings--right{animation:none}.scene-venetian-environment span{transform:none!important}}:root{color:#fff8fc;background:#21101f;--rose: #ff78bd;--hot-rose: #ff4ca8;--violet: #b693ff;--milk: #fff3f8;--glass: rgba(255,244,250,.14)}html,body,.gift-site{background:#21101f}.visual-scene{--env-rose: rgba(255,135,196,.22);--env-peach: rgba(255,197,151,.16);--env-lavender: rgba(180,159,255,.2);--env-blue: rgba(139,208,255,.15);min-height:158svh;overflow:clip;background:radial-gradient(ellipse at 50% 40%,#593247,#302038 57%,#201927)}.visual-scene.pace-fast{min-height:148svh}.visual-scene.pace-pause{min-height:168svh}.visual-scene.pace-dramatic{min-height:176svh}.visual-scene.scene-filmstrip{min-height:260svh}.visual-scene.scene-photo-sequence{min-height:292svh}.visual-scene.scene-id-closing-gallery{min-height:285svh}.scene-backdrop{z-index:0;inset:-8%;width:116%;height:116%;filter:blur(20px) saturate(1.34) brightness(.9);opacity:.38;mix-blend-mode:soft-light}.scene-base-wash{z-index:1;background:radial-gradient(ellipse at 18% 16%,var(--env-rose),transparent 44%),radial-gradient(ellipse at 84% 78%,var(--env-lavender),transparent 43%),linear-gradient(142deg,#ffd5e612,#1a0f1f1f 54%,#0e0f1e3d)}.scene-light-field{z-index:2;inset:-8%;filter:none;background:linear-gradient(118deg,transparent 14%,rgba(255,239,199,.1) 30%,transparent 43%),radial-gradient(ellipse at 12% 35%,rgba(255,180,213,.28),transparent 34%),radial-gradient(ellipse at 83% 31%,rgba(200,173,255,.25),transparent 34%),radial-gradient(ellipse at 52% 87%,rgba(255,196,147,.18),transparent 40%);mix-blend-mode:screen}.scene-grain{opacity:.035}.scene-vignette{background:radial-gradient(ellipse at 50% 48%,transparent 50%,rgba(33,13,34,.13) 100%)}.scene-composition-stage{z-index:5;min-height:100svh;height:100svh}.scene-composition-group{z-index:2}.composition-layout-photo-sequence .composition-photo,.composition-layout-photo-sequence .composition-photo.is-lead{z-index:1}.composition-photo{border:1px solid rgba(255,250,252,.78);border-radius:8px;background:#fff5fa26;box-shadow:0 28px 76px #1b0a1d52,0 0 28px #ffbedd1a}.composition-photo.treatment-glass{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff4fa1a}.composition-photo.treatment-matte,.composition-photo.treatment-album{border-radius:5px;background:linear-gradient(150deg,#fffafc,#f4dce8);box-shadow:0 22px 58px #280d2540}.composition-photo-image{background:#fff5fa0f}.composition-layout-hero .composition-photo.is-lead{left:50%;top:50%;width:min(46vw,650px);height:82svh;translate:-50% -50%;border-radius:18px}.scene-id-first-light{--env-rose: rgba(255,112,181,.27);--env-peach: rgba(255,187,133,.21);--env-lavender: rgba(189,159,255,.19)}.scene-id-first-light .scene-backdrop{opacity:.32;filter:blur(24px) saturate(1.32) brightness(1.02)}.scene-id-first-light .scene-base-wash{background:radial-gradient(ellipse at 50% 50%,rgba(255,217,236,.14),transparent 42%),linear-gradient(130deg,#46193d2b,#2c172d2b)}.scene-id-city-shadows .scene-backdrop{filter:blur(18px) saturate(1.24) brightness(.92);opacity:.34}.scene-id-black-qipao .scene-backdrop{filter:blur(18px) saturate(1.2) brightness(.94);opacity:.34}.scene-id-campus-burst .scene-backdrop{filter:blur(16px) saturate(1.22) brightness(.96);opacity:.3}.scene-id-festival-wow .scene-backdrop{filter:blur(16px) saturate(1.42) brightness(.84);opacity:.42}.scene-id-campus-burst .scene-base-wash{background:radial-gradient(ellipse at 72% 23%,rgba(255,222,165,.23),transparent 38%),radial-gradient(ellipse at 16% 80%,rgba(137,210,244,.2),transparent 37%),linear-gradient(120deg,#2f2b3a12,#241a2d2e)}.scene-id-yantai-horizon .scene-base-wash{background:radial-gradient(ellipse at 78% 25%,rgba(179,157,255,.19),transparent 39%),radial-gradient(ellipse at 17% 72%,rgba(255,160,214,.18),transparent 43%),linear-gradient(145deg,#362b4614,#191e3433)}.scene-id-black-qipao .scene-base-wash{background:radial-gradient(ellipse at 30% 33%,rgba(255,190,115,.2),transparent 40%),radial-gradient(ellipse at 84% 68%,rgba(255,118,168,.15),transparent 38%),linear-gradient(120deg,#361a2a1f,#24182a33)}.scene-id-festival-wow .scene-base-wash{background:radial-gradient(ellipse at 51% 48%,rgba(255,96,199,.22),transparent 43%),linear-gradient(116deg,#48407b26,#27163533)}.scene-id-low-light-dream .scene-base-wash{background:radial-gradient(ellipse at 50% 42%,rgba(255,178,213,.15),transparent 42%),linear-gradient(145deg,#3720441f,#19152738)}.scene-id-first-light .composition-photo.is-lead{inset:50% auto auto 50%;width:min(48vw,650px);height:min(84svh,870px);translate:-50% -50%;overflow:hidden;border:2px solid rgba(255,247,250,.85);border-radius:18px;box-shadow:0 35px 100px #2a0b2661,0 0 70px #ff77bd40}.scene-id-first-light .composition-photo-image{object-fit:cover!important;object-position:52% 43%!important;background:#e9d4dc}.scene-id-first-light .composition-photo.is-lead:after{position:absolute;inset:0;content:"";pointer-events:none;background:linear-gradient(180deg,rgba(255,218,237,.05),transparent 26%,transparent 77%,rgba(82,30,59,.12))}.scene-id-blush-closeups{min-height:300svh;--env-rose: rgba(255,105,175,.31);--env-peach: rgba(255,194,169,.19);--env-lavender: rgba(211,164,255,.2)}.scene-id-city-shadows{min-height:164svh;--env-rose: rgba(255,136,158,.2);--env-peach: rgba(255,195,121,.23);--env-lavender: rgba(148,130,223,.13)}.scene-id-city-shadows .scene-composition-stage{display:grid;place-items:center}.scene-id-city-shadows .composition-photo.is-lead{left:50%;top:50%;width:min(53vw,790px);height:64svh;translate:-50% -50%;z-index:4}.scene-id-city-shadows .composition-photo:not(.is-lead){width:min(15vw,220px);height:28svh;background:#281f31}.scene-id-city-shadows .composition-photo--0:not(.is-lead){left:5%;top:36%}.scene-id-city-shadows .composition-photo--1:not(.is-lead){left:80%;top:9%}.scene-id-city-shadows .composition-photo--2:not(.is-lead){left:80%;top:62%}.scene-id-city-shadows .composition-photo-image{object-fit:contain!important}.scene-id-hotel-reel{--env-rose: rgba(255,163,192,.19);--env-peach: rgba(255,184,118,.24);--env-lavender: rgba(196,147,255,.13)}.scene-id-campus-burst{min-height:320svh;--env-rose: rgba(255,203,165,.17);--env-peach: rgba(255,226,152,.21);--env-lavender: rgba(171,190,255,.14);--env-blue: rgba(123,219,239,.19)}.scene-id-yantai-horizon{min-height:330svh;--env-rose: rgba(255,155,213,.18);--env-peach: rgba(255,199,177,.13);--env-lavender: rgba(174,159,255,.23);--env-blue: rgba(116,199,255,.19)}.scene-id-close-angle-film{min-height:286svh;--env-rose: rgba(255,123,182,.26);--env-peach: rgba(255,196,158,.19)}.scene-id-black-qipao{min-height:178svh;--env-rose: rgba(214,79,120,.16);--env-peach: rgba(255,195,111,.22);--env-lavender: rgba(155,97,165,.12)}.composition-layout-qipao-editorial .composition-photo.is-lead{left:27%;top:50%;width:min(39vw,560px);height:80svh;translate:-50% -50%;border-color:#ffe1aecc;box-shadow:0 34px 100px #0c061173,0 0 55px #ffc26f33}.composition-layout-qipao-editorial .composition-photo--1{left:72%;top:15%;width:min(23vw,330px);height:32svh}.composition-layout-qipao-editorial .composition-photo--2{left:72%;top:54%;width:min(23vw,330px);height:32svh}.composition-layout-qipao-editorial .composition-photo-image{object-fit:contain!important}.scene-id-festival-wow{min-height:230svh;--env-rose: rgba(255,77,181,.32);--env-peach: rgba(255,159,138,.15);--env-lavender: rgba(174,101,255,.28);--env-blue: rgba(66,162,255,.24)}.composition-layout-festival-stage .composition-photo.is-lead{inset:auto;width:min(47vw,650px);height:78svh;translate:-50% -50%;z-index:5;border:2px solid rgba(255,241,251,.8);border-radius:14px;box-shadow:0 32px 110px #05031780,0 0 58px #ff47bf47}.composition-layout-festival-stage .composition-photo.is-lead:after{content:none}.composition-layout-festival-stage .composition-photo:not(.is-lead){top:50%;left:4%;width:min(21vw,300px);height:35svh;translate:0 -50%;z-index:7}.composition-layout-festival-stage .composition-photo--0:not(.is-lead){left:4%;top:32%}.composition-layout-festival-stage .composition-photo--2:not(.is-lead){left:auto;right:4%;top:50%}.composition-layout-festival-stage .composition-photo--3:not(.is-lead){left:4%;top:77%}.festival-lightburst{z-index:1;width:min(64vw,900px);filter:blur(6px);background:radial-gradient(ellipse,rgba(255,230,247,.48),rgba(255,61,186,.2) 39%,transparent 74%)}.scene-id-low-light-dream{min-height:205svh;--env-rose: rgba(255,136,186,.19);--env-peach: rgba(255,176,131,.16);--env-lavender: rgba(174,132,255,.25)}.scene-id-low-light-dream .composition-photo.is-lead{left:50%;top:50%;width:min(40vw,580px);height:76svh;translate:-50% -50%}.scene-id-low-light-dream .composition-photo:not(.is-lead){width:min(15vw,216px);height:28svh}.scene-id-low-light-dream .composition-photo--0{left:6%;top:12%}.scene-id-low-light-dream .composition-photo--1{left:79%;top:12%}.scene-id-low-light-dream .composition-photo--2{left:6%;top:60%}.scene-id-low-light-dream .composition-photo--3{left:79%;top:60%}.scene-id-mirror-album{min-height:285svh;--env-rose: rgba(255,130,196,.28);--env-peach: rgba(255,192,173,.17);--env-lavender: rgba(193,151,255,.22)}.scene-id-bright-portraits{min-height:310svh;--env-rose: rgba(255,144,202,.25);--env-peach: rgba(255,197,146,.2);--env-lavender: rgba(194,156,255,.2)}.scene-id-bright-portraits .composition-photo{backface-visibility:hidden}.scene-id-soft-play{min-height:156svh;--env-rose: rgba(255,152,211,.28);--env-peach: rgba(255,214,154,.2);--env-lavender: rgba(202,173,255,.24)}.scene-id-soft-play .scene-composition-group{z-index:3}.scene-id-soft-play .composition-photo,.scene-id-soft-play .composition-photo.is-lead{left:auto;top:auto;width:min(17vw,240px);height:28svh;translate:0 0;border:7px solid #fff8fb;border-bottom-width:20px;border-radius:3px;background:#fff8fb;box-shadow:0 23px 62px #3314324d}.scene-id-soft-play .composition-photo .composition-photo-image{object-fit:contain!important;background:#f7eaf0}.scene-id-soft-play .composition-photo.is-lead{left:50%;top:50%;width:min(34vw,495px);height:74svh;translate:-50% -50%;rotate:-1.5deg;z-index:8;border-width:9px;border-bottom-width:29px}.scene-id-soft-play .composition-photo--0{left:4%;top:8%;rotate:-7deg}.scene-id-soft-play .composition-photo--1{left:80%;top:6%;rotate:6deg}.scene-id-soft-play .composition-photo--2{left:3%;top:65%;rotate:5deg}.scene-id-soft-play .composition-photo--3{left:80%;top:66%;rotate:-6deg}.scene-id-soft-play .composition-photo--5{left:23%;top:3%;rotate:5deg}.scene-id-soft-play .composition-photo--6{left:63%;top:4%;rotate:-4deg}.scene-id-soft-play .composition-photo--7{left:43%;top:71%;rotate:3deg}.scene-id-green-water{min-height:175svh;--env-rose: rgba(255,147,208,.22);--env-peach: rgba(255,205,174,.16);--env-lavender: rgba(187,158,255,.26);--env-blue: rgba(141,211,244,.18)}.scene-id-green-water .scene-backdrop{opacity:.32;filter:blur(22px) saturate(1.13) brightness(.88)}.scene-id-green-water .scene-base-wash{background:radial-gradient(ellipse at 26% 24%,rgba(250,187,226,.22),transparent 41%),radial-gradient(ellipse at 81% 75%,rgba(171,190,255,.2),transparent 43%),linear-gradient(135deg,#d2b8ff1a,#1e293530)}.scene-id-green-water .composition-photo.is-lead{left:37%;top:50%;width:min(42vw,610px);height:74svh;translate:-50% -50%}.scene-id-green-water .composition-photo:not(.is-lead){left:76%;width:min(17vw,245px);height:25svh;background:#211d2e80}.scene-id-green-water .composition-photo--0:not(.is-lead){top:6%}.scene-id-green-water .composition-photo--1:not(.is-lead){top:37%}.scene-id-green-water .composition-photo--3:not(.is-lead){left:76%;top:68%;width:min(17vw,245px);height:25svh}.scene-id-green-water .composition-photo-image{object-fit:contain!important}.scene-id-closing-gallery{min-height:285svh;--env-rose: rgba(255,154,184,.24);--env-peach: rgba(255,201,143,.26);--env-lavender: rgba(206,150,255,.18)}.scene-id-closing-gallery .composition-photo{width:min(48vw,690px);height:78svh}.scene-id-closing-gallery .composition-photo[data-orientation=landscape]{width:min(74vw,1060px);height:67svh}.scene-id-closing-gallery .scene-base-wash{background:radial-gradient(ellipse at 50% 24%,rgba(255,218,161,.17),transparent 40%),linear-gradient(150deg,#ffaac01f,#32182b2b)}.visual-scene.scene-id-first-light{min-height:170svh}.visual-scene.scene-id-blush-closeups{min-height:300svh}.visual-scene.scene-id-city-shadows{min-height:164svh}.visual-scene.scene-id-campus-burst{min-height:320svh}.visual-scene.scene-id-yantai-horizon{min-height:330svh}.visual-scene.scene-id-close-angle-film{min-height:286svh}.visual-scene.scene-id-black-qipao{min-height:178svh}.visual-scene.scene-id-festival-wow{min-height:230svh}.visual-scene.scene-id-low-light-dream{min-height:205svh}.visual-scene.scene-id-mirror-album{min-height:285svh}.visual-scene.scene-id-bright-portraits{min-height:310svh}.visual-scene.scene-id-soft-play{min-height:156svh}.visual-scene.scene-id-green-water{min-height:175svh}.scene-ambient{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none;--dream-a:#ffc5e2;--dream-b:#c3a8ff}.scene-ambient:before,.scene-ambient:after{position:absolute;content:"";display:block;pointer-events:none;border-radius:50%;transform:rotate(-18deg)}.scene-ambient:before{left:-19vw;top:7vh;width:75vw;height:25vh;border:1px solid color-mix(in srgb,var(--dream-a) 70%,transparent);background:linear-gradient(105deg,transparent 8%,color-mix(in srgb,var(--dream-a) 26%,transparent) 38%,color-mix(in srgb,var(--dream-b) 17%,transparent) 62%,transparent 92%);box-shadow:0 0 32px color-mix(in srgb,var(--dream-a) 28%,transparent),inset 0 8px 24px #ffffff1a;animation:silk-float 18s ease-in-out infinite alternate}.scene-ambient:after{right:-22vw;bottom:4vh;width:63vw;height:19vh;border:1px solid color-mix(in srgb,var(--dream-b) 62%,transparent);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--dream-b) 22%,transparent),color-mix(in srgb,var(--dream-a) 18%,transparent),transparent);box-shadow:0 0 42px color-mix(in srgb,var(--dream-b) 26%,transparent),inset 0 -7px 20px #ffffff1a;transform:rotate(23deg);animation:silk-float 23s ease-in-out -7s infinite alternate-reverse}.scene-ambient--sky{--dream-a:#ffe1a0;--dream-b:#8ce4f0}.scene-ambient--ocean{--dream-a:#7edff5;--dream-b:#b59aff}.scene-ambient--gold{--dream-a:#ffd48b;--dream-b:#f598b2}.scene-ambient--stage{--dream-a:#ff60cc;--dream-b:#54b9ff}.scene-ambient--plum{--dream-a:#d0a1ff;--dream-b:#ff96ca}.scene-ambient--forest{--dream-a:#e8a8dc;--dream-b:#a7caff}.scene-ambient--sunset{--dream-a:#ffb9a6;--dream-b:#e6a5ff}.scene-ambient--amber{--dream-a:#ffd39b;--dream-b:#f3a8bd}.scene-ambient--coral{--dream-a:#ff9bb7;--dream-b:#ffd1a1}.scene-ambient--pink,.scene-ambient--rose{--dream-a:#ff8bc2;--dream-b:#e2b2ff}.scene-ambient--orchid{--dream-a:#f09de1;--dream-b:#b9a3ff}.scene-ambient--lilac{--dream-a:#e6b9ff;--dream-b:#ffbfda}.scene-ambient--indigo{--dream-a:#ffc08f;--dream-b:#a8a0f5}.dream-light-ribbons{position:absolute;inset:-10% -4%;width:108%;height:120%;overflow:visible;opacity:.8;filter:drop-shadow(0 0 20px var(--dream-a))}.dream-ribbon{fill:none;stroke-width:16;stroke-linecap:round;stroke-dasharray:520 1600;animation:ribbon-current 18s linear infinite}.dream-ribbon--two{stroke-width:8;stroke-dasharray:240 1700;animation-duration:24s;animation-delay:-7s;opacity:.78}.dream-ribbon--three{stroke-width:5;stroke-dasharray:360 1800;animation-duration:28s;animation-delay:-12s;opacity:.68}.ambient-ribbon{position:absolute;display:block;width:58vw;height:17vh;border:1px solid color-mix(in srgb,var(--dream-a) 66%,transparent);border-radius:50%;background:linear-gradient(130deg,transparent,color-mix(in srgb,var(--dream-a) 18%,transparent),color-mix(in srgb,var(--dream-b) 14%,transparent),transparent);box-shadow:0 0 24px color-mix(in srgb,var(--dream-a) 22%,transparent);animation:silk-float 21s ease-in-out infinite alternate}.ambient-ribbon--one{left:-18vw;top:37vh;rotate:-24deg}.ambient-ribbon--two{right:-17vw;bottom:22vh;width:46vw;height:13vh;rotate:18deg;animation-delay:-10s}.ambient-petal{position:absolute;width:clamp(14px,1.8vw,28px);height:clamp(27px,3.6vw,54px);border:1px solid color-mix(in srgb,var(--dream-a) 72%,transparent);border-radius:95% 8% 88% 14%;background:linear-gradient(145deg,color-mix(in srgb,var(--dream-a) 43%,transparent),color-mix(in srgb,var(--dream-b) 23%,transparent));box-shadow:0 0 25px color-mix(in srgb,var(--dream-a) 40%,transparent);animation:petal-drift 13s ease-in-out infinite alternate}.ambient-petal--1{left:28%;top:21%;rotate:26deg}.ambient-petal--2{right:21%;top:66%;scale:.72;animation-delay:-5s}.ambient-petal--3{left:9%;top:57%;scale:.58;animation-delay:-8s}.ambient-petal--4{right:8%;top:27%;scale:.9;animation-delay:-2s}.ambient-mote{position:absolute;display:block;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,var(--dream-a) 46%,transparent 78%);opacity:.75;box-shadow:0 0 24px 7px color-mix(in srgb,var(--dream-a) 68%,transparent);animation:ambient-mote-drift 8s ease-in-out infinite alternate}.dream-bokeh{position:absolute;display:block;width:clamp(36px,7vw,104px);aspect-ratio:1;border:1px solid color-mix(in srgb,var(--dream-a) 56%,transparent);border-radius:50%;background:radial-gradient(circle at 36% 34%,color-mix(in srgb,var(--dream-a) 55%,transparent),color-mix(in srgb,var(--dream-b) 25%,transparent) 48%,transparent 76%);box-shadow:0 0 44px color-mix(in srgb,var(--dream-a) 36%,transparent),inset 0 0 22px #ffffff38;animation:bokeh-drift 11s ease-in-out infinite alternate}.dream-bokeh--one{left:12%;top:34%}.dream-bokeh--two{right:18%;top:16%;width:clamp(25px,4vw,60px);animation-delay:-5s;animation-duration:14s}.dream-bokeh--three{right:8%;bottom:19%;width:clamp(46px,8vw,118px);animation-delay:-8s;animation-duration:17s}@keyframes silk-float{0%{translate:-2vw -2vh;opacity:.48}to{translate:3vw 3vh;opacity:.9}}@keyframes ribbon-current{0%{stroke-dashoffset:0;translate:-2vw 0;opacity:.36}50%{opacity:.86}to{stroke-dashoffset:-1900;translate:2vw -1vh;opacity:.42}}@keyframes petal-drift{0%{translate:-12px 18px;rotate:-22deg;opacity:.32}to{translate:15px -24px;rotate:24deg;opacity:.82}}@keyframes bokeh-drift{0%{translate:-20px 14px;scale:.74;opacity:.28}to{translate:24px -19px;scale:1.08;opacity:.68}}@keyframes ambient-mote-drift{0%{translate:-8px 8px;scale:.75;opacity:.25}to{translate:12px -15px;scale:1.15;opacity:.8}}.butterfly-swarm{position:absolute;z-index:8;inset:0;overflow:hidden;pointer-events:none}.gift-opening .butterfly-swarm{z-index:12}.swarm-butterfly{position:absolute;display:block;color:#ffd1ee;filter:drop-shadow(0 0 12px rgba(255,132,213,.9));animation:flock-flight var(--flight-time,9s) ease-in-out var(--flight-delay,0s) infinite alternate}.swarm-wing-shape{width:100%;height:100%;overflow:visible;fill:currentColor;stroke:#ffffffe6;stroke-width:1.05}.swarm-wing--left,.swarm-wing--right{transform-box:view-box}.swarm-wing--left{transform-origin:23px 20px;animation:wing-flap-left var(--flap-left-time,.36s) ease-in-out infinite alternate}.swarm-wing--right{transform-origin:25px 20px;animation:wing-flap-right var(--flap-right-time,.4s) ease-in-out infinite alternate}.swarm-veins{fill:none;stroke:#a54584e0;stroke-width:.68;stroke-linecap:round}.swarm-body{fill:#974877;stroke:#fff3faf2;stroke-width:.7}.swarm-antennae{fill:none;stroke:#ffeff9f2;stroke-width:.8;stroke-linecap:round}.swarm-butterfly:nth-child(3n){color:#fff0c9;filter:drop-shadow(0 0 12px rgba(255,222,159,.82))}.swarm-butterfly:nth-child(3n+1){color:#e3d5ff;filter:drop-shadow(0 0 12px rgba(169,148,255,.78))}.butterfly-swarm--opening .swarm-butterfly{animation-name:flock-flight,swarm-emerge;animation-duration:var(--flight-time,9s),1.55s;animation-delay:var(--flight-delay,0s),0s;animation-iteration-count:infinite,1;animation-direction:alternate,normal}.butterfly-swarm--ocean .swarm-butterfly{color:#d3f4ff}.butterfly-swarm--campus .swarm-butterfly{color:#f4f2d0}.butterfly-swarm--festival .swarm-butterfly{color:#ffd3f2;filter:drop-shadow(0 0 16px rgba(255,69,197,1))}.butterfly-swarm--forest .swarm-butterfly{color:#ffddf0}.butterfly-swarm--ending{opacity:.9}@keyframes flock-flight{0%{transform:translateZ(0) rotate(-12deg) scale(.82);opacity:.08}30%{transform:translate3d(var(--fly-mid-x),var(--fly-mid-y),0) rotate(9deg) scale(1);opacity:.9}68%{transform:translate3d(var(--fly-late-x),var(--fly-late-y),0) rotate(-5deg) scale(.92);opacity:.68}to{transform:translate3d(var(--fly-x),var(--fly-y),0) rotate(14deg) scale(1.12);opacity:.08}}@keyframes swarm-emerge{0%{opacity:0}30%{opacity:.92}72%{opacity:.82}to{opacity:0}}.visual-scene:not(.is-active) .scene-ambient,.visual-scene:not(.is-active) .butterfly-swarm{visibility:hidden}.visual-scene:not(.is-active) .scene-ambient *,.visual-scene:not(.is-active) .swarm-butterfly{animation-play-state:paused}.visual-scene:not(.is-active) .scene-backdrop,.visual-scene:not(.is-active) .scene-light-field{visibility:hidden}.butterfly-swarm.is-static *,.butterfly-swarm.is-static .swarm-wing{animation:none!important}.gift-cover,.gift-opening{background:radial-gradient(ellipse at 50% 30%,#88466f,#432744 54%,#251b31)}.gift-cover-backdrop{filter:blur(13px) saturate(1.38) brightness(.66);opacity:.68}.gift-cover:before{background:linear-gradient(145deg,#64224f5c,#4d225242 44%,#1c1f436b)}.gift-cover:after{position:absolute;z-index:-2;inset:0;content:"";pointer-events:none;opacity:.32;background:linear-gradient(135deg,transparent 46%,rgba(255,221,166,.28) 46.2%,rgba(255,231,194,.28) 46.8%,transparent 47%),linear-gradient(45deg,transparent 48%,rgba(255,181,219,.24) 48.2%,rgba(255,227,244,.28) 48.8%,transparent 49%)}.gift-cover-aurora{opacity:.95;background:radial-gradient(ellipse at 23% 35%,rgba(255,73,164,.55),transparent 38%),radial-gradient(ellipse at 78% 72%,rgba(178,115,255,.42),transparent 36%),radial-gradient(ellipse at 55% 14%,rgba(255,202,145,.42),transparent 32%)}.gift-album{border-color:#fff4fae6;box-shadow:0 46px 140px #260b276b,18px 0 34px #ff8bd247,inset 5px 0 #ffffff3d}.gift-album:before,.gift-album:after{background:linear-gradient(130deg,#ffdcee6b,#b3528d3d 42%,#4a2a5859)}.gift-seal{background:radial-gradient(circle,#fff3d2,#ffb8e275 35%,#a44d858c);box-shadow:0 0 58px #ffbe7180,inset 0 0 24px #fff6}.gift-cover-orbit{border-color:#ffe4f357;box-shadow:0 0 48px #ffa3d71a}.gift-open-hint{text-shadow:0 1px 12px rgba(39,10,36,.8)}.gift-opening{background:linear-gradient(140deg,#ff90c4,#b39aff 60%,#ffe1b3)}.gift-opening-wash{background:radial-gradient(ellipse at center,#fff9e64d,#ff69bb47 36%,#36174242)}.gift-opening:before{position:absolute;z-index:3;inset:0;content:"";pointer-events:none;opacity:.68;background:radial-gradient(ellipse 3px 6px at 13% 17%,rgba(255,241,196,.95) 96%,transparent 100%),radial-gradient(ellipse 3px 5px at 42% 8%,rgba(255,198,227,.9) 96%,transparent 100%),radial-gradient(ellipse 3px 6px at 72% 26%,rgba(255,238,193,.9) 96%,transparent 100%),radial-gradient(ellipse 3px 5px at 87% 68%,rgba(255,197,230,.9) 96%,transparent 100%),radial-gradient(ellipse 2px 4px at 24% 77%,rgba(255,229,171,.9) 96%,transparent 100%);background-size:220px 240px,270px 280px,310px 300px,240px 230px,260px 270px;animation:confetti-drift 7s linear infinite}.letter-reveal{background:radial-gradient(ellipse at 50% 45%,#a95388,#583055 46%,#241a36)}.letter-reveal-aurora{background:radial-gradient(ellipse at 50% 40%,rgba(255,191,224,.52),transparent 35%),radial-gradient(ellipse at 22% 82%,rgba(189,155,255,.44),transparent 43%),radial-gradient(ellipse at 85% 16%,rgba(255,208,153,.36),transparent 36%)}.letter-section{background:radial-gradient(ellipse at 50% 22%,#60405b,#352339 66%,#251a2d)}.birthday-ending{background:radial-gradient(ellipse at 50% 37%,#86506f,#452b49 55%,#231c30)}.ending-backdrop{filter:blur(23px) saturate(1.24) brightness(.7);opacity:.48}.ending-base-glow{background:radial-gradient(ellipse at 50% 46%,rgba(255,192,217,.32),transparent 43%),radial-gradient(ellipse at 83% 18%,rgba(255,210,142,.28),transparent 36%),linear-gradient(160deg,#451f4014,#2014284d)}.birthday-ending:before{background:radial-gradient(ellipse at 9% 14%,rgba(255,224,181,.24),transparent 25%),radial-gradient(ellipse at 91% 82%,rgba(255,157,207,.24),transparent 27%),radial-gradient(ellipse at 50% 44%,rgba(255,230,237,.08),transparent 52%)}.birthday-ending:after{position:absolute;z-index:1;inset:0;content:"";pointer-events:none;opacity:.4;background:radial-gradient(circle at 9% 24%,#ffe9b9 0 2px,transparent 3px),radial-gradient(circle at 88% 19%,#ffd3e8 0 2px,transparent 3px),radial-gradient(circle at 14% 78%,#f8d9ff 0 2px,transparent 3px),radial-gradient(circle at 92% 72%,#ffe3b1 0 2px,transparent 3px)}.ending-photo{border:2px solid rgba(255,238,222,.9);background:#ffefe71a;box-shadow:0 34px 100px #1a0a2352,0 0 80px #ffb7d43d}.ending-title{text-shadow:0 4px 38px rgba(255,184,209,.56)}.music-controls{border-color:#fff3fa5c;background:#301c318f}@keyframes confetti-drift{0%{background-position:0 -20vh,40px -30vh,90px -10vh,150px -24vh,60px -12vh}to{background-position:70px 110vh,-40px 120vh,25px 105vh,80px 116vh,-45px 108vh}}@media(max-width:620px){.scene-composition-stage{min-height:100svh;height:100svh}.scene-backdrop{filter:blur(13px) saturate(1.18) brightness(.94);opacity:.28}.scene-id-first-light .scene-backdrop{filter:blur(14px) saturate(1.2) brightness(.98);opacity:.28}.scene-id-city-shadows .scene-backdrop,.scene-id-black-qipao .scene-backdrop,.scene-id-campus-burst .scene-backdrop,.scene-id-festival-wow .scene-backdrop{filter:blur(13px) saturate(1.18) brightness(.92);opacity:.27}.scene-id-green-water .scene-backdrop{filter:blur(14px) saturate(1.08) brightness(.94);opacity:.26}.visual-scene.scene-photo-sequence{min-height:282svh}.visual-scene.scene-filmstrip{min-height:270svh}.visual-scene.scene-id-city-shadows{min-height:144svh}.visual-scene.scene-id-first-light{min-height:158svh}.visual-scene.scene-id-blush-closeups{min-height:285svh}.visual-scene.scene-id-campus-burst,.visual-scene.scene-id-yantai-horizon{min-height:310svh}.scene-id-first-light .composition-photo.is-lead{width:min(84vw,48svh);height:min(112vw,84svh)}.scene-id-city-shadows .composition-photo.is-lead{left:50%;top:4svh;width:94vw;height:55svh;translate:-50% 0}.scene-id-city-shadows .composition-photo:not(.is-lead){top:69svh;width:24vw;height:18svh}.scene-id-city-shadows .composition-photo--0:not(.is-lead){left:2%}.scene-id-city-shadows .composition-photo--1:not(.is-lead){left:38%;top:69svh}.scene-id-city-shadows .composition-photo--2:not(.is-lead){left:74%;top:69svh}.visual-scene.scene-id-black-qipao{min-height:160svh}.composition-layout-qipao-editorial .composition-photo.is-lead{left:38%;top:50%;width:58vw;height:76svh}.composition-layout-qipao-editorial .composition-photo--1{left:70%;top:12%;width:25vw;height:31svh}.composition-layout-qipao-editorial .composition-photo--2{left:70%;top:57%;width:25vw;height:31svh}.visual-scene.scene-id-festival-wow{min-height:210svh}.composition-layout-festival-stage .composition-photo.is-lead{width:62vw;height:68svh}.composition-layout-festival-stage .composition-photo:not(.is-lead){width:24vw;height:28svh}.composition-layout-festival-stage .composition-photo--0:not(.is-lead){left:1%;top:22%}.composition-layout-festival-stage .composition-photo--2:not(.is-lead){right:1%;top:50%}.composition-layout-festival-stage .composition-photo--3:not(.is-lead){left:1%;top:78%}.visual-scene.scene-id-low-light-dream{min-height:185svh}.scene-id-low-light-dream .composition-photo.is-lead{left:50%;top:50%;width:78vw;height:71svh}.scene-id-low-light-dream .composition-photo:not(.is-lead){width:20vw;height:20svh}.scene-id-low-light-dream .composition-photo--0{left:1%;top:8%}.scene-id-low-light-dream .composition-photo--1{left:79%;top:8%}.scene-id-low-light-dream .composition-photo--2{left:1%;top:72%}.scene-id-low-light-dream .composition-photo--3{left:79%;top:72%}.scene-id-soft-play{min-height:170svh}.scene-id-soft-play .composition-photo,.scene-id-soft-play .composition-photo.is-lead{width:20vw;height:15svh;border-width:4px;border-bottom-width:12px}.scene-id-soft-play .composition-photo.is-lead{left:50%;top:50%;width:64vw;height:59svh;translate:-50% -50%;rotate:-1.5deg;border-width:7px;border-bottom-width:21px}.scene-id-soft-play .composition-photo--0{left:2%;top:3%}.scene-id-soft-play .composition-photo--1{left:78%;top:3%}.scene-id-soft-play .composition-photo--2{left:2%;top:81%}.scene-id-soft-play .composition-photo--3{left:78%;top:81%}.scene-id-soft-play .composition-photo--5{left:2%;top:43%}.scene-id-soft-play .composition-photo--6{left:78%;top:43%}.scene-id-soft-play .composition-photo--7{left:40%;top:3%}.visual-scene.scene-id-green-water{min-height:166svh}.scene-id-green-water .composition-photo.is-lead{left:50%;top:4svh;width:92vw;height:57svh;translate:-50% 0}.scene-id-green-water .composition-photo:not(.is-lead){top:69svh;width:24vw;height:19svh}.scene-id-green-water .composition-photo--0:not(.is-lead){left:2%;top:69svh}.scene-id-green-water .composition-photo--1:not(.is-lead){left:38%;top:69svh}.scene-id-green-water .composition-photo--3:not(.is-lead){left:74%;top:69svh;width:24vw;height:19svh}.scene-ambient:before{width:116vw;height:21vh;left:-34vw}.scene-ambient:after{width:100vw;height:16vh;right:-38vw}.dream-ribbon{stroke-width:11}.dream-ribbon--two{stroke-width:6}.dream-ribbon--three{stroke-width:3.5}.butterfly-swarm .swarm-butterfly:nth-child(n+6){display:none}.swarm-butterfly{filter:drop-shadow(0 0 8px rgba(255,132,213,.85))}.ending-photo{width:91vw;height:min(59svh,530px)}}@media(prefers-reduced-motion:reduce){.butterfly-wings--left,.butterfly-wings--right,.dream-ribbon,.ambient-ribbon,.ambient-petal,.dream-bokeh,.ambient-mote,.swarm-butterfly{animation:none!important}.scene-ambient:before,.scene-ambient:after,.gift-cover-aurora,.gift-cover-bloom,.gift-cover:after,.gift-opening:before,.letter-reveal-core:before,.letter-reveal-core:after{animation:none!important}.scene-venetian-environment span{transform:none!important}}.visual-scene .scene-light-field{background-color:#ff6fbe0e;box-shadow:inset 0 0 16vw #ff7fc01f,inset 0 0 25vw #5fbcff12}.visual-scene .scene-ambient:before{border-color:color-mix(in srgb,var(--dream-a) 82%,white 18%);background:linear-gradient(105deg,transparent 7%,color-mix(in srgb,var(--dream-a) 34%,transparent) 37%,color-mix(in srgb,var(--dream-b) 26%,transparent) 56%,color-mix(in srgb,#86dcff 16%,transparent) 72%,transparent 93%);box-shadow:0 0 42px color-mix(in srgb,var(--dream-a) 38%,transparent),inset 0 8px 24px #ffffff24}.visual-scene .scene-ambient:after{border-color:color-mix(in srgb,var(--dream-b) 76%,white 24%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--dream-b) 29%,transparent),color-mix(in srgb,var(--dream-a) 26%,transparent),color-mix(in srgb,#78d8ff 16%,transparent),transparent);box-shadow:0 0 46px color-mix(in srgb,var(--dream-b) 35%,transparent),inset 0 -7px 20px #ffffff24}.visual-scene .dream-light-ribbons{opacity:.9}.visual-scene .ambient-ribbon{box-shadow:0 0 30px color-mix(in srgb,var(--dream-a) 30%,transparent)}.visual-scene .ambient-petal{box-shadow:0 0 30px color-mix(in srgb,var(--dream-a) 52%,transparent)}.visual-scene .dream-bokeh{border-color:color-mix(in srgb,var(--dream-a) 70%,white 30%);box-shadow:0 0 50px color-mix(in srgb,var(--dream-a) 44%,transparent),inset 0 0 23px #ffffff45}.visual-scene .ambient-mote{opacity:.82}.ending-base-glow{background:radial-gradient(ellipse at 50% 42%,rgba(255,170,203,.4),transparent 42%),radial-gradient(ellipse at 16% 24%,rgba(255,111,179,.2),transparent 34%),radial-gradient(ellipse at 84% 20%,rgba(255,216,156,.32),transparent 36%),radial-gradient(ellipse at 79% 78%,rgba(179,151,255,.2),transparent 39%),linear-gradient(160deg,#56234714,#2014283d)}.butterfly-flight:not(.butterfly-flight--free){width:126px;height:106px;filter:drop-shadow(0 0 19px rgba(255,116,192,.78))}.butterfly-flight:not(.butterfly-flight--free).butterfly-flight--ending{width:132px;height:111px}.butterfly-flight:not(.butterfly-flight--free) .butterfly-wings{fill:#fff0f8;stroke:#fffffffa;stroke-width:1}.butterfly-flight:not(.butterfly-flight--free) .butterfly-wing-detail{stroke:#c33f85;opacity:.9}.butterfly-flight:not(.butterfly-flight--free) .butterfly-body{fill:#b34b80;stroke:#fff0f8}.swarm-butterfly{filter:drop-shadow(0 0 12px rgba(255,151,218,.92))}.swarm-butterfly:nth-child(3n){filter:drop-shadow(0 0 12px rgba(255,223,165,.84))}.swarm-butterfly:nth-child(3n+1){filter:drop-shadow(0 0 12px rgba(185,165,255,.82))}.butterfly-swarm--ending{opacity:.96}@media(max-width:620px){.butterfly-flight:not(.butterfly-flight--free){width:90px;height:76px}.butterfly-flight:not(.butterfly-flight--free).butterfly-flight--ending{width:96px;height:81px}.visual-scene .scene-light-field{opacity:.78}.swarm-butterfly{filter:drop-shadow(0 0 9px rgba(255,151,218,.9))}.swarm-butterfly:nth-child(3n){filter:drop-shadow(0 0 9px rgba(255,223,165,.82))}.swarm-butterfly:nth-child(3n+1){filter:drop-shadow(0 0 9px rgba(185,165,255,.8))}}@media(max-width:820px){.butterfly-flight--free,.butterfly-flight--midpoint,.butterfly-flight--ending{z-index:4}}@media(max-width:620px){.butterfly-flight--midpoint{width:44px;height:37px}}.letter-section.has-letter-photos{display:block;min-height:0;padding:clamp(64px,8svh,104px) 18px;overflow:visible}.letter-section.has-letter-photos:before{z-index:-1}.letter-paper.has-letter-photos{display:grid;width:min(100%,840px);min-height:0;margin:0 auto;padding:0;gap:clamp(26px,4svh,40px);border:0;border-radius:0;background:transparent;box-shadow:none}.letter-paper.has-letter-photos:before{display:none}.letter-photo-trigger{display:block;width:100%;overflow:visible;box-shadow:none}.letter-photo-trigger img{display:block;width:100%;max-width:100%;max-height:none;height:auto;object-fit:contain;box-shadow:0 22px 58px #0f081b45,0 0 42px #ffe2f21a}@media(max-width:620px){.letter-section.has-letter-photos{padding:48px 14px 64px}.letter-paper.has-letter-photos{width:100%;gap:26px}}:root{--type-editorial: "Baskerville", "Songti SC", "Noto Serif CJK SC", "STSong", "SimSun", serif;--type-intimate: "New York", "Songti SC", "Noto Serif CJK SC", "STSong", "SimSun", serif;--type-handwritten: "Kaiti SC", "STKaiti", "KaiTi", "DFKai-SB", "Songti SC", serif;--type-clean: "Avenir Next", "PingFang SC", "Microsoft YaHei", "Arial", sans-serif}.visual-scene[data-scene]{position:relative;display:block;width:100%;height:var(--scene-height);min-height:var(--scene-height);overflow:clip;isolation:isolate;contain:none;background:radial-gradient(ellipse at 48% 38%,#593c58,#33283f 48%,#211d31);--scene-ink: 24, 16, 36}.visual-scene[data-scene]:after{z-index:3;background:linear-gradient(180deg,rgba(13,8,26,.18),transparent 18%,transparent 80%,rgba(13,8,26,.34))}.visual-scene[data-scene] .scene-base-wash{position:absolute;z-index:0;inset:0;pointer-events:none;background:radial-gradient(ellipse at 16% 20%,color-mix(in srgb,var(--dream-a, #ffabd3) 24%,transparent),transparent 42%),radial-gradient(ellipse at 82% 74%,color-mix(in srgb,var(--dream-b, #c6a7ff) 25%,transparent),transparent 43%),linear-gradient(142deg,#ffdeef0a,#1810251f)}.visual-scene[data-scene] .scene-light-field{position:absolute;z-index:1;inset:-9%;pointer-events:none;opacity:.56;background:linear-gradient(118deg,transparent 14%,rgba(255,238,203,.11) 31%,transparent 44%),radial-gradient(ellipse at 13% 35%,rgba(255,173,212,.28),transparent 35%),radial-gradient(ellipse at 83% 29%,rgba(191,168,255,.26),transparent 35%),radial-gradient(ellipse at 52% 88%,rgba(255,195,153,.18),transparent 41%);mix-blend-mode:screen;transform:translateZ(0)}.visual-scene[data-scene] .scene-grain{z-index:2;opacity:.045;background-image:radial-gradient(rgba(255,255,255,.15) .45px,transparent .65px);background-size:4px 4px;mix-blend-mode:soft-light}.visual-scene[data-scene] .scene-vignette{position:absolute;z-index:3;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 46%,transparent 48%,rgba(17,10,27,.25) 100%)}.visual-scene[data-scene] .scene-backdrop{display:none!important}.visual-scene[data-scene=first-light] .composition-photo:after{content:none!important}.visual-scene[data-scene] .scene-composition-stage{position:sticky;z-index:5;top:0;display:block;width:100%;height:100svh;min-height:100svh;overflow:clip;perspective:none}.visual-scene[data-scene] .scene-composition-group{position:absolute;inset:0;z-index:9;width:auto;height:auto;transform:none;transform-origin:center}.visual-scene[data-scene] .composition-photo{box-sizing:border-box;position:absolute;display:flex;flex-direction:column;align-items:stretch;justify-content:center;min-width:0;min-height:0;margin:0;overflow:hidden;border:1px solid rgba(255,246,252,.74);border-radius:5px;background:#1f17294d;box-shadow:0 20px 58px #09051452,0 0 0 1px #ffffff14;transform-origin:center;transform-style:flat;opacity:0}.visual-scene[data-scene] .composition-photo.is-lead{z-index:4}.visual-scene[data-scene] .composition-photo:not(.is-decoded){opacity:0!important}.visual-scene[data-scene] .composition-photo-image{display:block;flex:1 1 auto;width:100%;height:100%;min-width:0;min-height:0;background:transparent;object-fit:contain!important;object-position:center!important;transform:none!important}.visual-scene[data-scene] .composition-photo-copy{box-sizing:border-box;position:relative;z-index:2;display:grid;flex:0 0 auto;gap:.32rem;width:100%;max-height:38%;overflow:auto;padding:.65rem .82rem .72rem;color:#342a3a;border:0;background:#fff9fcf0;box-shadow:none;text-align:left;text-shadow:none;scrollbar-width:thin;opacity:1}.visual-scene[data-scene] .composition-photo-copy p,.visual-scene[data-scene] .composition-photo-copy .scene-personal-note{margin:0;color:inherit;font:400 clamp(16px,1.18vw,18px)/1.55 var(--type-intimate);letter-spacing:.015em;overflow-wrap:anywhere;text-wrap:pretty}.visual-scene[data-scene] .composition-photo-copy .scene-personal-note{font:500 clamp(14px,.98vw,15px)/1.45 var(--type-clean);letter-spacing:.055em;opacity:.72}.visual-scene[data-scene] .composition-photo-copy .scene-text-moment{white-space:pre-line}.visual-scene[data-scene] .composition-album-edge{display:none}.visual-scene[data-scene] .composition-photo-copy--editorial{padding-left:.9rem;border-left:3px solid rgba(139,90,131,.64);background:linear-gradient(105deg,#fffbfdf7,#f4e7f3e6)}.visual-scene[data-scene] .composition-photo-copy--editorial p{font-family:var(--type-editorial)}.visual-scene[data-scene] .composition-photo-copy--handwritten{border-radius:1px 1px 4px 4px;background:linear-gradient(130deg,#fffdecf7,#f9efd2f0)}.visual-scene[data-scene] .composition-photo-copy--handwritten p,.visual-scene[data-scene] .composition-photo-copy--handwritten .scene-personal-note{color:#51443a;font-family:var(--type-handwritten);letter-spacing:.015em}.visual-scene[data-scene] .composition-photo-copy--cinematic{color:#fff8fc;border-top:1px solid rgba(255,255,255,.34);background:linear-gradient(112deg,#2a1b31f0,#4f2b4be6)}.visual-scene[data-scene] .composition-photo-copy--cinematic .scene-personal-note{color:#ffe2f2db}.visual-scene[data-scene] .composition-photo-copy--intimate{background:linear-gradient(90deg,#fffafcf2,#fffafcdb)}.visual-scene[data-scene] .scene-personal-layer{position:absolute;z-index:12;inset:0;pointer-events:none}.visual-scene[data-scene] .scene-personal-meta{box-sizing:border-box;position:absolute;max-width:min(42vw,620px);margin:0;padding:0;color:#fffafdf7;background:none;text-shadow:0 2px 20px rgba(24,11,30,.4);opacity:0}.visual-scene[data-scene] .scene-personal-meta h3{margin:0 0 .25em;color:inherit;font:500 clamp(1.8rem,3.5vw,3.8rem)/1.08 var(--type-editorial);letter-spacing:.045em}.visual-scene[data-scene] .scene-personal-meta p{margin:0;color:inherit;font:400 clamp(16px,1.2vw,19px)/1.65 var(--type-clean);letter-spacing:.025em;text-wrap:pretty}.visual-scene[data-scene] .scene-personal-meta[data-type-treatment=editorial] h3{font-family:var(--type-editorial);letter-spacing:.085em}.visual-scene[data-scene] .scene-personal-meta[data-type-treatment=handwritten] h3,.visual-scene[data-scene] .scene-personal-meta[data-type-treatment=handwritten] p{font-family:var(--type-handwritten)}.visual-scene[data-scene] .scene-personal-meta[data-type-treatment=cinematic] h3{font-size:clamp(2rem,4.4vw,4.6rem);letter-spacing:.1em}.visual-scene[data-motion-family=sequence] .scene-composition-group{inset:0;display:block}.visual-scene[data-motion-family=sequence] .composition-photo{left:50%;top:50%;width:min(54vw,760px);height:min(76svh,780px);translate:-50% -50%;border-radius:5px}.visual-scene[data-motion-family=sequence] .composition-photo[data-orientation=landscape]{width:min(76vw,1120px);height:min(70svh,700px)}.visual-scene[data-scene=first-light] .composition-photo{inset:50% auto auto 50%;width:auto;height:min(77svh,780px);max-width:64vw;translate:-50% -50%;border:0;border-radius:3px;background:transparent;box-shadow:0 28px 80px #0f081c61,0 0 42px #ffdff11f}.visual-scene[data-scene=first-light] .composition-photo-image{object-position:center 42%!important}.visual-scene[data-scene=first-light] .scene-personal-meta{left:8vw;bottom:8svh;max-width:min(32vw,460px)}.visual-scene[data-scene=blush-closeups] .composition-photo{width:auto;height:min(78svh,790px);max-width:62vw;border-radius:3px;border-color:#fff7fc85;box-shadow:0 24px 68px #13081b57}.visual-scene[data-scene=blush-closeups] .composition-photo-copy{margin-inline:auto;width:min(88%,520px)}.visual-scene[data-scene=close-angle-film] .composition-photo{width:auto;height:min(77svh,780px);max-width:66vw;border-radius:2px;border-color:#fff8fc61;box-shadow:0 22px 68px #13081b4d}.visual-scene[data-scene=close-angle-film] .composition-photo[data-orientation=landscape]{width:min(82vw,1200px);height:min(70svh,700px);max-width:none}.visual-scene[data-scene=close-angle-film] .composition-photo.is-lead{box-shadow:0 22px 68px #13081b4d}.visual-scene[data-scene=bright-portraits] .composition-photo{width:auto;height:min(78svh,780px);max-width:72vw;border:0;border-radius:0;background:transparent;box-shadow:none}.visual-scene[data-scene=bright-portraits] .composition-photo-image{object-fit:contain!important}.visual-scene[data-scene=closing-gallery] .composition-photo{top:5svh;width:min(50vw,720px);height:76svh;translate:-50% 0}.visual-scene[data-scene=closing-gallery] .composition-photo[data-orientation=landscape]{width:min(76vw,1100px);height:67svh}.visual-scene[data-scene=closing-gallery] .scene-personal-meta{right:8vw;bottom:6svh;max-width:min(38vw,540px);text-align:right}.visual-scene[data-scene=city-shadows] .scene-composition-group{inset:15svh 7vw 9svh;display:grid;grid-template-columns:1fr .88fr 1.18fr;grid-template-rows:1fr 1fr;gap:clamp(12px,1.4vw,22px)}.visual-scene[data-scene=city-shadows] .composition-photo{position:relative;inset:auto;width:100%;height:100%;translate:0 0}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="3"]{grid-column:2;grid-row:2}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="4"]{grid-column:3;grid-row:1 / 3}.visual-scene[data-scene=city-shadows] .composition-photo-copy{max-height:35%;padding:.76rem .9rem}.visual-scene[data-scene=city-shadows] .composition-photo-copy p{font-size:clamp(17px,1.3vw,20px);line-height:1.55}.visual-scene[data-scene=city-shadows] .scene-personal-meta{top:3.2svh;left:7vw}.visual-scene[data-scene=campus-burst] .scene-composition-group{inset:13svh 6vw 8svh;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:clamp(10px,1.25vw,18px)}.visual-scene[data-scene=campus-burst] .composition-photo{position:relative;inset:auto;width:100%;height:100%;translate:0 0}.visual-scene[data-scene=campus-burst] .composition-photo-copy{max-height:42%;padding:.55rem .65rem .6rem}.visual-scene[data-scene=campus-burst] .composition-photo-copy p{font-size:clamp(16px,1.12vw,18px);line-height:1.45}.visual-scene[data-scene=campus-burst] .scene-personal-meta{top:2.8svh;right:6vw;max-width:44vw;text-align:right}.visual-scene[data-scene=black-qipao] .scene-composition-group{inset:11svh 8vw 7svh;display:grid;grid-template-columns:1.16fr .84fr;grid-template-rows:1fr 1fr;gap:clamp(14px,1.7vw,26px)}.visual-scene[data-scene=black-qipao] .composition-photo{position:relative;inset:auto;width:100%;height:100%;translate:0 0}.visual-scene[data-scene=black-qipao] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=black-qipao] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=black-qipao] .composition-photo[data-photo-position="3"]{grid-column:2;grid-row:2}.visual-scene[data-scene=black-qipao] .scene-personal-layer{display:grid;place-items:center;padding:10vw}.visual-scene[data-scene=black-qipao] .scene-personal-meta{position:relative;inset:auto;width:min(76vw,1040px);max-width:none;color:#fff4e8;text-align:center;text-shadow:0 3px 28px rgba(8,4,16,.66)}.visual-scene[data-scene=black-qipao] .scene-personal-meta h3{display:none}.visual-scene[data-scene=black-qipao] .scene-personal-meta p{font:500 clamp(2rem,4.1vw,4rem)/1.65 var(--type-editorial);letter-spacing:.06em}.visual-scene[data-scene=black-qipao] .scene-composition-group{background:radial-gradient(ellipse at 52% 46%,rgba(236,190,153,.09),transparent 60%)}.visual-scene[data-scene=festival-wow] .scene-composition-group{inset:17svh 7vw 9svh;display:grid;grid-template-columns:.92fr 1.12fr .92fr;grid-template-rows:1fr 1fr;gap:clamp(12px,1.5vw,22px)}.visual-scene[data-scene=festival-wow] .composition-photo{position:relative;inset:auto;width:100%;height:100%;translate:0 0;border-color:#ffecfbd6}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="3"]{grid-column:2;grid-row:2}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="4"]{grid-column:3;grid-row:1 / 3}.visual-scene[data-scene=festival-wow] .composition-photo-copy{color:#fff8fd;background:#22122be6}.visual-scene[data-scene=festival-wow] .scene-personal-meta{top:4svh;left:50%;width:min(62vw,850px);max-width:82vw;translate:-50% 0;text-align:center}.visual-scene[data-scene=festival-wow] .scene-personal-meta h3{margin-bottom:.42em;font-size:clamp(2.3rem,4.2vw,4.5rem);line-height:1.05;letter-spacing:.075em}.visual-scene[data-scene=festival-wow] .scene-personal-meta p{font-size:clamp(18px,1.38vw,21px);line-height:1.55}.visual-scene[data-scene=festival-wow] .festival-lightburst{position:absolute;z-index:7;top:47%;left:50%;width:min(48vw,680px);aspect-ratio:1;border-radius:50%;translate:0 0;background:radial-gradient(circle,rgba(255,231,248,.48),rgba(255,76,193,.2) 38%,transparent 72%);filter:none;mix-blend-mode:screen;pointer-events:none}.visual-scene[data-scene=low-light-dream] .scene-composition-group{inset:12svh 8vw 9svh;display:grid;grid-template-columns:.9fr 1.08fr .9fr;grid-template-rows:1fr 1fr;gap:clamp(12px,1.5vw,22px)}.visual-scene[data-scene=low-light-dream] .composition-photo{position:relative;inset:auto;width:100%;height:100%;translate:0 0;background:#1c122a59}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="1"]{grid-column:2;grid-row:1 / 3}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="2"]{grid-column:1;grid-row:1}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="3"]{grid-column:3;grid-row:1}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="4"]{grid-column:1;grid-row:2}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="5"]{grid-column:3;grid-row:2}.visual-scene[data-scene=low-light-dream] .scene-personal-meta{top:3.8svh;left:8vw;width:fit-content;max-width:min(42vw,500px);padding:.82rem 1.15rem .92rem;color:#fff8fd;border-left:2px solid rgba(254,222,244,.82);background:linear-gradient(100deg,#160d24c7,#160d244d);text-shadow:0 2px 18px rgba(5,3,14,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.visual-scene[data-scene=low-light-dream] .scene-personal-meta h3{font-size:clamp(2.25rem,4vw,4.2rem);line-height:1.05;letter-spacing:.08em}.visual-scene[data-scene=mirror-album] .scene-composition-group{inset:8svh 7vw;display:grid;grid-template-columns:1fr .86fr .95fr 1.12fr 1fr;grid-template-rows:1fr .82fr;gap:clamp(10px,1.2vw,18px)}.visual-scene[data-scene=mirror-album] .composition-photo{position:relative;inset:auto;width:100%;height:100%;translate:0 0;transform-origin:center}.visual-scene[data-scene=mirror-album] .composition-photo:nth-child(3n+1){box-shadow:0 26px 68px #12091d52}.visual-scene[data-scene=mirror-album] .composition-photo:nth-child(3n+2){border-color:#fff3fb73}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="2"]{grid-column:2 / 4;grid-row:1}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="3"]{grid-column:4 / 6;grid-row:1}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="4"]{grid-column:2;grid-row:2}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="5"]{grid-column:3 / 5;grid-row:2}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="6"]{grid-column:5;grid-row:2}.visual-scene[data-scene=bright-portraits] .scene-personal-meta{top:5svh;left:8vw}.visual-scene[data-scene=soft-play] .scene-composition-group{inset:8svh 6vw 15svh;display:grid;grid-template-columns:1.05fr .9fr 1.14fr .88fr;grid-template-rows:1fr 1fr;gap:clamp(10px,1.25vw,18px)}.visual-scene[data-scene=soft-play] .composition-photo{position:relative;inset:auto;width:100%;height:100%;translate:0 0;padding:7px 7px 13px;border:0;border-radius:2px;background:#fff9fc;box-shadow:0 16px 42px #210e2547}.visual-scene[data-scene=soft-play] .composition-photo-image{background:#f7edf2}.visual-scene[data-scene=soft-play] .composition-photo-copy{max-height:43%;padding:.5rem .55rem}.visual-scene[data-scene=soft-play] .scene-personal-meta{right:7vw;bottom:4svh;max-width:40vw;text-align:right}.visual-scene[data-scene=green-water] .scene-composition-group{inset:15svh 8vw 9svh;display:grid;grid-template-columns:1.18fr .9fr .92fr;grid-template-rows:1fr 1fr;gap:clamp(12px,1.5vw,22px)}.visual-scene[data-scene=green-water] .composition-photo{position:relative;inset:auto;width:100%;height:100%;translate:0 0}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="1"]{grid-column:1 / 3;grid-row:1}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="2"]{grid-column:3;grid-row:1}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"]{grid-column:2 / 4;grid-row:2}.visual-scene[data-scene=green-water] .composition-photo-copy{max-height:43%}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"].has-personal-copy{z-index:6;box-shadow:0 24px 70px #0f102261,0 0 0 1px #f4e0ff61}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"] .composition-photo-copy{color:#fffafc;border-top:1px solid rgba(255,244,253,.36);background:linear-gradient(112deg,#302640eb,#3e3452e0)}.visual-scene[data-scene=green-water] .scene-personal-meta{top:4svh;right:8vw;text-align:right}.visual-scene[data-scene].palette-rose{--dream-a: #ff8bc2;--dream-b: #e2b2ff}.visual-scene[data-scene].palette-sky{--dream-a: #ffe1a0;--dream-b: #8ce4f0}.visual-scene[data-scene].palette-ocean{--dream-a: #7edff5;--dream-b: #b59aff}.visual-scene[data-scene].palette-gold,.visual-scene[data-scene].palette-amber{--dream-a: #ffd48b;--dream-b: #f598b2}.visual-scene[data-scene].palette-stage{--dream-a: #ff60cc;--dream-b: #54b9ff}.visual-scene[data-scene].palette-plum{--dream-a: #d0a1ff;--dream-b: #ff96ca}.visual-scene[data-scene].palette-forest{--dream-a: #e8a8dc;--dream-b: #a7caff}.visual-scene[data-scene].palette-sunset{--dream-a: #ffb9a6;--dream-b: #e6a5ff}.visual-scene[data-scene].palette-coral{--dream-a: #ff9bb7;--dream-b: #ffd1a1}.visual-scene[data-scene].palette-orchid{--dream-a: #f09de1;--dream-b: #b9a3ff}.visual-scene[data-scene].palette-lilac{--dream-a: #e6b9ff;--dream-b: #ffbfda}.visual-scene[data-scene].palette-indigo{--dream-a: #ffc08f;--dream-b: #a8a0f5}.visual-scene[data-scene] .scene-ambient{z-index:1;overflow:hidden}.visual-scene[data-scene] .scene-ambient:before,.visual-scene[data-scene] .scene-ambient:after{box-shadow:0 0 26px color-mix(in srgb,var(--dream-a) 24%,transparent),inset 0 1px 18px #ffffff14;animation-duration:26s}.visual-scene[data-scene] .dream-light-ribbons{opacity:.78}.visual-scene[data-scene] .dream-ribbon{filter:none;stroke-width:1.8}.visual-scene[data-scene] .dream-ribbon--one{animation:none}.visual-scene[data-scene] .dream-ribbon--two{animation:none;opacity:.58}.visual-scene[data-scene] .dream-ribbon--three{animation:none;opacity:.46}.visual-scene[data-scene] .dream-bokeh{filter:none}.visual-scene[data-scene] .ambient-mote,.visual-scene[data-scene] .ambient-petal{box-shadow:0 0 12px color-mix(in srgb,var(--dream-a) 35%,transparent)}.visual-scene[data-scene]:not(.is-active) .scene-ambient,.visual-scene[data-scene]:not(.is-active) .butterfly-swarm,.visual-scene[data-scene]:not(.is-active) .scene-light-field{visibility:hidden}.visual-scene[data-scene]:not(.is-active) .scene-ambient *,.visual-scene[data-scene]:not(.is-active) .butterfly-swarm *{animation-play-state:paused!important}.visual-scene[data-scene] .butterfly-swarm{z-index:8}.visual-scene[data-scene] .swarm-butterfly,.visual-scene[data-scene] .festival-lightburst{filter:none}@media(max-width:700px){.visual-scene[data-scene] .scene-personal-meta{max-width:88vw}.visual-scene[data-scene] .scene-personal-meta h3{font-size:clamp(1.55rem,7vw,2.25rem)}.visual-scene[data-scene] .scene-personal-meta p{font-size:16px;line-height:1.52}.visual-scene[data-scene] .composition-photo-copy{gap:.24rem;max-height:42%;padding:.5rem .56rem .54rem}.visual-scene[data-scene] .composition-photo-copy p{font-size:16px;line-height:1.42}.visual-scene[data-scene] .composition-photo-copy .scene-personal-note{font-size:14px}.visual-scene[data-motion-family=sequence] .composition-photo{width:auto;height:72svh;max-width:88vw}.visual-scene[data-motion-family=sequence] .composition-photo[data-orientation=landscape]{width:92vw;height:auto;max-width:none;max-height:58svh}.visual-scene[data-scene=first-light] .composition-photo{height:76svh;max-width:88vw}.visual-scene[data-scene=first-light] .composition-photo-image{object-position:center 40%!important}.visual-scene[data-scene=first-light] .scene-personal-meta{left:6vw;bottom:7svh;max-width:82vw}.visual-scene[data-scene=blush-closeups] .composition-photo,.visual-scene[data-scene=close-angle-film] .composition-photo{height:72svh;max-width:88vw}.visual-scene[data-scene=close-angle-film] .composition-photo[data-orientation=landscape]{width:92vw;height:auto;max-width:none;max-height:56svh}.visual-scene[data-scene=bright-portraits] .composition-photo{height:72svh;max-width:88vw}.visual-scene[data-scene=closing-gallery] .composition-photo{top:5svh;width:auto;height:72svh;max-width:88vw;translate:-50% 0}.visual-scene[data-scene=closing-gallery] .composition-photo[data-orientation=landscape]{width:96vw;height:auto;max-width:none;max-height:54svh}.visual-scene[data-scene=closing-gallery] .scene-personal-meta{right:6vw;bottom:3svh;max-width:88vw}.visual-scene[data-scene=city-shadows] .scene-composition-group{inset:12svh 4vw 5svh;grid-template-columns:1.08fr .92fr;grid-template-rows:1.12fr .88fr .9fr;gap:8px}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="3"]{grid-column:2;grid-row:2}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="4"]{grid-column:1 / 3;grid-row:3}.visual-scene[data-scene=city-shadows] .scene-personal-meta{top:1.8svh;left:4vw;max-width:90vw}.visual-scene[data-scene=city-shadows] .scene-personal-meta h3{font-size:1.55rem}.visual-scene[data-scene=city-shadows] .composition-photo-copy{max-height:40%;padding:.38rem .45rem}.visual-scene[data-scene=city-shadows] .composition-photo-copy p{font-size:15px}.visual-scene[data-scene=campus-burst] .scene-composition-group,.visual-scene[data-scene=soft-play] .scene-composition-group{inset:13svh 4vw 15svh;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:8px}.visual-scene[data-scene=campus-burst] .composition-photo-copy,.visual-scene[data-scene=soft-play] .composition-photo-copy{max-height:44%;padding:.36rem .42rem}.visual-scene[data-scene=campus-burst] .composition-photo-copy p,.visual-scene[data-scene=soft-play] .composition-photo-copy p{font-size:15px;line-height:1.34}.visual-scene[data-scene=campus-burst] .composition-photo-copy .scene-personal-note,.visual-scene[data-scene=soft-play] .composition-photo-copy .scene-personal-note{font-size:14px}.visual-scene[data-scene=campus-burst] .scene-personal-meta{top:1.5svh;right:4vw;max-width:74vw}.visual-scene[data-scene=campus-burst] .scene-personal-meta h3{font-size:1.5rem}.visual-scene[data-scene=black-qipao] .scene-composition-group{inset:15svh 5vw 6svh;grid-template-columns:1.05fr .95fr;grid-template-rows:1fr 1fr;gap:8px}.visual-scene[data-scene=black-qipao] .scene-personal-layer{padding:9vw}.visual-scene[data-scene=black-qipao] .scene-personal-meta{width:88vw;max-width:88vw}.visual-scene[data-scene=black-qipao] .scene-personal-meta p{font-size:clamp(1.65rem,7.2vw,2.45rem);line-height:1.72}.visual-scene[data-scene=festival-wow] .scene-composition-group{inset:15svh 4vw 6svh;grid-template-columns:.96fr 1.04fr;grid-template-rows:1.1fr .9fr;gap:8px}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="4"]{grid-column:2;grid-row:2}.visual-scene[data-scene=festival-wow] .scene-personal-meta{top:4svh;max-width:90vw}.visual-scene[data-scene=festival-wow] .scene-personal-meta h3{font-size:1.65rem}.visual-scene[data-scene=low-light-dream] .scene-composition-group{inset:13svh 4vw 6svh;grid-template-columns:.88fr 1.12fr .88fr;grid-template-rows:1fr 1fr;gap:8px}.visual-scene[data-scene=low-light-dream] .scene-personal-meta{top:3svh;left:4vw;max-width:88vw;padding:.65rem .8rem}.visual-scene[data-scene=low-light-dream] .scene-personal-meta h3{font-size:clamp(1.9rem,8vw,2.7rem)}.visual-scene[data-scene=mirror-album] .scene-composition-group{inset:6svh 4vw;grid-template-columns:1.05fr .92fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:8px}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="4"]{grid-column:2;grid-row:2}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="5"]{grid-column:1;grid-row:3}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="6"]{grid-column:2;grid-row:3}.visual-scene[data-scene=soft-play] .composition-photo{padding:4px 4px 9px}.visual-scene[data-scene=soft-play] .scene-personal-meta{right:4vw;bottom:2svh;max-width:82vw}.visual-scene[data-scene=green-water] .scene-composition-group{inset:12svh 4vw 5svh;grid-template-columns:1.08fr .92fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:8px}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="3"]{grid-column:2;grid-row:2}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"]{grid-column:1 / 3;grid-row:3}.visual-scene[data-scene=green-water] .scene-personal-meta{top:3svh;right:4vw}}@media(prefers-reduced-motion:reduce){.visual-scene[data-scene]{height:auto!important;min-height:0!important;padding-block:3rem;overflow:visible}.visual-scene[data-scene] .scene-composition-stage{position:relative;top:auto;height:auto;min-height:0;overflow:visible;padding:2rem 5vw}.visual-scene[data-scene]{height:var(--scene-height-mobile, var(--scene-height));min-height:var(--scene-height-mobile, var(--scene-height))}.visual-scene[data-scene] .scene-personal-layer{position:relative;inset:auto}.visual-scene[data-scene] .scene-composition-group{box-sizing:border-box;position:relative;inset:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(220px,auto);gap:12px;width:100%;height:auto;padding:0;transform:none!important}.visual-scene[data-scene] .composition-photo,.visual-scene[data-scene] .composition-photo[data-photo-position="6"]{position:relative;inset:auto;display:flex;width:100%;height:auto;min-height:220px;aspect-ratio:4 / 5!important;translate:0 0;transform:none!important;opacity:1!important}.visual-scene[data-scene] .scene-personal-meta{position:relative;inset:auto;max-width:90vw;margin:0 auto 1.5rem;opacity:1!important;translate:0 0;text-align:center}.visual-scene[data-scene] .scene-light-field,.visual-scene[data-scene] .festival-lightburst{display:none}.visual-scene[data-scene] .scene-ambient,.visual-scene[data-scene] .scene-ambient *{animation:none!important}.visual-scene[data-scene] .composition-photo-copy{max-height:44%}.visual-scene[data-scene=black-qipao] .scene-composition-stage{display:flex;flex-direction:column;align-items:stretch}.visual-scene[data-scene=black-qipao] .scene-personal-layer{order:1;display:grid;min-height:70svh;padding:8vw;place-items:center}.visual-scene[data-scene=black-qipao] .scene-personal-meta{width:min(82vw,900px);margin:0 auto;opacity:1!important}.visual-scene[data-scene=black-qipao] .scene-composition-group{order:2;margin-top:2rem}.visual-scene[data-scene=black-qipao] .composition-photo{opacity:1!important}}@media(max-width:700px)and (prefers-reduced-motion:reduce){.visual-scene[data-scene] .scene-composition-stage{padding:1rem 4vw}.visual-scene[data-scene] .scene-composition-group{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(180px,auto);gap:8px}.visual-scene[data-scene] .composition-photo,.visual-scene[data-scene] .composition-photo[data-photo-position="6"]{min-height:180px}}.visual-scene[data-motion-family=hotel-chapters] .scene-composition-group,.visual-scene[data-motion-family=horizon-reveal] .scene-composition-group{inset:0;display:block;overflow:visible}.visual-scene[data-motion-family=hotel-chapters] .composition-photo{position:absolute;inset:43% auto auto 50%;width:min(64vw,900px);height:min(72svh,720px);flex:none;translate:-50% -50%;border:0;border-radius:0;background:transparent;box-shadow:0 30px 90px #0a051447;will-change:transform,opacity}.visual-scene[data-motion-family=hotel-chapters] .composition-photo[data-orientation=landscape]{width:min(82vw,1180px);height:min(63svh,660px)}.visual-scene[data-motion-family=hotel-chapters] .composition-photo-image,.visual-scene[data-motion-family=horizon-reveal] .composition-photo-image{object-fit:contain}.visual-scene[data-scene=hotel-reel] .scene-personal-meta{left:50%;right:auto;bottom:4svh;width:min(72vw,920px);max-width:84vw;padding:0 1.4rem;translate:-50% 0;color:#fffafc;background:transparent;border:0;box-shadow:none;text-align:center;text-shadow:0 2px 20px rgba(12,7,24,.65)}.visual-scene[data-motion-family=horizon-reveal] .composition-photo{position:absolute;inset:48% auto auto 50%;width:min(82vw,1250px);height:min(68svh,700px);flex:none;translate:-50% -50%;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;will-change:clip-path,transform,opacity}.visual-scene[data-motion-family=horizon-reveal] .composition-photo[data-orientation=portrait]{width:auto;height:min(76svh,780px);max-width:82vw}.visual-scene[data-motion-family=horizon-reveal] .composition-photo-image{box-shadow:0 24px 78px #0a081847}.visual-scene[data-scene=close-angle-film] .composition-photo{width:auto;height:min(80svh,800px);max-width:84vw;border:0;border-radius:0;background:transparent;box-shadow:0 24px 72px #0b061842;will-change:transform,opacity}.visual-scene[data-scene=close-angle-film] .composition-photo[data-orientation=landscape]{width:min(84vw,1240px);height:min(70svh,720px);max-width:none}.visual-scene[data-scene=black-qipao] .scene-composition-group{background:none}.visual-scene[data-scene=black-qipao] .scene-personal-layer{z-index:13;display:grid;place-items:center;padding:8vw}.visual-scene[data-scene=black-qipao] .scene-personal-meta{width:min(76vw,1040px);max-width:none;text-align:center}.visual-scene[data-scene=black-qipao] .scene-personal-meta p{margin:0;font-size:clamp(2rem,4.1vw,4rem);line-height:1.55}.visual-scene[data-scene=festival-wow] .scene-composition-group{inset:23svh 7vw 10svh;grid-template-columns:.9fr 1.1fr .9fr;grid-template-rows:1fr 1fr;gap:clamp(12px,1.4vw,22px)}.visual-scene[data-scene=festival-wow] .scene-personal-meta{top:4svh;left:50%;right:auto;width:min(70vw,860px);max-width:86vw;padding:0;translate:-50% 0;text-align:center;text-shadow:0 3px 22px rgba(17,5,28,.68)}.visual-scene[data-scene=festival-wow] .scene-personal-meta h3{margin-bottom:.18em}.visual-scene[data-scene=festival-wow] .festival-lightburst{top:58%}.visual-scene[data-scene=low-light-dream] .scene-composition-group{inset:22svh 8vw 8svh;grid-template-columns:.9fr 1.12fr .9fr;grid-template-rows:1fr 1fr;gap:clamp(12px,1.5vw,22px)}.visual-scene[data-scene=low-light-dream] .scene-personal-meta{top:4svh;left:50%;right:auto;width:min(72vw,860px);max-width:86vw;padding:0;translate:-50% 0;color:#fff8fd;border:0;background:transparent;text-align:center;text-shadow:0 3px 24px rgba(5,3,14,.82);-webkit-backdrop-filter:none;backdrop-filter:none}.visual-scene[data-scene=green-water] .scene-composition-group{inset:15svh 7vw 9svh;grid-template-columns:.78fr .78fr 1.16fr;grid-template-rows:1fr 1fr;gap:clamp(10px,1.25vw,20px)}.visual-scene[data-scene=green-water] .composition-photo{border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="3"]{grid-column:2;grid-row:2}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"]{grid-column:3;grid-row:1 / 3}.visual-scene[data-scene=green-water] .composition-photo-image{object-fit:contain}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"].has-personal-copy{box-shadow:none}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"] .composition-photo-copy{border:0;background:linear-gradient(110deg,#1f182bdb,#2c2339b8);box-shadow:0 12px 34px #0a081838}.dev-build-id{position:fixed;z-index:220;left:max(10px,env(safe-area-inset-left));bottom:max(10px,env(safe-area-inset-bottom));padding:4px 7px;color:#fff7fcbd;border:1px solid rgba(255,247,252,.14);border-radius:999px;background:#140d1e8a;font:500 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.035em;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@media(max-width:700px){.visual-scene[data-motion-family=hotel-chapters] .composition-photo{top:41%;width:90vw;height:min(65svh,590px)}.visual-scene[data-motion-family=hotel-chapters] .composition-photo[data-orientation=landscape]{width:92vw;height:auto;max-height:55svh}.visual-scene[data-scene=hotel-reel] .scene-personal-meta{bottom:4svh;width:90vw;max-width:90vw;padding:0}.visual-scene[data-motion-family=horizon-reveal] .composition-photo{top:47%;width:92vw;height:min(67svh,600px)}.visual-scene[data-motion-family=horizon-reveal] .composition-photo[data-orientation=portrait]{width:auto;height:min(73svh,660px);max-width:86vw}.visual-scene[data-scene=close-angle-film] .composition-photo{height:72svh;max-width:88vw}.visual-scene[data-scene=close-angle-film] .composition-photo[data-orientation=landscape]{width:92vw;height:auto;max-width:none;max-height:56svh}.visual-scene[data-scene=black-qipao] .scene-personal-layer{padding:9vw}.visual-scene[data-scene=black-qipao] .scene-personal-meta{width:88vw}.visual-scene[data-scene=black-qipao] .scene-personal-meta p{font-size:clamp(1.7rem,7vw,2.55rem)}.visual-scene[data-scene=festival-wow] .scene-composition-group{inset:24svh 4vw 7svh;grid-template-columns:1fr 1fr;grid-template-rows:1.1fr .9fr;gap:8px}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="4"]{grid-column:2;grid-row:2}.visual-scene[data-scene=festival-wow] .scene-personal-meta{top:4svh;width:90vw;max-width:90vw}.visual-scene[data-scene=low-light-dream] .scene-composition-group{inset:23svh 4vw 7svh;grid-template-columns:.88fr 1.12fr;grid-template-rows:1fr 1fr 1fr;gap:8px}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="1"]{grid-column:2;grid-row:1 / 3}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="2"]{grid-column:1;grid-row:1}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="4"]{grid-column:1 / 3;grid-row:3}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="5"]{display:none}.visual-scene[data-scene=low-light-dream] .scene-personal-meta{top:4svh;width:90vw;max-width:90vw}.visual-scene[data-scene=green-water] .scene-composition-group{inset:13svh 4vw 7svh;grid-template-columns:.86fr 1.14fr;grid-template-rows:1fr 1fr 1fr;gap:8px}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="3"]{grid-column:2;grid-row:2}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"]{grid-column:1 / 3;grid-row:3}}.performance-hud{position:fixed;z-index:200;top:10px;right:10px;display:grid;gap:3px;max-width:min(320px,calc(100vw - 20px));padding:9px 11px;border:1px solid rgba(255,255,255,.28);border-radius:8px;color:#fff;background:#160f1fdb;box-shadow:0 4px 20px #0003;font:12px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;pointer-events:none}@media(max-width:820px){.visual-scene[data-scene] .scene-composition-stage{height:100svh;min-height:100svh;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:border-box}.visual-scene[data-scene] .scene-composition-group{overflow:visible}.visual-scene[data-scene] .composition-photo{max-width:calc(100vw - 28px);border-radius:7px}.visual-scene[data-scene] .composition-photo-image{object-fit:contain!important}.visual-scene[data-scene] .composition-photo-copy{max-height:38%;padding:.55rem .65rem .62rem;overscroll-behavior:contain}.visual-scene[data-scene] .composition-photo-copy p{font-size:clamp(15px,4vw,17px);line-height:1.42}.visual-scene[data-scene] .scene-personal-meta{max-width:90vw}.visual-scene[data-motion-family=sequence] .composition-photo{left:50%;top:50%;width:min(86vw,500px);height:min(72svh,700px);translate:-50% -50%}.visual-scene[data-motion-family=sequence] .composition-photo[data-orientation=landscape]{width:92vw;height:min(57svh,540px);max-height:57svh}.visual-scene[data-scene=blush-closeups] .composition-photo:nth-child(2n){left:48%;top:48%}.visual-scene[data-scene=blush-closeups] .composition-photo:nth-child(odd){left:52%;top:52%}.visual-scene[data-scene=close-angle-film] .composition-photo{border-color:#ffecdba8;box-shadow:0 22px 64px #120a1659}.visual-scene[data-scene=bright-portraits] .composition-photo:nth-child(3n+1){left:48%;top:49%}.visual-scene[data-scene=bright-portraits] .composition-photo:nth-child(3n+2){left:52%;top:51%}.visual-scene[data-scene=closing-gallery] .composition-photo{top:8svh;left:50%;width:min(84vw,480px);height:min(78svh,760px);translate:-50% 0}.visual-scene[data-scene=closing-gallery] .composition-photo[data-orientation=landscape]{width:92vw;height:min(56svh,530px)}.visual-scene[data-scene=closing-gallery] .scene-personal-meta{right:5vw;bottom:3svh;left:5vw;max-width:90vw;text-align:center}.visual-scene[data-scene=city-shadows] .scene-composition-group{inset:11svh 4vw 7svh;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,1fr) minmax(0,.55fr);gap:10px}.visual-scene[data-scene=city-shadows] .composition-photo{position:relative;inset:auto;width:100%;height:100%;min-width:0;min-height:0;translate:0 0}.visual-scene[data-scene=city-shadows] .composition-photo.is-lead{grid-column:1 / 4;grid-row:1}.visual-scene[data-scene=city-shadows] .composition-photo:not(.is-lead){grid-row:2}.visual-scene[data-scene=city-shadows] .scene-personal-meta{top:2svh;left:5vw}.visual-scene[data-motion-family=hotel-chapters] .composition-photo{top:42%;width:90vw;height:min(64svh,610px);border:1px solid rgba(255,230,195,.66);border-radius:12px}.visual-scene[data-motion-family=hotel-chapters] .composition-photo[data-orientation=landscape]{width:92vw;height:min(56svh,530px)}.visual-scene[data-scene=hotel-reel] .scene-personal-meta{right:5vw;bottom:3svh;left:5vw;width:90vw;max-width:90vw;padding:0}.visual-scene[data-motion-family=horizon-reveal] .composition-photo{top:49%;width:91vw;height:min(64svh,610px)}.visual-scene[data-motion-family=horizon-reveal] .composition-photo[data-orientation=portrait]{width:min(82vw,470px);height:min(72svh,680px)}.visual-scene[data-scene=yantai-horizon] .scene-personal-meta{top:4svh;right:5vw;left:5vw;max-width:90vw;text-align:center}.visual-scene[data-scene=campus-burst] .scene-composition-group{inset:17svh 4vw 7svh;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:8px}.visual-scene[data-scene=campus-burst] .composition-photo{position:relative;inset:auto;width:100%;height:100%;min-width:0;min-height:0;translate:0 0}.visual-scene[data-scene=campus-burst] .composition-photo-copy{max-height:42%;padding:.34rem .4rem}.visual-scene[data-scene=campus-burst] .composition-photo-copy p{font-size:clamp(13px,3.6vw,15px);line-height:1.34}.visual-scene[data-scene=campus-burst] .scene-personal-meta{top:2svh;right:4vw;max-width:90vw;text-align:right}.visual-scene[data-scene=black-qipao] .scene-personal-layer{display:grid;place-items:center;padding:9vw}.visual-scene[data-scene=black-qipao] .scene-personal-meta{position:relative;inset:auto;width:88vw;max-width:88vw;text-align:center}.visual-scene[data-scene=black-qipao] .scene-personal-meta p{font-size:clamp(1.6rem,7vw,2.3rem);line-height:1.65}.visual-scene[data-scene=black-qipao] .scene-composition-group{inset:11svh 5vw 8svh;display:grid;grid-template-columns:.9fr 1.1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:9px}.visual-scene[data-scene=black-qipao] .composition-photo{position:relative;inset:auto;width:100%;height:100%;min-width:0;min-height:0;translate:0 0}.visual-scene[data-scene=black-qipao] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=black-qipao] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=black-qipao] .composition-photo[data-photo-position="3"]{grid-column:2;grid-row:2}.visual-scene[data-scene=festival-wow] .scene-personal-meta{top:3svh;left:50%;width:90vw;max-width:90vw;translate:-50% 0;text-align:center}.visual-scene[data-scene=festival-wow] .scene-personal-meta h3{font-size:clamp(1.85rem,7.5vw,2.55rem)}.visual-scene[data-scene=festival-wow] .scene-composition-group{inset:20svh 4vw 7svh;display:grid;grid-template-columns:1fr 1.15fr 1fr;grid-template-rows:1fr 1fr;gap:9px}.visual-scene[data-scene=festival-wow] .composition-photo{position:relative;inset:auto;width:100%;height:100%;min-width:0;min-height:0;translate:0 0}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1}.visual-scene[data-scene=festival-wow] .composition-photo.is-lead{grid-column:2;grid-row:1 / 3}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="4"]{grid-column:3;grid-row:1 / 3}.visual-scene[data-scene=festival-wow] .festival-lightburst{top:57%;width:78vw;opacity:.5}.visual-scene[data-scene=low-light-dream] .scene-personal-meta{position:absolute;top:3svh;right:5vw;bottom:auto;left:5vw;width:auto;max-width:none;margin:0;padding:.55rem .8rem;translate:0 0;text-align:center;background:linear-gradient(90deg,#1810263d,#18102694,#1810263d)}.visual-scene[data-scene=low-light-dream] .scene-personal-meta h3{font-size:clamp(1.7rem,7vw,2.35rem)}.visual-scene[data-scene=low-light-dream] .scene-personal-meta{top:3svh;left:5vw;width:90vw;max-width:90vw}.visual-scene[data-scene=low-light-dream] .scene-composition-group{inset:17svh 4vw 7svh;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:9px}.visual-scene[data-scene=low-light-dream] .composition-photo{position:relative;inset:auto;width:100%;height:100%;min-width:0;min-height:0;translate:0 0}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="2"]{grid-column:1;grid-row:2}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:3}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="4"]{grid-column:2;grid-row:3}.visual-scene[data-scene=low-light-dream] .composition-photo.is-lead{grid-column:2;grid-row:1 / 3}.visual-scene[data-scene=mirror-album] .scene-composition-group{inset:7svh 4vw;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:9px}.visual-scene[data-scene=mirror-album] .composition-photo{position:relative;inset:auto;width:100%;height:100%;min-width:0;min-height:0;translate:0 0}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="4"]{grid-column:2;grid-row:2}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="5"]{grid-column:1;grid-row:3}.visual-scene[data-scene=mirror-album] .composition-photo[data-photo-position="6"]{grid-column:2;grid-row:3}.visual-scene[data-scene=soft-play] .scene-composition-group{inset:9svh 4vw 12svh;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:9px}.visual-scene[data-scene=soft-play] .composition-photo{position:relative;inset:auto;width:100%;height:100%;min-width:0;min-height:0;translate:0 0;padding:4px 4px 10px;border:0;border-radius:3px;background:linear-gradient(145deg,#fffafc,#f1e0e9);box-shadow:0 12px 34px #1c0e2347}.visual-scene[data-scene=soft-play] .composition-photo-copy{max-height:40%;padding:.32rem .4rem}.visual-scene[data-scene=soft-play] .composition-photo-copy p{font-size:clamp(13px,3.5vw,15px);line-height:1.3}.visual-scene[data-scene=soft-play] .scene-personal-meta{right:4vw;bottom:2svh;max-width:90vw;text-align:right}.visual-scene[data-scene=green-water] .scene-composition-group{inset:13svh 4vw 7svh;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.1fr .9fr .85fr;gap:9px}.visual-scene[data-scene=green-water] .composition-photo{position:relative;inset:auto;width:100%;height:100%;min-width:0;min-height:0;translate:0 0}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="1"]{grid-column:2;grid-row:1}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:2}.visual-scene[data-scene=green-water] .composition-photo.is-lead{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"]{grid-column:1 / 3;grid-row:3}.visual-scene[data-scene=green-water] .scene-personal-meta{top:3svh;right:5vw;max-width:88vw}.scene-ambient,.butterfly-swarm{pointer-events:none}.letter-section.has-letter-photos{padding:max(42px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(58px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}}@media(max-width:820px){.visual-scene[data-scene] .scene-personal-meta h3{font-size:clamp(1.9rem,8vw,2.65rem);line-height:1.12;text-shadow:0 2px 18px rgba(20,9,34,.76)}.visual-scene[data-scene=festival-wow] .scene-personal-meta,.visual-scene[data-scene=low-light-dream] .scene-personal-meta{left:50%;width:72vw;max-width:72vw;padding:.42rem .55rem;translate:-50% 0;background:linear-gradient(100deg,#180d277a,#271632c7,#180d277a);border-radius:12px;text-align:center}.visual-scene[data-scene=festival-wow] .scene-personal-meta h3,.visual-scene[data-scene=low-light-dream] .scene-personal-meta h3{font-size:clamp(1.95rem,8.2vw,2.7rem);letter-spacing:.055em}.visual-scene[data-motion-family=hotel-chapters] .composition-photo{top:44%;height:min(49svh,470px)}.visual-scene[data-motion-family=hotel-chapters] .composition-photo[data-orientation=landscape]{height:min(48svh,455px)}.visual-scene[data-scene=hotel-reel] .scene-personal-meta{right:5vw;bottom:max(8svh,calc(env(safe-area-inset-bottom) + 5svh));left:5vw;width:90vw;max-width:90vw;padding:.55rem .75rem;border-radius:12px;background:#1f122bb8;text-align:left}.visual-scene[data-scene=hotel-reel] .scene-personal-meta p{font-size:clamp(1rem,4.4vw,1.2rem);line-height:1.5}.visual-scene[data-scene=campus-burst] .composition-photo-copy,.visual-scene[data-scene=soft-play] .composition-photo-copy{max-height:52%;padding:.48rem .54rem}}.performance-hud strong{color:#ffd6ed;font-size:11px;letter-spacing:.08em}.experience.is-active>.letter-reveal{position:relative;inset:auto;z-index:12;width:100%;min-height:100svh}.letter-paper.letter-envelope-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem}.letter-envelope{position:relative;width:clamp(170px,24vw,270px);aspect-ratio:1.45;overflow:hidden;border:1px solid rgba(167,112,145,.38);background:linear-gradient(145deg,#fff9fc,#efdce7);box-shadow:0 18px 48px #48273f29}.letter-envelope-flap{position:absolute;inset:0;background:linear-gradient(145deg,#f8eaf1,#e8cfdf);clip-path:polygon(0 0,100% 0,50% 62%)}.letter-envelope-seal{position:absolute;top:48%;left:50%;width:24px;aspect-ratio:1;border:1px solid rgba(162,105,139,.55);border-radius:50%;background:radial-gradient(circle,#efcfdf,#dbaec9);transform:translate(-50%,-50%)}.letter-placeholder{position:relative;z-index:1;margin:0;color:#77576a;font:500 16px/1.6 var(--type-intimate);letter-spacing:.08em;text-align:center}@media(max-width:700px){.letter-envelope{width:min(62vw,240px)}.letter-placeholder{font-size:15px}}@media(max-width:820px){.visual-scene[data-scene] .scene-personal-layer{position:absolute;z-index:30;inset:0;pointer-events:none}.visual-scene[data-scene] .scene-personal-meta{z-index:1}.visual-scene[data-scene] .scene-personal-meta h3{font-size:clamp(2rem,9vw,3rem);line-height:1.08;text-shadow:0 2px 20px rgba(16,8,28,.82)}.visual-scene[data-scene=city-shadows] .scene-composition-group,.visual-scene[data-scene=festival-wow] .scene-composition-group,.visual-scene[data-scene=low-light-dream] .scene-composition-group,.visual-scene[data-scene=green-water] .scene-composition-group{position:absolute;display:grid;min-width:0;min-height:0;transform:none!important}.visual-scene[data-scene=city-shadows] .scene-composition-group{inset:15svh 4vw 7svh;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr 1fr .78fr;gap:8px}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1 / 3}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="3"]{grid-column:2;grid-row:2}.visual-scene[data-scene=city-shadows] .composition-photo[data-photo-position="4"]{grid-column:1 / 3;grid-row:3}.visual-scene[data-scene=city-shadows] .scene-personal-meta{top:2svh;left:5vw;max-width:90vw}.visual-scene[data-scene=city-shadows] .composition-photo-copy{max-height:40%;padding:.42rem .5rem}.visual-scene[data-scene=hotel-reel] .scene-composition-group,.visual-scene[data-scene=yantai-horizon] .scene-composition-group{position:absolute;inset:0;display:block;width:auto;height:auto;overflow:visible}.visual-scene[data-motion-family=hotel-chapters] .composition-photo{position:absolute;inset:47% auto auto 50%;width:92vw;height:min(49svh,470px);min-height:0;translate:-50% -50%;aspect-ratio:auto!important}.visual-scene[data-motion-family=hotel-chapters] .composition-photo[data-orientation=landscape]{height:min(46svh,440px)}.visual-scene[data-scene=hotel-reel] .scene-personal-meta{top:auto;right:5vw;bottom:max(5svh,calc(env(safe-area-inset-bottom) + 2svh));left:5vw;width:auto;max-width:none;box-sizing:border-box;translate:0 0;padding:.75rem .9rem;border:1px solid rgba(255,238,247,.28);border-radius:14px;color:#fff9fc;background:#1d122ae0;text-align:left;text-shadow:none}.visual-scene[data-scene=hotel-reel] .scene-personal-meta p{font-size:clamp(1.05rem,4.6vw,1.24rem);line-height:1.5;overflow-wrap:anywhere;white-space:normal}.visual-scene[data-motion-family=horizon-reveal] .composition-photo{position:absolute;inset:52% auto auto 50%;width:92vw;height:min(55svh,520px);min-height:0;translate:-50% -50%;aspect-ratio:auto!important;overflow:hidden;border:1px solid rgba(255,248,252,.5);border-radius:10px;background:#1a142a5c;box-shadow:0 20px 64px #09051457}.visual-scene[data-motion-family=horizon-reveal] .composition-photo[data-orientation=portrait]{width:min(82vw,370px);height:min(68svh,620px);max-width:86vw}.visual-scene[data-scene=yantai-horizon] .scene-personal-meta{top:4svh;right:5vw;left:5vw;width:90vw;max-width:90vw;padding:.5rem .65rem;border-radius:12px;background:#1b142a94;text-align:center}.visual-scene[data-scene=festival-wow] .scene-personal-meta,.visual-scene[data-scene=low-light-dream] .scene-personal-meta{top:3svh;right:5vw;bottom:auto;left:5vw;width:90vw;max-width:90vw;padding:.72rem .9rem;translate:0 0;border:1px solid rgba(255,238,250,.28);border-radius:15px;color:#fffafd;background:linear-gradient(110deg,#1d0f2be6,#451f47db);text-align:center;text-shadow:0 2px 18px rgba(14,7,22,.72)}.visual-scene[data-scene=festival-wow] .scene-personal-meta h3,.visual-scene[data-scene=low-light-dream] .scene-personal-meta h3{margin-bottom:.18em;font-size:clamp(2.2rem,9.4vw,3rem);line-height:1.06;letter-spacing:.035em}.visual-scene[data-scene=festival-wow] .scene-personal-meta p,.visual-scene[data-scene=low-light-dream] .scene-personal-meta p{font-size:clamp(1.12rem,4.8vw,1.35rem);line-height:1.45}.visual-scene[data-scene=festival-wow] .scene-composition-group{inset:22svh 4vw 7svh;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:9px}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=festival-wow] .composition-photo[data-photo-position="4"]{grid-column:2;grid-row:2}.visual-scene[data-scene=low-light-dream] .scene-composition-group{inset:19svh 4vw 7svh;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:8px}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="1"]{grid-column:2;grid-row:1 / 3}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="2"]{grid-column:1;grid-row:1}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="4"]{grid-column:1;grid-row:3}.visual-scene[data-scene=low-light-dream] .composition-photo[data-photo-position="5"]{display:flex;grid-column:2;grid-row:3}.visual-scene[data-scene=green-water] .scene-personal-meta{top:3svh;right:5vw;left:5vw;width:90vw;max-width:90vw;padding:.5rem .7rem;border-radius:12px;background:#1b142a8f;text-align:center}.visual-scene[data-scene=green-water] .scene-personal-meta h3{font-size:clamp(1.85rem,8vw,2.5rem)}.visual-scene[data-scene=green-water] .scene-personal-meta p{font-size:clamp(1rem,4.3vw,1.18rem);line-height:1.45}.visual-scene[data-scene=green-water] .scene-composition-group{inset:16svh 4vw 7svh;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:9px}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="1"]{grid-column:1;grid-row:1}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="2"]{grid-column:2;grid-row:1}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="3"]{grid-column:1;grid-row:2}.visual-scene[data-scene=green-water] .composition-photo[data-photo-position="4"]{grid-column:2;grid-row:2}.visual-scene[data-scene=green-water] .composition-photo-copy{max-height:48%;padding:.45rem .5rem}}
