@charset "UTF-8";
:root{--paper:#f6f1e7;--ink:#3e4035;--red:#8d363e;--muted:#77796c;--line:#d9d6c7;--green:#58644a;--white:#fffdf7;--sans:"Microsoft YaHei","PingFang SC",sans-serif;--serif:"Songti SC","SimSun",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23776c53' opacity='.32' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--red);outline-offset:5px}button{border:0}p,h1,h2,h3,h4,figure{margin:0}button[hidden],[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.wrap{width:min(1120px,calc(100% - 96px));margin:auto}.preview-note{background:#e9e5d8;text-align:center;color:#696b5d;font-size:11px;letter-spacing:1.5px;padding:7px 12px}.preview-note span{padding:0 6px}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:13px;font-size:16px;letter-spacing:2px}.brand small{display:block;font-size:8px;letter-spacing:2px;line-height:1.7;margin-top:2px}.xi{font-family:var(--serif);background:var(--red);color:var(--paper);font-size:29px;width:44px;height:47px;display:grid;place-items:center;border-radius:2px;transform:rotate(-5deg)}.desktop-nav{display:flex;gap:30px;font-size:12px;color:#646655}.desktop-nav a:hover{color:var(--red)}.header-date{font:11px Georgia,serif;letter-spacing:1.6px}.header-date span{color:#9c9b8b;padding:0 8px}.hero{min-height:660px;display:grid;grid-template-columns:.95fr 1.05fr;gap:30px;align-items:center;padding-top:64px;padding-bottom:80px}.eyebrow,.small-label{font-size:10px;letter-spacing:2px}.eyebrow{font-size:12px;letter-spacing:2px;display:flex;align-items:center;gap:9px;margin-bottom:22px}.little-star{color:var(--red);font-size:23px}.hero h1{font-family:var(--serif);font-size:clamp(54px,5.8vw,76px);line-height:1.24;font-weight:600;letter-spacing:1px}.red-word{position:relative;color:var(--red);display:inline-block;padding-right:7px}.red-word svg{position:absolute;left:0;bottom:-8px;width:100%;fill:none;stroke:var(--red);stroke-width:2;opacity:.75}.title-dot{color:var(--red)}.hero-message{font-size:13px;line-height:2;color:#6f7164;margin-top:28px}.date-line{display:flex;align-items:center;gap:18px;margin:29px 0 25px}.date-line strong{font:36px Georgia,serif;letter-spacing:1px;color:var(--red)}.date-line>span{border-left:1px solid #c4c4b1;padding-left:17px;font-size:10px;line-height:1.8}.primary-button{display:inline-flex;align-items:center;gap:32px;background:var(--red);color:#fffaf0;padding:14px 21px;font-size:12px;letter-spacing:1px;box-shadow:4px 4px 0 #ded4c2;transition:transform .2s,box-shadow .2s}.primary-button:hover{transform:translate(-1px,-1px);box-shadow:6px 6px 0 #ded4c2}.hero-footnote{margin-top:15px;font-size:10px;color:var(--muted);letter-spacing:1px}.hero-footnote span{color:var(--red);padding-left:7px}.hero-collage{height:515px;position:relative;margin-left:10px}.gingham-paper{position:absolute;width:74%;height:77%;left:14%;top:13%;transform:rotate(8deg);background-color:#ccd2c0;background-image:linear-gradient(90deg,#f4f0de66 50%,transparent 50%),linear-gradient(#f4f0de66 50%,transparent 50%);background-size:28px 28px;border:1px solid #b3bba36b}.polaroid{background:var(--white);padding:12px 12px 0;box-shadow:0 4px 13px #51453219,0 1px 2px #5145321a}.main-photo{position:absolute;top:45px;left:27px;width:76%;transform:rotate(-6deg);z-index:2}.photo-fill{position:relative;display:grid;place-items:center;overflow:hidden}.rose-fill{height:310px;background:#d8bab2;background-image:linear-gradient(135deg,#eed9cb66,transparent 60%)}.rose-fill:before{content:"";position:absolute;border:1px solid #a7797180;inset:26px 32px 0;border-radius:46% 46% 0 0}.rose-fill:after{content:"";position:absolute;inset:32px 38px 0;border:1px solid #f6e7d066;border-radius:46% 46% 0 0}.placeholder-mark{position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;color:#775b54;gap:10px}.placeholder-mark .icon{width:31px;height:31px;stroke-width:1}.placeholder-mark b{font-size:13px;font-weight:400;letter-spacing:3px}.placeholder-mark small{font:8px Georgia,serif;letter-spacing:2px;opacity:.85}.photo-corner{position:absolute;bottom:14px;left:14px;font:7px Georgia,serif;letter-spacing:1px;opacity:.65}.photo-caption{font-family:var(--serif);font-size:14px;letter-spacing:1px;padding:17px 7px 19px;display:flex;justify-content:space-between;align-items:center}.photo-caption span{font-size:27px;color:var(--red);line-height:1}.tape{position:absolute;z-index:5;display:block;width:105px;height:31px;background:#d9c6a898;clip-path:polygon(2% 0,98% 4%,100% 90%,0 100%);box-shadow:0 1px 1px #00000008}.tape-top{top:-14px;left:calc(50% - 52px);transform:rotate(3deg)}.small-photo{position:absolute;width:43%;right:0;bottom:9px;transform:rotate(9deg);z-index:3;padding:9px 9px 0}.sage-fill{background:#bec8b4;height:160px;background-image:linear-gradient(30deg,#93a68844,transparent)}.sage-fill .placeholder-mark{color:#57654c}.sage-fill b{font-size:10px;letter-spacing:2px}.small-photo p{font:italic 13px Georgia,serif;text-align:center;padding:13px 0 16px}.small-tape{width:62px;height:24px;top:-9px;left:calc(50% - 31px);transform:rotate(-7deg)}.hand-note{font-family:"KaiTi","STKaiti",var(--serif);font-size:18px;color:var(--red)}.top-note{position:absolute;right:23px;top:1px;transform:rotate(7deg)}.love-stamp{position:absolute;left:0;bottom:23px;border:1.5px solid var(--red);color:var(--red);border-radius:50%;width:103px;height:103px;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(-14deg);outline:1px dashed var(--red);outline-offset:-7px;z-index:4}.love-stamp span{font:8px Georgia,serif;letter-spacing:1.4px}.love-stamp strong{font:38px var(--serif);line-height:1.2;margin:1px 0}.love-stamp small{font:7px Georgia,serif;letter-spacing:1px}.doodle-heart{position:absolute;right:1px;top:26px;font:86px var(--serif);color:var(--red);transform:rotate(21deg);z-index:4}.date-sticker{position:absolute;right:-5px;top:190px;z-index:4;background:#f3dfa7;padding:8px 14px;transform:rotate(5deg);box-shadow:1px 2px 3px #40342118;border:1px solid #dbc38a}.date-sticker small{display:block;font:7px Georgia,serif;text-align:center;letter-spacing:1px}.date-sticker strong{font:31px Georgia,serif}.date-sticker strong span{font:13px Georgia,serif;padding:0 4px;color:var(--red)}.collage-caption{position:absolute;bottom:-27px;right:52px;font:12px var(--serif);color:var(--muted)}.ribbon{overflow:hidden;background:var(--red);color:#f4e8d8;padding:12px 0;transform:rotate(-1.2deg);width:100%;font-size:12px;letter-spacing:2px}.ribbon div{white-space:nowrap;width:max-content}.ribbon span{padding:0 34px;color:#dbc192}.section{padding-top:91px;padding-bottom:88px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:39px}.section-kicker{font:10px Georgia,serif;letter-spacing:2px;color:var(--red);margin-bottom:11px}.section-heading h2{font-family:var(--serif);font-size:32px;line-height:1.5;font-weight:600;letter-spacing:1px}.section-heading>p{font-size:11px;line-height:1.9;color:var(--muted);padding-bottom:4px}.tiny-heart{font-family:Georgia,serif;color:var(--red);padding-left:19px;font-weight:400}.invitation-ticket{display:grid;grid-template-columns:195px 1fr 125px;background:var(--white);border:1px solid #d8d3c5;position:relative;filter:drop-shadow(0 5px 5px #51453208)}.ticket-date{background:#e4e7db;text-align:center;padding:29px 20px 25px;position:relative;border-right:1px dashed #b7bea9}.ticket-date>span:first-child{font:12px Georgia,serif;letter-spacing:2px}.ticket-date strong{font:92px Georgia,serif;display:block;line-height:1.2;color:var(--green)}.ticket-date>span:nth-child(3){font-size:11px;letter-spacing:2px}.ticket-flower{color:#7b8668;font-size:31px;margin-top:10px;line-height:1}.ticket-main{padding:26px 36px}.ticket-topline{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px}.ticket-topline>span:first-child{letter-spacing:2px}.ticket-number{font:8px Georgia,serif;letter-spacing:1px;padding-top:4px}.ticket-main h3{font:25px var(--serif);margin-top:20px}.ticket-main h3 span{font:11px var(--sans);display:inline-block;border-left:1px solid #bdb9aa;padding-left:13px;margin-left:13px;vertical-align:middle}.schedule{display:flex;align-items:center;gap:24px;margin:24px 0 20px}.schedule>div:not(.schedule-connector){display:flex;flex-direction:column}.schedule>div>span{font-size:10px;letter-spacing:1px;color:var(--muted)}.schedule strong{font:36px Georgia,serif;color:var(--red);margin-top:5px}.schedule-connector{width:65px;border-top:1px dashed #c9c3b3;position:relative;height:0}.schedule-connector>span{position:absolute;left:22px;top:-11px;background:var(--white);padding:0 5px;color:var(--red)!important}.ticket-bottom{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:5px}.ticket-bottom .icon{width:14px;height:14px}.ticket-stub{border-left:1px dashed #c3b8a5;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:21px;position:relative}.ticket-stub:before,.ticket-stub:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:var(--paper);left:-9px;border:1px solid #d8d3c5}.ticket-stub:before{top:-9px;clip-path:inset(50% 0 0)}.ticket-stub:after{bottom:-9px;clip-path:inset(0 0 50%)}.ticket-stub strong{font:47px var(--serif);color:var(--red)}.ticket-stub>span:first-child{font:8px Georgia,serif;letter-spacing:1px}.ticket-stub>span:last-child{font:12px var(--serif);letter-spacing:3px}.section-aside{font-size:11px;color:var(--muted);margin-top:23px;display:flex;align-items:center;gap:11px}.mini-line{width:30px;height:1px;background:#9da58b}.travel-section{background:#e9ecdf;border-top:1px solid #dfe2d5;border-bottom:1px solid #dfe2d5}.heading-note{transform:rotate(-5deg);padding-bottom:10px}.travel-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:start}.travel-information{min-height:365px}.travel-tabs{display:flex;border-bottom:1px solid #bec6af;gap:6px}.travel-tabs button{background:transparent;font-size:12px;letter-spacing:.4px;padding:12px 20px;display:flex;align-items:center;gap:6px;position:relative;border-radius:3px 3px 0 0}.travel-tabs button[aria-selected=true]{background:#58644a;color:#fffdf7}.travel-tabs button:hover{background:#d9dfca}.travel-tabs button[aria-selected=true]:hover{background:#4f5b41}.travel-tabs .icon{width:18px;height:18px}.travel-panel{padding:28px 2px 0;min-height:315px}.small-label{font:9px Georgia,serif;letter-spacing:1.6px;color:var(--muted)}.travel-panel h3,.stay-copy>h3{font-family:var(--serif);font-size:27px;font-weight:600;margin-top:8px}.panel-intro{font-size:12px;color:var(--muted);margin-top:6px}.detail-list{font-size:12px;margin:25px 0 0}.detail-list>div{display:grid;grid-template-columns:78px 1fr;gap:13px;padding:13px 0;border-bottom:1px solid #bcc3ad80}.detail-list dt{color:#5c6350}.detail-list dd{margin:0}.pending{color:#747568}.panel-actions{display:flex;align-items:center;gap:16px;margin-top:22px;flex-wrap:wrap}.outline-button{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid #7b856c;padding:9px 13px;font-size:11px;border-radius:2px}.outline-button:hover{background:#dce1ce}.outline-button .icon{width:15px;height:15px}.action-note{font-size:10px;color:#6e7661}.location-postcard{background:#fffdf7;padding:13px 13px 0;transform:rotate(3deg);box-shadow:0 5px 13px #34422212;position:relative;margin:12px 5px 0}.postcard-tape{width:98px;left:calc(50% - 49px);top:-15px;transform:rotate(-6deg)}.location-art{background:#e8dcc8;height:232px;display:flex;align-items:center;justify-content:center;position:relative}.building-drawing{width:95%;height:100%;stroke:#8b795d;stroke-width:1.3;opacity:.65}.art-label{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);font-size:10px;background:#f5ebd9;padding:3px 11px;color:#75664e;white-space:nowrap}.postcard-caption{display:flex;align-items:center;justify-content:space-between;padding:18px 8px 10px}.postcard-caption small{display:block;font:8px Georgia,serif;letter-spacing:1.5px;color:var(--muted)}.postcard-caption strong{font:19px Georgia,var(--serif);display:block;margin-top:4px}.postcard-caption>.icon{color:var(--red);width:27px;height:27px}.location-postcard>p{font-size:9px;color:var(--muted);padding:0 8px 18px}.bus-note{font-size:11px;color:#667257;margin-top:19px;display:flex;gap:8px;align-items:center}.stay-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:82px;align-items:center;padding:10px 10px 5px}.hotel-photo{position:relative;transform:rotate(-3deg)}.hotel-fill{height:316px;background:#d8d8ca;background-image:linear-gradient(110deg,#f1e8d333,transparent)}.hotel-fill:before{content:"";position:absolute;inset:27px;border:1px solid #8e9a7b55}.hotel-fill .placeholder-mark{color:#69735c}.hotel-fill .placeholder-mark .icon{width:42px;height:42px}.hotel-tag{position:absolute;bottom:20px;right:-22px;background:#e5bdaf;color:#814f49;padding:6px 18px;transform:rotate(9deg);font-family:var(--serif);font-size:18px}.stay-copy>.small-label{color:var(--red)}.stay-date{display:flex;align-items:center;gap:9px;margin-top:20px;font-size:13px}.stay-date>.icon{width:19px;height:19px;color:var(--green)}.stay-date small{font-size:9px;padding:2px 7px;border:1px solid #d5cfbd;color:#7c7664}.stay-copy .detail-list{margin-top:13px}.stay-copy .detail-list>div{border-color:var(--line)}.breakfast-note{display:flex;align-items:center;gap:15px;margin-top:23px;padding:16px 18px;background:#eee4d1;border-left:2px solid #c9af7d}.breakfast-note>.icon{width:28px;height:28px;color:#92764a}.breakfast-note h4{font-size:12px;font-weight:500}.breakfast-note p{font-size:10px;color:var(--muted);margin-top:3px}.text-link{display:inline-flex;align-items:center;gap:16px;border-bottom:1px solid #aa8d83;padding-bottom:5px;font-size:11px;color:var(--red);margin-top:24px}.text-link .icon{width:17px;height:17px}.route-section{padding-top:20px}.route-label{font-size:11px;color:var(--muted)}.route-board{border:1px solid #d6cbbb;background:#f0e8d9;padding:34px 40px 22px;position:relative}.route-overview{display:flex;align-items:center;gap:25px;padding-bottom:27px}.route-stop{position:relative;padding-left:22px;min-width:145px}.stop-dot{width:9px;height:9px;background:var(--green);border-radius:50%;position:absolute;top:7px;left:0;outline:1px solid #7f8b6e;outline-offset:3px}.route-stop small{font-size:10px;color:var(--muted)}.route-stop h3{font:21px var(--serif);margin:5px 0 7px}.route-stop>span:last-child{font-size:10px;color:var(--muted)}.destination .stop-dot{background:var(--red);outline-color:#b0807c}.route-between{flex:1;position:relative;text-align:center;align-self:center}.route-between>div{height:1px;background:repeating-linear-gradient(90deg,#b2a58e 0,#b2a58e 5px,transparent 5px,transparent 10px)}.route-between>span{display:block;color:var(--red);font-size:19px;height:30px}.route-between small{font-size:9px;display:block;margin-top:6px;color:var(--muted)}.map-placeholder{min-height:225px;border:1px solid #d9d0c0;background-color:#faf6ed;background-image:linear-gradient(#ded7c838 1px,transparent 1px),linear-gradient(90deg,#ded7c838 1px,transparent 1px);background-size:24px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:25px}.map-placeholder>.icon{width:29px;height:29px;color:#92937e;stroke-width:1}.map-placeholder strong{font:19px var(--serif);font-weight:400;margin-top:5px}.map-placeholder>span{font-size:11px;color:var(--muted)}.map-placeholder small{font-size:9px;letter-spacing:1px;color:#7d7e70;border:1px solid #d8d4c7;padding:2px 8px;margin-top:7px;background:#f5f1e8}.route-bottom{display:flex;align-items:center;gap:15px;padding-top:20px;font-size:11px;color:var(--muted)}.route-bottom>span:first-child{color:var(--ink)}.route-bottom .hand-note{margin-left:auto;transform:rotate(-4deg);font-size:19px}.closing{padding-top:4px;padding-bottom:65px;text-align:center}.closing-star{font-size:43px;color:var(--red);line-height:1.3;display:block;margin-bottom:17px}.closing h2{font:39px var(--serif);line-height:1.5;margin:17px 0}.closing h2 span{color:var(--red)}.closing>p:not(.section-kicker){font-size:12px;color:var(--muted);letter-spacing:1px}.closing-date{font:11px Georgia,serif;letter-spacing:2px;margin-top:26px}.closing-date span{color:var(--red);padding:0 10px}.back-top{display:inline-block;font-size:10px;color:var(--muted);border-bottom:1px solid #cbc6b7;padding-bottom:2px;margin-top:28px}.page-footer{border-top:1px solid var(--line);padding:22px 0 26px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.5px;color:#77796b}.page-footer span:first-child{font:9px Georgia,serif;letter-spacing:1.3px}.mobile-nav{display:none}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,15px);background:#3f4639;color:#fffdf5;padding:11px 20px;font-size:12px;box-shadow:0 3px 14px #0002;z-index:30;opacity:0;pointer-events:none;transition:.2s;border-radius:3px;max-width:calc(100% - 40px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1400px){.hero{min-height:700px;padding-top:76px;padding-bottom:85px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:14px}.hero h1{font-size:60px}.hero-collage{height:460px;margin-left:0}.main-photo{top:50px;left:12px;width:80%}.rose-fill{height:280px}.small-photo{width:45%}.sage-fill{height:136px}.date-sticker{right:-5px;top:190px}.love-stamp{width:87px;height:87px;left:-9px;bottom:19px}.love-stamp strong{font-size:31px}.love-stamp span{font-size:7px}.hero-message{font-size:12px}.ticket-main{padding:26px}.ticket-number{display:none}.invitation-ticket{grid-template-columns:160px 1fr 105px}.travel-layout{gap:35px}.stay-layout{gap:45px}.travel-tabs button{padding:12px 15px}.location-art{height:225px}.section-heading h2{font-size:29px}.date-sticker strong{font-size:27px}}
@media(max-width:760px){html{scroll-padding-top:22px}body{font-size:14px;padding-bottom:76px}.wrap{width:calc(100% - 40px)}.preview-note{font-size:9px;padding:6px 10px;letter-spacing:.8px}.site-header{height:81px}.brand{font-size:14px;gap:10px;letter-spacing:1px}.brand small{font-size:7px;letter-spacing:1.4px}.xi{width:35px;height:39px;font-size:25px}.header-date{font-size:9px;letter-spacing:.8px}.header-date span{padding:0 3px}.desktop-nav{display:none}.hero{display:flex;flex-direction:column;align-items:stretch;padding:31px 0 50px;gap:0;min-height:auto}.hero-copy{position:relative;z-index:5}.eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:15px;gap:8px}.little-star{font-size:20px}.hero h1{font-size:clamp(45px,12vw,65px);line-height:1.22;letter-spacing:1px}.hero h1 br{display:none}.hero-message{font-size:11px;line-height:1.9;margin-top:20px}.date-line{gap:13px;margin:20px 0 0}.date-line strong{font-size:30px;letter-spacing:.7px}.date-line>span{font-size:9px;padding-left:13px}.primary-button{font-size:10px;padding:10px 13px;gap:10px;margin-top:20px}.primary-button .icon{width:16px;height:16px}.hero-footnote{display:none}.hero-collage{height:405px;width:min(100%,410px);align-self:center;margin:20px 0 0}.gingham-paper{top:14%;left:14%;width:74%;height:75%;background-size:24px 24px}.main-photo{top:35px;left:8%;width:71%;padding:9px 9px 0}.rose-fill{height:246px}.photo-caption{padding:13px 4px 15px;font-size:11px;letter-spacing:.7px}.photo-caption span{font-size:23px}.rose-fill:before{inset:21px 24px 0}.rose-fill:after{inset:27px 30px 0}.placeholder-mark b{font-size:11px;letter-spacing:2px}.placeholder-mark small{font-size:6px;letter-spacing:1.6px}.placeholder-mark .icon{width:26px;height:26px}.top-note{top:0;right:22px;font-size:15px}.doodle-heart{font-size:69px;right:1px;top:14px}.date-sticker{top:156px;right:1px;padding:8px 10px}.date-sticker small{font-size:6px}.date-sticker strong{font-size:26px}.small-photo{width:41%;right:1%;bottom:5px;padding:8px 8px 0}.sage-fill{height:128px}.sage-fill b{font-size:9px}.small-photo p{font-size:11px;padding:10px 0 14px}.small-tape{height:21px;width:55px}.love-stamp{bottom:21px;left:5px;width:79px;height:79px}.love-stamp strong{font-size:28px}.love-stamp span{font-size:6px}.love-stamp small{font-size:6px}.collage-caption{bottom:-20px;right:32px;font-size:10px}.ribbon{padding:9px 0;font-size:10px;letter-spacing:1.5px;transform:rotate(-1.5deg)}.ribbon span{padding:0 22px}.section{padding-top:56px;padding-bottom:54px}.section-heading{gap:13px;align-items:start;margin-bottom:26px}.section-heading h2{font-size:25px;line-height:1.45;letter-spacing:0}.section-kicker{font-size:8px;letter-spacing:1.5px;margin-bottom:9px}.section-heading>p{display:none}.tiny-heart{padding-left:9px}.invitation-ticket{grid-template-columns:91px 1fr}.ticket-date{padding:27px 7px 22px}.ticket-date>span:first-child{font-size:8px;letter-spacing:1px}.ticket-date strong{font-size:59px;line-height:1.3;margin:6px 0}.ticket-date>span:nth-child(3){font-size:8px;letter-spacing:.5px}.ticket-flower{font-size:25px;margin-top:19px}.ticket-stub{display:none}.ticket-main{padding:22px 18px 21px}.ticket-topline{font-size:8px}.ticket-topline>span:first-child{letter-spacing:1px}.ticket-main h3{font-size:21px;line-height:1.5;margin-top:10px}.ticket-main h3 span{font-size:9px;display:block;margin:2px 0 0;padding:0;border:0}.schedule{gap:12px;margin:18px 0 17px}.schedule>div>span{font-size:8px;letter-spacing:.5px}.schedule strong{font-size:28px}.schedule-connector{width:25px}.schedule-connector>span{left:3px;font-size:10px!important;padding:0 4px;top:-10px}.ticket-bottom{font-size:8px;line-height:1.8;gap:4px;align-items:flex-start}.ticket-bottom .icon{width:12px;height:12px;margin-top:1px}.section-aside{font-size:9px;gap:8px;margin-top:19px}.mini-line{width:19px}.heading-note{display:none}.travel-layout{display:flex;flex-direction:column;gap:27px}.travel-information{width:100%;min-height:0}.travel-tabs{gap:0}.travel-tabs button{flex:1;justify-content:center;padding:11px 4px;font-size:11px;letter-spacing:0}.travel-tabs .icon{width:16px;height:16px}.travel-panel{padding-top:23px;min-height:320px}.travel-panel h3,.stay-copy>h3{font-size:25px}.small-label{font-size:8px;letter-spacing:1.4px}.panel-intro{font-size:11px}.detail-list{font-size:11px;margin-top:19px}.detail-list>div{grid-template-columns:67px 1fr;gap:8px;padding:13px 0}.panel-actions{gap:13px;margin-top:21px}.outline-button{font-size:10px;padding:9px 12px}.action-note{font-size:9px}.location-postcard{width:calc(100% - 16px);max-width:420px;align-self:center;margin:4px 0 8px;padding:10px 10px 0;transform:rotate(2deg)}.location-art{height:200px}.postcard-caption{padding:14px 7px 9px}.postcard-caption strong{font-size:18px}.location-postcard>p{font-size:9px;padding:0 7px 15px}.stay-layout{display:flex;flex-direction:column;gap:34px;padding:0}.hotel-photo{width:calc(100% - 30px);max-width:400px;align-self:center;padding:10px 10px 0;margin-top:4px}.hotel-fill{height:240px}.hotel-tag{right:-17px;font-size:16px;padding:5px 14px;bottom:14px}.hotel-photo .photo-caption{padding-top:14px;padding-bottom:16px}.stay-copy{width:100%;padding:4px 0 0}.stay-date{font-size:12px;gap:8px;margin-top:17px;flex-wrap:wrap}.stay-date small{font-size:9px}.breakfast-note{padding:15px;gap:13px;margin-top:21px}.breakfast-note h4{font-size:12px}.breakfast-note p{font-size:10px}.text-link{font-size:11px;margin-top:21px}.route-section{padding-top:4px}.route-label{display:none}.route-board{padding:24px 18px 19px}.route-overview{gap:10px;padding-bottom:24px}.route-stop{padding-left:14px;min-width:0}.route-stop small{font-size:8px}.route-stop h3{font-size:16px;margin:6px 0;line-height:1.5}.route-stop>span:last-child{font-size:8px;white-space:nowrap}.stop-dot{width:6px;height:6px;outline-offset:2px;top:8px}.route-between{min-width:20px}.route-between>span{font-size:16px;height:26px}.route-between small{display:none}.destination h3{font-size:16px}.map-placeholder{min-height:225px;padding:21px 12px}.map-placeholder strong{font-size:18px}.map-placeholder>span{font-size:10px;max-width:205px;line-height:1.8}.map-placeholder small{font-size:8px}.route-bottom{gap:8px;font-size:9px;padding-top:15px;flex-wrap:wrap}.route-bottom .hand-note{display:none}.closing{padding-top:0;padding-bottom:40px}.closing-star{font-size:34px;margin-bottom:14px}.closing h2{font-size:31px;margin:13px 0}.closing>p:not(.section-kicker){font-size:11px;letter-spacing:.5px}.closing-date{font-size:9px;letter-spacing:1.5px;margin-top:22px}.back-top{font-size:10px;margin-top:25px}.page-footer{padding:19px 0 23px;font-size:8px;gap:6px;flex-wrap:wrap}.page-footer span:first-child{font-size:8px}.page-footer span:last-child{width:100%;text-align:center;margin-top:5px;color:#7a7b6c}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;padding:9px 12px calc(9px + env(safe-area-inset-bottom));background:#faf7eff5;backdrop-filter:blur(10px);border-top:1px solid #d9d3c5;z-index:25;justify-content:space-around}.mobile-nav a{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:9px;letter-spacing:.5px;color:#747867;min-width:55px;min-height:42px;padding:1px 10px}.mobile-nav .icon{width:21px;height:21px;stroke-width:1.3}.mobile-nav a.active{color:var(--red)}.mobile-nav a.active .icon{stroke-width:1.8}.toast{bottom:90px;font-size:11px;width:max-content}}
@media(max-width:374px){.wrap{width:calc(100% - 32px)}.header-date{font-size:8px}.hero h1{font-size:43px}.hero-collage{height:370px}.rose-fill{height:220px}.sage-fill{height:112px}.main-photo{left:6%}.date-sticker{top:149px}.small-photo{bottom:1px}.section-heading h2{font-size:23px}.ticket-main{padding:21px 13px}.schedule{gap:8px}.schedule strong{font-size:25px}.invitation-ticket{grid-template-columns:83px 1fr}.route-board{padding-left:14px;padding-right:14px}.route-stop h3,.destination h3{font-size:14px}.route-overview{gap:7px}.route-stop>span:last-child{font-size:7px}.stay-date{gap:6px}}
.hero-footnote{font-size:11px;letter-spacing:0}.hero-footnote span{padding:0 5px}
@media(max-width:760px){.hero h1 br{display:initial}.hero-footnote{display:block;font-size:10px;margin-top:17px;line-height:1.8}.detail-list{font-size:12px}.panel-intro{font-size:12px}.ticket-bottom{font-size:9px}.breakfast-note p{font-size:11px}.map-placeholder>span{font-size:11px}.route-stop>span:last-child{font-size:9px}.route-bottom{font-size:10px}}
@media(max-width:374px){.hero-footnote{font-size:9px}.route-stop>span:last-child{font-size:7px}}
.travel-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.travel-tabs button{justify-content:center;min-width:0;min-height:44px;padding:11px 6px;white-space:nowrap}.address-link{color:var(--green);text-decoration:underline;text-decoration-color:#9aa58d;text-underline-offset:4px;line-height:1.9}.address-link .icon{display:inline-block;width:13px;height:13px;margin-left:5px;vertical-align:middle}.map-button{background:var(--green);border-color:var(--green);color:var(--white)}.map-button:hover{background:#48553b;color:var(--white)}.panel-actions .outline-button{min-height:44px}.metro-steps{list-style:none;padding:0;margin:23px 0 24px}.metro-steps li{display:flex;gap:15px;position:relative;padding-bottom:22px}.metro-steps li:last-child{padding-bottom:0}.metro-steps li:not(:last-child):before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:1px;background:#aeb99e}.metro-step-number{position:relative;flex:0 0 28px;height:28px;border:1px solid #9da98e;border-radius:50%;display:grid;place-items:center;background:#e9ecdf;color:var(--green);font:11px Georgia,serif}.metro-steps strong{display:block;font-size:14px;font-weight:500;line-height:1.8}.metro-steps p{font-size:12px;color:#68715a;margin-top:4px;line-height:1.9}.metro-steps b{color:var(--green);font-weight:600}.metro-line{display:inline-block;background:#657446;color:#fffdf7;font-size:11px;line-height:1.6;padding:1px 8px;border-radius:3px;margin-left:3px}.route-navigation .panel-actions{justify-content:center;margin:20px 0 12px;gap:10px}.route-navigation .outline-button .icon{width:15px;height:15px;margin:0}.route-navigation>small{margin-top:0}@media(max-width:760px){.travel-tabs button{padding:11px 3px;font-size:11px}.panel-actions .outline-button{font-size:11px}.metro-steps{margin-top:22px}.metro-steps strong{font-size:14px}.route-navigation .panel-actions{gap:8px}.route-navigation .outline-button{padding:10px;font-size:10px}.route-navigation>span{max-width:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
