:root{--ink:#181310;--emerald:#16332a;--emerald-deep:#0c201a;--gold:#b98d4b;--gold-light:#e3c68c;--blush:#d7b7a6;--ivory:#f4efe6;--card:#fffdf9;--line:#1813101f;--ease:cubic-bezier(.22,1,.36,1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--ink);cursor:default;font-family:Jost,sans-serif;font-weight:300;overflow-x:hidden}h1,h2,h3,.serif{font-family:Cormorant Garamond,serif}.eyebrow{text-transform:uppercase;letter-spacing:.28em;color:var(--gold);font-family:Jost,sans-serif;font-size:.68rem;font-weight:500}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.container{max-width:1240px;margin:0 auto;padding-inline:20px}.reveal{opacity:0;transition:opacity 1s var(--ease), transform 1s var(--ease);transform:translateY(36px)}.reveal.in{opacity:1;transform:translateY(0)}header{z-index:100;transition:background .5s var(--ease), padding .5s var(--ease), backdrop-filter .5s;color:var(--ivory);justify-content:space-between;align-items:center;padding:14px 5vw;display:flex;position:fixed;top:0;left:0;right:0}header.scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink);border-bottom:1px solid var(--line);background:#f4efe6db;padding:10px 5vw}.logo{letter-spacing:.04em;align-items:center;gap:10px;font-family:Cormorant Garamond,serif;font-size:1.3rem;font-weight:600;display:flex}.logo-img{object-fit:contain;filter:drop-shadow(0 1px 2px #0003);width:auto;height:44px;display:block}.logo .mark{width:26px;height:26px;position:relative}.logo .mark svg{width:100%;height:100%}.sound-toggle{color:currentColor;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;margin-left:auto;margin-right:6px;display:flex;position:relative}.sound-toggle svg{opacity:.85}.sound-toggle .sound-wave{opacity:0;align-items:flex-end;gap:2px;transition:opacity .3s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sound-toggle .sound-wave i{background:currentColor;border-radius:2px;width:2px;animation:1s ease-in-out infinite eq}.sound-toggle .sound-wave i:first-child{height:6px;animation-delay:0s}.sound-toggle .sound-wave i:nth-child(2){height:10px;animation-delay:.2s}.sound-toggle .sound-wave i:nth-child(3){height:8px;animation-delay:.4s}.sound-toggle .sound-wave i:nth-child(4){height:5px;animation-delay:.1s}.sound-toggle[aria-pressed=true] svg{opacity:0}.sound-toggle[aria-pressed=true] .sound-wave{opacity:1}.music-cluster{align-items:center;margin-left:auto;margin-right:6px;display:flex;position:relative}.music-cluster .sound-toggle{margin:0}.music-panel{background:var(--card);border:1px solid var(--line);z-index:40;border-radius:8px;min-width:240px;max-width:min(86vw,300px);margin-top:10px;padding:10px;position:absolute;top:100%;right:0;box-shadow:0 12px 30px #0c201a40}.music-panel .mp-now{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:2px 2px 9px;display:flex}.music-panel .np-label{letter-spacing:.14em;text-transform:uppercase;color:var(--gold);flex:none;font-size:.6rem}.music-panel .np-marquee{white-space:nowrap;flex:1;overflow:hidden}.music-panel .np-marquee span{padding-left:100%;animation:9s linear infinite np-scroll;display:inline-block}.music-panel .np-marquee:hover span{animation-play-state:paused}@keyframes np-scroll{0%{transform:translate(0)}to{transform:translate(-100%)}}.music-panel .mp-controls{gap:8px;padding:10px 2px;display:flex}.music-panel .mp-controls button{background:var(--ivory);border:none;border:1px solid var(--line);width:38px;height:38px;color:var(--ink);cursor:pointer;transition:all .3s var(--ease);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;display:flex}.music-panel .mp-controls button:hover{background:var(--gold-light)}.music-panel .mp-controls .mp-play{background:var(--emerald);color:#fff}.music-panel .mp-controls .mp-play:hover{background:var(--gold)}.music-panel .music-menu{border-top:1px solid var(--line);max-height:40vh;padding-top:4px;list-style:none;overflow-y:auto}.music-panel .music-menu button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:9px 12px;font-family:Jost,sans-serif;font-size:.82rem;display:block}.music-panel .music-menu button:hover{background:var(--gold-light)}.music-panel .music-menu button.active{background:var(--emerald);color:#fff;font-weight:500}@keyframes eq{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.nav-toggle{z-index:120;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;display:flex;position:relative}.nav-toggle span{width:22px;height:2px;transition:all .4s var(--ease);background:currentColor}.nav-toggle.open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}nav.links{z-index:110;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:transform .5s var(--ease);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:#f4efe6fa;flex-direction:column;align-items:center;padding:96px 28px 34px;font-size:.9rem;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-100%);box-shadow:0 30px 60px #0003}nav.links.open{transform:translateY(0)}nav.links a{text-align:center;border-bottom:1px solid var(--line);width:100%;padding:18px 0;position:relative}nav.links a:after{display:none}nav.links .nav-cta{border-color:var(--emerald);color:var(--emerald);margin-top:22px}.nav-cta{letter-spacing:.12em;text-transform:uppercase;transition:all .4s var(--ease);border:1px solid;border-radius:999px;padding:12px 26px;font-size:.75rem}.nav-cta:hover{background:var(--gold);border-color:var(--gold);color:#fff}.nav-cta-desktop{display:none}.hero{background:radial-gradient(120% 90% at 80% 10%, #1e4436 0%, var(--emerald) 45%, var(--emerald-deep) 100%);min-height:100vh;color:var(--ivory);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:100px 0 90px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background-image:repeating-linear-gradient(115deg,#ffffff09 0 1px,#0000 1px 90px);position:absolute;inset:0}.hero-sparkles{pointer-events:none;z-index:1;background-image:radial-gradient(6px 6px at 12% 18%,#e3c68c80 30%,#0000 70%),radial-gradient(4px 4px at 22% 62%,#e3c68c66 30%,#0000 70%),radial-gradient(7px 7px at 34% 30%,#ffffff73 30%,#0000 70%),radial-gradient(4px 4px at 47% 72%,#e3c68c73 30%,#0000 70%),radial-gradient(6px 6px at 63% 24%,#fff6 30%,#0000 70%),radial-gradient(5px 5px at 76% 58%,#e3c68c66 30%,#0000 70%),radial-gradient(6px 6px at 85% 22%,#ffffff80 30%,#0000 70%),radial-gradient(4px 4px at 92% 78%,#e3c68c73 30%,#0000 70%),radial-gradient(5px 5px at 8% 82%,#fff6 30%,#0000 70%),radial-gradient(6px 6px at 55% 45%,#ffffff4d 30%,#0000 70%),radial-gradient(5px 5px at 40% 8%,#e3c68c80 30%,#0000 70%),radial-gradient(2px 2px at 12% 18%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 22% 62%,#ffe9b8 50%,#0000 51%),radial-gradient(2.5px 2.5px at 34% 30%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 47% 72%,#ffe9b8 50%,#0000 51%),radial-gradient(2px 2px at 63% 24%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 76% 58%,#ffe9b8 50%,#0000 51%),radial-gradient(2px 2px at 85% 22%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 92% 78%,#ffe9b8 50%,#0000 51%),radial-gradient(2px 2px at 8% 82%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 55% 45%,#ffe9b8 50%,#0000 51%),radial-gradient(2px 2px at 40% 8%,#ffe9b8 50%,#0000 51%);animation:3.5s ease-in-out infinite twinkle;position:absolute;inset:0}@keyframes twinkle{0%,to{opacity:.4}50%{opacity:1}}.hero-butterflies{pointer-events:none;z-index:90;position:fixed;inset:0;overflow:hidden}.bfly{opacity:.8;filter:drop-shadow(0 0 8px #d4af37e6);will-change:transform;width:34px;height:30px;position:absolute;top:0;left:0}.bfly svg{width:100%;height:100%;display:block}.bfly:before,.bfly:after{content:"";pointer-events:none;filter:drop-shadow(0 0 4px #f6d87ae6);background:radial-gradient(circle,#fff3cf 0%,#f6d87a 40%,#0000 70%);width:10px;height:10px;animation:1.8s ease-in-out infinite bflyTwinkle;position:absolute}.bfly:before{top:-4px;left:4px}.bfly:after{width:7px;height:7px;animation-delay:.9s;bottom:-4px;right:6px}@keyframes bflyTwinkle{0%,to{opacity:.15;transform:scale(.4)rotate(0)}50%{opacity:1;transform:scale(1.15)rotate(45deg)}}.bfly .wings{fill:url(#goldGrad) #e3b84e;transform-origin:50%;animation:.45s ease-in-out infinite bflyFlap}.bfly svg rect,.bfly svg circle{fill:#a57b2f}@keyframes bflyFlap{0%,to{transform:scaleX(1)}50%{transform:scaleX(.35)}}.hero-carousel{border:1px solid #e3c68c4d;border-radius:8px;order:2;width:min(78vw,320px);height:min(66vw,280px);margin:56px auto 0;position:relative;overflow:hidden;box-shadow:0 40px 80px #00000080}.hero-carousel .slide{aspect-ratio:3/4;opacity:0;pointer-events:none;width:62%;transition:transform .9s var(--ease), opacity .9s var(--ease);transform-origin:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.78);box-shadow:0 20px 50px #0006}.hero-carousel .slide.active{opacity:1;pointer-events:auto}.hero-carousel .slide img,.hero-carousel .slide video{object-fit:cover;object-position:top;border-radius:8px;width:100%;height:100%}.hero-carousel .carousel-arrow{z-index:3;width:44px;height:44px;color:var(--gold-light);transition:background .3s var(--ease);background:#0c201a8c;border:1px solid #e3c68c59;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.hero-carousel .carousel-arrow:hover{background:#0c201ad9}.hero-carousel .carousel-arrow.prev{left:14px}.hero-carousel .carousel-arrow.next{right:14px}.hero-carousel .dots{z-index:3;gap:8px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.hero-carousel .dots span{width:6px;height:6px;transition:all .4s var(--ease);background:#f4efe666;border-radius:50%}.hero-carousel .dots span.on{background:var(--gold-light);transform:scale(1.4)}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-22px)rotate(1deg)}}.hero-content{z-index:2;position:relative}.hero .eyebrow{color:var(--gold-light);justify-content:center;align-items:center;gap:14px;margin-bottom:22px;display:flex}.hero .eyebrow:before{content:"";background:var(--gold-light);width:40px;height:1px;display:inline-block}.hero h1{max-width:15ch;margin-left:auto;margin-right:auto;font-size:clamp(3rem,12vw,6.4rem);font-weight:500;line-height:.98}.hero h1 em{color:var(--gold-light);font-style:italic;font-weight:400}.sparkle-word{white-space:nowrap;background:linear-gradient(100deg,var(--gold-light) 40%,#fff6de 50%,var(--gold-light) 60%);-webkit-text-fill-color:transparent;background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:3.2s ease-in-out infinite sheenSweep}@keyframes sheenSweep{0%{background-position:100% 0}to{background-position:0 0}}.hero p.sub{color:#f4efe6c7;max-width:440px;margin:26px auto 0;font-size:1.05rem;line-height:1.7}.hero-ctas{flex-wrap:wrap;justify-content:center;gap:18px;margin-top:44px;display:flex}.btn-primary,.btn-ghost{letter-spacing:.12em;text-transform:uppercase;transition:all .45s var(--ease);border-radius:999px;align-items:center;gap:10px;padding:17px 34px;font-size:.78rem;display:inline-flex}.btn-primary{background:var(--gold);color:#1a1a1a}.btn-primary:hover{background:var(--gold-light);transform:translateY(-3px);box-shadow:0 14px 30px #b98d4b59}.btn-ghost{color:var(--ivory);border:1px solid #f4efe666}.btn-ghost:hover{border-color:var(--ivory);background:#ffffff0f;transform:translateY(-3px)}.scroll-cue{letter-spacing:.2em;text-transform:uppercase;color:#f4efe699;align-items:center;gap:12px;font-size:.7rem;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.scroll-cue .line{background:linear-gradient(var(--gold-light),transparent);width:1px;height:40px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.3}50%{opacity:1}}.for-toggle{text-align:center;z-index:2;padding-block:70px 60px;position:relative}.for-toggle .eyebrow{justify-content:center;display:flex}.for-toggle h2{margin-top:14px;font-size:clamp(2.2rem,4vw,3.4rem);font-weight:500}.switch{background:var(--card);border:1px solid var(--line);border-radius:999px;margin:44px auto 0;padding:6px;display:inline-flex;position:relative;box-shadow:0 20px 40px -20px #18131040}.switch button{z-index:2;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);opacity:.55;transition:opacity .4s var(--ease), color .4s var(--ease);padding:14px 40px;font-size:.8rem;position:relative}.switch button.active{opacity:1;color:#fff}.switch .pill{background:var(--emerald);width:calc(50% - 6px);height:calc(100% - 12px);transition:transform .5s var(--ease);z-index:1;border-radius:999px;position:absolute;top:6px;left:6px}.switch.groom .pill{transform:translate(100%)}.catalog{z-index:2;padding-block:40px 110px;position:relative}.cat-grid{grid-template-columns:1fr;gap:26px;margin-top:48px;display:grid}.gown-card{background:var(--card);perspective:1000px;cursor:pointer;border-radius:4px;position:relative;overflow:hidden}.gown-card .frame{aspect-ratio:3/4;transition:transform .6s var(--ease);border:1px solid var(--gold);background:linear-gradient(160deg,#eee7d8,#f7f2e8);position:relative;overflow:hidden;box-shadow:inset 0 0 0 6px #fffdf9e0,inset 0 0 0 7px #b98d4b73}.gown-card:hover .frame{transform:rotateX(3deg)rotateY(-3deg)scale(1.02)}.gown-card .art{transition:transform .9s var(--ease);position:absolute;inset:0;overflow:hidden}.gown-card:hover .art{transform:scale(1.14)rotate(-1deg)}.gown-card .art img,.gown-card .art video{object-fit:cover;object-position:top;width:100%;height:100%}.gown-card .art-placeholder{height:100%;color:var(--gold);letter-spacing:.12em;text-transform:uppercase;text-align:center;background:#16332a0f;justify-content:center;align-items:center;padding:20px;font-size:.72rem;display:flex}.gown-card .tag{color:var(--gold-light);letter-spacing:.14em;text-transform:uppercase;background:#16332aeb;border-radius:999px;padding:7px 13px;font-size:.62rem;position:absolute;top:16px;left:16px}.gown-card .zoom-icon{opacity:0;width:38px;height:38px;transition:all .4s var(--ease);background:#fffdf9e6;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:16px;right:16px;transform:scale(.7)}.gown-card:hover .zoom-icon{opacity:1;transform:scale(1)}.gown-card .info{padding:20px 20px 24px}.gown-card .info .name{font-size:1.35rem;font-weight:500}.gown-card .info .meta{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.gown-card .info .sizes{letter-spacing:.06em;color:#7a7266;text-transform:uppercase;font-size:.72rem}.gown-card .info .price{color:var(--emerald);font-family:Cormorant Garamond,serif;font-size:1.2rem;font-weight:600}.process{background:var(--card);padding-block:90px;position:relative}.process-head{text-align:center;max-width:560px;margin-left:auto;margin-right:auto}.process-head h2{margin-top:14px;font-size:clamp(2.1rem,8vw,3.1rem);font-weight:500}.steps{grid-template-columns:1fr 1fr;gap:40px 24px;margin-top:56px;display:grid;position:relative}.step{text-align:center;padding:0 8px}.step .num{background:var(--ivory);border:1px solid var(--gold);width:40px;height:40px;color:var(--gold);z-index:2;transition:all .5s var(--ease);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 22px;font-family:Cormorant Garamond,serif;font-weight:600;display:flex;position:relative}.step:hover .num{background:var(--gold);color:#fff;transform:scale(1.1)rotate(8deg)}.step h4{margin-bottom:8px;font-family:Cormorant Garamond,serif;font-size:1.2rem;font-weight:600}.step p{color:#6c6459;font-size:.85rem;line-height:1.6}.location{z-index:2;padding-block:90px;position:relative}.loc-grid{grid-template-columns:1fr;align-items:center;gap:44px;display:grid}.loc-grid h2{margin-top:14px;font-size:clamp(2.1rem,8vw,3.1rem);font-weight:500}.loc-grid p{color:#5c554b;max-width:440px;margin-top:20px;line-height:1.8}.loc-list{flex-direction:column;gap:18px;margin-top:32px;display:flex}.loc-item{align-items:flex-start;gap:16px;display:flex}.loc-item .ic{width:20px;height:20px;color:var(--gold);flex:none;margin-top:3px}.loc-item b{font-family:Cormorant Garamond,serif;font-size:1.1rem;font-weight:600;display:block}.loc-item span{color:#6c6459;font-size:.85rem}.map-card{aspect-ratio:4/3.2;border:1px solid var(--line);background:#f2ebdb;border-radius:6px;position:relative;overflow:hidden}.map-card iframe{border:0;width:100%;height:100%;display:block}.faq{z-index:2;padding-block:80px 120px;position:relative}.faq-head{max-width:560px}.faq-head h2{margin-top:14px;font-size:clamp(2.1rem,8vw,3.1rem);font-weight:500}.faq-list{border-top:1px solid var(--line);margin-top:44px}.faq-item{border-bottom:1px solid var(--line)}.faq-q{text-align:left;justify-content:space-between;align-items:center;width:100%;padding:24px 4px;font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:600;display:flex}.faq-q .plus{flex:none;width:22px;height:22px;margin-left:24px;position:relative}.faq-q .plus:before,.faq-q .plus:after{content:"";background:var(--gold);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-q .plus:before{width:100%;height:1.4px}.faq-q .plus:after{width:1.4px;height:100%;transition:transform .4s var(--ease)}.faq-item.open .plus:after{transform:translate(-50%,-50%)rotate(90deg)scaleY(0)}.faq-a{max-height:0;transition:max-height .5s var(--ease);overflow:hidden}.faq-a p{color:#6c6459;max-width:640px;padding:0 4px 28px;font-size:.95rem;line-height:1.75}footer{background:var(--emerald-deep);color:#f4efe6b3;z-index:2;padding-block:70px 30px;position:relative}.foot-grid{grid-template-columns:1fr;gap:36px;display:grid}.foot-grid .logo{color:var(--ivory);margin-bottom:16px}.foot-grid p{max-width:280px;font-size:.85rem;line-height:1.7}.foot-col h5{color:var(--gold-light);letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px;font-size:.72rem}.foot-col a,.foot-col li{color:#f4efe6b3;margin-bottom:11px;font-size:.88rem;list-style:none;transition:color .3s;display:block}.foot-col a:hover{color:var(--gold-light)}.foot-bottom{border-top:1px solid #f4efe61f;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:56px;padding-top:26px;font-size:.75rem;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:200;opacity:0;pointer-events:none;transition:opacity .45s var(--ease);background:#0c201ab3;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-overlay.show{opacity:1;pointer-events:all}.modal{background:var(--card);width:min(880px,100%);transition:transform .5s var(--ease);border-radius:8px;grid-template-columns:1fr;margin:auto;display:grid;position:relative;overflow:visible;transform:translateY(30px)scale(.97)}.modal-overlay.show .modal{transform:translateY(0)scale(1)}.modal-visual{aspect-ratio:4/5;background:linear-gradient(160deg,#eee7d8,#f7f2e8);min-height:300px;position:relative;overflow:hidden}.modal-visual img,.modal-visual video{object-fit:cover;object-position:top;width:100%;height:100%}.gallery-track{scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;height:100%;display:flex;overflow-x:auto}.gallery-track::-webkit-scrollbar{display:none}.gallery-slide{scroll-snap-align:start;flex:0 0 100%;position:relative}.gallery-slide img,.gallery-slide video{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.gallery-arrow{color:#16332a;cursor:pointer;z-index:5;background:#fffdf9e6;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.6rem;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gallery-arrow.prev{left:12px}.gallery-arrow.next{right:12px}.gallery-arrow:hover{background:#fff}.gallery-dots{z-index:5;gap:6px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.gallery-dots .dot{cursor:pointer;background:#fffdf98c;border:none;border-radius:50%;width:8px;height:8px;padding:0}.gallery-dots .dot.active{background:#fff;transform:scale(1.25)}.modal-info{padding:32px 24px}.modal-info .eyebrow{margin-bottom:14px}.modal-info h3{font-size:1.8rem;font-weight:600}.modal-info .price{color:var(--emerald);margin-top:6px;font-family:Cormorant Garamond,serif;font-size:1.4rem}.modal-info .desc{color:#6c6459;margin-top:18px;font-size:.9rem;line-height:1.75}.spec-row{border-bottom:1px solid var(--line);justify-content:space-between;padding:13px 0;font-size:.85rem;display:flex}.spec-row span:first-child{color:#8a8175}.modal-info .btn-primary{background:var(--emerald);color:#fff;justify-content:center;width:100%;margin-top:26px}.modal-info .btn-primary:hover{background:var(--gold)}.modal-info .sold-note{border:1px solid var(--line);color:#6c6459;border-radius:8px;margin-top:26px;padding:14px 16px;font-size:.9rem}.modal-close{z-index:10;background:#fffdf9e6;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:absolute;top:20px;right:20px}.gown-card .tag-booked{color:#fff;background:#a8324f;position:absolute;top:16px;left:auto;right:16px}.booking-modal{width:min(620px,100%);display:block}.booking-info{padding:44px 32px}.booking-info h3{margin-top:8px;font-size:1.9rem;font-weight:600}.booking-sub{color:#6c6459;margin-top:12px;font-size:.92rem;line-height:1.7}.bk-note{color:#5c554b;margin-top:-8px;font-size:.82rem;line-height:1.5}.bk-note b{color:#a8324f;font-weight:600}.booked-block{background:var(--ivory);border:1px solid var(--line);color:#5c554b;border-radius:6px;margin-top:22px;padding:14px 18px;font-size:.88rem;line-height:1.6}.booked-block b{color:var(--ink);font-family:Cormorant Garamond,serif;font-size:1.05rem;font-weight:600}.booked-dates{color:#a8324f;font-weight:500}.avail-summary{flex-direction:column;gap:6px;display:flex}.avail-label{letter-spacing:.1em;text-transform:uppercase;color:#8a8175;margin-top:4px;font-size:.72rem;font-weight:500}.date-chips{flex-wrap:wrap;gap:6px;display:flex}.chip-chip{color:#a8324f;white-space:nowrap;background:#fdeef0;border:1px solid #f2c9cf;border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:500}.avail-free{color:#5c554b;font-size:.88rem}.avail-free b{color:#2f6d4f;font-weight:600}.avail-hint{color:#8a8175;font-size:.8rem}.avail-inline{color:#a8324f;text-align:right;align-items:center;gap:6px;font-weight:500;display:inline-flex}.avail-inline .dot{background:#a8324f;border-radius:50%;flex:none;width:8px;height:8px}#bookingForm{flex-direction:column;gap:20px;margin-top:28px;display:flex}#bookingForm .field{flex-direction:column;gap:8px;display:flex}#bookingForm .field>span,#bookingForm .sizes-field legend{letter-spacing:.1em;text-transform:uppercase;color:#8a8175;font-size:.72rem;font-weight:500}#bookingForm .field>span em,#bookingForm .sizes-field legend em{color:#a8324f;font-style:normal}#bookingForm .field>span em.hint{color:#8a8175;margin-left:2px;font-size:.75rem;font-style:normal;font-weight:400}#bookingForm input[type=text],#bookingForm input[type=tel],#bookingForm input[type=email],#bookingForm input[type=date],#bookingForm select,#bookingForm textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:6px;padding:14px 16px;font-family:Jost,sans-serif;font-size:.95rem;transition:border-color .3s}#bookingForm input:focus,#bookingForm select:focus{border-color:var(--gold);outline:none}.bk-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.dates-grid{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.dates-col{flex-direction:column;gap:20px;display:flex}.dates-note{border:1px solid var(--line);background:var(--ivory);color:#5c554b;border-radius:8px;align-self:start;margin-top:26px;padding:16px 18px;font-size:.85rem;line-height:1.6}.dates-note b{color:#a8324f;font-weight:600}.delivery-options{flex-direction:column;gap:8px;display:flex}.delivery-options label{border:1px solid var(--line);cursor:pointer;transition:all .3s var(--ease);border-radius:6px;align-items:center;gap:10px;padding:12px 14px;font-size:.9rem;display:flex}.delivery-options label.active{border-color:var(--emerald);background:var(--ivory)}.delivery-options input{accent-color:var(--emerald)}.bk-sizes{grid-template-columns:1fr 1fr;gap:10px;display:grid}.bk-sizes label{border:1px solid var(--line);cursor:pointer;transition:all .3s var(--ease);border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:14px 10px;font-size:.9rem;display:flex}.bk-sizes label:has(input:checked){border-color:var(--emerald);background:var(--emerald);color:#fff}.bk-sizes input{accent-color:var(--emerald)}#bookingForm .btn-primary{background:var(--emerald);color:#fff;justify-content:center;width:100%;margin-top:6px}#bookingForm .btn-primary:hover{background:var(--gold)}.booking-success{text-align:center;padding:40px 10px}.booking-success .success-mark{background:var(--emerald);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:74px;height:74px;margin:0 auto;font-size:2rem;display:flex}.booking-success h3{margin-top:22px;font-size:1.8rem;font-weight:600}.booking-success p{color:#6c6459;max-width:380px;margin-top:12px;margin-left:auto;margin-right:auto;line-height:1.7}.booking-success .btn-ghost{border-color:var(--line);color:var(--ink);margin-top:26px}.new-arrivals{padding-block:10px 0}.new-head{flex-wrap:wrap;align-items:baseline;gap:18px;display:flex}.new-head h2{font-size:clamp(1.8rem,7vw,2.6rem);font-weight:500}.new-grid{grid-template-columns:1fr 1fr;gap:26px;margin-top:36px;display:grid}.new-grid .gown-card .tag{background:var(--gold);color:#fff}.cat-filters{flex-wrap:wrap;gap:10px;margin-top:56px;display:flex}.cat-filters .chip{letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);color:var(--ink);opacity:.7;transition:all .35s var(--ease);background:var(--card);border-radius:999px;padding:11px 20px;font-size:.72rem}.cat-filters .chip:hover{opacity:1;border-color:var(--gold)}.cat-filters .chip.active{background:var(--emerald);color:#fff;border-color:var(--emerald);opacity:1}.sale{background:var(--card);z-index:2;padding-block:90px;position:relative}.sale-head{text-align:center;max-width:560px;margin-left:auto;margin-right:auto}.sale-head h2{margin-top:14px;font-size:clamp(2.1rem,8vw,3.1rem);font-weight:500}.sale-head p{color:#5c554b;margin-top:18px;line-height:1.7}.sale-grid{grid-template-columns:1fr 1fr;gap:26px;margin-top:48px;display:grid}.sale-grid .gown-card .tag{color:#fff;background:#a8324f}.extras{z-index:2;padding-block:90px;position:relative}.extras-head{text-align:center;max-width:560px;margin-left:auto;margin-right:auto}.extras-head h2{margin-top:14px;font-size:clamp(2.1rem,8vw,3.1rem);font-weight:500}.extras-grid{grid-template-columns:1fr 1fr;gap:26px;margin-top:48px;display:grid}.testimonials{z-index:2;padding-block:80px 120px;position:relative}.testi-head{max-width:560px}.testi-head h2{margin-top:14px;font-size:clamp(2.1rem,8vw,3.1rem);font-weight:500}.testi-grid{grid-template-columns:1fr;gap:26px;margin-top:48px;display:grid}.testi-card{background:var(--card);border:1px solid var(--line);border-radius:6px;flex-direction:column;gap:18px;padding:34px 30px;display:flex}.testi-photo{aspect-ratio:4/3;background:#f2ebdb;border-radius:4px;overflow:hidden}.testi-photo img{object-fit:cover;object-position:center;width:100%;height:100%}.testi-quote{color:var(--gold);font-family:Cormorant Garamond,serif;font-size:3.4rem;line-height:.5}.testi-text{color:#5c554b;font-size:.98rem;font-style:italic;line-height:1.8}.testi-meta b{font-family:Cormorant Garamond,serif;font-size:1.1rem;font-weight:600;display:block}.testi-meta span{letter-spacing:.08em;text-transform:uppercase;color:#8a8175;font-size:.78rem}.visit{z-index:2;padding-block:0 120px;position:relative}.visit-card{background:var(--emerald);color:var(--ivory);border-radius:10px;grid-template-columns:1fr;gap:40px;padding:44px 30px;display:grid;overflow:hidden}.visit-info h2{color:var(--ivory);margin-top:14px;font-size:clamp(2rem,7vw,2.9rem);font-weight:500}.visit-info p{color:#f4efe6c7;margin-top:18px;line-height:1.8}.visit-actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.visit-actions .btn-primary{background:var(--gold);color:#1a1a1a}.visit-actions .btn-ghost{color:var(--ivory);border-color:#f4efe666}.visit-hours h3{letter-spacing:.14em;text-transform:uppercase;color:var(--gold-light);margin-bottom:20px;font-size:.72rem}.visit-hours ul{flex-direction:column;gap:14px;list-style:none;display:flex}.visit-hours li b{font-size:.95rem;display:block}.visit-hours li span{color:#f4efe6bf;font-size:.9rem}.visit-hours .muted{color:#f4efe68c;border-top:1px solid #f4efe626;padding-top:14px;font-size:.82rem}@media (min-width:601px){.cat-grid{grid-template-columns:1fr 1fr;gap:30px}.new-grid,.sale-grid,.extras-grid{grid-template-columns:repeat(3,1fr);gap:30px}.testi-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:repeat(3,1fr)}.foot-grid{grid-template-columns:1fr 1fr;gap:44px}.modal-info{padding:36px 34px}}@media (min-width:901px){.container{padding-inline:6vw}.nav-toggle{display:none}header{grid-template-columns:1fr auto 1fr;align-items:center;padding:22px 6vw;display:grid}nav.links{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;color:inherit;background:0 0;flex-direction:row;grid-column:2;justify-content:center;align-items:center;gap:38px;padding:0;font-size:.82rem;position:static;transform:none}.right-actions{grid-column:3;justify-self:end;align-items:center;gap:6px;display:flex}nav.links a{text-align:left;border-bottom:none;width:auto;padding-bottom:4px;position:relative}nav.links a:after{content:"";width:0;height:1px;transition:width .4s var(--ease);background:currentColor;display:block;position:absolute;bottom:0;left:0}nav.links a:hover:after{width:100%}nav.links .nav-cta{display:none}.nav-cta-desktop{margin-left:8px;display:inline-flex}header{padding:22px 6vw}header.scrolled{padding:14px 6vw}.hero{text-align:left;flex-direction:row;justify-content:flex-start;padding:0 6vw}.hero .eyebrow{justify-content:flex-start}.hero h1{max-width:11ch;margin-left:0;margin-right:0;font-size:clamp(3rem,7vw,6.4rem)}.hero p.sub{margin-left:0;margin-right:0}.hero-ctas{justify-content:flex-start}.hero-carousel{order:0;width:min(38vw,480px);height:min(62vh,560px);margin:0;position:absolute;top:50%;right:4vw;transform:translateY(-50%)}.scroll-cue{left:6vw;transform:none}.hero{padding:0 6vw}.catalog{padding-block:40px 130px}.cat-grid{grid-template-columns:repeat(3,1fr);gap:34px;margin-top:60px}.new-grid{grid-template-columns:repeat(3,1fr);gap:34px}.sale-grid,.extras-grid{grid-template-columns:repeat(4,1fr);gap:30px;margin-top:56px}.testi-grid{grid-template-columns:repeat(3,1fr);gap:30px}.visit-card{grid-template-columns:1.3fr 1fr;gap:60px;padding:70px}.process{padding-block:120px}.process-head{text-align:left;margin-left:0;margin-right:0}.steps{grid-template-columns:repeat(5,1fr);gap:0;margin-top:70px}.steps:before{content:"";background:repeating-linear-gradient(90deg,var(--gold) 0 8px, transparent 8px 16px);height:1px;position:absolute;top:19px;left:6%;right:6%}.step{padding:0 12px}.location{padding-block:120px}.loc-grid{grid-template-columns:1fr 1fr;gap:70px}.faq{padding-block:100px 140px}.faq-q{padding:26px 4px;font-size:1.35rem}footer{padding-block:80px 30px}.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}.foot-bottom{margin-top:70px}.modal{grid-template-columns:1fr 1fr}.modal-visual{aspect-ratio:auto;min-height:420px}.modal-info{padding:44px 40px}.modal-info h3{font-size:2.1rem}}@media (max-width:900px){header.scrolled{-webkit-backdrop-filter:none;backdrop-filter:none}.music-cluster{z-index:105;margin:0;position:fixed;bottom:18px;right:16px}.music-cluster .sound-toggle{background:var(--emerald);color:#fff;border-radius:50%;width:54px;height:54px;margin:0;box-shadow:0 10px 24px #0c201a59}.music-cluster .sound-toggle svg{opacity:1}.music-cluster .sound-toggle[aria-pressed=true] svg{opacity:0}.music-cluster .sound-toggle[aria-pressed=true] .sound-wave{opacity:1}.music-panel{max-width:calc(100vw - 32px);margin-top:0;top:auto;bottom:calc(100% + 12px)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}:where(.admin) *{font-family:Jost,sans-serif}.admin a{color:inherit;text-decoration:none}.empty{text-align:center;color:#8a8175;grid-column:1/-1;padding:40px 0;font-style:italic}.new-grid .empty{margin-top:-12px}.availability{max-width:820px;padding:80px 0}.availability h1,.availability h2{margin-top:8px;font-family:Cormorant Garamond,serif;font-size:2.6rem;font-weight:600;line-height:1.15}.avail-sub{color:#6c6459;margin-top:12px;line-height:1.7}.avail-card{background:var(--ivory);border:1px solid var(--line);border-radius:12px;margin-top:32px;padding:28px}.avail-mode{border:1px solid var(--line);background:#f1ece3;border-radius:8px;gap:8px;width:max-content;padding:4px;display:flex}.avail-mode button{cursor:pointer;color:#6c6459;background:0 0;border:none;border-radius:6px;padding:8px 18px;font-family:Jost,sans-serif;font-size:.9rem}.avail-mode button.on{background:var(--ink);color:#fff}.avail-form{flex-direction:column;gap:16px;margin-top:22px;display:flex}.avail-form .field{flex-direction:column;gap:8px;display:flex}.avail-form .field>span{letter-spacing:.08em;text-transform:uppercase;color:#8a8175;font-size:.8rem}.avail-form input,.avail-form select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:6px;padding:11px 12px;font-family:Jost,sans-serif;font-size:.95rem}.avail-form .btn-primary{align-self:flex-start;margin-top:4px}.avail-window{color:#5c554b;margin-top:16px;font-size:.85rem}.avail-window b{color:#a8324f;font-weight:600}.avail-result{color:var(--ink);border:1px solid #0000;border-radius:6px;margin-top:18px;padding:14px 16px;font-size:.9rem;line-height:1.6}.avail-result:empty{display:none}.avail-result.ok{color:#2f6b3a;background:#eaf4ec;border-color:#cfe5d4}.avail-result.bad{color:#a8324f;background:#fdeef0;border-color:#f2c9cf}.avail-result .dot{border-radius:50%;width:9px;height:9px;margin-right:8px;display:inline-block}.avail-result .ok-dot,.avail-result.ok .dot{background:#2f8a41}.avail-result .bad-dot,.avail-result.bad .dot{background:#a8324f}.avail-note{color:#6c6459;margin-top:20px;font-size:.85rem;line-height:1.6}.avail-link{color:#a8324f;text-decoration:underline}.avail-remind{color:#8a8175;border-top:1px dashed var(--line);margin-top:12px;padding-top:14px;font-size:.82rem;line-height:1.6}.avail-remind b{color:#6c6459}
