:root{--base:#172c4a;--accent:#ffe694;--paper:#fff7dd;--ink:#302523;--serif:'Instrument Serif',Georgia,serif}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--base);color:#fff9f5;font-family:system-ui,-apple-system,'PingFang SC',sans-serif}button,a,select{font:inherit;touch-action:manipulation}button{cursor:pointer;color:inherit;border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.stage{position:relative;isolation:isolate;min-height:760px;height:100svh;overflow:hidden;transition:background .7s;background:var(--base)}.scene-backdrop,.shade,.sparkles{position:absolute;inset:0;pointer-events:none}.scene-backdrop{z-index:-3;background-size:cover;background-position:var(--position,80%) center;animation:camera 16s ease-in-out infinite alternate;transition:opacity .5s;background-color:var(--base)}.shade{z-index:-2;background:linear-gradient(90deg,color-mix(in srgb,var(--base) 91%,transparent),color-mix(in srgb,var(--base) 48%,transparent) 52%,transparent 85%),linear-gradient(0deg,color-mix(in srgb,var(--base) 93%,transparent),transparent 39%)}.sparkles{z-index:-1}.sparkles i{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;background:var(--accent);box-shadow:0 0 12px var(--accent);border-radius:50%;animation:spark 5s ease-in-out infinite alternate;animation-delay:var(--delay)}.nav{position:absolute;top:27px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;gap:24px;z-index:10}.logo{font:italic 36px var(--serif);white-space:nowrap}.logo em{color:var(--accent)}.navglass{display:flex;gap:4px;align-items:center;border:1px solid #ffffff35;background:#ffffff08;backdrop-filter:blur(12px);border-radius:99px;padding:6px}.navglass button,.navglass a{font-size:12px;padding:11px 15px;white-space:nowrap;background:transparent;border-radius:99px}.navglass button:hover{background:#ffffff15}.solid,.navglass a.solid{background:var(--accent);color:var(--base);padding:15px 22px;border-radius:99px;font-size:12px;font-weight:650}.menubtn{display:none;width:46px;height:46px;border-radius:50%;background:#ffffff15;border:1px solid #ffffff40}.story{position:absolute;left:5%;top:47%;transform:translateY(-50%);width:48%;max-width:670px;z-index:3}.eyebrow{display:inline-flex;border:1px solid #ffffff36;border-radius:99px;padding:10px 15px;font-size:10px;letter-spacing:2px;background:#ffffff0a;backdrop-filter:blur(6px);color:var(--accent)}h1{font:normal clamp(63px,6.5vw,106px)/.98 var(--serif);letter-spacing:-2.5px;margin:24px 0 22px}h1 em{font-weight:normal;color:var(--accent)}.chinese{font-size:clamp(22px,2.15vw,32px);font-weight:550;line-height:1.6;margin:0 0 12px;letter-spacing:1px}.description{font-size:13px;line-height:1.95;max-width:440px;color:#fff8efc9;margin:0 0 24px}.actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.starting{font-size:13px;color:var(--accent)}.instruction{font-size:11px;color:#fff8f5a0;margin:17px 0 0}.instruction:before{content:'✦ ';color:var(--accent)}.prop-zone{position:absolute;left:var(--origin-x,76%);top:var(--origin-y,66%);width:1px;height:1px;z-index:5}.origin-glow{position:absolute;width:50px;height:20px;left:-25px;top:-10px;border-radius:50%;background:var(--accent);filter:blur(20px);animation:pulse 3s infinite}.photo{position:absolute;width:100px;height:132px;left:-50px;top:-66px;background:#fff9ee;border:7px solid #fff9ee;border-bottom:0;box-shadow:0 14px 32px #0005;color:#43333b;transform:translate(var(--dx),var(--dy)) rotate(var(--angle));animation:emerge 1.6s cubic-bezier(.15,.8,.25,1) var(--delay) backwards,card-bob 4.5s ease-in-out calc(var(--delay) + 1.6s) infinite;cursor:pointer;padding:0;transition:filter .3s;will-change:transform}.photo:hover{filter:brightness(1.12);z-index:4}.photo img{width:100%;height:86px;object-fit:cover;object-position:var(--position);display:block;pointer-events:none}.photo .card-caption{display:block;font-size:9px;line-height:1.4;margin-top:7px;font-weight:750;letter-spacing:.5px}.photo .card-price{display:block;font-size:10px;color:#8b6276}.photo:after{content:'↗';position:absolute;right:0;bottom:4px;font-size:11px}.prop-label{position:absolute;width:270px;left:-135px;top:42px;text-align:center;color:#fffbe7c4;font-size:10px;letter-spacing:1px;text-shadow:0 2px 7px #0008}.theme-dock{position:absolute;left:5%;right:5%;bottom:22px;z-index:8}.dockhead{display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#fff7edb0;margin-bottom:12px}.theme-tabs{display:grid;grid-template-columns:repeat(8,1fr);border-top:1px solid #ffffff36;border-bottom:1px solid #ffffff2d}.theme-tab{position:relative;display:flex;flex-direction:column;gap:7px;align-items:flex-start;padding:16px 9px 17px;background:transparent;border-right:1px solid #ffffff1b;color:#ffffff88;text-align:left}.theme-tab:last-child{border:0}.theme-tab b{font-size:10px;color:#ffffff65}.theme-tab span{font-size:12px;white-space:nowrap}.theme-tab[aria-selected=true]{background:#ffffff0f;color:white}.theme-tab[aria-selected=true]:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}.theme-tab[aria-selected=true] b{color:var(--accent)}.footerline{display:flex;justify-content:space-between;align-items:center;margin-top:13px;font-size:9px;letter-spacing:.5px;color:#ffffffa0}.footerline button{font-size:9px;background:transparent;color:#ffffffa0;padding:5px}.scene-prev,.scene-next{position:absolute;top:49%;z-index:9;width:32px;height:50px;font:30px var(--serif);background:#ffffff0a;border:1px solid #ffffff23;border-radius:99px}.scene-prev{left:10px}.scene-next{right:10px}.stage[data-theme=love] .story{left:auto;right:5%;text-align:right}.stage[data-theme=love] .eyebrow{transform:rotate(2deg)}.stage[data-theme=love] h1{font:750 clamp(57px,5.6vw,86px)/1.08 system-ui;letter-spacing:-3px}.stage[data-theme=love] h1 em{font-style:normal;font-weight:400}.stage[data-theme=love] .description{margin-left:auto}.stage[data-theme=love] .actions{justify-content:flex-end}.stage[data-theme=love] .shade{background:linear-gradient(270deg,#491323eb,#4913236d 52%,transparent 85%),linear-gradient(0deg,#491323e8,transparent 40%)}.stage[data-theme=anniversary] .story{border-left:1px solid #fcd8a665;padding-left:32px}.stage[data-theme=anniversary] h1{font-size:clamp(66px,6vw,100px)}.stage[data-theme=anniversary] .eyebrow{border-radius:3px;background:#e7b58115;border-color:#e7b58155}.stage[data-theme=confession] h1{font-size:clamp(63px,6.6vw,105px)}.stage[data-theme=confession] .eyebrow{border-style:dashed}.stage[data-theme=confession] .solid{border-radius:10px;box-shadow:0 0 35px #d6aaf722}.stage[data-theme=wedding] .story{text-align:center;max-width:620px}.stage[data-theme=wedding] .eyebrow{border-radius:0;border:0;border-bottom:1px solid #ffe5ad66;background:transparent;letter-spacing:3px}.stage[data-theme=wedding] .description{margin-left:auto;margin-right:auto}.stage[data-theme=wedding] .actions{justify-content:center}.stage[data-theme=wedding] .solid{border-radius:3px}.stage[data-theme=memory] h1{font:650 clamp(55px,5.7vw,85px)/1.08 system-ui;letter-spacing:-3px}.stage[data-theme=memory] h1 em{font-style:normal;font-weight:400}.stage[data-theme=memory] .eyebrow{border-radius:16px 16px 3px 16px;background:#cdf0c415}.stage[data-theme=portfolio] h1{font:750 clamp(71px,7.2vw,116px)/.98 system-ui;letter-spacing:-5px;text-transform:uppercase}.stage[data-theme=portfolio] h1 em{font-style:normal;font-weight:450}.stage[data-theme=portfolio] .eyebrow{border-radius:3px;border-left:3px solid var(--accent);font-family:monospace}.stage[data-theme=portfolio] .solid,.stage[data-theme=portfolio] .navglass{border-radius:6px}.stage[data-theme=business] h1{font-size:clamp(59px,5.8vw,92px)}.stage[data-theme=business] .eyebrow{border-radius:3px;border:1px solid #ead0aa55}.stage[data-theme=business] .solid{border-radius:4px}.stage[data-theme=confession] .photo{border-radius:3px;clip-path:polygon(0 8%,50% 0,100% 8%,100% 100%,0 100%)}.stage[data-theme=anniversary] .photo{border-radius:3px;border-color:#ffe8cb;background:#ffe8cb}.stage[data-theme=wedding] .photo{border-radius:45px 45px 3px 3px;border-color:#fff8e7;background:#fff8e7}.stage[data-theme=wedding] .photo img{border-radius:35px 35px 0 0}.stage[data-theme=memory] .photo{border-radius:4px}.stage[data-theme=memory] .photo:before{content:'';position:absolute;top:-15px;left:20px;width:50px;height:20px;transform:rotate(-7deg);background:#cde6b6a0}.stage[data-theme=portfolio] .photo{background:#092f3b;border-color:#092f3b;border-bottom:2px solid #aef6e9;color:#cffff4;border-radius:5px}.stage[data-theme=portfolio] .card-price{color:#aef6e9}.stage[data-theme=business] .photo{background:#fff1d9;border-color:#fff1d9;border-radius:6px;box-shadow:0 8px 0 #ad826b,0 15px 24px #0005}
dialog{padding:0;border:0;color:var(--ink);background:transparent;max-width:none}dialog::backdrop{background:#070811b3;backdrop-filter:blur(12px)}.price-dialog{width:min(1080px,calc(100% - 40px));max-height:90svh;overflow:auto;border-radius:24px;box-shadow:0 30px 100px #0006}.sheet{position:relative;background:var(--paper);padding:36px;animation:paper-in .65s cubic-bezier(.2,.8,.2,1) both;min-height:400px}.sheet-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;position:relative}.sheet-label{font-size:10px;letter-spacing:3px;color:color-mix(in srgb,var(--base) 75%,white);margin-bottom:12px}.sheet-head h2{font:46px/1.1 var(--serif);margin:0 0 10px;color:var(--base)}.sheet-head p{font-size:12px;line-height:1.8;color:#5c5260;max-width:660px;margin:0}.close{height:36px;width:36px;background:#00000009;border:1px solid #0000001c;border-radius:50%;color:inherit;font-size:23px;flex-shrink:0}.tier-tabs{display:flex;gap:8px;margin:24px 0 19px;flex-wrap:wrap}.tier-tabs button{background:#00000006;color:var(--base);font-size:11px;padding:10px 14px;border-radius:99px;border:1px solid #00000015}.tier-tabs button[aria-pressed=true]{background:var(--base);color:var(--paper)}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.plan{padding:23px;border:1px solid color-mix(in srgb,var(--base) 20%,transparent);background:#ffffff88;border-radius:18px;position:relative;transition:box-shadow .3s}.plan.selected{box-shadow:0 0 0 2px color-mix(in srgb,var(--base) 52%,transparent),0 14px 30px #0000000a}.plan .number{font:30px var(--serif);color:color-mix(in srgb,var(--base) 65%,transparent)}.plan h3{font-size:12px;letter-spacing:2px;color:var(--base);margin:14px 0 7px}.cost{font:52px var(--serif);color:var(--base);margin-bottom:20px}.plan ul{padding:0;list-style:none;margin:0 0 20px}.plan li{padding:9px 0;border-top:1px solid #0000000c;font-size:12px;line-height:1.6}.plan li span{display:block;font-size:11px;color:#71666d}.enquire{display:block;background:var(--base);color:var(--paper);border-radius:99px;padding:12px 15px;font-size:12px;text-align:center;margin-top:15px}.plan .enquiry-note{font-size:10px;line-height:1.6;color:#746469;display:block;margin-top:10px}.sheet-foot{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding-top:23px;margin-top:25px;border-top:1px solid #00000015;font-size:11px;color:#675866}.sheet-foot a{text-decoration:underline;text-underline-offset:4px}.price-dialog[data-theme=birthday] .sheet{background:radial-gradient(circle at 20% 10%,#f9daa47a,transparent 33%),#f4fcff}.price-dialog[data-theme=birthday] .plan{border-radius:28px 28px 12px 12px;border-top:6px solid #f5c357}.price-dialog[data-theme=birthday] .plan:after{content:'✦';position:absolute;right:23px;top:23px;color:#dca641;font-size:26px}.price-dialog[data-theme=love] .sheet{background:repeating-linear-gradient(135deg,#fff2f6,#fff2f6 24px,#fce9ef 24px,#fce9ef 25px);border:12px solid #fff}.price-dialog[data-theme=love] .plan{border-radius:0;box-shadow:0 12px 25px #7b1e3810;border:8px solid #fff;background:#fff9fb}.price-dialog[data-theme=love] .plan:nth-child(1){transform:rotate(-1deg)}.price-dialog[data-theme=love] .plan:nth-child(3){transform:rotate(1deg)}.price-dialog[data-theme=love] .number{border-bottom:1px dashed #c794a7;display:block;padding-bottom:10px}.price-dialog[data-theme=anniversary] .sheet{background:repeating-linear-gradient(0deg,#fff2df,#fff2df 27px,#e5d4bc 27px,#e5d4bc 28px);border-left:20px solid #795038}.price-dialog[data-theme=anniversary] .plan{background:#fff9efec;border-radius:3px;border-right:3px double #d3b89a}.price-dialog[data-theme=anniversary] .cost{font-style:italic}.price-dialog[data-theme=confession] .sheet{background:#f6efff;border:1px solid #d2bbec}.price-dialog[data-theme=confession] .sheet-head{padding-bottom:20px;border-bottom:1px dashed #b6a2c9}.price-dialog[data-theme=confession] .plan{border-radius:4px;border:1px dashed #aa8ac5;background:#fffbff}.price-dialog[data-theme=confession] .number{background:#bca3d22a;display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;font-size:22px}.price-dialog[data-theme=wedding]{border-radius:90px 90px 5px 5px}.price-dialog[data-theme=wedding] .sheet{text-align:center;background:#fff9ed;border:10px double #c9b787}.price-dialog[data-theme=wedding] .sheet-head{padding-top:15px;justify-content:center}.price-dialog[data-theme=wedding] .sheet-head .close{position:absolute;right:0;top:0}.price-dialog[data-theme=wedding] .tier-tabs{justify-content:center}.price-dialog[data-theme=wedding] .plan{border-radius:80px 80px 4px 4px;border:1px solid #c2ad7d;padding-top:32px;background:#fffcf5}.price-dialog[data-theme=wedding] .plan h3{letter-spacing:3px}.price-dialog[data-theme=wedding] .enquire{border-radius:3px}.price-dialog[data-theme=memory] .sheet{background:radial-gradient(#aac39360 1px,transparent 1px) 0 0/18px 18px,#f4f8df}.price-dialog[data-theme=memory] .plan{background:#fffef6;border-radius:5px;box-shadow:0 8px 20px #305b2410;top:5px}.price-dialog[data-theme=memory] .plan:before{content:'';width:80px;height:22px;background:#bcd5aab3;position:absolute;top:-12px;left:calc(50% - 40px);transform:rotate(-5deg)}.price-dialog[data-theme=portfolio] .sheet{background:#092f3b;color:#e6fff9}.price-dialog[data-theme=portfolio] .sheet h2,.price-dialog[data-theme=portfolio] .sheet-label,.price-dialog[data-theme=portfolio] .cost,.price-dialog[data-theme=portfolio] .plan h3,.price-dialog[data-theme=portfolio] .number{color:#aef6e9}.price-dialog[data-theme=portfolio] .sheet h2{font:650 39px system-ui;letter-spacing:-1px}.price-dialog[data-theme=portfolio] .plan{background:#ffffff07;border:1px solid #89cfbd45;border-radius:4px}.price-dialog[data-theme=portfolio] .plan.selected{box-shadow:0 0 0 2px #aef6e9}.price-dialog[data-theme=portfolio] .sheet-head p,.price-dialog[data-theme=portfolio] .plan li span,.price-dialog[data-theme=portfolio] .enquiry-note,.price-dialog[data-theme=portfolio] .sheet-foot{color:#a5c3c1}.price-dialog[data-theme=portfolio] .plan li{border-color:#ffffff12}.price-dialog[data-theme=portfolio] .tier-tabs button{color:#beeee1;border-color:#ffffff30}.price-dialog[data-theme=portfolio] .tier-tabs button[aria-pressed=true],.price-dialog[data-theme=portfolio] .enquire{background:#aef6e9;color:#08313c;border-radius:3px}.price-dialog[data-theme=business] .sheet{background:#fcf0da;border-top:12px solid #704b36}.price-dialog[data-theme=business] .sheet-label{letter-spacing:4px}.price-dialog[data-theme=business] .sheet h2{font-size:48px}.price-dialog[data-theme=business] .plan{border-radius:3px;background:#fff9ed;border:2px solid #ad8863}.price-dialog[data-theme=business] .plan h3{border-bottom:3px double #b59d7f;padding-bottom:15px}.price-dialog[data-theme=business] .enquire{border-radius:3px}.info-dialog{width:min(1080px,calc(100% - 36px));max-height:90svh;overflow:auto;background:#fff7ef;border-radius:25px;color:#302523}.info-body{padding:35px}.info-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.info-head h2{font:42px var(--serif);margin:0}.info-copy{font-size:13px;line-height:2;color:#6b5c68;max-width:750px}.explore-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:25px}.explore-card{border-radius:17px;padding:0;overflow:hidden;background:var(--card-base);text-align:left;color:white;border:1px solid #00000015}.explore-card img{width:100%;height:130px;object-fit:cover;object-position:var(--card-pos)}.explore-card .meta{padding:16px}.explore-card strong{display:block;font-size:14px}.explore-card small{display:block;font-size:10px;color:#ffffffa0;margin-top:7px}.explore-card em{display:block;font-size:12px;color:var(--card-accent);font-style:normal;margin-top:12px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:35px 0}.steps b{font:35px var(--serif);color:#a47187}.steps h3{font-size:16px}.steps p{font-size:12px;line-height:1.8;color:#74646c}.contact{display:inline-block}.copybtn{padding:12px 18px;background:#e7d3dc;color:#3c243a;border-radius:99px;margin-left:12px}.menu-dialog{width:100%;height:100svh;margin:0;background:#172135e8;color:white;display:none;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:25px}.menu-dialog[open]{display:flex}.menu-dialog .close{position:absolute;top:28px;right:24px}.menu-dialog>button:not(.close),.menu-dialog>a{font-size:23px;background:none}.menu-dialog>a.solid{background:var(--accent);color:var(--base);font-size:15px}.zoom-card{position:fixed;z-index:9999;pointer-events:none;background:var(--paper);box-shadow:0 20px 80px #0005;overflow:hidden;border:10px solid var(--paper);border-radius:4px}.zoom-card img{width:100%;height:100%;object-fit:cover}.stage.paused *,body.reduced *{animation-play-state:paused!important}.stage.opening .photo{animation-play-state:paused!important}@keyframes camera{to{transform:scale(1.035)}}@keyframes spark{to{opacity:.3;transform:translateY(-25px)}}@keyframes pulse{50%{opacity:.5;transform:scale(1.5)}}@keyframes emerge{0%{opacity:0;transform:translate(var(--launch-x,0px),var(--launch-y,0px)) scale(.25) rotate(0)}15%{opacity:.9}100%{opacity:1;transform:translate(var(--dx),var(--dy)) scale(1) rotate(var(--angle))}}@keyframes card-bob{0%,100%{translate:0 0}50%{translate:0 -12px}}@keyframes paper-in{from{opacity:.1;transform:scale(.82) translateY(25px)}to{opacity:1;transform:none}}@media(max-width:1100px){.navglass{display:none}.menubtn{display:block}.theme-tab span{font-size:11px}.story{width:52%}h1{font-size:clamp(60px,7vw,84px)}.prop-zone{scale:.86}.story .chinese{font-size:24px}.scene-prev,.scene-next{display:none}}@media(max-width:700px){.stage{height:auto;min-height:100svh;overflow:hidden;padding:90px 22px 0;display:flex;flex-direction:column}.nav{top:22px;left:22px;right:22px}.logo{font-size:32px}.scene-backdrop{height:52svh;min-height:365px;inset:0 0 auto;background-position:var(--mobile-pos,80%) center}.shade{background:linear-gradient(0deg,var(--base) 35%,color-mix(in srgb,var(--base) 40%,transparent) 70%,color-mix(in srgb,var(--base) 24%,transparent));inset:0}.story,.stage[data-theme=love] .story{position:relative;inset:auto;width:100%;max-width:none;transform:none;order:2;text-align:left;margin-top:355px;padding:0}.story h1,.stage[data-theme=love] h1,.stage[data-theme=anniversary] h1,.stage[data-theme=confession] h1,.stage[data-theme=wedding] h1,.stage[data-theme=business] h1{font-size:clamp(43px,11.8vw,66px);letter-spacing:-1.5px;line-height:1.03;margin:18px 0}.stage[data-theme=memory] h1{font-size:clamp(42px,11vw,62px);letter-spacing:-2px}.stage[data-theme=portfolio] h1{font-size:clamp(52px,14vw,78px);letter-spacing:-3px}.eyebrow{font-size:8px;padding:8px 11px;letter-spacing:1.2px}.story .chinese{font-size:20px;letter-spacing:0;line-height:1.7;margin-bottom:8px}.description{font-size:12px;line-height:1.9;margin-bottom:19px;max-width:none}.actions,.stage[data-theme=love] .actions,.stage[data-theme=wedding] .actions{justify-content:flex-start;gap:13px}.actions .solid{padding:14px 17px;font-size:11px}.starting{font-size:12px}.instruction{font-size:10px;line-height:1.8;margin-top:12px}.prop-zone{left:50%!important;top:410px!important;scale:.8;--launch-y:-100px;order:1}.prop-label{display:none}.photo{width:94px;height:123px;left:-47px;top:-61px}.photo img{height:79px}.theme-dock{position:relative;left:auto;right:auto;bottom:auto;order:3;width:calc(100% + 44px);margin:29px -22px 0;padding:17px 22px 18px;background:#ffffff05;border-top:1px solid #ffffff1c}.theme-tabs{display:flex;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.theme-tabs::-webkit-scrollbar{display:none}.theme-tab{min-width:106px;flex:0 0 auto;padding:12px 11px}.dockhead{font-size:8px;letter-spacing:1.3px}.theme-tab span{font-size:11px}.footerline{font-size:8px;gap:10px}.stage[data-theme=love] .shade{background:linear-gradient(0deg,var(--base) 35%,#49132390 74%,#49132330)}.stage[data-theme=anniversary] .story{border-left:0}.stage[data-theme=wedding] .story{text-align:left}.stage[data-theme=wedding] .description{margin:0 0 19px}.stage[data-theme=love] .eyebrow{transform:none}.price-dialog{width:calc(100% - 20px);max-height:94svh;border-radius:16px}.sheet{padding:23px 16px}.sheet-head h2{font-size:32px}.sheet-label{font-size:8px;letter-spacing:1.5px}.sheet-head p{font-size:11px}.plans{grid-template-columns:1fr;gap:18px}.plan{padding:21px}.plan li{font-size:12px}.price-dialog[data-theme=love] .sheet{border-width:6px}.price-dialog[data-theme=love] .plan:nth-child(n){transform:none}.price-dialog[data-theme=anniversary] .sheet{border-left-width:9px}.price-dialog[data-theme=wedding]{border-radius:50px 50px 5px 5px}.price-dialog[data-theme=wedding] .sheet{border-width:6px}.price-dialog[data-theme=wedding] .sheet-head{padding:25px 0 0}.price-dialog[data-theme=wedding] .sheet-head .close{top:-9px;right:-5px}.price-dialog[data-theme=wedding] .plan{border-radius:65px 65px 4px 4px}.price-dialog[data-theme=portfolio] .sheet h2{font-size:29px}.price-dialog[data-theme=business] .sheet h2{font-size:32px}.sheet-foot{font-size:10px;line-height:1.8}.tier-tabs{position:sticky;top:0;z-index:3;background:var(--paper);padding:8px 0;margin:15px 0;gap:6px}.tier-tabs button{font-size:10px;padding:9px 10px}.price-dialog[data-theme=portfolio] .tier-tabs{background:#092f3b}.info-body{padding:23px 18px}.info-head h2{font-size:33px}.explore-grid{grid-template-columns:repeat(2,1fr);gap:10px}.explore-card img{height:110px}.explore-card .meta{padding:13px}.explore-card strong{font-size:12px}.steps{grid-template-columns:repeat(2,1fr);gap:18px}.contact{font-size:12px}.copybtn{margin:12px 0 0}.close{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.photo{opacity:1;transform:translate(var(--dx),var(--dy)) rotate(var(--angle))}.scene-backdrop{transform:none}}
.photo-image{display:block;width:100%;height:86px;background-size:300% 100%;background-repeat:no-repeat;pointer-events:none}.zoom-image{display:block;width:100%;height:100%;background-size:300% 100%;background-repeat:no-repeat}.plans{grid-template-columns:1fr;max-width:700px;margin:0 auto}.plan-cover{height:160px;max-width:700px;margin:0 auto 22px;background-size:300% 100%;background-repeat:no-repeat;border-radius:14px;box-shadow:0 12px 30px #0002}.plan ul{display:grid;grid-template-columns:1fr 1fr;column-gap:25px}.price-dialog{width:min(820px,calc(100% - 40px))}.price-dialog[data-theme=wedding] .plan{border-radius:45px 45px 4px 4px}.stage[data-theme=confession] .prop-zone{display:none}.letter-hotspot{position:absolute;z-index:6;width:200px;height:150px;transform:translate(-50%,-50%);background:transparent;border:1px solid #ead1ff4a;border-radius:14px;box-shadow:0 0 25px #d4afff26;animation:letter-pulse 2.8s ease-in-out infinite}.letter-hotspot span{position:absolute;top:100%;left:50%;transform:translateX(-50%);white-space:nowrap;background:#30214fc9;border:1px solid #dec4ff60;border-radius:99px;padding:9px 14px;font-size:11px}.letter-hotspot:hover{background:#ecd8ff15}.theme-effects{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.theme-effects i{position:absolute;left:var(--ex);top:var(--ey);font-style:normal;font-size:var(--es);color:var(--accent);opacity:0;animation:drift var(--et) linear infinite;animation-delay:calc(-1 * var(--ed))}.stage[data-theme=birthday] .theme-effects i{animation-name:confetti}.stage[data-theme=love] .theme-effects i{animation-name:heart-rise;color:#ffc2d8}.stage[data-theme=anniversary] .theme-effects i{animation-name:leaf-fall;opacity:.6}.stage[data-theme=confession] .theme-effects i{animation-name:firefly;filter:drop-shadow(0 0 7px #d7bbff)}.stage[data-theme=wedding] .theme-effects i{animation-name:leaf-fall;color:#fff4d6}.stage[data-theme=memory] .theme-effects i{animation-name:bubble-rise;border-radius:50%;color:#c8ffd6}.stage[data-theme=portfolio] .theme-effects i{animation-name:camera-flash;font-size:30px;filter:drop-shadow(0 0 12px #9de9ff)}.stage[data-theme=business] .theme-effects i{animation-name:steam;color:#fff0dc;font-size:32px}.stage[data-theme=confession] .scene-backdrop{animation:none}@keyframes letter-pulse{50%{box-shadow:0 0 36px #d4afff60;border-color:#ead1ff99}}@keyframes drift{0%{opacity:0;translate:0 50px}30%,70%{opacity:.5}100%{opacity:0;translate:30px -100px;rotate:35deg}}@keyframes confetti{0%{opacity:0;translate:0 -100px;rotate:0}20%,80%{opacity:.6}100%{opacity:0;translate:40px 350px;rotate:320deg}}@keyframes heart-rise{0%{opacity:0;translate:0 150px;scale:.6}40%{opacity:.55}100%{opacity:0;translate:-30px -200px;scale:1.2}}@keyframes leaf-fall{0%{opacity:0;translate:-40px -160px;rotate:0}20%,80%{opacity:.5}100%{opacity:0;translate:80px 350px;rotate:200deg}}@keyframes firefly{0%,100%{opacity:.1;translate:0 0}40%{opacity:.8;translate:30px -30px}70%{opacity:.2;translate:-20px 20px}}@keyframes bubble-rise{0%{opacity:0;translate:0 180px;scale:.4}30%,70%{opacity:.5}100%{opacity:0;translate:20px -220px;scale:1.5}}@keyframes camera-flash{0%,80%,100%{opacity:0;scale:.4}83%{opacity:.9;scale:1.8}86%{opacity:.1;scale:1}}@keyframes steam{0%{opacity:0;translate:0 90px;scale:.6}40%{opacity:.25}100%{opacity:0;translate:20px -130px;scale:2}}
@media(max-width:700px){.photo-image{height:79px}.price-dialog{width:calc(100% - 20px)}.plan ul{grid-template-columns:1fr}.plan-cover{height:135px}.letter-hotspot{width:135px;height:110px}.letter-hotspot span{font-size:10px;padding:8px 11px}.theme-effects{height:52svh;min-height:365px}.stage[data-theme=confession] .story{margin-top:355px}}
@media(prefers-reduced-motion:reduce){.theme-effects{display:none}.letter-hotspot{animation:none}}
.price-dialog[data-theme=confession]{border-radius:5px;box-shadow:0 25px 90px #14082b80}.price-dialog[data-theme=confession] .sheet{border:12px solid #d6c0ed;background:repeating-linear-gradient(0deg,#fffaff,#fffaff 27px,#efe1f9 27px,#efe1f9 28px)}.price-dialog[data-theme=confession] .sheet-label:before{content:'♡ ';font-size:20px}.price-dialog[data-theme=love] .plan:nth-child(n){transform:none}.price-dialog[data-theme=portfolio] .plan-cover{border:1px solid #8adbc755;border-radius:4px}
@media(max-width:700px){.price-dialog[data-theme=confession] .sheet{border-width:7px}}

.plan-cover{float:right;width:120px;height:120px;margin:0 0 14px 18px;background-size:300% 100%;border-radius:8px}.plan ul{clear:both}@media(max-width:700px){.plan-cover{width:96px;height:96px;margin-left:12px}.plan .number{display:block}.cost{font-size:45px}}

@media(min-width:701px){.prop-zone{--launch-y:var(--desktop-launch-y,0px)}}

.theme-english{font-size:14px;font-weight:650;letter-spacing:.5px;color:var(--accent);margin:0 0 5px}.theme-tab span{white-space:normal;font-size:10px;line-height:1.35;min-height:27px}.theme-tab small{font-size:9px;opacity:.75}.theme-tab{gap:5px}.explore-card strong{line-height:1.5}.sheet-head h2{font-size:38px}@media(max-width:700px){.theme-tab{min-width:153px;max-width:153px}.theme-english{font-size:13px}.story .chinese{font-size:17px}.sheet-head h2{font-size:27px}.footerline a{max-width:55%;line-height:1.5}}
@media(min-width:701px){.story{top:43%}.prop-label{display:none}.theme-tab{padding-top:11px;padding-bottom:12px}.theme-tab span{font-size:9px;min-height:38px}}
