*{box-sizing:border-box;margin:0;padding:0}:root{--champagne:#d4b896;--rose-gold:#b76e79;--ivory:#faf7f2;--deep-burgundy:#722f37;--sage:#9caf88;--charcoal:#3a3530}html{scroll-behavior:smooth;scrollbar-width:none}html::-webkit-scrollbar{display:none}body{color:var(--charcoal);background:var(--ivory);font-family:Cormorant Garamond,Noto Serif SC,serif;line-height:1.7;overflow-x:hidden}.script{font-family:Great Vibes,cursive;font-weight:400}.scroll-progress{background:linear-gradient(90deg, var(--champagne), var(--rose-gold), var(--deep-burgundy));z-index:200;width:0%;height:3px;transition:width 50ms linear;position:fixed;top:0;left:0;box-shadow:0 0 12px #d4b89699}.reveal-up{opacity:0;transition:opacity 1.1s,transform 1.1s cubic-bezier(.16,1,.3,1);transform:translateY(60px)}.reveal-up.is-visible{opacity:1;transform:translateY(0)}.reveal-fade{opacity:0;transition:opacity 1.4s}.reveal-fade.is-visible{opacity:1}.reveal-zoom{opacity:0;transition:opacity 1.1s,transform 1.1s cubic-bezier(.16,1,.3,1);transform:scale(.92)}.reveal-zoom.is-visible{opacity:1;transform:scale(1)}.reveal-mask{position:relative;overflow:hidden}.reveal-mask:after{content:"";background:var(--ivory);transform-origin:100%;z-index:2;transition:transform 1.4s cubic-bezier(.77,0,.18,1);position:absolute;inset:0;transform:scaleX(1)}.reveal-mask.is-visible:after{transform:scaleX(0)}.section-title .sub{opacity:0;transition:opacity 1s,transform 1s cubic-bezier(.16,1,.3,1);display:inline-block;transform:translateY(20px)}.section-title h2{opacity:0;transition:opacity 1s .2s,transform 1s cubic-bezier(.16,1,.3,1) .2s;transform:translateY(30px)}.section-title .divider{width:0;transition:width 1.2s cubic-bezier(.77,0,.18,1) .5s}.section-title.is-visible .sub,.section-title.is-visible h2{opacity:1;transform:translateY(0)}.section-title.is-visible .divider{width:80px}.hero-content{transition:transform .1s linear}.num[data-count]{min-width:50px;display:inline-block}.floating-decor{pointer-events:none;z-index:50;position:fixed;inset:0;overflow:hidden}@media (width>=769px){.floating-decor .float-item{mix-blend-mode:normal}}.float-item{pointer-events:none;will-change:transform;-webkit-user-select:none;user-select:none;font-size:24px;position:absolute;top:-50px}@keyframes drift-1{0%{transform:translateY(-10vh)rotate(0)}to{transform:translate(80px,110vh)rotate(360deg)}}@keyframes drift-2{0%{transform:translateY(-10vh)rotate(0)}50%{transform:translate(-60px,50vh)rotate(180deg)}to{transform:translate(40px,110vh)rotate(360deg)}}@keyframes drift-3{0%{transform:translateY(-10vh)rotate(0)scale(1)}50%{transform:translate(80px,55vh)rotate(-180deg)scale(1.1)}to{transform:translate(-50px,110vh)rotate(-360deg)scale(.9)}}@keyframes ribbon-sway{0%{transform:translateY(-10vh)rotate(-10deg)}25%{transform:translate(40px,30vh)rotate(20deg)}50%{transform:translate(-30px,55vh)rotate(-15deg)}75%{transform:translate(30px,80vh)rotate(15deg)}to{transform:translate(-20px,110vh)rotate(-20deg)}}.ribbon{background:linear-gradient(180deg, var(--rose-gold), var(--champagne));opacity:.7;border-radius:6px;width:6px;height:80px;box-shadow:0 0 6px #d4b89680}.ribbon.gold{background:linear-gradient(#e8c879,#b8860b)}.ribbon.pink{background:linear-gradient(#f4c2c8,#d48a9c)}.ribbon.burgundy{background:linear-gradient(#c97a82,#722f37)}@keyframes sparkle{0%,to{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.2)}}.sparkle{background:var(--champagne);width:4px;height:4px;box-shadow:0 0 8px var(--champagne);border-radius:50%;animation:3s ease-in-out infinite sparkle}nav{z-index:100;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:20px 60px;transition:all .4s;display:flex;position:fixed;top:0;left:0;right:0}nav.scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf7f2eb;border-bottom-color:#d4b8964d}nav .logo{color:var(--ivory);letter-spacing:2px;font-family:Great Vibes,cursive;font-size:32px;transition:color .4s}nav.scrolled .logo{color:var(--deep-burgundy)}nav ul{gap:40px;list-style:none;display:flex}nav ul a{color:#faf7f2e6;letter-spacing:3px;text-transform:uppercase;font-size:14px;text-decoration:none;transition:color .3s;position:relative}nav.scrolled ul a{color:var(--charcoal)}nav ul a:hover{color:var(--rose-gold)}nav ul a:after{content:"";background:var(--rose-gold);width:0;height:1px;transition:width .3s;position:absolute;bottom:-6px;left:0}nav ul a:hover:after{width:100%}.hero{text-align:center;height:100vh;min-height:600px;color:var(--ivory);background:#1a1612;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;background-image:url(https://img.alicdn.com/imgextra/i4/O1CN01fSe7hK22EMSeTwZiu_!!6000000007088-0-tps-2400-1596.jpg);background-position:50%;background-size:cover;animation:28s ease-in-out infinite alternate kenBurns;position:absolute;inset:0}@keyframes kenBurns{0%{transform:scale(1.05)translate(0)}to{transform:scale(1.18)translate(-2%,-3%)}}.hero-video{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{z-index:2;background:radial-gradient(at 50% 25%,#ffdca040,#0000 55%),radial-gradient(at 50% 90%,#722f378c,#0000 60%),linear-gradient(#28191e8c 0%,#3a1e2373 50%,#3a1e23b3 100%);position:absolute;inset:0}.hero-overlay:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffd7962e,#0000 60%);width:600px;height:600px;position:absolute;top:-40%;left:50%;transform:translate(-50%)}.hero-content{z-index:3;padding:0 20px;animation:1.8s fadeUp;position:relative}.hero .ornament{letter-spacing:10px;color:var(--champagne);margin-bottom:24px;font-size:clamp(20px,3vw,28px)}.hero h1{text-shadow:0 4px 30px #0006,0 0 60px #ffd79633;font-family:Great Vibes,cursive;font-size:clamp(56px,12vw,180px);font-weight:400;line-height:1}.hero .amp{color:var(--champagne);margin:6px 0;font-size:clamp(34px,6vw,80px);display:block}.hero .date{letter-spacing:clamp(4px,.8vw,8px);text-transform:uppercase;border-top:1px solid var(--champagne);border-bottom:1px solid var(--champagne);max-width:90vw;margin-top:32px;padding:12px 20px;font-size:clamp(13px,1.6vw,18px);display:inline-block}.hero .location{letter-spacing:3px;margin-top:16px;padding:0 16px;font-size:clamp(14px,1.8vw,20px);font-style:italic}.hero .location .cathedral{color:var(--champagne);letter-spacing:1px;margin-top:6px;font-family:Great Vibes,cursive;font-size:clamp(20px,3vw,32px);font-style:normal;display:block}@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}section{padding:120px 60px}.section-title{text-align:center;margin-bottom:80px}.section-title .sub{color:var(--rose-gold);font-family:Great Vibes,cursive;font-size:48px;line-height:1}.section-title h2{letter-spacing:8px;text-transform:uppercase;color:var(--charcoal);margin-top:10px;font-size:42px;font-weight:400}.divider{background:var(--champagne);width:80px;height:1px;margin:20px auto;position:relative}.divider:before{content:"♥";background:var(--ivory);color:var(--rose-gold);padding:0 10px;font-size:14px;position:absolute;top:-10px;left:50%;transform:translate(-50%)}.story{background:var(--ivory)}.story-grid{grid-template-columns:1fr 1fr;align-items:center;gap:80px;max-width:1200px;margin:0 auto;display:grid}.story-text p{color:#5a544e;margin-bottom:20px;font-size:19px}.story-text .signature{color:var(--rose-gold);margin-top:30px;font-family:Great Vibes,cursive;font-size:36px}.story-image{height:540px;box-shadow:30px 30px 0 var(--champagne);background:url(https://img.alicdn.com/imgextra/i4/O1CN01HE6bQy1GDoQhSYJxX_!!6000000000589-0-tps-1200-800.jpg) 50%/cover;position:relative}.venue{text-align:center;background:#2a2520;position:relative;overflow:hidden}.venue-bg{will-change:transform;z-index:0;background-image:url(https://images.unsplash.com/photo-1601556123240-462c758a929d?w=2400&q=85);background-position:50%;background-size:cover;background-attachment:fixed;position:absolute;inset:-10% 0}.venue-overlay{z-index:1;background:radial-gradient(#faf7f24d 0%,#281c1e8c 60%,#281c1ed9 100%),linear-gradient(#281c1e66,#281c1e99);position:absolute;inset:0}.venue>*{z-index:2;position:relative}.venue .section-title h2,.venue .section-title .sub{color:var(--ivory)}.venue .section-title .sub{color:var(--champagne)!important}.venue .section-title .divider:before{color:var(--champagne);background:0 0}.venue-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--champagne);background:#fffffff5;max-width:900px;margin:0 auto;padding:60px;position:relative;box-shadow:0 30px 100px #0006,0 0 0 1px #d4b89699}.venue-card:before{content:"";pointer-events:none;border:1px solid #d4b89680;position:absolute;inset:12px}.venue-card .crest{color:var(--rose-gold);margin-bottom:20px;font-size:50px}.venue-card h3{color:var(--deep-burgundy);margin-bottom:10px;font-size:38px;font-weight:400}.venue-card .place{color:#888;letter-spacing:3px;margin-bottom:30px;font-style:italic}.venue-card p{color:#5a544e;margin-bottom:20px;font-size:18px}.venue-features{border-top:1px solid #eee;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px;padding-top:40px;display:grid}.venue-features div{letter-spacing:2px;text-transform:uppercase;color:var(--charcoal);font-size:14px}.venue-features .num{color:var(--rose-gold);text-transform:none;letter-spacing:0;margin-bottom:8px;font-family:Great Vibes,cursive;font-size:56px;line-height:1;display:block}.destinations{background:linear-gradient(180deg, var(--ivory) 0%, #f5ede1 50%, var(--ivory) 100%);overflow:hidden}.destinations-intro{text-align:center;color:#6a645e;max-width:680px;margin:-40px auto 70px;font-size:19px;font-style:italic}.cities-grid{grid-template-columns:repeat(4,1fr);gap:28px;max-width:1400px;margin:0 auto;display:grid}.city-card{cursor:pointer;opacity:0;background:#2a2520;height:420px;transition:transform .9s cubic-bezier(.16,1,.3,1),opacity .9s,box-shadow .5s;position:relative;overflow:hidden;transform:translateY(60px);box-shadow:0 10px 30px #3a353014}.city-card.reveal{opacity:1;transform:translateY(0)}.city-card:hover{box-shadow:0 30px 60px #722f3740}.city-card .city-img{filter:brightness(.85)saturate(.95);background-position:50%;background-size:cover;transition:transform 1.4s cubic-bezier(.16,1,.3,1),filter .6s;position:absolute;inset:0}.city-card:hover .city-img{filter:brightness()saturate(1.1);transform:scale(1.15)rotate(1deg)}.city-card .overlay{background:linear-gradient(#3a353000 30%,#3a35308c 65%,#3a3530eb 100%);transition:background .5s;position:absolute;inset:0}.city-card:hover .overlay{background:linear-gradient(#722f3733 0%,#3a3530a6 50%,#3a3530f2 100%)}.city-card .city-number{color:var(--champagne);opacity:.85;font-family:Great Vibes,cursive;font-size:38px;line-height:1;transition:transform .6s,opacity .4s;position:absolute;top:20px;left:24px}.city-card:hover .city-number{opacity:1;transform:translate(6px)scale(1.1)}.city-card .crest-mark{border:1px solid var(--champagne);width:36px;height:36px;color:var(--champagne);justify-content:center;align-items:center;font-size:14px;transition:transform .6s;display:flex;position:absolute;top:24px;right:24px;transform:rotate(45deg)}.city-card .crest-mark span{transform:rotate(-45deg)}.city-card:hover .crest-mark{transform:rotate(225deg)}.city-card .city-info{color:var(--ivory);padding:24px 26px 28px;transition:transform .6s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:0;right:0;transform:translateY(48px)}.city-card:hover .city-info{transform:translateY(0)}.city-card .country{color:var(--champagne);margin-bottom:6px;font-family:Great Vibes,cursive;font-size:28px;line-height:1}.city-card .city-name{letter-spacing:4px;text-transform:uppercase;margin-bottom:10px;font-size:28px;font-weight:400}.city-card .city-style{letter-spacing:2px;color:var(--champagne);text-transform:uppercase;border-top:1px solid #d4b89666;padding-top:10px;font-size:13px;display:inline-block}.city-card .city-desc{color:#faf7f2d9;opacity:0;max-height:0;margin-top:14px;font-size:15px;font-style:italic;line-height:1.7;transition:max-height .6s,opacity .4s .1s,margin-top .4s;overflow:hidden}.city-card:hover .city-desc{opacity:1;max-height:120px}.city-card:before{content:"";z-index:2;pointer-events:none;background:linear-gradient(90deg,#0000,#d4b89626,#0000);width:60%;height:200%;transition:transform 1s;position:absolute;top:-50%;left:-50%;transform:rotate(25deg)translate(-100%)}.city-card:hover:before{transform:rotate(25deg)translate(400%)}@keyframes floatHeart{0%{opacity:0;transform:translateY(0)scale(1)}20%{opacity:1}to{opacity:0;transform:translateY(-60px)scale(.6)}}.city-card .heart-pop{color:var(--rose-gold);pointer-events:none;opacity:0;z-index:3;font-size:20px;position:absolute;bottom:80px;left:50%}.city-card:hover .heart-pop{animation:1.5s infinite floatHeart}.schedule{background:radial-gradient(ellipse at top, #fdf9f0 0%, var(--ivory) 60%, #f5ede1 100%);position:relative;overflow:hidden}.schedule:before,.schedule:after{content:"";pointer-events:none;background:radial-gradient(circle,#d4b8962e,#0000 70%);border-radius:50%;width:500px;height:500px;position:absolute}.schedule:before{top:10%;left:-200px}.schedule:after{background:radial-gradient(circle,#b76e791f,#0000 70%);bottom:5%;right:-200px}.schedule-intro{text-align:center;color:#6a645e;z-index:1;max-width:720px;margin:-40px auto 80px;font-size:19px;font-style:italic;position:relative}.schedule-intro:before,.schedule-intro:after{content:"⚜";color:var(--champagne);vertical-align:middle;margin:0 16px;font-size:22px;font-style:normal}.luxury-timeline{z-index:1;max-width:1100px;margin:0 auto;position:relative}.luxury-timeline:before{content:"";background:linear-gradient(180deg, transparent 0%, var(--champagne) 5%, var(--rose-gold) 50%, var(--champagne) 95%, transparent 100%);width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 20px #d4b89666}.lux-item{opacity:0;grid-template-columns:1fr 80px 1fr;align-items:stretch;gap:50px;margin-bottom:80px;transition:opacity 1s,transform 1s cubic-bezier(.16,1,.3,1);display:grid;transform:translateY(50px)}.lux-item.reveal{opacity:1;transform:translateY(0)}.lux-badge{background:var(--ivory);border:2px solid var(--champagne);width:80px;height:80px;box-shadow:0 0 0 8px var(--ivory), 0 0 0 9px #d4b89666, 0 10px 30px #722f3726;color:var(--deep-burgundy);letter-spacing:1px;z-index:2;border-radius:50%;justify-content:center;align-items:center;margin:30px auto 0;font-family:Cormorant Garamond,serif;font-size:26px;font-weight:500;transition:transform .6s,box-shadow .6s;display:flex;position:relative}.lux-item:hover .lux-badge{box-shadow:0 0 0 8px var(--ivory), 0 0 0 9px var(--rose-gold), 0 15px 40px #722f374d;transform:rotate(360deg)scale(1.08)}.lux-badge:before,.lux-badge:after{content:"";background:var(--champagne);width:1px;height:30px;position:absolute;left:50%;transform:translate(-50%)}.lux-badge:before{top:-38px}.lux-badge:after{bottom:-38px}.lux-card{background:#fff;border:1px solid #d4b89666;padding:40px;transition:transform .5s,box-shadow .5s;position:relative;box-shadow:0 4px 20px #722f370f,0 20px 60px #3a353014}.lux-item:hover .lux-card{transform:translateY(-8px);box-shadow:0 4px 20px #722f371a,0 30px 80px #722f372e}.lux-card:before{content:"";pointer-events:none;border:1px solid #d4b89680;position:absolute;inset:8px}.lux-card:after{content:"";background:linear-gradient(90deg, transparent, var(--champagne), var(--rose-gold), var(--champagne), transparent);height:3px;position:absolute;top:-1px;left:-1px;right:-1px}.lux-time{color:var(--rose-gold);margin-bottom:6px;font-family:Great Vibes,cursive;font-size:52px;line-height:1}.lux-eyebrow{letter-spacing:5px;text-transform:uppercase;color:var(--champagne);margin-bottom:18px;font-size:11px}.lux-title{letter-spacing:4px;text-transform:uppercase;color:var(--deep-burgundy);margin-bottom:8px;font-size:30px;font-weight:400;display:inline-block;position:relative}.lux-subtitle{color:#888;border-bottom:1px solid #d4b89666;margin-bottom:22px;padding-bottom:22px;font-size:17px;font-style:italic}.lux-desc{color:#5a544e;margin-bottom:22px;font-size:17px;line-height:1.85}.lux-details{padding:0;list-style:none}.lux-details li{color:#6a645e;border-bottom:1px dashed #d4b8964d;padding:8px 0 8px 24px;font-size:15px;position:relative}.lux-details li:last-child{border-bottom:none}.lux-details li:before{content:"✦";color:var(--rose-gold);font-size:14px;position:absolute;top:8px;left:0}.lux-details li strong{color:var(--deep-burgundy);letter-spacing:1px;font-weight:500}.lux-visual{background-position:50%;background-size:cover;height:100%;min-height:380px;position:relative;overflow:hidden;box-shadow:0 20px 60px #3a35302e}.lux-visual:after{content:"";background:linear-gradient(135deg,#722f3726,#0000 50%,#3a353059);transition:opacity .5s;position:absolute;inset:0}.lux-visual:before{content:"";pointer-events:none;z-index:2;border:1px solid #faf7f280;position:absolute;inset:14px}.lux-visual .visual-img{background-position:50%;background-size:cover;transition:transform 1.6s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.lux-item:hover .visual-img{transform:scale(1.12)}.lux-visual .visual-label{z-index:3;color:var(--ivory);text-shadow:0 2px 12px #0006;font-family:Great Vibes,cursive;font-size:32px;position:absolute;bottom:24px;left:24px}.lux-item:nth-child(2n) .lux-card{order:3}.lux-item:nth-child(2n) .lux-badge-wrap{order:2}.lux-item:nth-child(2n) .lux-visual{order:1}.menu-grid{grid-template-columns:1fr 1fr;gap:0 30px;margin-top:10px;display:grid}.menu-grid .lux-details li{padding-left:20px;font-size:14px}.gallery{background:#fff}.gallery-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:16px;max-width:1400px;margin:0 auto;display:grid}.gallery-grid div{filter:brightness(.95)saturate(.9);cursor:pointer;background-position:50%;background-size:cover;transition:transform .6s,filter .6s}.gallery-grid div:hover{filter:brightness(1.05)saturate(1.1);transform:scale(1.02)}.g1{background-image:url(https://img.alicdn.com/imgextra/i1/O1CN01HnYbod1rvuLTm7smB_!!6000000005694-0-tps-1200-800.jpg);grid-area:span 2/span 2}.g2{background-image:url(https://images.unsplash.com/photo-1519225421980-715cb0215aed?w=800&q=80)}.g3{background-image:url(https://images.unsplash.com/photo-1511795409834-ef04bbd61622?w=800&q=80)}.g4{background-image:url(https://images.unsplash.com/photo-1525772764200-be829a350797?w=800&q=80)}.g5{background-image:url(https://images.unsplash.com/photo-1519741497674-611481863552?w=800&q=80)}.g6{background-image:url(https://images.unsplash.com/photo-1530653333484-8eef3a82a512?w=1200&q=80);grid-column:span 2}.rsvp{color:var(--ivory);text-align:center;background:linear-gradient(#722f37c7,#3a3530d9),url(https://images.unsplash.com/photo-1464366400600-7168b8af9bc3?w=2000&q=80) 50%/cover fixed;position:relative}.service-tagline{max-width:760px;color:var(--champagne);letter-spacing:1px;margin:-40px auto 20px;font-size:20px;font-style:italic}.service-features{flex-wrap:wrap;justify-content:center;gap:40px;max-width:900px;margin:0 auto 50px;display:flex}.service-features div{color:var(--ivory);letter-spacing:3px;text-transform:uppercase;border-bottom:1px solid var(--champagne);padding:8px 0;font-size:14px}.service-features div span{color:var(--champagne);text-transform:none;letter-spacing:0;vertical-align:middle;margin-right:8px;font-family:Great Vibes,cursive;font-size:22px}.contact-band{letter-spacing:2px;color:#faf7f2d9;border-top:1px solid #d4b89666;flex-wrap:wrap;justify-content:center;gap:40px;margin-top:40px;padding-top:30px;font-size:14px;display:flex}.contact-band span{color:var(--champagne);margin-right:8px}.wechat-qr-wrap{text-align:center;margin-top:30px}.wechat-qr{object-fit:contain;mix-blend-mode:screen;filter:brightness(1.1);border-radius:8px;width:120px;height:120px;margin:0 auto;display:block}.wechat-qr-tip{letter-spacing:2px;color:#d4b896b3;margin-top:10px;font-size:12px}.rsvp .section-title h2,.rsvp .section-title .sub{color:var(--ivory)}.rsvp .sub{color:var(--champagne)!important}.rsvp-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#faf7f214;border:1px solid #d4b8964d;max-width:600px;margin:0 auto;padding:50px}.rsvp-form .field{text-align:left;margin-bottom:24px}.rsvp-form label{letter-spacing:3px;text-transform:uppercase;color:var(--champagne);margin-bottom:8px;font-size:12px;display:block}.rsvp-form input,.rsvp-form select{border:none;border-bottom:1px solid var(--champagne);width:100%;color:var(--ivory);background:0 0;outline:none;padding:14px 0;font-family:inherit;font-size:17px}.rsvp-form input::placeholder{color:#faf7f280}.rsvp-form select option{background:var(--charcoal);color:var(--ivory)}.custom-select{width:100%;position:relative}.custom-select__trigger{border:none;border-bottom:1px solid var(--champagne);color:#faf7f280;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;width:100%;padding:14px 0;font-family:inherit;font-size:17px;transition:border-color .3s;display:flex}.custom-select__trigger.has-value{color:var(--ivory)}.custom-select__trigger:hover,.custom-select__trigger.open{border-color:var(--rose-gold)}.custom-select__arrow{color:var(--champagne);align-items:center;transition:transform .3s;display:flex}.custom-select__trigger.open .custom-select__arrow{transform:rotate(180deg)}.custom-select__dropdown{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:100;background:#3a3530f5;border:1px solid #d4b89659;max-height:280px;margin:0;padding:8px 0;list-style:none;animation:.25s selectSlideDown;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 40px #00000080}@keyframes selectSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.custom-select__dropdown::-webkit-scrollbar{width:4px}.custom-select__dropdown::-webkit-scrollbar-track{background:0 0}.custom-select__dropdown::-webkit-scrollbar-thumb{background:#d4b89666;border-radius:4px}.custom-select__option{color:#faf7f2cc;cursor:pointer;letter-spacing:1px;padding:12px 20px;font-size:15px;transition:background .2s,color .2s}.custom-select__option:hover{color:var(--ivory);background:#d4b89626}.custom-select__option.selected{color:var(--champagne);background:#b76e7940}.custom-select__option.selected:before{content:"✦ ";color:var(--rose-gold);font-size:10px}.date-picker{width:100%;position:relative}.date-picker__trigger{border:none;border-bottom:1px solid var(--champagne);color:#faf7f280;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;width:100%;padding:14px 0;font-family:inherit;font-size:17px;transition:border-color .3s;display:flex}.date-picker__trigger.has-value{color:var(--ivory)}.date-picker__trigger:hover,.date-picker__trigger.open{border-color:var(--rose-gold)}.date-picker__icon{color:var(--champagne);align-items:center;transition:color .3s;display:flex}.date-picker__trigger:hover .date-picker__icon,.date-picker__trigger.open .date-picker__icon{color:var(--rose-gold)}.date-picker__panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:100;background:#3a3530f5;border:1px solid #d4b89659;padding:20px;animation:.25s selectSlideDown;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 12px 40px #00000080}.date-picker__header{border-bottom:1px solid #d4b89633;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.date-picker__year-month{color:var(--champagne);letter-spacing:2px;font-family:Cormorant Garamond,serif;font-size:20px}.date-picker__nav{color:var(--champagne);cursor:pointer;letter-spacing:0;text-transform:none;width:32px;height:32px;font-size:inherit;background:0 0;border:1px solid #d4b89666;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;transition:all .3s;display:flex}.date-picker__nav:hover:not(:disabled){border-color:var(--rose-gold);color:var(--rose-gold);background:#d4b89626}.date-picker__nav:disabled{opacity:.3;cursor:not-allowed}.date-picker__weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px;display:grid}.date-picker__weekday{text-align:center;color:#d4b896b3;letter-spacing:1px;padding:4px 0;font-size:12px}.date-picker__grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.date-picker__day{color:#faf7f2d9;aspect-ratio:1;cursor:pointer;letter-spacing:0;text-transform:none;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:100%;margin:0;padding:0;font-family:inherit;font-size:14px;transition:all .2s;display:flex}.date-picker__day.empty{cursor:default}.date-picker__day:hover:not(:disabled):not(.empty){border-color:var(--champagne);color:var(--ivory);background:#d4b89626}.date-picker__day.today{color:var(--champagne);border-color:#d4b89680}.date-picker__day.selected{border-color:var(--rose-gold);color:var(--champagne);background:#b76e7966;font-weight:500}.date-picker__day.disabled{opacity:.2;cursor:not-allowed}.rsvp-form>button[type=submit]{color:var(--ivory);border:1px solid var(--champagne);letter-spacing:5px;text-transform:uppercase;cursor:pointer;background:0 0;margin-top:20px;padding:16px 60px;font-family:inherit;font-size:14px;transition:all .4s}.rsvp-form>button[type=submit]:hover{background:var(--champagne);color:var(--charcoal);letter-spacing:7px}.floating-cta-btn{z-index:90;color:var(--ivory);-webkit-backdrop-filter:blur(20px)saturate(1.3);letter-spacing:4px;white-space:nowrap;cursor:pointer;opacity:0;pointer-events:none;background:linear-gradient(135deg,#722f37a6,#3a1e238c);border:1px solid #d4b89680;align-items:center;gap:14px;padding:16px 40px;font-family:Cormorant Garamond,Noto Serif SC,serif;font-size:16px;text-decoration:none;transition:all .8s cubic-bezier(.16,1,.3,1);display:inline-flex;position:fixed;bottom:36px;left:50%;transform:translate(-50%)translateY(80px);box-shadow:0 8px 32px #722f3759,inset 0 0 0 1px #d4b8961a}.floating-cta-btn.show{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.floating-cta-btn:before{content:"";pointer-events:none;border:1px solid #d4b8964d;transition:border-color .4s;position:absolute;inset:5px}.floating-cta-btn:hover{border-color:var(--champagne);letter-spacing:6px;background:linear-gradient(135deg,#722f37cc,#b76e7999);box-shadow:0 12px 48px #722f3773,0 0 24px #d4b89626}.floating-cta-btn:hover:before{border-color:#d4b8968c}.floating-cta-btn__icon{color:var(--champagne);font-size:14px;transition:transform .4s}.floating-cta-btn:hover .floating-cta-btn__icon{transform:rotate(90deg)scale(1.2)}.floating-cta-btn__text{position:relative}.floating-cta-btn__arrow{color:var(--champagne);font-size:18px;transition:transform .4s}.floating-cta-btn:hover .floating-cta-btn__arrow{transform:translate(4px)}@keyframes ctaPulse{0%,to{box-shadow:0 8px 32px #722f3759,0 0 #d4b8964d}50%{box-shadow:0 8px 32px #722f3759,0 0 0 8px #d4b89600}}.floating-cta-btn.show{animation:3s ease-in-out 1s infinite ctaPulse}.floating-cta-btn:hover{animation:none}@media (width<=768px){.floating-cta-btn{letter-spacing:3px;gap:10px;padding:14px 28px;font-size:14px;bottom:24px}.floating-cta-btn:hover{letter-spacing:4px}}@media (width<=380px){.floating-cta-btn{letter-spacing:2px;gap:8px;padding:12px 22px;font-size:13px}}.customize-page{min-height:100vh;color:var(--ivory);background:radial-gradient(at top,#722f3740 0%,#0000 50%),radial-gradient(at bottom,#d4b8961f 0%,#0000 60%),#1f1a18;padding-bottom:80px}.cust-header{text-align:center;padding:80px 60px 60px;position:relative}.cust-back{color:var(--champagne);letter-spacing:3px;border:1px solid #d4b89666;padding:8px 18px;font-size:14px;text-decoration:none;transition:all .3s;position:absolute;top:40px;left:60px}.cust-back:hover{border-color:var(--champagne);color:var(--ivory);background:#d4b89626}.cust-header__title{max-width:720px;margin:0 auto}.cust-header__script{color:var(--rose-gold);margin-bottom:10px;font-family:Great Vibes,cursive;font-size:52px;line-height:1}.cust-header h1{letter-spacing:8px;color:var(--ivory);text-transform:uppercase;margin-bottom:4px;font-size:44px;font-weight:400}.cust-header .divider{background:var(--champagne);margin:24px auto}.cust-header .divider:before{background:#1f1a18}.cust-header__sub{color:#d4b896d9;margin-top:16px;font-size:17px;font-style:italic}.cust-section{max-width:1400px;margin:0 auto;padding:70px 60px;position:relative}.cust-step{align-items:center;gap:18px;margin-bottom:40px;display:flex}.cust-step__num{color:var(--champagne);font-family:Great Vibes,cursive;font-size:60px;line-height:1}.cust-step__line{background:linear-gradient(90deg, var(--champagne), transparent);flex:1;height:1px}.cust-section__head{text-align:center;margin-bottom:50px}.cust-section__script{color:var(--rose-gold);font-family:Great Vibes,cursive;font-size:36px;line-height:1}.cust-section__head h2{letter-spacing:6px;color:var(--ivory);text-transform:uppercase;margin-top:8px;font-size:28px;font-weight:400}.cust-grid{gap:22px;display:grid}.cust-grid--city{grid-template-columns:repeat(4,1fr)}.cust-grid--flower,.cust-grid--wine{grid-template-columns:repeat(3,1fr)}.cust-card{cursor:pointer;background:#2a2520;border:1px solid #d4b89633;height:340px;transition:transform .5s cubic-bezier(.16,1,.3,1),border-color .4s,box-shadow .4s;position:relative;overflow:hidden}.cust-card:hover{border-color:#d4b89680;transform:translateY(-6px);box-shadow:0 20px 50px #00000080}.cust-card.selected{border-color:var(--champagne);box-shadow:0 0 0 2px var(--champagne), 0 20px 60px #d4b89659;transform:translateY(-6px)}.cust-card__img{filter:brightness(.75)saturate(.95);background-position:50%;background-size:cover;transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .4s;position:absolute;inset:0}.cust-card:hover .cust-card__img,.cust-card.selected .cust-card__img{filter:brightness(.95)saturate(1.1);transform:scale(1.08)}.cust-card__overlay{background:linear-gradient(#281c1e00 30%,#281c1ebf 70%,#281c1ef2 100%);position:absolute;inset:0}.cust-card__check{background:var(--champagne);width:32px;height:32px;color:var(--charcoal);z-index:3;border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:600;animation:.4s cubic-bezier(.34,1.56,.64,1) checkPop;display:flex;position:absolute;top:16px;right:16px;box-shadow:0 4px 12px #0006}@keyframes checkPop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.cust-card__info{color:var(--ivory);z-index:2;padding:20px 22px 24px;position:absolute;bottom:0;left:0;right:0}.cust-card__country,.cust-card__icon{color:var(--champagne);margin-bottom:4px;font-family:Great Vibes,cursive;font-size:24px;line-height:1;display:block}.cust-card__icon{font-family:inherit;font-size:28px}.cust-card__name{letter-spacing:3px;text-transform:uppercase;margin-bottom:8px;font-size:22px;font-weight:400}.cust-card__style{letter-spacing:2px;color:var(--champagne);text-transform:uppercase;border-top:1px solid #d4b89666;padding-top:8px;font-size:12px;display:inline-block}.cust-card__desc{color:#faf7f2bf;opacity:0;max-height:0;margin-top:10px;font-size:13px;font-style:italic;line-height:1.6;transition:max-height .5s,opacity .4s,margin-top .4s;overflow:hidden}.cust-card:hover .cust-card__desc,.cust-card.selected .cust-card__desc{opacity:1;max-height:80px}.cust-grid--venue{grid-template-columns:repeat(2,1fr);gap:24px}.quote-card{cursor:pointer;background:#faf7f208;border:1px solid #d4b8961f;border-radius:10px;transition:transform .4s,border-color .3s,box-shadow .3s;overflow:hidden}.quote-card:hover{border-color:#d4b89666;transform:translateY(-4px);box-shadow:0 12px 40px #00000059}.quote-card__img{height:180px;position:relative;overflow:hidden}.quote-card__img img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.quote-card:hover .quote-card__img img{transform:scale(1.05)}.quote-card__badge{background:var(--champagne);color:var(--charcoal);letter-spacing:2px;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:500;position:absolute;top:12px;left:12px}.quote-card__body{padding:20px 18px 18px}.quote-card__en{letter-spacing:2px;color:var(--champagne);opacity:.6;text-transform:uppercase;margin-bottom:4px;font-size:11px}.quote-card__name{letter-spacing:3px;color:var(--ivory);margin-bottom:10px;font-size:18px;font-weight:400}.quote-card__desc{letter-spacing:1px;color:#faf7f2a6;margin-bottom:14px;font-size:13px;line-height:1.6}.quote-card__divider{background:linear-gradient(90deg,#d4b8964d,#0000);height:1px;margin-bottom:14px}.quote-card__price{align-items:baseline;gap:4px;margin-bottom:10px;display:flex}.quote-card__price-num{color:var(--champagne);letter-spacing:1px;font-size:26px;font-weight:300}.quote-card__price-unit{color:var(--champagne);opacity:.7;letter-spacing:1px;font-size:12px}.quote-card__feature{letter-spacing:1px;color:#faf7f28c;font-size:12px}.quote-card--booked{border-color:var(--champagne);box-shadow:0 0 0 2px #d4b8964d}.quote-card--booked:after{content:"✓ 已选择";letter-spacing:1px;color:#fff;z-index:2;background:#d4b896d9;border-radius:4px;padding:3px 10px;font-size:11px;position:absolute;top:12px;left:12px}.venue-panel-backdrop{z-index:900;opacity:0;pointer-events:none;background:#0009;transition:opacity .35s;position:fixed;inset:0}.venue-panel-backdrop--open{opacity:1;pointer-events:auto}.venue-panel{z-index:910;background:var(--charcoal);border-top-left-radius:20px;border-top-right-radius:20px;flex-direction:column;height:75vh;transition:transform .4s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -10px 60px #00000080}.venue-panel--open{transform:translateY(0)}.venue-panel__close{z-index:2;color:#fff;cursor:pointer;background:#0006;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:background .2s;display:flex;position:absolute;top:12px;right:12px}.venue-panel__close:hover{background:#0009}.venue-panel__img{border-top-left-radius:20px;border-top-right-radius:20px;flex-shrink:0;height:220px;position:relative;overflow:hidden}.venue-panel__img img{object-fit:cover;width:100%;height:100%}.venue-panel__badge{background:var(--champagne);color:var(--charcoal);letter-spacing:2px;border-radius:20px;padding:5px 14px;font-size:12px;font-weight:500;position:absolute;top:16px;left:16px}.venue-panel__content{flex:1;padding:28px 28px 20px;overflow-y:auto}.venue-panel__en{letter-spacing:2px;color:var(--champagne);opacity:.6;text-transform:uppercase;margin-bottom:4px;font-size:12px}.venue-panel__name{letter-spacing:4px;color:var(--ivory);margin-bottom:16px;font-size:24px;font-weight:400}.venue-panel__price{align-items:baseline;gap:4px;margin-bottom:20px;display:flex}.venue-panel__price-num{color:var(--champagne);font-size:32px;font-weight:300}.venue-panel__price-unit{color:var(--champagne);opacity:.7;font-size:14px}.venue-panel__divider{background:linear-gradient(90deg,#d4b8964d,#0000);height:1px;margin-bottom:24px}.venue-panel__section-title{letter-spacing:3px;color:var(--champagne);opacity:.8;text-transform:uppercase;margin-bottom:12px;font-size:14px}.venue-panel__desc{color:#faf7f2bf;margin-bottom:24px;font-size:15px;line-height:1.8}.venue-panel__features{gap:20px;margin-bottom:28px;display:flex}.venue-panel__feature-item{background:#faf7f20a;border:1px solid #d4b8961a;border-radius:8px;flex:1;padding:14px 16px}.venue-panel__feature-label{letter-spacing:2px;color:var(--champagne);opacity:.6;margin-bottom:6px;font-size:11px;display:block}.venue-panel__feature-value{letter-spacing:1px;color:var(--ivory);font-size:15px}.venue-panel__list{margin:0;padding:0;list-style:none}.venue-panel__list li{color:#faf7f2b3;letter-spacing:1px;padding-left:18px;font-size:14px;line-height:2;position:relative}.venue-panel__list li:before{content:"";background:var(--champagne);opacity:.5;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.venue-panel__bar{background:#282420f2;border-top:1px solid #d4b8961f;flex-shrink:0;justify-content:flex-end;align-items:center;padding:18px 28px;display:flex}.venue-panel__bar-price{align-items:baseline;gap:4px;margin-right:36px;display:flex}.venue-panel__bar-price-num{color:var(--champagne);letter-spacing:1px;font-size:26px;font-weight:600}.venue-panel__bar-price-unit{color:#d4b89699;font-size:12px}.venue-panel__btn--book{letter-spacing:4px;cursor:pointer;text-transform:uppercase;background:var(--champagne);color:var(--charcoal);border:none;border-radius:6px;padding:14px 36px;font-family:inherit;font-size:14px;font-weight:500;transition:all .3s}.venue-panel__btn--book:hover{letter-spacing:5px;background:#e8d5b7}.venue-panel__btn-wrap{position:relative}.venue-panel__bar-badge{letter-spacing:.5px;color:#fff;white-space:nowrap;background:#e04848;border-radius:8px 8px 8px 0;padding:3px 10px;font-size:11px;line-height:1.4;position:absolute;top:-10px;right:-10px}@media (width<=768px){.venue-panel{height:80vh}.venue-panel__img{height:180px}.venue-panel__content{padding:20px 20px 16px}.venue-panel__name{letter-spacing:3px;font-size:20px}.venue-panel__bar-price-num{font-size:22px}.venue-panel__features{flex-direction:column;gap:12px}.venue-panel__bar{padding:14px 20px}}.order-bar{z-index:800;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#282420f5;border-top:1px solid #d4b89626;align-items:center;padding:16px 28px;transition:transform .35s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(0)}.order-bar--hidden{transform:translateY(100%)}.order-bar__price{align-items:baseline;gap:6px;display:flex}.order-bar__price-label{color:#faf7f299;font-size:12px}.order-bar__price-num{color:var(--champagne);letter-spacing:1px;font-size:22px;font-weight:600}.order-bar__cart{cursor:pointer;background:0 0;border:1px solid #d4b8964d;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin-left:24px;font-size:18px;transition:border-color .2s;display:flex;position:relative}.order-bar__cart:hover{border-color:var(--champagne)}.order-bar__cart-count{color:#fff;background:#e04848;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:600;display:flex;position:absolute;top:-4px;right:-4px}.order-bar__btn{letter-spacing:3px;background:var(--champagne);color:var(--charcoal);cursor:pointer;text-transform:uppercase;border:none;border-radius:6px;margin-left:auto;padding:12px 32px;font-family:inherit;font-size:14px;font-weight:500;transition:all .3s}.order-bar__btn:hover{letter-spacing:4px;background:#e8d5b7}.cart-pad-backdrop{z-index:850;background:#0000008c;position:fixed;inset:0}.cart-pad{z-index:860;background:#2d2824fa;border-radius:20px 20px 0 0;flex-direction:column;max-height:60vh;padding:28px 28px 32px;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.cart-pad__close{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:flex;position:absolute;top:16px;right:16px}.cart-pad__title{letter-spacing:3px;color:var(--ivory);margin-bottom:20px;font-size:18px}.cart-pad__list{flex-direction:column;gap:12px;display:flex}.cart-pad__item{background:#faf7f20a;border:1px solid #d4b8961f;border-radius:8px;align-items:center;gap:12px;padding:14px 16px;display:flex}.cart-pad__item-module{letter-spacing:1px;color:var(--champagne);white-space:nowrap;background:#d4b8961f;border-radius:4px;padding:2px 8px;font-size:11px}.cart-pad__item-name{color:var(--ivory);letter-spacing:1px;flex:1;font-size:14px}.cart-pad__item-price{color:var(--champagne);white-space:nowrap;font-size:14px;font-weight:500}.cart-pad__total{letter-spacing:2px;color:var(--ivory);border-top:1px solid #d4b89626;justify-content:space-between;margin-top:20px;padding-top:16px;font-size:16px;display:flex}.cart-pad__total span:last-child{color:var(--champagne);font-size:20px;font-weight:600}.confirm-bar{z-index:790;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#282420f5;border-top:1px solid #d4b89626;justify-content:space-between;align-items:center;padding:16px 28px;display:flex;position:fixed;bottom:0;left:0;right:0}.confirm-bar__info{letter-spacing:2px;color:#faf7f2b3;font-size:14px}.confirm-bar__btn{letter-spacing:3px;background:var(--champagne);color:var(--charcoal);cursor:pointer;text-transform:uppercase;border:none;border-radius:6px;padding:12px 36px;font-family:inherit;font-size:14px;font-weight:500;transition:all .3s}.confirm-bar__btn:hover{letter-spacing:4px;background:#e8d5b7}.wedding-shop{background:linear-gradient(180deg, var(--ivory) 0%, #f5ede1 50%, var(--ivory) 100%);text-align:center;padding:120px 0 100px;position:relative}.wedding-shop__sub{letter-spacing:3px;color:var(--champagne);opacity:.7;margin:-20px 0 50px;font-size:15px}.wedding-shop .product-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:36px;max-width:1200px}.wedding-shop .product-card__img{height:360px}.wedding-shop .product-card__name{font-size:30px}.wedding-shop .product-card__desc{margin-bottom:20px}.shop-card{cursor:pointer;border:1px solid #d4b89626;border-radius:16px;height:400px;transition:transform .4s,box-shadow .4s;position:relative;overflow:hidden}.shop-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px #0000004d}.shop-card__bg{object-fit:cover;z-index:1;width:100%;height:100%;transition:transform .6s;position:absolute;inset:0}.shop-card:hover .shop-card__bg{transform:scale(1.06)}.shop-card__overlay{z-index:2;background:linear-gradient(#1f1a1840 0%,#1f1a188c 100%);transition:background .4s;position:absolute;inset:0}.shop-card:hover .shop-card__overlay{background:linear-gradient(#1f1a1873 0%,#1f1a18bf 100%)}.shop-card__content{z-index:3;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.shop-card__name{letter-spacing:8px;text-transform:uppercase;color:var(--ivory);text-shadow:0 2px 8px #0000004d;margin-bottom:10px;font-size:30px;font-weight:400}.shop-card__desc{letter-spacing:2px;color:var(--champagne);opacity:.85;margin-bottom:24px;font-size:14px}.shop-card__btn{letter-spacing:3px;color:#1f1a18;background:linear-gradient(135deg, var(--champagne), #c9a96e);cursor:pointer;border:none;border-radius:30px;padding:10px 28px;font-size:13px;font-weight:500;transition:transform .3s,box-shadow .3s,letter-spacing .3s;display:inline-block;position:relative;overflow:hidden}.shop-card__btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff59,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.shop-card__btn:hover{letter-spacing:5px;transform:scale(1.06);box-shadow:0 6px 24px #d4b89699}.shop-card__btn:hover:before{left:100%}.shop-card__btn:active{transform:scale(.97)}@media (width<=768px){.wedding-shop{padding:80px 0 60px}.wedding-shop .product-grid{grid-template-columns:repeat(2,1fr);gap:20px;width:90%}.wedding-shop .product-card__img{height:240px}.wedding-shop .product-card__name{font-size:20px}.shop-card{height:300px}.shop-card__name{letter-spacing:4px;font-size:18px}.shop-card__desc{font-size:12px}.shop-card__btn{padding:8px 20px;font-size:12px}}@media (width<=480px){.wedding-shop .product-grid{grid-template-columns:repeat(2,1fr);gap:14px}.shop-card{height:260px}.wedding-shop .product-card__img{height:200px}.wedding-shop .product-card__name{letter-spacing:2px;font-size:16px}.wedding-shop .product-card__desc{margin-bottom:12px;font-size:11px}.wedding-shop .product-card__info{padding:12px 8px}.wedding-shop .product-card__btn{padding:6px 12px;font-size:11px}}.product-grid{grid-template-columns:repeat(3,1fr);gap:32px;width:82%;max-width:1100px;margin:0 auto;display:grid}.product-card{cursor:pointer;background:#faf7f20a;border:1px solid #d4b8961f;border-radius:12px;transition:transform .4s,box-shadow .4s,border-color .4s;position:relative;overflow:hidden}.product-card:hover{border-color:#d4b89666;transform:translateY(-6px);box-shadow:0 20px 60px #0006}.product-card--booked{border-color:var(--champagne);box-shadow:0 8px 32px #d4b89666,0 0 0 2px #d4b89659}.product-card--booked:after{content:"✓";background:var(--champagne);width:26px;height:26px;color:var(--charcoal);z-index:2;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;position:absolute;top:12px;right:12px}.product-card--booked .product-card__desc{color:var(--champagne);font-weight:500}.product-card__img{height:320px;position:relative;overflow:hidden}.product-card__img img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.product-card:hover .product-card__img img{transform:scale(1.06)}.product-card__explore{letter-spacing:4px;text-transform:uppercase;color:var(--ivory);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000059;border:1px solid #faf7f226;border-radius:20px;padding:6px 14px;font-size:12px;position:absolute;top:20px;left:20px}.product-card__info{text-align:center;padding:24px 20px}.product-card__name{letter-spacing:8px;text-transform:uppercase;color:var(--ivory);margin-bottom:8px;font-size:28px;font-weight:400}.product-card__desc{letter-spacing:2px;color:var(--champagne);opacity:.7;margin-bottom:16px;font-size:13px}.product-card__btn{letter-spacing:3px;color:#1f1a18;background:linear-gradient(135deg, var(--champagne), #c9a96e);cursor:pointer;border:none;border-radius:30px;margin-top:8px;padding:10px 28px;font-size:13px;font-weight:500;transition:all .3s;display:inline-block}.product-card__btn:hover{background:linear-gradient(135deg, #c9a96e, var(--champagne));transform:translateY(-2px);box-shadow:0 6px 20px #d4b89680}@media (width<=768px){.product-grid{grid-template-columns:repeat(2,1fr);gap:16px;width:92%}.product-card__img{height:220px}.product-card__name{letter-spacing:4px;font-size:20px}.product-card__info{padding:16px 14px}}@media (width<=480px){.product-grid{grid-template-columns:repeat(2,1fr);gap:16px}.product-card__img{height:180px}.product-card__name{letter-spacing:2px;font-size:16px}.product-card__desc{font-size:11px}.product-card__info{padding:12px 8px}.product-card__btn{padding:6px 12px;font-size:11px}}.city-row--bar{pointer-events:none;background:linear-gradient(90deg,#d4b8960a 0%,#d4b8961a 50%,#d4b8960a 100%);border-color:#d4b8961a;height:44px}.city-row--bar .city-row__img,.city-row--bar .city-row__body{opacity:0}.city-row--bar .city-row__img{flex:0 0 0;min-height:0}.city-row--slide{animation:.55s cubic-bezier(.22,.61,.36,1) both barSlide}.city-row--from-left{--slide-dir:-105%}.city-row--from-right{--slide-dir:105%}@keyframes barSlide{0%{opacity:0;transform:translateX(var(--slide-dir))}to{opacity:1;transform:translate(0)}}.city-row--grow{pointer-events:none;background:#faf7f20a;border-color:#d4b89626;height:auto;transition:height .8s linear,background .6s linear,border-color .6s linear}.city-row--grow .city-row__img{opacity:1;flex:0 0 42%;min-height:320px;transition:flex .8s linear,min-height .8s linear,opacity .6s linear .3s}.city-row--grow .city-row__body{opacity:1;transition:opacity .5s linear .5s}.city-row--show{opacity:1;transition:opacity .5s,transform .5s;transform:translateY(0)}.city-row--hidden{opacity:0;pointer-events:none;transform:translateY(24px)}.city-list{flex-direction:column;gap:48px;width:82%;max-width:1100px;margin:0 auto;display:flex}.city-row{cursor:pointer;background:#faf7f20a;border:1px solid #d4b89626;border-radius:8px;gap:0;transition:border-color .35s,box-shadow .35s,transform .35s;display:flex;overflow:hidden}.city-row:hover{border-color:#d4b89673;transform:translateY(-3px);box-shadow:0 12px 48px #00000059}.city-row:nth-child(2n){flex-direction:row-reverse}.city-row__img{flex:0 0 42%;min-height:320px;position:relative;overflow:hidden}.city-row__img img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.city-row:hover .city-row__img img{transform:scale(1.06)}.city-row__number{color:#faf7f226;letter-spacing:2px;font-size:60px;font-weight:300;line-height:1;position:absolute;bottom:16px;left:16px}.city-row__body{flex-direction:column;flex:1;justify-content:center;padding:36px 40px;display:flex}.city-row__meta{align-items:center;gap:10px;margin-bottom:8px;display:flex}.city-row__crest{color:var(--champagne);font-size:22px}.city-row__country{letter-spacing:3px;text-transform:uppercase;color:var(--champagne);opacity:.8;font-size:12px}.city-row__name{letter-spacing:8px;text-transform:uppercase;color:var(--ivory);margin-bottom:6px;font-size:36px;font-weight:400}.city-row__style{letter-spacing:3px;text-transform:uppercase;color:var(--champagne);opacity:.7;margin-bottom:18px;font-size:13px}.city-row__intro{color:#faf7f2b3;margin-bottom:24px;font-size:15px;line-height:1.8}.city-row__cta{letter-spacing:3px;text-transform:uppercase;color:var(--champagne);font-size:13px;transition:transform .3s}.city-row:hover .city-row__cta{transform:translate(6px)}.city-row--active{box-shadow:0 8px 32px #d4b89633;border-color:var(--champagne)!important}.spots-panel{opacity:0;max-height:0;transition:max-height .6s cubic-bezier(.4,0,.2,1),opacity .4s;overflow:hidden}.spots-panel--open{opacity:1;max-height:800px;transition:max-height .7s cubic-bezier(.4,0,.2,1),opacity .5s .1s}.spots-panel__inner{padding:32px 0 16px}.spots-panel__title{letter-spacing:4px;text-transform:uppercase;color:var(--champagne);opacity:.8;margin-bottom:24px;font-size:16px}.spots-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.spot-card{cursor:pointer;opacity:0;background:#faf7f208;border:1px solid #d4b8961a;border-radius:10px;transition:opacity .4s,transform .4s,border-color .3s,box-shadow .3s;overflow:hidden;transform:translateY(16px)}.spots-panel--open .spot-card{opacity:1;transform:translateY(0)}.spot-card:hover{border-color:#d4b89659;transform:translateY(-3px);box-shadow:0 8px 32px #0000004d}.spot-card__img{height:180px;overflow:hidden}.spot-card__img img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.spot-card:hover .spot-card__img img{transform:scale(1.06)}.spot-card__info{padding:16px 14px}.spot-card__name{letter-spacing:3px;color:var(--ivory);margin-bottom:4px;font-size:16px;font-weight:400}.spot-card__desc{letter-spacing:1px;color:var(--champagne);opacity:.6;font-size:12px}@media (width<=768px){.spots-grid{grid-template-columns:repeat(2,1fr);gap:14px}.spot-card__img{height:140px}.spot-card__name{letter-spacing:2px;font-size:14px}.spots-panel__title{letter-spacing:3px;font-size:14px}.spots-panel--open{max-height:1200px}}@media (width<=480px){.spots-grid{gap:10px}.spot-card__img{height:120px}.spot-card__info{padding:12px 10px}}.detail-hero{text-align:center;justify-content:center;align-items:center;height:60vh;min-height:400px;display:flex;position:relative;overflow:hidden}.detail-hero__bg{background-position:50%;background-size:cover;transition:transform .6s;position:absolute;inset:0}.detail-hero__overlay{background:radial-gradient(#faf7f21a 0%,#0000 50%),linear-gradient(#1f1a1866 0%,#1f1a1899 50%,#1f1a18eb 100%);position:absolute;inset:0}.detail-back{z-index:3}.detail-hero__content{z-index:2;color:var(--ivory);padding:0 20px;position:relative}.detail-hero__crest{color:var(--champagne);margin-bottom:12px;font-size:48px;display:block}.detail-hero__country{color:var(--champagne);margin-bottom:6px;font-family:Great Vibes,cursive;font-size:28px;line-height:1}.detail-hero__city{letter-spacing:12px;text-transform:uppercase;text-shadow:0 4px 30px #0006;margin-bottom:10px;font-size:64px;font-weight:400}.detail-hero__style{letter-spacing:4px;text-transform:uppercase;color:var(--champagne);font-size:14px}.detail-hero .divider{background:var(--champagne);margin:20px auto}.detail-hero .divider:before{background:0 0}.detail-hero__desc{color:#faf7f2d9;max-width:600px;margin:0 auto;font-size:18px;font-style:italic}.cust-submit{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#faf7f20d;border:1px solid #d4b8964d;max-width:720px;margin:60px auto 0;padding:50px 40px}.cust-submit__summary{color:var(--champagne);letter-spacing:2px;margin-bottom:28px;font-size:16px;font-style:italic}.cust-submit__btn{color:var(--ivory);border:1px solid var(--champagne);letter-spacing:5px;text-transform:uppercase;cursor:pointer;background:0 0;padding:16px 60px;font-family:inherit;font-size:14px;transition:all .4s}.cust-submit__btn:hover:not(:disabled){background:var(--champagne);color:var(--charcoal);letter-spacing:7px}.cust-submit__btn:disabled{opacity:.4;cursor:not-allowed}.venue-tabs{flex-wrap:wrap;gap:16px;margin-bottom:48px;display:flex}.venue-tab{cursor:pointer;color:var(--ivory);background:#faf7f208;border:1px solid #d4b89626;border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:20px 28px;font-family:inherit;transition:all .3s;display:flex}.venue-tab:hover{background:#faf7f20f;border-color:#d4b89666}.venue-tab--active{border-color:var(--champagne);background:#d4b8961a;box-shadow:0 4px 20px #d4b89626}.venue-tab__icon{font-size:28px}.venue-tab__label{letter-spacing:3px;font-size:15px}.venue-tab__en{letter-spacing:1px;color:var(--champagne);opacity:.6;font-size:11px}.venue-layout{align-items:flex-start;gap:40px;display:flex}.venue-filter{background:#faf7f208;border:1px solid #d4b8961f;border-radius:10px;flex-shrink:0;width:180px;padding:24px 20px;position:sticky;top:100px}.venue-filter__title{letter-spacing:3px;color:var(--champagne);opacity:.7;text-transform:uppercase;margin-bottom:20px;font-size:13px}.venue-filter__item{cursor:pointer;border-bottom:1px solid #d4b8960f;align-items:center;gap:10px;padding:10px 0;transition:opacity .2s;display:flex}.venue-filter__item:last-child{border-bottom:none}.venue-filter__item:hover{opacity:.85}.venue-filter__checkbox{appearance:none;cursor:pointer;background:0 0;border:1px solid #d4b89666;border-radius:3px;flex-shrink:0;width:18px;height:18px;transition:all .2s;position:relative}.venue-filter__checkbox:checked{background:var(--champagne);border-color:var(--champagne)}.venue-filter__checkbox:checked:after{content:"";border:solid var(--charcoal);border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:2px;left:5px;transform:rotate(45deg)}.venue-filter__label{letter-spacing:2px;color:var(--ivory);font-size:14px}.venue-filter__count{color:var(--champagne);opacity:.5;margin-left:auto;font-size:12px}.venue-content{flex:1;width:100%}.venue-category{margin-bottom:56px;transition:opacity .4s,max-height .5s}.venue-category--visible{opacity:1}.venue-category--hidden{opacity:0;max-height:0;margin:0;overflow:hidden}.venue-category__header{border-bottom:1px solid #d4b89626;align-items:baseline;gap:12px;margin-bottom:24px;padding-bottom:14px;display:flex}.venue-category__icon{font-size:22px}.venue-category__title{letter-spacing:4px;color:var(--ivory);font-size:20px;font-weight:400}.venue-category__en{letter-spacing:2px;color:var(--champagne);opacity:.5;font-size:12px}.venue-category__count{letter-spacing:1px;color:var(--champagne);opacity:.5;margin-left:auto;font-size:12px}.venue-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.venue-card{cursor:pointer;background:#faf7f208;border:1px solid #d4b8961a;border-radius:10px;transition:border-color .3s,box-shadow .3s,transform .3s;animation:.5s both venueCardIn;overflow:hidden}@keyframes venueCardIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.venue-card:hover{border-color:#d4b89659;transform:translateY(-3px);box-shadow:0 8px 32px #0000004d}.venue-card__img{height:200px;overflow:hidden}.venue-card__img img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.venue-card:hover .venue-card__img img{transform:scale(1.05)}.venue-card__body{padding:18px 16px}.venue-card__en{letter-spacing:2px;color:var(--champagne);opacity:.6;text-transform:uppercase;margin-bottom:4px;font-size:11px}.venue-card__name{letter-spacing:3px;color:var(--ivory);margin-bottom:8px;font-size:17px;font-weight:400}.venue-card__desc{letter-spacing:1px;color:var(--champagne);opacity:.7;font-size:13px;line-height:1.6}@media (width<=1024px){.cust-grid--city{grid-template-columns:repeat(3,1fr)}.cust-grid--flower,.cust-grid--wine{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.cust-header{padding:60px 20px 40px}.cust-back{letter-spacing:2px;padding:6px 14px;font-size:12px;top:20px;left:20px}.cust-header__title{padding-top:36px}.cust-header__script{font-size:40px}.cust-header h1{letter-spacing:4px;font-size:26px}.cust-header__sub{font-size:15px}.cust-section{padding:50px 20px}.cust-step__num{font-size:44px}.cust-section__script{font-size:28px}.cust-section__head h2{letter-spacing:3px;font-size:20px}.cust-grid--city,.cust-grid--flower,.cust-grid--wine{grid-template-columns:repeat(2,1fr);gap:14px}.cust-card{height:260px}.cust-card__name{letter-spacing:2px;font-size:16px}.cust-card__desc{display:none}.cust-card__info{padding:14px 16px 18px}.cust-submit{margin:40px 20px 0;padding:30px 20px}.cust-submit__summary{font-size:14px}.cust-submit__btn{letter-spacing:3px;padding:14px 36px;font-size:13px}.detail-hero{height:50vh;min-height:320px}.detail-hero__crest{margin-bottom:8px;font-size:36px}.detail-hero__country{font-size:22px}.detail-hero__city{letter-spacing:6px;font-size:36px}.detail-hero__style{letter-spacing:3px;font-size:12px}.detail-hero__desc{font-size:15px}.venue-tabs{gap:10px}.venue-tab{padding:14px 18px}.venue-tab__icon{font-size:22px}.venue-tab__label{letter-spacing:2px;font-size:13px}.venue-layout{flex-direction:column;gap:24px}.venue-filter{flex-wrap:wrap;gap:0;width:100%;padding:16px 20px;display:flex;position:static}.venue-filter__title{width:100%;margin-bottom:12px}.venue-filter__item{border-bottom:none;width:50%;padding:8px 0}.cust-grid--venue{grid-template-columns:repeat(2,1fr);gap:14px}.cust-grid--venue .cust-card{height:280px}.quote-card__img{height:140px}.quote-card__name{letter-spacing:2px;font-size:15px}.quote-card__desc{margin-bottom:10px;font-size:12px}.quote-card__price-num{font-size:22px}.quote-card__body{padding:14px}.venue-grid{grid-template-columns:repeat(2,1fr);gap:14px}.venue-card__img{height:150px}.venue-card__name{letter-spacing:2px;font-size:15px}.venue-card__desc{font-size:12px}.venue-category__title{letter-spacing:3px;font-size:17px}.city-list{gap:32px;width:92%}.city-row,.city-row:nth-child(2n){flex-direction:column}.city-row__img,.city-row--grow .city-row__img{flex:none;height:220px;min-height:auto}.city-row__body{padding:24px 20px}.city-row__name{letter-spacing:5px;font-size:24px}.city-row__intro{font-size:14px;line-height:1.7}.city-row__cta{opacity:1;transform:none}.city-row__number{font-size:40px}}@media (width<=380px){.cust-grid--city,.cust-grid--flower,.cust-grid--wine{grid-template-columns:1fr}.cust-card{height:240px}}.dest-layout{align-items:flex-start;gap:40px;display:flex}.dest-filter{background:#faf7f208;border:1px solid #d4b8961f;border-radius:10px;flex-shrink:0;width:240px;max-height:calc(100vh - 140px);padding:24px 20px;position:sticky;top:100px;overflow-y:auto}.dest-filter::-webkit-scrollbar{width:3px}.dest-filter::-webkit-scrollbar-thumb{background:#d4b8964d;border-radius:3px}.dest-filter__title{letter-spacing:3px;color:var(--champagne);opacity:.8;text-transform:uppercase;margin-bottom:4px;font-size:13px}.dest-filter__en{color:var(--rose-gold);margin-bottom:18px;font-family:Great Vibes,cursive;font-size:22px;line-height:1}.dest-filter__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.dest-filter__item{cursor:pointer;border-left:2px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:10px;transition:all .25s;display:flex}.dest-filter__item:hover{background:#d4b89614}.dest-filter__item--active{border-left-color:var(--champagne);background:#d4b8961f}.dest-filter__crest{color:var(--champagne);text-align:center;flex-shrink:0;width:22px;font-size:16px}.dest-filter__name{letter-spacing:2px;color:var(--ivory);flex:1;font-size:14px}.dest-filter__country{letter-spacing:1px;color:var(--champagne);opacity:.5;font-size:10px}.dest-filter__count{color:var(--champagne);opacity:.6;background:#d4b8961a;border-radius:10px;padding:1px 6px;font-size:10px}.dest-filter__title--gap{margin-top:24px}.dest-filter__item--check{gap:6px}.dest-filter__check-icon{color:var(--champagne);text-align:center;flex-shrink:0;width:22px;font-size:18px}.dest-filter__item--checked .dest-filter__check-icon{color:var(--rose-gold)}.dest-filter__cat-icon{flex-shrink:0;font-size:15px}.dest-filter__clear{letter-spacing:2px;width:100%;color:var(--champagne);cursor:pointer;background:#d4b89614;border:1px solid #d4b89626;border-radius:6px;margin-bottom:10px;padding:8px 0;font-family:inherit;font-size:12px;transition:all .2s;display:block}.dest-filter__clear:hover{border-color:var(--champagne);background:#d4b89626}.dest-module-select{flex-direction:column;align-items:center;max-width:1400px;margin:32px auto 0;padding:0 60px;display:flex}.dest-module-select__label{letter-spacing:4px;color:var(--rose-gold);opacity:.85;margin-bottom:10px;font-size:16px}.dest-module-select .custom-select{width:100%;position:relative}.dest-module-select .custom-select__trigger{color:#faf7f280;cursor:pointer;background:#d4b8960f;border:1px solid #d4b89640;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:12px 40px 12px 16px;font-family:inherit;font-size:15px;transition:border-color .3s,background .2s;display:flex}.dest-module-select .custom-select__trigger.has-value{color:var(--ivory)}.dest-module-select .custom-select__trigger:hover,.dest-module-select .custom-select__trigger.open{border-color:var(--rose-gold);background:#d4b8961a}.dest-module-select .custom-select__arrow{color:var(--champagne);pointer-events:none;transition:transform .25s;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.dest-module-select .custom-select__trigger.open .custom-select__arrow{transform:translateY(-50%)rotate(180deg)}.dest-module-select .custom-select__dropdown{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:100;background:#3a3530f5;border:1px solid #d4b89659;max-height:280px;margin:0;padding:8px 0;list-style:none;animation:.25s selectSlideDown;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 40px #00000080}.dest-module-select .custom-select__option{color:#faf7f2cc;cursor:pointer;letter-spacing:1px;padding:12px 20px;font-size:15px;transition:background .2s,color .2s}.dest-module-select .custom-select__option:hover{color:var(--ivory);background:#d4b8961f}.dest-module-select .custom-select__option.selected{color:var(--rose-gold);background:#d4b8962e}.dest-content{flex:1;min-width:0}.dest-city-section{margin-bottom:64px;scroll-margin-top:100px}.dest-city-header{background:#faf7f20a;border:1px solid #d4b8961f;border-radius:10px;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;padding:24px 28px;display:flex}.dest-city-header__left{flex-shrink:0;align-items:center;gap:16px;display:flex}.dest-city-header__crest{color:var(--champagne);font-size:36px;line-height:1}.dest-city-header__country{color:var(--champagne);margin-bottom:2px;font-family:Great Vibes,cursive;font-size:20px;line-height:1}.dest-city-header__name{letter-spacing:6px;text-transform:uppercase;color:var(--ivory);margin-bottom:2px;font-size:28px;font-weight:400}.dest-city-header__style{letter-spacing:2px;text-transform:uppercase;color:var(--champagne);opacity:.6;font-size:12px}.dest-city-header__desc{color:#faf7f2b3;text-align:right;max-width:400px;font-size:15px;font-style:italic;line-height:1.7}.dest-category{margin-bottom:36px}.dest-category__header{border-bottom:1px solid #d4b8961a;align-items:baseline;gap:10px;margin-bottom:18px;padding-bottom:12px;display:flex}.dest-category__icon{font-size:20px}.dest-category__title{letter-spacing:3px;color:var(--ivory);font-size:18px;font-weight:400}.dest-category__en{letter-spacing:2px;color:var(--champagne);opacity:.4;font-size:11px}.dest-category__count{letter-spacing:1px;color:var(--champagne);opacity:.4;margin-left:auto;font-size:12px}.dest-city-venues{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.dest-category__grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.dest-city-empty{text-align:center;color:#faf7f266;letter-spacing:2px;padding:40px 20px;font-size:15px}.dest-city-empty__icon{color:var(--champagne);opacity:.3;margin-bottom:12px;font-size:24px;display:block}.dest-city-empty__sub{color:#faf7f240;margin-top:6px;font-size:12px}@media (width<=1024px){.dest-category__grid{grid-template-columns:repeat(2,1fr)}.dest-city-venues{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.dest-layout{flex-direction:column;gap:24px}.dest-filter{width:100%;max-height:none;padding:16px 20px;position:static}.dest-filter__list{flex-flow:wrap;gap:4px}.dest-filter__item{border-bottom:2px solid #0000;border-left:none;border-radius:0;padding:8px 12px}.dest-filter__item--active{border-bottom-color:var(--champagne)}.dest-filter__country{display:none}.dest-city-header{flex-direction:column;gap:16px;padding:20px}.dest-city-header__desc{text-align:left;max-width:none}.dest-city-header__name{letter-spacing:4px;font-size:22px}.dest-category__grid{grid-template-columns:1fr;gap:16px}.dest-city-venues{grid-template-columns:repeat(2,1fr);gap:16px}.dest-city-section{margin-bottom:40px}}footer{background:var(--charcoal);color:var(--ivory);text-align:center;padding:60px 20px}footer .monogram{color:var(--champagne);font-family:Great Vibes,cursive;font-size:60px}footer p{letter-spacing:4px;text-transform:uppercase;margin-top:10px;font-size:13px}footer .copy{opacity:.5;letter-spacing:2px;margin-top:20px;font-size:12px}@media (width<=1024px){nav{padding:18px 30px}nav ul{gap:24px}section{padding:100px 30px}.cities-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){nav{padding:14px 20px}nav ul{display:none}nav .logo{font-size:26px}section{padding:70px 18px}.section-title{margin-bottom:50px}.section-title .sub{font-size:36px}.section-title h2{letter-spacing:4px;font-size:24px}.hero{height:90vh;min-height:560px}.hero .ornament{letter-spacing:6px;margin-bottom:18px}.hero .date{padding:10px 16px}.story-grid{grid-template-columns:1fr;gap:30px}.story-image{height:280px;box-shadow:12px 12px 0 var(--champagne)}.story-text p{font-size:17px}.venue-bg{background-attachment:scroll;inset:0}.venue-card{padding:28px 20px}.venue-card h3{font-size:28px}.venue-features{grid-template-columns:1fr;gap:16px;margin-top:24px;padding-top:24px}.venue-features .num{font-size:44px}.destinations-intro{margin-bottom:50px;padding:0 8px;font-size:16px}.cities-grid{grid-template-columns:repeat(2,1fr);gap:12px}.city-card{height:280px}.city-card .country{font-size:22px}.city-card .city-name{letter-spacing:2px;font-size:18px}.city-card .city-style{letter-spacing:1.5px;font-size:11px}.city-card .city-info{padding:18px;transform:translateY(0)}.city-card .city-desc{display:none}.city-card .city-number{font-size:30px;top:14px;left:16px}.city-card .crest-mark{width:28px;height:28px;top:14px;right:16px}.schedule-intro{margin-bottom:50px;padding:0 10px;font-size:16px}.schedule-intro:before,.schedule-intro:after{margin:10px auto;display:block}.luxury-timeline:before{display:none}.lux-item{grid-template-columns:1fr;gap:16px;margin-bottom:50px}.lux-item:nth-child(2n) .lux-card,.lux-item:nth-child(2n) .lux-visual{order:initial}.lux-badge-wrap{display:none}.lux-visual{min-height:220px}.lux-card{padding:24px 20px}.lux-card:before{inset:6px}.lux-time{font-size:38px}.lux-eyebrow{letter-spacing:3px;font-size:10px}.lux-title{letter-spacing:2px;font-size:20px}.lux-subtitle{margin-bottom:16px;padding-bottom:16px;font-size:15px}.lux-desc{font-size:15px}.lux-details li{padding-left:20px;font-size:13px}.menu-grid{grid-template-columns:1fr;gap:0}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:140px;gap:10px}.g1,.g6{grid-column:span 2}.service-tagline{margin-bottom:30px;padding:0 10px;font-size:16px}.service-features{gap:16px;margin-bottom:36px}.service-features div{letter-spacing:1.5px;padding:6px 0;font-size:12px}.service-features div span{font-size:20px}.rsvp-form{padding:28px 20px}.rsvp-form>button[type=submit]{letter-spacing:3px;padding:14px 36px;font-size:13px}.rsvp-form>button[type=submit]:hover{letter-spacing:4px}.contact-band{letter-spacing:1.5px;flex-direction:column;gap:16px;font-size:12px}footer .monogram{font-size:48px}}@media (width<=380px){section{padding:60px 14px}.cities-grid{grid-template-columns:1fr}.city-card{height:240px}.rsvp-form{padding:22px 16px}.hero .location{letter-spacing:2px}}.admin-page{background:#f8f6f3;min-height:100vh;padding:40px 5%;font-family:Noto Serif SC,serif}.admin-header{border-bottom:2px solid var(--champagne);justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:20px;display:flex}.admin-header h1{color:var(--deep-burgundy);letter-spacing:2px;font-size:28px;font-weight:500}.refresh-btn{background:var(--deep-burgundy);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 24px;font-size:14px;transition:opacity .2s}.refresh-btn:hover{opacity:.85}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.admin-error{color:#c0392b;background:#fff0f0;border-radius:8px;margin-bottom:20px;padding:12px 20px;font-size:14px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin-bottom:36px;display:grid}.stat-card{text-align:center;background:#fff;border:1px solid #d4b8964d;border-radius:12px;padding:24px;box-shadow:0 2px 12px #0000000f}.stat-number{color:var(--deep-burgundy);margin-bottom:6px;font-size:36px;font-weight:600}.stat-number.hot{color:var(--rose-gold);font-size:20px}.stat-label{color:#888;letter-spacing:1px;font-size:13px}.admin-section{background:#fff;border:1px solid #d4b89633;border-radius:12px;margin-bottom:24px;padding:28px;box-shadow:0 2px 12px #0000000f}.admin-section h2{color:var(--charcoal);letter-spacing:1px;margin-bottom:20px;font-size:18px;font-weight:500}.bar-chart{flex-direction:column;gap:12px;display:flex}.bar-row{align-items:center;gap:12px;display:flex}.bar-label{width:160px;color:var(--charcoal);text-align:right;flex-shrink:0;font-size:13px}.bar-track{background:#f0ece6;border-radius:11px;flex:1;height:22px;overflow:hidden}.bar-fill{background:linear-gradient(90deg, var(--champagne), var(--rose-gold));border-radius:11px;min-width:8px;height:100%;transition:width .6s}.bar-count{width:30px;color:var(--deep-burgundy);font-size:13px;font-weight:600}.table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th{text-align:left;color:var(--deep-burgundy);border-bottom:2px solid var(--champagne);white-space:nowrap;background:#faf7f2;padding:12px 14px;font-weight:500}.admin-table td{color:var(--charcoal);border-bottom:1px solid #f0ece6;padding:11px 14px}.admin-table tbody tr:hover{background:#fdfbf8}.cell-name{font-weight:500}.cell-dest{color:var(--rose-gold)}.cell-time{color:#999;white-space:nowrap;font-size:12px}.empty-state{text-align:center;color:#bbb;padding:60px 20px;font-size:16px}@media (width<=768px){.admin-page{padding:20px 4%}.admin-header h1{font-size:20px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.stat-number{font-size:28px}.bar-label{width:100px;font-size:11px}.admin-table{font-size:12px}.admin-table th,.admin-table td{padding:8px 10px}}.upload-page{background:#f8f6f3;outline:none;min-height:100vh;padding:40px 5%;font-family:Noto Serif SC,serif}.upload-header{text-align:center;margin-bottom:32px}.upload-header h1{color:var(--deep-burgundy);letter-spacing:2px;margin-bottom:8px;font-size:28px;font-weight:500}.upload-header p{color:#888;letter-spacing:1px;font-size:14px}.upload-zone{border:2px dashed var(--champagne);text-align:center;cursor:pointer;background:#fff;border-radius:16px;max-width:640px;margin:0 auto 36px;padding:60px 40px;transition:all .3s}.upload-zone:hover,.upload-zone.drag-over{border-color:var(--rose-gold);background:#fdf9f6;transform:scale(1.01)}.upload-zone.uploading{opacity:.6;pointer-events:none}.upload-icon{margin-bottom:16px;font-size:48px}.upload-text{color:var(--charcoal);margin-bottom:8px;font-size:16px}.upload-hint{color:#aaa;font-size:12px}.upload-status{color:var(--rose-gold);font-size:18px;animation:1s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.upload-results{max-width:900px;margin:0 auto}.upload-results h2{color:var(--charcoal);margin-bottom:20px;font-size:18px;font-weight:500}.upload-grid{flex-direction:column;gap:16px;display:flex}.upload-card{background:#fff;border:1px solid #d4b89633;border-radius:12px;gap:16px;padding:16px;display:flex;box-shadow:0 2px 12px #0000000f}.upload-preview{background:#f5f0eb;border-radius:8px;flex-shrink:0;width:80px;height:80px;overflow:hidden}.upload-preview img{object-fit:cover;width:100%;height:100%}.upload-info{flex-direction:column;flex:1;justify-content:center;gap:6px;min-width:0;display:flex}.upload-filename{color:var(--charcoal);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.upload-size{color:#999;font-size:12px}.upload-url-row{gap:8px;display:flex}.upload-url-row input{color:var(--charcoal);background:#faf7f2;border:1px solid #e8e2db;border-radius:6px;outline:none;flex:1;min-width:0;padding:6px 10px;font-size:12px}.upload-url-row input:focus{border-color:var(--champagne)}.copy-btn{background:var(--deep-burgundy);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:6px 14px;font-size:12px;transition:all .2s}.copy-btn:hover{opacity:.85}.copy-btn.copied{background:var(--sage)}@media (width<=768px){.upload-page{padding:20px 4%}.upload-zone{padding:40px 20px}.upload-card{flex-direction:column}.upload-preview{width:100%;height:160px}}
