@font-face{font-family:Ma Shan Zheng;src:url(/fonts/MaShanZheng-400-subset.woff2) format("woff2");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:ZCOOL XiaoWei;src:url(/fonts/ZCOOLXiaoWei-400-subset.woff2) format("woff2");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:LXGW WenKai;src:url(/fonts/LXGWWenKai-400-subset.woff2) format("woff2");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:YShi Written;src:url(/fonts/YShiWrittenSC-400-cover.woff2) format("woff2");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:Archivo Black;src:url(/fonts/ArchivoBlack-400-cover.woff2) format("woff2");font-style:normal;font-weight:400;font-display:block}*{box-sizing:border-box}html{background:#fff;scroll-behavior:smooth;scroll-snap-type:y proximity}body{margin:0;min-width:320px;color:#171717;background:#fff;font-family:LXGW WenKai;letter-spacing:.015em;font-synthesis:none;-webkit-font-smoothing:antialiased}.invitation{--page-gutter: 5cqw;--page-content-max: 90cqw;width:min(100%,900px);margin:0 auto;overflow:hidden;background:#f0ede2;box-shadow:0 0 28px #00000012;container-type:inline-size}.invitation-page{position:relative;width:100%;height:133.333cqw;overflow:hidden;scroll-snap-align:start;background-color:#f0ede2;background-image:url(/assets/paper.webp);background-repeat:repeat;background-size:512px 512px}.invitation-page img{display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.photo-placeholder{display:flex;align-items:center;justify-content:center;overflow:hidden;border:.45cqw solid #7c3aed;background:repeating-linear-gradient(135deg,#7c3aed1f 0 1.2cqw,#ffffff73 1.2cqw 2.4cqw);color:#6d28d9;text-align:center;font:400 2.2cqw/1.35 ZCOOL XiaoWei;letter-spacing:.12cqw;box-shadow:inset 0 0 0 .35cqw #ffffffb8}.photo-placeholder span{padding:1.2cqw 1.8cqw;border-radius:.8cqw;background:#ffffffe0}.photo-placeholder small{display:block;margin-top:.5cqw;font-size:.72em;letter-spacing:.08cqw}.cover .eyebrow{position:absolute;top:2.1cqw;left:50%;width:max-content;max-width:var(--page-content-max);margin:0;transform:translate(-50%);color:#a70c18;font:400 3.4cqw/1 Archivo Black;letter-spacing:-.14cqw;text-align:center;white-space:nowrap}.double-happiness{position:absolute;top:23.8cqw;left:21.7cqw;color:#a70c18;font:400 14cqw/.86 ZCOOL XiaoWei;transform:scaleX(1.06);transform-origin:left center}.names{position:absolute;z-index:2;top:39.8cqw;left:18.9cqw;margin:0;font-size:2.7cqw;letter-spacing:.3cqw}.cover-title{position:absolute;z-index:3;inset:0;margin:0;color:#18130f;font-family:YShi Written;font-weight:400;pointer-events:none}.slogan-line{position:absolute;display:inline-flex;align-items:baseline;gap:.32cqw;line-height:.86;white-space:nowrap;transform-origin:left center}.slogan-line>span{display:inline-block;transform-origin:50% 70%}.slogan-today{top:7.8cqw;left:40.2cqw;gap:.05cqw;font-size:11.8cqw;transform:rotate(-5deg)}.slogan-today>:nth-child(1){transform:translateY(.08em) rotate(-4deg) scale(.97,1.04)}.slogan-today>:nth-child(2){transform:translateY(-.06em) rotate(5deg) scale(1.04,.97)}.slogan-comma{margin-left:.35cqw;font-size:.68em;transform:translateY(-.18em) rotate(11deg) scale(.9)}.slogan-action{top:20.7cqw;left:43.8cqw;font-size:10.2cqw;transform:rotate(1deg)}.slogan-action>:nth-child(1){transform:translateY(.1em) rotate(-7deg) scale(.96,1.04)}.slogan-action>:nth-child(2){transform:translateY(-.05em) rotate(4deg) scale(1.03,.97)}.slogan-action>:nth-child(3){margin-left:.55cqw;transform:translateY(.08em) rotate(-6deg) scale(.96,1.04)}.slogan-action>:nth-child(4){transform:translateY(-.08em) rotate(7deg) scale(1.03,.98)}.slogan-question{top:33.2cqw;left:49.2cqw;gap:.48cqw;font-size:11.8cqw;transform:rotate(3deg)}.slogan-question>:nth-child(1){transform:translateY(.08em) rotate(-6deg) scale(.97,1.04)}.slogan-question>:nth-child(2){transform:translateY(-.06em) rotate(6deg) scale(1.04,.97)}.slogan-question>:nth-child(3){margin-left:.75cqw;transform:translateY(.02em) rotate(9deg) scale(.9,1.05)}.slogan-answer{top:46.8cqw;left:56cqw;gap:.45cqw;font-size:13.2cqw;transform:rotate(-4deg)}.slogan-answer>:first-child{transform:translateY(.08em) rotate(-8deg) scale(.96,1.05)}.slogan-answer>:nth-child(2){transform:translateY(-.1em) rotate(7deg) scale(1.04,.96)}.slogan-bangs{display:inline-flex!important;align-items:flex-end;gap:.38cqw;margin-left:.8cqw;transform:rotate(5deg)}.slogan-bangs i{display:inline-block;color:#17110f;font: 400 .66em/.9 Archivo Black;transform-origin:center bottom}.slogan-bangs i:nth-child(1){color:#13277f;transform:translateY(-.06em) rotate(-8deg)}.slogan-bangs i:nth-child(2){transform:translateY(.1em) rotate(4deg) scale(.82)}.slogan-bangs i:nth-child(3){transform:translateY(-.12em) rotate(11deg) scale(.68)}.tone-blue{color:#13277f}.tone-red{color:#b10c23}.tone-pink{color:#cf4b83}.tone-orange{color:#e79a09}.tone-ink{color:#17110f}.cover-couple{position:absolute;left:12.22cqw;bottom:0;width:47.78cqw;aspect-ratio:430 / 820}.letter-copy{position:absolute;z-index:2;top:6.2cqw;right:13cqw;text-align:right;font:400 2.9cqw/1.55 LXGW WenKai}.letter-copy h2{margin:0 0 2cqw;font-size:3.2cqw}.letter-copy p{margin:1.8cqw 0}.letter-copy .spaced{margin-top:6.2cqw}.signature{display:flex;align-items:center;justify-content:flex-end;gap:3cqw;margin-top:9.1cqw;font:400 2.8cqw/1 LXGW WenKai}.signature i{width:1px;height:7cqw;background:#222}.letter-photo{position:absolute;left:50%;bottom:2cqw;width:78cqw;max-width:var(--page-content-max);aspect-ratio:702 / 542;transform:translate(-50%)}.details>h2{width:var(--page-content-max);margin:3cqw auto 0;text-align:center;color:#990c16;font:400 5.4cqw/1 Ma Shan Zheng;letter-spacing:1cqw}.red-subtitle{width:var(--page-content-max);margin:1.8cqw auto;text-align:center;color:#a60e19;font-size:2cqw}.newlyweds{display:flex;width:var(--page-content-max);margin-inline:auto;justify-content:center;gap:7cqw}.newlyweds figure{margin:0;text-align:center;color:#a60e19;font-size:2.1cqw}.newlyweds .portrait-placeholder{width:19cqw;height:19cqw;border-radius:50%;font-size:1.55cqw}.newlyweds figcaption{margin-top:1.5cqw}.info-block{position:relative;top:2cqw;width:var(--page-content-max);margin-inline:auto;text-align:center;font-size:1.9cqw;line-height:1.15}.info-block h3{margin:5.2cqw 0 1.7cqw;font-size:1.9cqw;font-weight:400}.info-block p{margin:1.4cqw 0}.bouquet{width:7.7cqw;height:auto;margin:0;mix-blend-mode:multiply;flex:none}.details:before{content:"";position:absolute;z-index:1;right:var(--page-gutter);bottom:2.5cqw;left:var(--page-gutter);height:39cqw;border-radius:52% 46% 3cqw 3cqw;background:#efe2cf59;filter:blur(.25cqw);transform:rotate(-.8deg)}.location-couple{position:absolute;z-index:6;left:var(--page-gutter);bottom:39cqw;width:24.5cqw;max-width:var(--page-content-max);aspect-ratio:262 / 393;border-radius:14cqw 14cqw 1.2cqw 1.2cqw;box-shadow:1.1cqw 1cqw #fbf7ede0}.venue-card{position:absolute;z-index:4;right:var(--page-gutter);bottom:5cqw;left:var(--page-gutter);max-width:var(--page-content-max);overflow:visible}.venue-card__content{padding:0 2cqw 1.7cqw;text-align:center}.venue-card__heading{display:flex;align-items:center;justify-content:center;gap:.9cqw;margin:0 0 .7cqw}.venue-card__label{margin:0;color:#a70c18;font:400 clamp(11px,1.45cqw,13px)/1 "ZCOOL XiaoWei";letter-spacing:.25cqw}.venue-card h3{margin:0;text-align:center}.venue-card__name{margin:0;padding:0 0 .25cqw;border:0;color:#332f2b;background:transparent;cursor:pointer;text-align:center;font:400 clamp(17px,2.45cqw,22px)/1.25 "ZCOOL XiaoWei";text-shadow:0 .5cqw 1.2cqw rgb(167 12 24 / 9%);transition:color .2s ease,text-shadow .2s ease}.venue-card__name:hover,.venue-card__name:focus-visible{color:#a70c18;text-shadow:0 .4cqw 1cqw rgb(167 12 24 / 18%)}.venue-map{position:relative;isolation:isolate;aspect-ratio:16 / 10;overflow:hidden;border:0;border-radius:2.4cqw;padding:0;background:transparent;box-shadow:none}.venue-map__canvas{position:absolute;z-index:1;inset:0;overflow:hidden;border-radius:2.2cqw;background:transparent!important}.venue-map__canvas .amap-maps{--map-edge-transparency: clamp(16px, 2.2cqw, 22px);background:transparent!important;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 var(--map-edge-transparency),#000 calc(100% - var(--map-edge-transparency)),transparent 100%),linear-gradient(to bottom,transparent 0,#000 var(--map-edge-transparency),#000 calc(100% - var(--map-edge-transparency)),transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,#000 var(--map-edge-transparency),#000 calc(100% - var(--map-edge-transparency)),transparent 100%),linear-gradient(to bottom,transparent 0,#000 var(--map-edge-transparency),#000 calc(100% - var(--map-edge-transparency)),transparent 100%);mask-composite:intersect;mask-mode:alpha}.venue-map__status{position:absolute;z-index:2;inset:50% auto auto 50%;margin:0;color:#786b60;font:400 clamp(11px,1.45cqw,13px)/1.5 "ZCOOL XiaoWei";white-space:nowrap;transform:translate(-50%,-50%)}.venue-map[data-state=ready] .venue-map__status{display:none}.venue-map[data-state=error] .venue-map__status{color:#95151f}.venue-map .amap-marker-label{border:0;border-radius:999px;padding:clamp(4px,.65cqw,6px) clamp(8px,1.2cqw,11px);color:#821019;background:#fbf7ede0;box-shadow:0 .5cqw 1.5cqw #4a221c1a;font:400 clamp(10px,1.3cqw,12px)/1 "ZCOOL XiaoWei";white-space:nowrap}.venue-map .amap-logo,.venue-map .amap-copyright{opacity:.58!important}.venue-card__name:focus-visible,.global-nav-shortcut:focus-visible{outline:3px solid #f0a4ac;outline-offset:3px}.schedule{height:72cqw;aspect-ratio:auto}.timeline{position:absolute;z-index:2;top:5.5cqw;left:50%;width:42cqw;margin:0;padding:0;list-style:none;font-size:2.1cqw;transform:translate(-50%)}.timeline li{display:grid;grid-template-columns:5cqw 21cqw 16cqw;align-items:center;margin:0}.timeline time,.timeline b{text-align:center;white-space:nowrap}.timeline .icon{position:relative;justify-self:center;width:1.9cqw;height:1.9cqw;border:.2cqw solid #ad3945;transform:rotate(45deg)}.timeline .icon:after{content:"";position:absolute;inset:.48cqw;border-radius:50%;background:#ad3945}.timeline b{font-weight:400}.schedule-couple{position:absolute;top:15cqw;left:50%;width:43cqw;max-width:var(--page-content-max);aspect-ratio:385 / 510;transform:translate(-50%)}.tips{font-size:2.35cqw;line-height:1.7;letter-spacing:.05cqw}.tips h2{display:flex;align-items:center;justify-content:center;gap:2cqw;margin:0 0 4.2cqw;font-size:2.8cqw;font-weight:400;letter-spacing:.7cqw;white-space:nowrap}.tips h2:before,.tips h2:after{content:"";width:5cqw;height:.14cqw;background:#a70c187a}.tips ul{margin:0;padding:0;list-style:none}.tips li{display:grid;grid-template-columns:2cqw 1fr;gap:1.8cqw;margin:0 0 3.4cqw;padding:0}.tips li:before{content:"";width:1.5cqw;height:1.5cqw;margin-top:1.15cqw;border-radius:50%;background:#b10c18}.ending .tips{position:absolute;z-index:2;top:4cqw;left:17cqw;right:17cqw;max-width:var(--page-content-max)}.ending-couple{position:absolute;left:7.75cqw;bottom:0;width:84.5cqw;max-width:var(--page-content-max);aspect-ratio:638 / 655}.global-nav-shortcut{--shortcut-edge: clamp(10px, 3vw, 16px);position:fixed;z-index:100;right:max(var(--shortcut-edge),calc((100vw - 900px) / 2 + var(--shortcut-edge)));bottom:calc(clamp(10px,2svh,18px) + env(safe-area-inset-bottom));display:inline-flex;min-height:clamp(38px,4.5svh,44px);align-items:center;gap:clamp(5px,1.5vw,7px);padding:0 clamp(11px,3.5vw,15px);border:1px solid rgb(255 255 255 / 70%);border-radius:999px;color:#fff;background:#9a0c17f0;box-shadow:0 clamp(5px,1.5vw,8px) clamp(16px,5vw,24px) #51050c40;font:400 clamp(12px,3.2vw,14.5px)/1 "ZCOOL XiaoWei";text-decoration:none;opacity:0;pointer-events:none;transform:translateY(16px);transition:opacity .2s ease,transform .2s ease;-webkit-tap-highlight-color:transparent}.global-nav-shortcut svg{width:clamp(16px,4vw,18px);height:clamp(16px,4vw,18px);fill:currentColor;flex:none}body.navigation-ready .global-nav-shortcut{opacity:1;pointer-events:auto;transform:translateY(0)}.action-toast{position:fixed;z-index:110;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));max-width:calc(100vw - 40px);padding:11px 18px;border-radius:999px;color:#fff;background:#1e1b19e5;font:400 14px/1.35 ZCOOL XiaoWei;text-align:center;opacity:0;pointer-events:none;transform:translate(-50%,10px);transition:opacity .18s ease,transform .18s ease}.action-toast.is-visible{opacity:1;transform:translate(-50%)}@media(max-width:900px){.invitation{box-shadow:none}}@media(max-width:480px){.global-nav-shortcut__context{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.share-thumb{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);pointer-events:none}
