@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/cdf703449fd42bc8-s.103uf.8aa8pr3.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/3f10656f33c57dec-s.0m4wt3xm5i890.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/56eb15be423b6220-s.0zqusx.h7vgvl.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/96074e70a40501da-s.0fw52gc_mc5b0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/de161955856a921d-s.p.04z8pihzuh7s1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Press Start 2P Fallback";src:local(Arial);ascent-override:44.58%;descent-override:0.0%;line-gap-override:0.0%;size-adjust:224.32%}.press_start_2p_3aa1ec44-module__wDmyQG__className{font-family:"Press Start 2P","Press Start 2P Fallback";font-style:normal;font-weight:400}.press_start_2p_3aa1ec44-module__wDmyQG__variable{--font-pixel:"Press Start 2P", "Press Start 2P Fallback"}
:root{--background:#1b1410;--background-panel:#1b1410e0;--text:#f5efe3;--muted:#e8dcc9;--paper:#231a14cc;--paper-border:#ede1cb6b;--input-bg:#fff7eb0f;--input-border:#ece0c885;--button:#ead8ba;--button-text:#1f160f}.lang-toggle{top:calc(.75rem + env(safe-area-inset-top,0px));right:calc(.75rem + env(safe-area-inset-right,0px));z-index:100;-webkit-backdrop-filter:blur(8px);background:#120d098c;border:1px solid #f4e9d680;align-items:center;gap:.25rem;padding:.35rem .6rem;display:flex;position:fixed}.lang-option{color:#f5efe366;font-family:var(--font-body), Georgia, "Times New Roman", serif;letter-spacing:.08em;cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem;transition:color .2s}.lang-option:hover{color:#f5efe3b3}.lang-option.lang-active{color:var(--text)}.lang-sep{color:#f5efe34d;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.75rem}.wedding-site.zh{font-family:var(--font-zh), "Songti SC", "STSong", "Noto Serif SC", serif}.wedding-site.zh .hero-content h1{margin-top:1.6rem}.wedding-site.zh h1,.wedding-site.zh h2,.wedding-site.zh .outro,.wedding-site.zh .content-card.immersed p,.wedding-site.zh .content-card.immersed li,.wedding-site.zh label,.wedding-site.zh input,.wedding-site.zh select,.wedding-site.zh textarea,.wedding-site.zh button,.wedding-site.zh .rsvp-meta,.wedding-site.zh .confirmation,.wedding-site.zh .edit-response-btn,.wedding-site.zh .final-response-link-btn,.wedding-site.zh .hero-meta{font-family:var(--font-zh), "Songti SC", "STSong", "Noto Serif SC", serif}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden}body{background:var(--background);color:var(--text);font-family:var(--font-body), Georgia, "Times New Roman", serif;-webkit-font-smoothing:antialiased}a{color:var(--muted);text-underline-offset:3px}.wedding-site{background:var(--background);scroll-snap-type:y mandatory;scroll-behavior:auto;height:100dvh;overflow:hidden auto}.hero,.photo-panel,.preview-strip{scroll-snap-align:start;scroll-snap-stop:always;background-position:50%;background-size:cover;position:relative}.hero{background-position:50% 80%}.image-core{display:none}.hero{place-items:center;min-height:100dvh;padding:clamp(1rem,4vw,2.5rem);display:grid}.hero-overlay,.overlay{position:absolute;inset:0}.hero-overlay{background:linear-gradient(#0e0a0847 0%,#0e0a08b8 100%)}.hero-content{z-index:1;text-align:center;max-width:950px;padding:1rem;position:relative}.hero-script{font-family:var(--font-script), "Snell Roundhand", "Apple Chancery", cursive;letter-spacing:.01em;text-shadow:0 2px 18px #0a07056b;white-space:nowrap;font-size:clamp(3.2rem,10.4vw,7.8rem);line-height:.9}.hero-script-zh{font-family:var(--font-zh-script), "STKaiti", "KaiTi", cursive;letter-spacing:.06em;text-shadow:0 2px 18px #0a07056b;white-space:nowrap;text-align:center;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.15}.hero-script-zh-sep{vertical-align:middle;opacity:.8;margin:0 .15em;font-size:.55em;display:inline-block}h1{font-family:var(--font-serif), Georgia, "Times New Roman", serif;letter-spacing:.045em;text-shadow:0 2px 14px #0a070561;margin-top:.9rem;font-size:clamp(1.2rem,3vw,2.1rem);font-weight:500}.chinese{margin-top:.75rem;font-family:Songti SC,STSong,Noto Serif SC,Source Han Serif SC,PingFang SC,serif;font-size:clamp(1.05rem,2.5vw,1.45rem)}.hero-btn-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:1.25rem;margin-top:2rem;display:flex}.hero-btn{color:var(--text);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #f4e9d6b8;padding:.9rem 2.5rem;font-family:inherit;font-size:.85rem;line-height:1.2;text-decoration:none;transition:background .2s,color .2s,border-color .2s;display:inline-block;position:relative}.hero-btn-primary:hover{background:#f4e9d61f}.hero-btn-flag{color:#fff8ed;letter-spacing:.04em;text-transform:none;white-space:nowrap;background:#b63232;border-radius:0;padding:.24rem .44rem;font-size:.58rem;line-height:1;position:absolute;top:-.7rem;right:-.65rem;box-shadow:0 .35rem .8rem #1409063d}.hero-btn-secondary{color:var(--text);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;opacity:.85;text-underline-offset:6px;background:0 0;border:none;padding:.9rem .5rem;font-family:inherit;font-size:.85rem;-webkit-text-decoration:underline #f4e9d673;text-decoration:underline #f4e9d673;text-decoration-thickness:1px;transition:opacity .2s,text-decoration-color .2s}.hero-btn-secondary:hover{opacity:1;text-decoration-color:#f4e9d6e6}.hero-meta{z-index:1;letter-spacing:.14em;color:#f4e7d2e6;font-size:clamp(.72rem,1.5vw,.98rem);position:absolute;bottom:3.2rem}.hero-date{left:clamp(1rem,4vw,3.5rem)}.hero-place{text-align:right;right:clamp(1rem,4vw,3.5rem)}.hero-place-line1,.hero-place-line2,.hero-place-sep{display:inline}.hero-footer{z-index:1;text-align:center;letter-spacing:.14em;color:#f4e7d2e6;font-size:clamp(.72rem,1.5vw,.98rem);font-family:var(--font-zh), "Songti SC", "STSong", "Noto Serif SC", serif;flex-direction:column;gap:.25rem;display:flex;position:absolute;bottom:clamp(1.2rem,3vw,2.5rem);left:1rem;right:1rem}.hero-footer-en{font-family:var(--font-body), Georgia, "Times New Roman", serif;letter-spacing:.1em}.page-indicator{z-index:3;left:50%;bottom:calc(1.15rem + env(safe-area-inset-bottom,0px));color:#f5ede0;cursor:pointer;text-shadow:0 2px 14px #080605bf;background:0 0;border:none;padding:0;font-size:1.55rem;font-weight:200;line-height:1;position:absolute;transform:translate(-50%)scaleY(.82)}.page-indicator-up{font-size:1.45rem}.details-wrap{animation:.36s fadeIn}.photo-panel{align-items:flex-end;min-height:100dvh;padding:clamp(1rem,3.5vw,2.6rem) clamp(1rem,3.5vw,2.6rem) clamp(3.2rem,5vw,4.2rem);display:flex}.fixed-screen-panel{height:100dvh;margin-bottom:-1px;overflow:hidden}.stable-form-bg{height:100dvh;overflow:hidden}.stable-form-bg .content-card.form-immersed{overscroll-behavior:contain;max-height:calc(100dvh - 7.2rem);padding-right:.3rem;overflow:hidden auto}.overlay{background:linear-gradient(#0a070533 10%,#0a0705bd 100%)}.narrative-panel .overlay{background:linear-gradient(#0a070557 8%,#0a0705d1 100%)}.align-left{justify-content:flex-start}.align-right{justify-content:flex-end}.align-center{justify-content:center;align-items:center}.content-card{z-index:1;background:linear-gradient(135deg, #2b2018e0, var(--paper));border:1px solid var(--paper-border);width:min(760px,100%);padding:clamp(1.2rem,4vw,2.3rem);line-height:1.6;position:relative;box-shadow:0 12px 36px #08060559}.content-card.immersed{box-shadow:none;text-shadow:0 2px 14px #080605b8;background:0 0;border:none;max-width:820px;padding:clamp(1rem,3vw,2rem)}.content-card.immersed p,.content-card.immersed li{font-size:clamp(1.04rem,1.6vw,1.2rem)}.content-card.immersed a{color:#fff4df}.content-card p+p{margin-top:.9rem}.content-card ul{gap:.28rem;margin-top:.95rem;padding-left:1rem;display:grid}.form-card{max-width:680px}.form-immersed{max-width:760px}.phone-row{gap:.5rem;margin-top:.25rem;display:flex}.phone-cc-wrapper{flex:none;align-items:center;display:flex;position:relative}.phone-cc-plus{pointer-events:none;opacity:.7;font-size:.95em;position:absolute;top:50%;left:.55rem;transform:translateY(-50%)}.phone-row .phone-country-code{width:4.5rem;padding-left:1.3rem}.phone-row .phone-number{flex:auto}.form-nav-row{flex-wrap:wrap;gap:.7rem;display:flex}.form-nav-row button[type=button]{color:var(--text);background:0 0;border:1px solid #fff0d775}.content-card.form-immersed label,.content-card.form-immersed h2{text-shadow:0 2px 10px #0806058f}.rsvp-meta{letter-spacing:.04em;color:#f2e8d8;margin-bottom:.35rem}.lookup-notice{color:#ffe7a3;background:#5c481052;border:1px solid #f1d67cc7;margin-top:.25rem;margin-bottom:.35rem;padding:.45rem .55rem}h2{font-family:var(--font-serif), Georgia, "Times New Roman", serif;margin-bottom:1rem;font-size:clamp(2rem,4vw,2.7rem);font-weight:600;line-height:1.06}form{gap:.95rem;display:grid}label{gap:.4rem;font-size:.95rem;display:grid}.label-inline{align-items:center;gap:.45rem;display:inline-flex}.inline-spinner{border:2px solid #ffefcb47;border-top-color:#ffe3a4;border-radius:50%;width:.9rem;height:.9rem;animation:.8s linear infinite spin}.lookup-found{color:#ffe3a4;font-size:.88rem}input,select,textarea,button{font:inherit}input,select,textarea{border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);border-radius:0;min-height:2.7rem;padding:.7rem .8rem}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23f5efe3' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .95rem center;background-repeat:no-repeat;background-size:.82rem;padding-right:2.45rem}.form-immersed input,.form-immersed select,.form-immersed textarea{background-color:#1f171285;border:1px solid #efe2cc9e;box-shadow:0 1px #fff5e524}.form-immersed select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23f5efe3' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .95rem center;background-repeat:no-repeat;background-size:.82rem}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#f5ead6bf}.checkbox{align-items:center;gap:.5rem;display:flex}.checkbox input{border-radius:0;width:1.05rem;height:1.05rem;min-height:auto}form button{background:var(--button);color:var(--button-text);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;border:1px solid #fff0d76b;border-radius:0;width:fit-content;padding:.75rem 1.15rem;font-size:.82rem;font-weight:600}.form-immersed form button{background:#ead8baf0}.confirmation{color:#ffefc9;margin-top:1rem}.final-response-card p.outro{text-align:center;font-family:var(--font-serif), Georgia, "Times New Roman", serif;font-size:clamp(1.3rem,3.5vw,2.25rem);line-height:1.2}.final-response-card{text-align:center;justify-items:center;gap:1.1rem;display:grid}.final-response-actions{flex-direction:column;gap:.6rem;width:min(100%,22rem);display:flex}.final-response-link-btn{text-align:center;color:var(--text);letter-spacing:.06em;background:#1f171273;border:1px solid #f4e9d68c;padding:.55rem .85rem;font-size:.8rem;line-height:1.35;text-decoration:none;transition:background .2s,border-color .2s;display:block}.final-response-link-btn:hover{background:#1f1712a6;border-color:#f4e9d6bf}.edit-response-btn{color:#f2e8d8;text-underline-offset:4px;text-transform:none;letter-spacing:.02em;cursor:pointer;background:0 0;border:none;padding:0;font-size:.95rem;font-weight:400;text-decoration:underline}.preview-strip{justify-content:center;align-items:center;min-height:40svh;padding:1rem;display:flex}.intro{text-align:center}.date{letter-spacing:.06em}.gated-content{transition:opacity .28s,transform .28s}.gated-content.is-hidden{opacity:0;pointer-events:none;transform:translateY(6px)}.gated-content.is-visible{opacity:1;transform:none}.page-indicator.gated-content.is-visible{transform:translate(-50%)scaleY(.82)}.rise-section .hero-content>*,.rise-section .hero-meta,.rise-section .content-card>*,.rise-section .page-indicator{opacity:0;filter:blur(2px);transform:translateY(18px)}.rise-section.rise-active .hero-content>*,.rise-section.rise-active .hero-meta,.rise-section.rise-active .content-card>*,.rise-section.rise-active .page-indicator{animation:1s cubic-bezier(.18,.72,.2,1) forwards riseEmerge}.hero.rise-section.rise-active .hero-content>*,.hero.rise-section.rise-active .hero-meta{animation-duration:1s}.rise-section.rise-active .hero-content>:first-child{animation-delay:.12s}.rise-section.rise-active .hero-content>:nth-child(2){animation-delay:.42s}.rise-section.rise-active .hero-content>:nth-child(3){animation-delay:.72s}.rise-section.rise-active .hero-date{animation-delay:.98s}.rise-section.rise-active .hero-place{animation-delay:1.12s}.rise-section .hero-footer>*{opacity:0;filter:blur(2px);transform:translateY(18px)}.rise-section.rise-active .hero-footer>*{animation:1s cubic-bezier(.18,.72,.2,1) forwards riseEmerge}.rise-section.rise-active .hero-footer>:first-child{animation-delay:.98s}.rise-section.rise-active .hero-footer>:nth-child(2){animation-delay:1.06s}.rise-section.rise-active .hero-footer>:nth-child(3){animation-delay:1.14s}.rise-section.rise-active .content-card>:first-child{animation-delay:.18s}.rise-section.rise-active .content-card>:nth-child(2){animation-delay:.36s}.rise-section.rise-active .content-card>:nth-child(3){animation-delay:.52s}.rise-section.rise-active .page-indicator{animation-delay:.62s}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes riseEmerge{0%{opacity:0;filter:blur(2px);transform:translateY(18px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes riseEmergeCentered{0%{opacity:0;filter:blur(2px);transform:translate(-50%)translateY(18px)}to{opacity:1;filter:blur();transform:translate(-50%)translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:768px){.hero{place-items:center;padding-top:clamp(1rem,4vw,2.5rem);padding-bottom:6.8rem}.hero-content{text-align:center;flex-direction:column;align-items:center;max-width:96%;padding:.5rem .75rem;display:flex}.hero-script{letter-spacing:0;text-align:center;font-size:clamp(2.1rem,10.4vw,3.2rem);line-height:.88}.hero-script-zh{text-align:center;white-space:normal;font-size:clamp(1.8rem,7.5vw,2.6rem)}.hero-script-zh-sep{margin:.2em 0;font-size:.5em;display:block}h1{letter-spacing:.035em;text-align:center;margin-top:.75rem;font-size:clamp(1.05rem,4.7vw,1.45rem)}.chinese{margin-top:.55rem;font-size:clamp(1rem,4.6vw,1.2rem)}.hero-btn-row{flex-direction:column;gap:.6rem;width:min(320px,88vw);margin-top:1.5rem;margin-left:auto;margin-right:auto}.hero-btn{letter-spacing:.14em;text-align:center;width:100%;padding:.85rem 1rem}.hero-btn-flag{font-size:.55rem;right:-.45rem}.hero-btn-secondary{letter-spacing:.14em;text-align:center;width:100%;padding:.6rem 1rem}.hero-meta{text-align:center;letter-spacing:.11em;width:calc(100% - 2rem);margin-top:0;font-size:clamp(.72rem,3.2vw,.9rem);line-height:1.35;position:absolute;left:50%;transform:translate(-50%)}.hero-date{bottom:4.2rem}.hero-place{bottom:1.45rem;right:auto}.hero-place-line1,.hero-place-line2{display:block}.hero-place-sep{display:none}.hero .hero-meta.gated-content.is-hidden{transform:translate(-50%)translateY(6px)}.hero .hero-meta.gated-content.is-visible{transform:translate(-50%)}.hero.rise-section.rise-active .hero-meta{animation-name:riseEmergeCentered}.align-left,.align-right,.align-center{justify-content:center}.page-indicator{bottom:calc(2rem + env(safe-area-inset-bottom,0px));font-size:1.4rem}.stable-form-bg .content-card.form-immersed{max-height:calc(100dvh - 6rem)}}@media (min-width:1024px){.desktop-extended{overflow:hidden}.desktop-extended:before{content:"";background-image:inherit;filter:blur(18px)brightness(.82);z-index:0;background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.06)}.desktop-extended .image-core{z-index:0;background-repeat:no-repeat;background-size:contain;display:block;position:absolute;inset:0}.desktop-extended .image-core-detail{background-position:50% 58%}}.travel-page{--gg-bg:#f4eee2;--gg-bg-tint:#efe7d8;--gg-surface:#fbf7ef;--gg-surface-2:#f1e9da;--gg-text:#2c211a;--gg-heading:#241a13;--gg-muted:#6d6052;--gg-faint:#8a7c6c;--gg-border:#3a2c2224;--gg-border-strong:#3a2c223d;--gg-accent:#9a5230;--gg-accent-strong:#7f3f22;--gg-accent-soft:#9a52301f;--gg-shadow:0 1px 2px #3a26160f, 0 12px 28px #3a261614;--gg-shadow-sm:0 1px 2px #3a26160f, 0 6px 16px #3a261612;background:var(--gg-bg);color:var(--gg-text);scroll-behavior:smooth;flex-direction:column;height:100dvh;display:flex;overflow:hidden auto}.travel-page.zh,.travel-page.zh h2{font-family:var(--font-zh), "Songti SC", "STSong", "Noto Serif SC", serif}.travel-page .lang-toggle{border-color:var(--gg-border-strong);background:#fbf7efc7}.travel-page .lang-option{color:#2c211a73}.travel-page .lang-option:hover{color:#2c211acc}.travel-page .lang-option.lang-active{color:var(--gg-accent-strong)}.travel-page .lang-sep{color:#2c211a4d}.guest-guide-locked{justify-content:center;align-items:center;padding:clamp(1.5rem,5vw,3rem)}.guest-guide-lock-card{background:var(--gg-surface);border:1px solid var(--gg-border);width:min(100%,440px);box-shadow:var(--gg-shadow);border-radius:14px;padding:clamp(1.5rem,5vw,2.3rem)}.guest-guide-lock-back{margin-bottom:1.6rem;display:inline-block}.guest-guide-lock-card h1{color:var(--gg-heading);margin-bottom:.8rem;font-size:clamp(2.2rem,6vw,3.2rem);line-height:.95}.guest-guide-lock-card p{color:var(--gg-muted);line-height:1.65}.guest-guide-lock-form{gap:.75rem;margin-top:1.7rem;display:grid}.guest-guide-lock-form label{color:var(--gg-muted);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem}.travel-page.zh .guest-guide-lock-form label{letter-spacing:.08em;text-transform:none}.guest-guide-lock-form input{border:1px solid var(--gg-border-strong);width:100%;color:var(--gg-text);font:inherit;background:#fffdf9;border-radius:9px;outline:none;padding:.85rem .95rem;transition:border-color .16s,box-shadow .16s}.guest-guide-lock-form input:focus{border-color:var(--gg-accent);box-shadow:0 0 0 3px var(--gg-accent-soft)}.guest-guide-lock-form button{border:1px solid var(--gg-accent);background:var(--gg-accent);color:#fbf7ef;font:inherit;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border-radius:9px;justify-self:start;margin-top:.3rem;padding:.8rem 1.5rem;font-size:.82rem;transition:background .2s,border-color .2s}.travel-page.zh .guest-guide-lock-form button{letter-spacing:.08em;text-transform:none}.guest-guide-lock-form button:hover{background:var(--gg-accent-strong);border-color:var(--gg-accent-strong)}.guest-guide-lock-form button:focus-visible{outline:2px solid var(--gg-accent);outline-offset:3px}.guest-guide-lock-error{color:#b3402e;font-size:.9rem}.travel-header{z-index:50;-webkit-backdrop-filter:blur(12px)saturate(1.1);border-bottom:1px solid var(--gg-border);background:#f4eee2e0;position:sticky;top:0}.travel-header-inner{align-items:center;gap:1.5rem;max-width:1100px;margin:0 auto;padding:.85rem clamp(5.5rem,14vw,8rem) .85rem clamp(1rem,4vw,2.5rem);display:flex}.travel-back{color:var(--gg-muted);letter-spacing:.08em;white-space:nowrap;border-radius:6px;flex:none;font-size:.85rem;text-decoration:none;transition:color .2s}.travel-back:hover{color:var(--gg-accent-strong)}.travel-back:focus-visible{outline:2px solid var(--gg-accent);outline-offset:3px}.travel-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;flex:auto;align-items:center;gap:1.4rem;min-width:0;margin-left:auto;display:flex;overflow:auto hidden}.travel-nav::-webkit-scrollbar{display:none}.travel-nav-link{color:var(--gg-muted);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border-radius:4px;padding:.35rem 0;font-size:.82rem;text-decoration:none;transition:color .2s;position:relative}.travel-nav-link:after{content:"";background:var(--gg-accent);transform-origin:0;height:2px;transition:transform .2s;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.travel-page.zh .travel-nav-link{text-transform:none;letter-spacing:.06em;font-size:.92rem}.travel-nav-link:hover{color:var(--gg-text)}.travel-nav-link:focus-visible{outline:2px solid var(--gg-accent);outline-offset:3px}.travel-nav-link.is-active{color:var(--gg-accent-strong)}.travel-nav-link.is-active:after{transform:scaleX(1)}@media (max-width:1100px){.travel-header-inner{gap:1rem}.travel-nav{gap:1.05rem}.travel-nav-link{letter-spacing:.1em;font-size:.76rem}}@media (max-width:900px){.travel-header-inner{flex-wrap:wrap;align-items:flex-start;gap:.6rem}.travel-back{width:100%;padding-right:7rem}.travel-nav{flex-wrap:wrap;flex:0 0 100%;justify-content:flex-start;gap:.8rem 1.2rem;width:100%;margin-left:0;overflow:visible}}.travel-content{width:100%;max-width:820px;margin:0 auto;padding:clamp(1rem,4vw,2.5rem) clamp(1rem,4vw,2.5rem) 6rem}.guest-guide-welcome{color:var(--gg-heading);font-family:var(--font-serif), Georgia, "Times New Roman", serif;letter-spacing:.01em;padding-top:clamp(2rem,5vw,3.5rem);padding-bottom:.9rem;font-size:clamp(1.3rem,2.6vw,1.7rem);line-height:1.45}.travel-page.zh .guest-guide-welcome{font-family:var(--font-zh), "Songti SC", "STSong", "Noto Serif SC", serif}.guest-guide-welcome-gif{border:1px solid var(--gg-border);width:130px;height:118px;box-shadow:var(--gg-shadow-sm);border-radius:12px;margin-bottom:clamp(.75rem,2vw,1.25rem);overflow:hidden}.guest-guide-welcome-gif img{object-fit:cover;border:0;width:100%;height:100%;display:block}.guest-guide-tldr{border:1px solid var(--gg-border);background:var(--gg-surface);box-shadow:var(--gg-shadow);border-radius:14px;margin:clamp(.9rem,2.5vw,1.4rem) 0 clamp(1.75rem,4.5vw,2.75rem);padding:clamp(1.1rem,2.8vw,1.6rem) clamp(1.2rem,3vw,1.75rem)}.guest-guide-tldr-kicker{border-bottom:1px solid var(--gg-border);color:var(--gg-accent-strong);letter-spacing:.18em;text-transform:uppercase;margin-bottom:.85rem;padding-bottom:.7rem;font-size:.72rem;font-weight:600;display:block}.travel-page.zh .guest-guide-tldr-kicker{letter-spacing:.1em;text-transform:none;font-size:.82rem}.quick-facts-list{gap:.55rem;margin:0;display:grid}.quick-facts-row{border-bottom:1px solid var(--gg-border);grid-template-columns:minmax(6.5rem,.4fr) 1fr;align-items:baseline;gap:.3rem 1.1rem;padding:.4rem 0;display:grid}.quick-facts-row:last-child{border-bottom:none}.quick-facts-row dt{color:var(--gg-accent-strong);letter-spacing:.1em;text-transform:uppercase;font-size:.74rem;font-weight:600}.travel-page.zh .quick-facts-row dt{letter-spacing:.04em;text-transform:none;font-size:.9rem}.quick-facts-row dd{color:var(--gg-text);margin:0;font-size:clamp(.96rem,1.4vw,1.05rem);line-height:1.6}@media (max-width:768px){.quick-facts-row{grid-template-columns:1fr;gap:.15rem}}.guest-guide-footer{border-top:1px solid var(--gg-border);width:100%;max-width:820px;color:var(--gg-faint);letter-spacing:.03em;text-align:center;margin:clamp(2.5rem,6vw,4.5rem) auto 0;padding:clamp(2rem,4vw,2.5rem) clamp(1rem,4vw,2.5rem) clamp(2.5rem,6vw,4rem);font-size:.9rem}.travel-section{border-bottom:1px solid var(--gg-border);padding:clamp(2.5rem,6vw,4.5rem) 0;scroll-margin-top:5rem}.travel-section:last-child{border-bottom:none}.travel-section h2{letter-spacing:.01em;color:var(--gg-heading);margin-bottom:1.6rem;padding-bottom:.7rem;font-size:clamp(2.5rem,5.5vw,3.6rem);position:relative}.travel-section h2:after{content:"";background:var(--gg-accent);width:3rem;height:2px;position:absolute;bottom:0;left:0}.travel-section h3{font-family:var(--font-serif), Georgia, "Times New Roman", serif;letter-spacing:.02em;color:var(--gg-heading);margin-top:2.4rem;margin-bottom:.75rem;font-size:clamp(1.7rem,3vw,2.1rem);font-weight:500;line-height:1.2}.travel-page.zh .travel-section h3{font-family:var(--font-zh), "Songti SC", "STSong", "Noto Serif SC", serif}.travel-section h4{font-family:var(--font-serif), Georgia, "Times New Roman", serif;letter-spacing:.06em;text-transform:uppercase;color:var(--gg-heading);margin-bottom:.85rem;font-size:clamp(1.05rem,1.7vw,1.2rem);font-weight:600}.travel-page.zh .travel-section h4{font-family:var(--font-zh), "Songti SC", "STSong", "Noto Serif SC", serif;text-transform:none;letter-spacing:.04em;font-size:clamp(1rem,1.6vw,1.15rem)}.travel-section .travel-subsection-title{color:var(--gg-heading);margin-top:1.8rem;margin-bottom:.45rem}.travel-path-card .travel-subsection-title,.travel-path-card .travel-subsection-title+p,.travel-path-card .travel-subsection-title+p+.travel-app-links{margin-left:1rem}.travel-section p{color:var(--gg-text);font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.75}.travel-section p+p{margin-top:1rem}.travel-section a{color:var(--gg-accent);text-underline-offset:3px;border-radius:2px;font-weight:500;text-decoration-color:#9a523066;transition:color .16s,text-decoration-color .16s}.travel-section a:hover{color:var(--gg-accent-strong);-webkit-text-decoration-color:var(--gg-accent-strong);text-decoration-color:var(--gg-accent-strong)}.travel-section a:focus-visible{outline:2px solid var(--gg-accent);outline-offset:2px}.travel-path-card{border:1px solid var(--gg-border);border-left:3px solid var(--gg-accent);background:var(--gg-surface-2);box-shadow:var(--gg-shadow-sm);border-radius:12px;margin-top:2rem;padding:clamp(1rem,2.4vw,1.4rem) clamp(1.1rem,2.6vw,1.6rem)}.travel-path-card+.travel-path-card{margin-top:1.6rem}.travel-path-card h3{margin-top:0}.travel-section .travel-app-links{color:var(--gg-muted);margin-top:.55rem;font-size:clamp(.92rem,1.35vw,1rem)}.travel-link-separator{color:var(--gg-faint);margin:0 .45rem;display:inline-block}.travel-info-card{border:1px solid var(--gg-border);background:var(--gg-surface);box-shadow:var(--gg-shadow-sm);border-radius:14px;margin-top:1.4rem;padding:clamp(1.1rem,2.8vw,1.6rem)}.travel-info-card .venue-address{margin:0}.travel-info-list{gap:.6rem;display:grid}.travel-info-row{border-bottom:1px solid var(--gg-border);grid-template-columns:minmax(7.5rem,.55fr) 1fr;align-items:baseline;gap:.4rem 1.1rem;padding:.55rem 0;font-size:clamp(.95rem,1.4vw,1.05rem);line-height:1.5;display:grid}.travel-info-row:first-child{padding-top:0}.travel-info-row:last-child{border-bottom:none;padding-bottom:0}.travel-info-row dt{color:var(--gg-accent-strong);letter-spacing:.08em;text-transform:uppercase;font-size:.82em;font-weight:600}.travel-page.zh .travel-info-row dt{text-transform:none;letter-spacing:.04em;font-size:.88em}.travel-info-row dd{color:var(--gg-text);word-break:break-word;font-weight:500}.travel-info-email-cell{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem .9rem;width:100%;display:flex}.travel-info-email-cell .copy-draft-btn{margin-left:auto}.copy-draft-btn{background:var(--gg-accent-soft);color:var(--gg-accent-strong);font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:1px solid #9a523059;border-radius:7px;align-items:center;gap:.3rem;padding:.36rem .75rem;font-size:.76rem;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.travel-page.zh .copy-draft-btn{text-transform:none;letter-spacing:.04em;font-size:.82rem}.copy-draft-btn:hover{border-color:var(--gg-accent);background:#9a52302e}.copy-draft-btn:focus-visible{outline:2px solid var(--gg-accent);outline-offset:2px}.copy-draft-btn:active{transform:translateY(1px)}.copy-draft-btn.is-copied{color:#3f7d34;background:#3f7d341f;border-color:#3f7d348c}.copy-draft-btn.is-error{color:#b3402e;background:#b3402e1f;border-color:#b3402e8c}.travel-section .travel-note{background:var(--gg-accent-soft);border-left:3px solid var(--gg-accent);color:var(--gg-accent-strong);border-radius:0 10px 10px 0;margin-top:1.4rem;padding:.9rem 1.15rem;font-size:clamp(.92rem,1.4vw,1rem);line-height:1.55}.travel-section .travel-more-info{color:var(--gg-muted);margin-top:1.4rem;font-size:.95rem}.travel-schedule{border:1px solid var(--gg-border);background:var(--gg-surface);box-shadow:var(--gg-shadow-sm);border-radius:12px;margin-top:.9rem;padding:0;list-style:none;overflow:hidden}.travel-schedule li{border-bottom:1px solid var(--gg-border);grid-template-columns:minmax(9rem,.55fr) 1fr;align-items:baseline;gap:.4rem 1.1rem;padding:.75rem clamp(.95rem,2.3vw,1.3rem);font-size:clamp(.95rem,1.4vw,1.05rem);line-height:1.5;display:grid}.travel-schedule li:last-child{border-bottom:none}.travel-schedule-time{color:var(--gg-text);letter-spacing:.02em;font-weight:600}.travel-schedule-route{color:var(--gg-muted)}.travel-section .travel-questions{margin-top:1.6rem}.dress-code-figure{flex-direction:column;align-items:center;margin-top:1.8rem;margin-bottom:1.8rem;display:flex}.dress-code-image{border:1px solid var(--gg-border);width:100%;height:auto;box-shadow:var(--gg-shadow-sm);border-radius:12px;display:block}.dress-code-figure figcaption{letter-spacing:.1em;text-transform:uppercase;color:var(--gg-faint);text-align:center;margin-top:.7rem;font-size:.82rem}.travel-page.zh .dress-code-figure figcaption{text-transform:none;letter-spacing:.06em;font-size:.9rem}.travel-section .ps-playlist-button{--pixel-bg:#ff5e9c;--pixel-bg-light:#ffa3c4;--pixel-bg-warp:#b82967;--pixel-shadow:#2d1b69;--pixel-shadow-light:#5a3da9;--pixel-edge:#0a0a14;--pixel-text:#fff8d6;--pixel-accent:#ffe14f;background:var(--pixel-bg);color:var(--pixel-text);font-family:var(--font-pixel), "Courier New", monospace;letter-spacing:.04em;text-transform:uppercase;text-shadow:2px 2px 0 var(--pixel-edge);cursor:pointer;image-rendering:pixelated;isolation:isolate;box-shadow: -4px 0 0 0 var(--pixel-edge), 4px 0 0 0 var(--pixel-edge), 0 -4px 0 0 var(--pixel-edge), 0 4px 0 0 var(--pixel-edge),  -4px -4px 0 0 transparent,  8px 8px 0 0 var(--pixel-shadow), 8px 12px 0 0 var(--pixel-edge), 12px 8px 0 0 var(--pixel-edge), 12px 12px 0 0 var(--pixel-edge);border:0;border-radius:0;align-items:center;gap:.85rem;margin-top:1.1rem;padding:.95rem 1.4rem;font-size:.78rem;line-height:1.2;text-decoration:none;transition:transform 80ms steps(2,end),box-shadow 80ms steps(2,end),background-color 80ms steps(2,end);display:inline-flex;position:relative;overflow:hidden}.travel-section .ps-playlist-button:before,.travel-section .ps-playlist-button:after{content:"";opacity:0;pointer-events:none;image-rendering:pixelated;z-index:0;transition:opacity 80ms steps(2,end);position:absolute;inset:4px}.travel-section .ps-playlist-button:before{mix-blend-mode:screen;background:repeating-linear-gradient(90deg,#0000 0 10px,#fff8d6cc 10px 14px,#0000 14px 30px) 0 0/56px 100%,repeating-linear-gradient(90deg,#0000 0 22px,#ffe14fa6 22px 26px,#0000 26px 48px) 0 0/88px 100%}.travel-section .ps-playlist-button:after{background:linear-gradient(90deg,#ff5e9ceb,#0000 34% 66%,#ff5e9ceb),repeating-radial-gradient(circle,#0000 0 12px,#fff8d657 12px 16px,#0000 16px 30px)}.travel-section .ps-playlist-button>span{z-index:1;position:relative}.travel-page.zh .travel-section .ps-playlist-button{font-family:var(--font-pixel), "Songti SC", "STSong", "Noto Serif SC", monospace;letter-spacing:.05em;font-size:.85rem}.travel-section .ps-playlist-button:hover{background:var(--pixel-bg-warp);box-shadow:-4px 0 0 0 var(--pixel-edge), 4px 0 0 0 var(--pixel-edge), 0 -4px 0 0 var(--pixel-edge), 0 4px 0 0 var(--pixel-edge), 10px 10px 0 0 var(--pixel-shadow), 10px 14px 0 0 var(--pixel-edge), 14px 10px 0 0 var(--pixel-edge), 14px 14px 0 0 var(--pixel-edge);transform:translate(-2px,-2px)}.travel-section .ps-playlist-button:hover:before{opacity:.75;animation:.26s steps(4,end) infinite psPixelWarpLines}.travel-section .ps-playlist-button:hover:after{opacity:.38;animation:.42s steps(5,end) infinite psPixelWarpTunnel}.travel-section .ps-playlist-button:active{box-shadow:-4px 0 0 0 var(--pixel-edge), 4px 0 0 0 var(--pixel-edge), 0 -4px 0 0 var(--pixel-edge), 0 4px 0 0 var(--pixel-edge);transform:translate(8px,8px)}.travel-section .ps-playlist-button:focus-visible{outline:4px dashed var(--pixel-accent);outline-offset:8px}.ps-pixel-note{color:var(--pixel-accent);text-shadow:2px 2px 0 var(--pixel-edge);font-family:Courier New,Lucida Console,monospace;font-size:1.4em;line-height:1;animation:.7s steps(2,end) infinite psPixelBlink;display:inline-block;transform:translateY(-1px)}.ps-pixel-label{white-space:nowrap}.ps-pixel-arrows{gap:.18rem;font-family:Courier New,Lucida Console,monospace;font-size:.95em;line-height:1;display:inline-flex}.ps-pixel-arrow{color:var(--pixel-accent);text-shadow:2px 2px 0 var(--pixel-edge);animation:.6s steps(2,end) infinite psPixelBlink;display:inline-block}.ps-pixel-arrow:nth-child(2){animation-delay:.2s}.ps-pixel-arrow:nth-child(3){animation-delay:.4s}@keyframes psPixelBlink{0%,49%{opacity:1}50%,to{opacity:.25}}@keyframes psPixelWarpLines{to{background-position:112px 0,176px 0}}@keyframes psPixelWarpTunnel{0%{background-size:auto,100% 100%}to{background-size:auto,145% 145%}}@media (prefers-reduced-motion:reduce){.ps-pixel-note,.ps-pixel-arrow,.travel-section .ps-playlist-button:hover:before,.travel-section .ps-playlist-button:hover:after{animation:none}}@media (max-width:480px){.travel-section .ps-playlist-button{gap:.6rem;padding:.85rem 1.1rem;font-size:.66rem}.travel-page.zh .travel-section .ps-playlist-button{font-size:.78rem}}@media (max-width:768px){.travel-header-inner{flex-wrap:wrap;gap:.5rem;padding:.65rem 5rem .65rem 1rem}.travel-back{flex:none;font-size:.8rem}.travel-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:wrap;gap:.85rem;width:100%;margin-left:0;padding-bottom:.15rem;overflow-x:visible}.travel-nav::-webkit-scrollbar{display:none}.travel-nav-link{letter-spacing:.08em;padding:.25rem 0;font-size:.74rem}.travel-page.zh .travel-nav-link{font-size:.85rem}.travel-section{scroll-margin-top:7rem}.travel-info-row{grid-template-columns:1fr;gap:.15rem;padding:.6rem 0}.travel-schedule li{grid-template-columns:1fr;gap:.15rem}.travel-path-card .travel-subsection-title,.travel-path-card .travel-subsection-title+p,.travel-path-card .travel-subsection-title+p+.travel-app-links{margin-left:.55rem}}
