@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-latin-500-normal-B9SDL8cy.woff2) format("woff2"),url(/assets/caveat-latin-500-normal-Do9veZfZ.woff) format("woff")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/caveat-latin-600-normal-zlTlWIYU.woff2) format("woff2"),url(/assets/caveat-latin-600-normal-DUjB8dgm.woff) format("woff")}@font-face{font-family:ZCOOL XiaoWei;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/zcool-xiaowei-chinese-simplified-400-normal-D-er3HRg.woff2) format("woff2"),url(/assets/zcool-xiaowei-chinese-simplified-400-normal-CkmzExv5.woff) format("woff")}@font-face{font-family:ZCOOL XiaoWei;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/zcool-xiaowei-latin-400-normal-Dfvj30mx.woff2) format("woff2"),url(/assets/zcool-xiaowei-latin-400-normal-CkkH6A-C.woff) format("woff")}:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:#253a43;background:#8eafbf;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #253a43;--ink-soft: #526b74;--paper: rgba(248, 252, 253, .5);--paper-deep: rgba(231, 242, 244, .56);--blush: #e28b8b;--blush-deep: #ba5e65;--lilac: #a27bc0;--sage: #6f9368;--sage-pale: #dbe2d2;--blue: #8aa6b7;--gold: #b8975d;--line: rgba(255, 255, 255, .52);--shadow: 0 24px 70px rgba(28, 61, 73, .18);--glass-bg: linear-gradient(145deg, rgba(255, 255, 255, .58), rgba(235, 247, 249, .32));--glass-bg-strong: linear-gradient(145deg, rgba(255, 255, 255, .72), rgba(235, 247, 249, .48));--glass-border: rgba(255, 255, 255, .68);--glass-shadow: 0 24px 64px rgba(29, 62, 73, .2), inset 0 1px 0 rgba(255, 255, 255, .78)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#8eafbf}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;color:var(--ink);background:#8eafbf;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button,input,textarea{font:inherit}a{color:inherit}img{display:block;max-width:100%}.mobile-prototype{width:100%;min-height:100svh;overflow:clip;position:relative;isolation:isolate;background:transparent}.page-background-video{position:fixed;z-index:0;top:-2%;right:-2%;bottom:-2%;left:-2%;width:104%;height:104%;max-width:none;object-fit:cover;object-position:center 48%;filter:saturate(.9) contrast(.95) brightness(.98);pointer-events:none}.cover-background-video,.hero-scroll-transition-frame{position:fixed;z-index:1;top:-2%;right:-2%;bottom:-2%;left:-2%;width:104%;height:104%;max-width:none;object-fit:cover;object-position:center 48%;filter:saturate(.9) contrast(.95) brightness(.98);pointer-events:none}.cover-background-video{opacity:var(--cover-video-opacity, 1);will-change:opacity}.hero-scroll-transition-frame{z-index:2;opacity:var(--scroll-frame-opacity, 0);will-change:opacity}.page-video-overlay{position:fixed;z-index:3;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#17303b05,#e4f2f314 54%,#e0f0ee24),radial-gradient(circle at 50% 42%,rgba(255,255,255,.06),transparent 56%);pointer-events:none}.mobile-prototype>main{position:relative;z-index:4}.story-couple{position:fixed;z-index:5;top:0;right:0;bottom:0;left:0;-webkit-mask-image:linear-gradient(to top,transparent 0%,transparent var(--story-wipe-start, -12%),rgba(0,0,0,.56) var(--story-wipe-mid, -6%),#000 var(--story-wipe-end, 2%),#000 100%);mask-image:linear-gradient(to top,transparent 0%,transparent var(--story-wipe-start, -12%),rgba(0,0,0,.56) var(--story-wipe-mid, -6%),#000 var(--story-wipe-end, 2%),#000 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;pointer-events:none;will-change:mask-image}.story-couple__media{position:absolute;bottom:-1.5svh;left:50%;width:min(118vw,610px);height:78svh;max-width:none;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 20px rgba(47,53,41,.2));transform:translate3d(-50%,0,0)}.section-pad{position:relative;padding:94px max(20px,calc((100vw - 1080px)/2))}.eyebrow,.section-heading__kicker{display:block;margin-bottom:12px;color:var(--blush-deep);font-family:Caveat,cursive;font-size:1rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.section-heading{width:min(100%,660px);margin:0 auto 42px;padding:24px 20px;border:1px solid var(--glass-border);border-radius:28px;background:var(--glass-bg);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(24px) saturate(138%);backdrop-filter:blur(24px) saturate(138%);text-align:center}.section-heading h2,.invitation__card h2,.nav-sheet h2,.closing__copy h2{margin:0;font-family:ZCOOL XiaoWei,serif;font-weight:400;letter-spacing:.04em}.section-heading h2{color:var(--ink);font-size:clamp(2rem,7vw,3.3rem);line-height:1.23}.section-heading p{max-width:520px;margin:18px auto 0;color:var(--ink-soft);font-size:.95rem;line-height:1.9}[data-reveal]{opacity:0;transform:translate3d(0,24px,0);transition:opacity .76s ease,transform .82s cubic-bezier(.2,.75,.25,1);transition-delay:var(--delay, 0ms)}[data-reveal].is-visible{opacity:1;transform:translateZ(0)}.hero-scroll{position:relative;z-index:6;height:280svh;background:transparent}.hero{position:sticky;top:0;height:100svh;overflow:hidden;background:transparent;isolation:isolate}.hero__wash{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;background:#fff8ed12;pointer-events:none}.hero__copy{position:absolute;z-index:6;top:max(32px,calc(env(safe-area-inset-top) + 22px));left:50%;width:min(94%,680px);opacity:var(--hero-copy-opacity, 1);color:#fffdf7;text-align:center;text-shadow:0 2px 20px rgba(48,62,49,.28),0 1px 2px rgba(57,64,50,.34);transform:translate3d(-50%,var(--hero-copy-y, 0),0);will-change:transform,opacity}.hero__welcome{display:block;margin-bottom:4px;color:#fffaf2;font-family:ZCOOL XiaoWei,serif;font-size:clamp(1.72rem,8.2vw,4rem);font-weight:400;line-height:1.08;letter-spacing:.08em;white-space:nowrap}.hero__copy>p{margin:9px 0 14px;color:#fffdf7e0;font-family:Caveat,cursive;font-size:.72rem;font-weight:600;letter-spacing:.12em}.hero__copy h1{display:flex;align-items:center;justify-content:center;gap:10px;margin:0;color:#fffdf7;font-family:ZCOOL XiaoWei,serif;font-size:clamp(1.65rem,7.5vw,3rem);font-weight:400;letter-spacing:.08em}.hero__copy h1 i{color:#f8d9d5;font-family:Caveat,cursive;font-size:1.05em;font-style:normal;letter-spacing:0}.hero__date{display:inline-flex;align-items:center;gap:12px;margin-top:10px;padding:6px 14px;border:1px solid rgba(255,253,247,.48);border-radius:999px;background:#4a56432e;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);font-family:Caveat,cursive;font-size:.96rem;letter-spacing:.08em}.hero__date b{color:#fffdf7d1;font-family:inherit;font-size:.75em;font-weight:500}.hero__scroll-note{position:absolute;z-index:7;top:18%;left:50%;display:grid;gap:8px;width:min(84%,520px);opacity:var(--hero-note-opacity, 0);color:#fffdf7;text-align:center;text-shadow:0 2px 18px rgba(46,56,42,.4);transform:translate3d(-50%,var(--hero-note-y, 24px),0);will-change:transform,opacity}.hero__scroll-note span{font-family:ZCOOL XiaoWei,serif;font-size:clamp(1.8rem,7vw,3.5rem);letter-spacing:.08em}.hero__scroll-note small{color:#fffdf7d1;font-family:Caveat,cursive;font-size:.9rem;letter-spacing:.2em;text-transform:uppercase}.hero__transition{position:absolute;z-index:5;right:0;bottom:-1px;left:0;height:46%;opacity:var(--hero-transition-opacity, 0);background:linear-gradient(to bottom,#e8f7f900,#e8f7f912 52%,#ecf8f826 88%);transform:translate3d(0,var(--hero-transition-y, 52%),0);will-change:transform,opacity;pointer-events:none}.hero__motion-toggle{position:absolute;z-index:8;right:max(12px,env(safe-area-inset-right));bottom:max(72px,calc(env(safe-area-inset-bottom) + 62px));display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:6px;padding:7px 10px;border:1px solid rgba(255,255,255,.62);border-radius:999px;color:#fffdf7;background:linear-gradient(145deg,#344f4c94,#55717c5c);box-shadow:0 10px 28px #1d363d38,inset 0 1px #fff6;opacity:var(--hero-control-opacity, 1);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);cursor:pointer;font-size:.66rem;letter-spacing:.08em;will-change:opacity}.scroll-cue{position:absolute;z-index:7;bottom:max(14px,env(safe-area-inset-bottom));left:50%;display:flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.64);color:#34505b;background:var(--glass-bg-strong);box-shadow:0 10px 30px #22424e2e,inset 0 1px #ffffffbf;font-size:.75rem;letter-spacing:.13em;text-decoration:none;opacity:var(--hero-cue-opacity, 1);transform:translate(-50%);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);animation:cue-bob 2.3s ease-in-out infinite;will-change:opacity}@keyframes cue-bob{0%,to{translate:0 0}50%{translate:0 5px}}.invitation{position:relative;z-index:4;isolation:isolate;overflow:clip;background:transparent}.section-scroll-content{position:relative;z-index:1;min-height:100svh}.section-scroll-thread{position:absolute;z-index:2;top:11%;right:7px;bottom:11%;width:14px;pointer-events:none}.section-scroll-thread:before,.section-scroll-thread:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;transform-origin:center top}.section-scroll-thread:before{background:#6f936838}.section-scroll-thread:after{background:linear-gradient(var(--blush),var(--sage));transform:scaleY(var(--section-progress, 0))}.section-scroll-thread span{position:absolute;z-index:1;top:var(--section-marker-y, 0%);left:50%;width:10px;height:10px;border:2px solid #fffaf1;border-radius:55% 45% 58% 42%;background:var(--blush-deep);box-shadow:0 3px 10px #644b3d2e;transform:translate(-50%,-50%) rotate(18deg);transition:top 80ms linear}.invitation__card{position:relative;z-index:1;width:min(100%,760px);margin:0 auto;padding:54px 22px 36px;overflow:hidden;border:1px solid var(--glass-border);border-radius:34px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(28px) saturate(145%);backdrop-filter:blur(28px) saturate(145%);text-align:center}.invitation__card>svg{margin:0 auto 17px;color:var(--blush-deep)}.invitation__card h2{font-size:clamp(2rem,7.3vw,3rem);line-height:1.45}.invitation__card>p{max-width:540px;margin:20px auto 28px;color:var(--ink-soft);font-size:.92rem;line-height:2}.invitation__details{display:grid;width:min(100%,620px);margin:0 auto;border-top:1px solid var(--line)}.invitation__details>div{display:grid;grid-template-columns:34px 1fr;align-items:center;min-height:72px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--sage);text-align:left}.invitation__details>.invitation__date-detail{grid-template-columns:124px auto;justify-content:center;gap:18px;min-height:164px;padding:16px 4px}.invitation__details span{display:flex;flex-direction:column;color:var(--ink-soft);font-size:.78rem;line-height:1.5}.invitation__details b{color:var(--ink);font-family:ZCOOL XiaoWei,serif;font-size:1.05rem;font-weight:400}.invitation__date-detail span em{margin-top:4px;color:var(--blush-deep);font-size:.72rem;font-style:normal;letter-spacing:.08em}.mini-calendar{width:124px;padding:10px 9px 9px;border:1px solid rgba(255,255,255,.7);border-radius:18px;color:var(--ink);background:linear-gradient(145deg,#ffffffb8,#eef8fa73);box-shadow:0 12px 28px #1e434f24,inset 0 1px #ffffffdb;-webkit-backdrop-filter:blur(20px) saturate(145%);backdrop-filter:blur(20px) saturate(145%)}.mini-calendar__heading{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:7px;padding:0 2px 6px;border-bottom:1px solid rgba(186,94,101,.2)}.mini-calendar__heading b{color:var(--blush-deep);font-size:.88rem}.mini-calendar__heading small{color:var(--ink-soft);font-family:Caveat,cursive;font-size:.72rem}.mini-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}.mini-calendar__grid em,.mini-calendar__grid span{display:grid;min-width:0;aspect-ratio:1;place-items:center;font-size:.55rem;font-style:normal;line-height:1}.mini-calendar__grid em{color:#9b897b;font-size:.48rem}.mini-calendar__grid .is-wedding-day{border-radius:50%;color:#fffaf4;background:var(--blush-deep);box-shadow:0 0 0 2px #ba5e652e;font-weight:700;transform:rotate(4deg) scale(1.08)}.timeline{position:relative;isolation:isolate;overflow:clip;background:transparent}.timeline .section-heading,.timeline__list,.timeline__ending{position:relative;z-index:1}.timeline__list{position:relative;width:min(100%,720px);margin:0 auto}.timeline__list:before{content:"";position:absolute;top:30px;bottom:28px;left:26px;width:1px;background:#7e8f767a}.timeline__list:after{content:"";position:absolute;z-index:1;top:30px;bottom:28px;left:26px;width:2px;border-radius:999px;background:linear-gradient(var(--blush),var(--sage));transform:scaleY(var(--section-progress, 0));transform-origin:center top}.timeline__item{position:relative;display:grid;grid-template-columns:54px 1fr;gap:18px;min-height:130px}.timeline__marker{position:relative;z-index:2;display:grid;width:52px;height:52px;place-items:center;border:1px solid rgba(255,255,255,.68);border-radius:50%;color:#fff;background:linear-gradient(145deg,#5b826bd1,#5c8091ad);box-shadow:0 0 0 7px #eff8f952,0 10px 26px #1e414b2e,inset 0 1px #ffffff6b;-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);font-family:Caveat,cursive;font-size:.9rem;opacity:.58;transform:scale(.86) rotate(-5deg);transition:opacity .52s ease,transform .62s cubic-bezier(.2,.8,.25,1)}.timeline__item.is-visible .timeline__marker{opacity:1;transform:scale(1) rotate(0)}.timeline__item--placeholder .timeline__marker{color:var(--sage);background:#eff8f994}.timeline__content{margin-bottom:22px;padding:17px 18px 18px;border:1px solid var(--glass-border);border-radius:22px;background:var(--glass-bg-strong);box-shadow:0 16px 38px #1f404a29,inset 0 1px #ffffffbd;-webkit-backdrop-filter:blur(26px) saturate(142%);backdrop-filter:blur(26px) saturate(142%)}.timeline__content>span{color:var(--blush-deep);font-size:.75rem;letter-spacing:.16em}.timeline__content h3{margin:6px 0;font-family:ZCOOL XiaoWei,serif;font-size:1.38rem;font-weight:400}.timeline__content p{margin:0;color:var(--ink-soft);font-size:.86rem;line-height:1.7}.timeline__item--placeholder .timeline__content{opacity:.66}.timeline__ending{display:flex;width:fit-content;align-items:center;gap:8px;margin:14px auto 0;padding:10px 16px;border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-bg);box-shadow:0 12px 30px #1f404a21;-webkit-backdrop-filter:blur(18px) saturate(138%);backdrop-filter:blur(18px) saturate(138%);color:var(--blush-deep);font-family:ZCOOL XiaoWei,serif;font-size:.95rem}.venue{background:transparent}.hotel-card{display:grid;width:min(100%,900px);margin:0 auto;overflow:hidden;border:1px solid var(--glass-border);border-radius:32px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(26px) saturate(142%);backdrop-filter:blur(26px) saturate(142%)}.hotel-card>img{width:100%;height:290px;object-fit:cover}.hotel-card figcaption{padding:28px 24px 30px}.hotel-card figcaption>span{display:flex;align-items:center;gap:6px;color:var(--blush-deep);font-size:.74rem;letter-spacing:.16em}.hotel-card h3{margin:13px 0 6px;font-family:ZCOOL XiaoWei,serif;font-size:clamp(1.55rem,6vw,2.3rem);font-weight:400}.hotel-card strong{display:block;margin-bottom:13px;color:var(--sage);font-size:1rem}.hotel-card p{margin:0 0 16px;color:var(--ink-soft);font-size:.86rem;line-height:1.8}.hotel-card a,.source-link{color:#8b7e71;font-size:.7rem;text-underline-offset:3px}.arrival-list{display:grid;width:min(100%,900px);gap:12px;margin:24px auto 0}.arrival-card{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:14px;min-height:90px;padding:16px;border:1px solid var(--glass-border);border-radius:22px;background:var(--glass-bg-strong);box-shadow:0 14px 36px #1f404a21,inset 0 1px #ffffffad;-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%)}.arrival-card__icon{display:grid;width:48px;height:48px;place-items:center;border-radius:50%;color:var(--sage);border:1px solid rgba(255,255,255,.68);background:#ebf7f485;box-shadow:inset 0 1px #ffffffc2}.arrival-card h3{margin:0 0 4px;font-family:ZCOOL XiaoWei,serif;font-size:1.08rem;font-weight:400}.arrival-card p{margin:0;color:var(--ink-soft);font-size:.8rem;line-height:1.6}.source-link{display:flex;width:min(100%,900px);align-items:center;justify-content:flex-end;gap:4px;margin:13px auto 0;padding:8px 12px;border:1px solid rgba(255,255,255,.58);border-radius:999px;background:#f4fbfb7a;box-shadow:0 10px 24px #1f404a1a;-webkit-backdrop-filter:blur(16px) saturate(135%);backdrop-filter:blur(16px) saturate(135%)}.map-section{background:transparent}.map-stack{display:grid;width:min(100%,900px);gap:30px;margin:0 auto}.map-panel{margin:0;padding:10px 10px 18px;border:1px solid var(--glass-border);border-radius:30px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%)}.map-panel__art{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.68);border-radius:22px;background:#f5fbfc8a;box-shadow:0 14px 34px #1c3c4824}.map-panel__art>img{width:100%;height:100%;object-fit:cover}.map-panel--province .map-panel__art{aspect-ratio:4 / 3}.map-panel--local .map-panel__art{aspect-ratio:1 / 1}.map-panel__caption{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:4px 14px;padding:18px 8px 0}.map-panel__caption>span{grid-row:1 / 3;color:var(--blush-deep);font-family:Caveat,cursive;font-size:.84rem;letter-spacing:.12em}.map-panel__caption>b{font-family:ZCOOL XiaoWei,serif;font-size:1.32rem;font-weight:400;letter-spacing:.08em}.map-panel__caption>p{margin:0;color:var(--ink-soft);font-size:.8rem;line-height:1.7}.map-location,.map-road{position:absolute;z-index:2;color:var(--ink);background:#f7fcfda8;border:1px solid rgba(255,255,255,.74);box-shadow:0 8px 22px #1c3e4929,inset 0 1px #ffffffd1;-webkit-backdrop-filter:blur(14px) saturate(145%);backdrop-filter:blur(14px) saturate(145%);font-size:clamp(.6rem,2.4vw,.78rem);line-height:1.3}.map-location{display:flex;align-items:center;gap:5px;padding:6px 8px;color:#7b4e55}.map-location--province{top:42%;left:22%}.map-location--province i{width:10px;height:10px;border:2px solid #fff9ef;border-radius:50%;background:var(--blush-deep);box-shadow:0 0 0 2px #ba5e6533}.map-road{padding:4px 8px;color:#6e6257;border-color:#866b5529}.map-road--jianshe{top:38.5%;left:28%}.map-road--yingbin{top:31%;left:55%;writing-mode:vertical-rl}.map-location--hotel{top:37%;left:61%}.map-location--station{top:77%;left:31%;color:#526f78}.primary-button,.floating-nav{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:9px;border:1px solid rgba(255,255,255,.58);border-radius:999px;color:#fff;background:linear-gradient(135deg,#437063d1,#456984c7);box-shadow:0 14px 34px #1f424d3d,inset 0 1px #ffffff61;-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);cursor:pointer}.map-section__button{display:flex;width:min(100%,330px);margin:28px auto 0;padding:0 24px;font-weight:600;letter-spacing:.08em}.closing{position:relative;min-height:760px;overflow:hidden;background:transparent}.closing__copy{position:absolute;z-index:2;top:50%;left:50%;width:min(88%,680px);padding:42px 24px;border:1px solid var(--glass-border);border-radius:34px;color:var(--ink);background:var(--glass-bg-strong);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(28px) saturate(145%);backdrop-filter:blur(28px) saturate(145%);text-align:center;text-shadow:0 1px 0 rgba(255,255,255,.48);transform:translate3d(-50%,-50%,0)}.closing__copy.is-visible{transform:translate3d(-50%,-50%,0)}.closing__copy .eyebrow{color:var(--blush-deep)}.closing__copy h2{font-size:clamp(2.35rem,10vw,4.4rem);line-height:1.35}.closing__copy>p{margin:22px 0;font-size:.94rem;line-height:2;letter-spacing:.07em}.closing__names{display:flex;align-items:center;justify-content:center;gap:12px;font-family:ZCOOL XiaoWei,serif;font-size:1.15rem;letter-spacing:.13em}.floating-nav{position:fixed;z-index:20;right:max(16px,calc((100vw - 1180px)/2));bottom:max(18px,calc(env(safe-area-inset-bottom) + 10px));min-width:126px;padding:0 20px;font-weight:600;letter-spacing:.06em;animation:floating-nav-in .28s ease both}@keyframes floating-nav-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.sheet-backdrop{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding:14px;background:#1b303857;-webkit-backdrop-filter:blur(10px) saturate(120%);backdrop-filter:blur(10px) saturate(120%);animation:backdrop-in .18s ease both}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.nav-sheet{position:relative;width:min(100%,520px);max-height:min(88svh,720px);overflow-y:auto;padding:34px 18px calc(20px + env(safe-area-inset-bottom));border-radius:28px 28px 20px 20px;border:1px solid var(--glass-border);color:var(--ink);background:var(--glass-bg-strong);box-shadow:0 26px 78px #142d364d,inset 0 1px #ffffffc7;-webkit-backdrop-filter:blur(34px) saturate(150%);backdrop-filter:blur(34px) saturate(150%);animation:sheet-in .3s cubic-bezier(.2,.8,.25,1) both}@keyframes sheet-in{0%{transform:translateY(28px);opacity:0}to{transform:translateY(0);opacity:1}}.nav-sheet__handle{position:absolute;top:10px;left:50%;width:44px;height:4px;border-radius:999px;background:#6252453b;transform:translate(-50%)}.icon-button{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.68);border-radius:50%;color:var(--ink);background:#eff8f98a;box-shadow:inset 0 1px #ffffffb8;cursor:pointer}.nav-sheet__close{position:absolute;top:22px;right:16px}.nav-sheet .eyebrow{padding-right:48px}.nav-sheet h2{padding-right:48px;font-size:1.9rem}.nav-sheet>p{margin:12px 42px 20px 0;color:var(--ink-soft);font-size:.8rem;line-height:1.65}.nav-sheet__options{display:grid;gap:9px}.nav-sheet__options a,.copy-option{display:grid;grid-template-columns:46px 1fr 20px;min-height:64px;align-items:center;gap:10px;padding:8px 12px;border:1px solid rgba(255,255,255,.66);border-radius:18px;color:var(--ink);background:linear-gradient(145deg,#ffffff8f,#eaf6f857);box-shadow:inset 0 1px #ffffffb8,0 10px 24px #1f404a1a;-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);text-align:left;text-decoration:none;cursor:pointer}.copy-option{width:100%}.nav-sheet__option-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;color:var(--sage);background:var(--sage-pale)}.nav-sheet__options strong,.nav-sheet__options small{display:block}.nav-sheet__options strong{font-size:.92rem}.nav-sheet__options small{margin-top:3px;color:var(--ink-soft);font-size:.7rem}:focus-visible{outline:3px solid rgba(88,125,130,.72);outline-offset:3px}@media(min-width:720px){.section-pad{padding-top:120px;padding-bottom:120px}.story-couple__media{bottom:-2svh;width:min(54vw,680px);height:78svh}.hero__welcome{font-size:clamp(2.5rem,5.2vw,4.2rem)}.hero__copy>p{font-size:.88rem}.invitation__card{padding:66px 72px 50px}.invitation__details{width:100%;grid-template-columns:repeat(2,1fr)}.invitation__details>div{grid-template-columns:34px 1fr;padding:0 16px;border-right:1px solid var(--line)}.invitation__details>.invitation__date-detail{grid-column:1 / -1;grid-template-columns:124px auto;justify-content:center;gap:18px;min-height:164px;border-right:0}.invitation__details>div:last-child{border-right:0}.section-scroll-thread{right:max(18px,calc((100vw - 900px)/2))}.timeline__list:before,.timeline__list:after{left:50%}.timeline__item{grid-template-columns:1fr 70px 1fr;gap:24px;min-height:150px}.timeline__marker{grid-column:2;grid-row:1;justify-self:center}.timeline__content{grid-column:3}.timeline__item:nth-child(2n) .timeline__content{grid-column:1;grid-row:1;text-align:right}.hotel-card{grid-template-columns:1.2fr .8fr}.hotel-card>img{height:100%;min-height:420px}.hotel-card figcaption{display:flex;flex-direction:column;justify-content:center;padding:42px}.arrival-list{grid-template-columns:repeat(3,1fr)}.arrival-card{grid-template-columns:1fr;align-content:start;min-height:195px;padding:24px}.arrival-card__icon{margin-bottom:10px}.closing{min-height:900px}.sheet-backdrop{align-items:center}.nav-sheet{border-radius:28px}}@media(orientation:landscape)and (max-height:700px){.page-background-video,.cover-background-video,.hero-scroll-transition-frame{top:-8%;right:-4%;bottom:-12%;left:-4%;width:108%;height:120%;object-position:center 30%}.hero__copy{top:max(18px,calc(env(safe-area-inset-top) + 10px));width:74%}.hero__scroll-note{top:12%}.hero__welcome{font-size:clamp(1.7rem,5vw,2.5rem)}.hero__copy>p{margin:4px 0 8px;font-size:.68rem}.hero__copy h1{font-size:clamp(1.4rem,4vw,2rem)}.hero__date{margin-top:6px;padding-block:4px}.story-couple__media{bottom:-8svh;height:96svh;width:min(62vw,590px)}.scroll-cue{bottom:8px}.section-pad{padding-top:72px;padding-bottom:72px}}@media(min-width:1100px){.page-background-video,.cover-background-video,.hero-scroll-transition-frame{object-position:center 38%}.hero__copy{top:48px}.story-couple__media{width:min(58vw,820px);height:88svh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}.hero-scroll{height:auto}[data-scroll-section]{--section-progress: 1 !important;--section-marker-y: 100% !important}.hero{position:relative}.page-background-video,.cover-background-video,.hero-scroll-transition-frame,.story-couple__media,.hero__copy,.hero__transition,.hero__scroll-note{transform:none}.story-couple{position:absolute;height:100svh;-webkit-mask-image:none;mask-image:none}.story-couple__media,.hero__copy{transform:translate3d(-50%,0,0)}.hero__transition,.hero__scroll-note,.cover-background-video,.hero-scroll-transition-frame{display:none}}
