.wedding-site.template-luxe{--section-padding:clamp(5rem,12vw,9rem);--container-width:min(88%,900px);box-sizing:border-box;scroll-behavior:smooth;font-size:18px;font-family:var(--font-sans);font-weight:var(--weight-sans);letter-spacing:var(--tracking-sans);color:var(--color-primary);background:var(--color-dark);-webkit-font-smoothing:antialiased;scrollbar-width:none;-ms-overflow-style:none;min-height:100%;margin:0;padding:0;line-height:1.7;overflow-x:hidden}.wedding-site.template-luxe::-webkit-scrollbar{display:none}.wedding-site.template-luxe *,.wedding-site.template-luxe :before,.wedding-site.template-luxe :after{box-sizing:border-box;margin:0;padding:0}.wedding-site.template-luxe img{max-width:100%;display:block}.wedding-site.template-luxe a{color:var(--color-primary);text-decoration:none;transition:opacity .3s}.wedding-site.template-luxe a:hover{opacity:.7}.wedding-site.template-luxe .nav{z-index:1000;background:linear-gradient(#00000080 0%,#0000 100%);justify-content:center;align-items:center;padding:1.5rem 2rem;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;right:0}.wedding-site.template-luxe .nav.scrolled{background:var(--color-dark);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 85%);padding:1rem 2rem;box-shadow:0 4px 30px #0000004d}.wedding-site.template-luxe .nav__links{align-items:center;gap:2rem;list-style:none;display:flex}.wedding-site.template-luxe .nav__link{font-family:var(--font-sans);letter-spacing:.3em;text-transform:uppercase;color:var(--color-primary);opacity:.7;padding:.25rem 0;font-size:.72rem;font-weight:500;text-decoration:none;transition:all .3s;position:relative}.wedding-site.template-luxe .nav__link:hover,.wedding-site.template-luxe .nav__link.active{opacity:1}.wedding-site.template-luxe .nav__link.active:after{width:100%}.wedding-site.template-luxe .nav.scrolled .nav__link.active{color:var(--color-accent);opacity:1}.wedding-site.template-luxe .nav.scrolled .nav__link.active:after{background:var(--color-accent)}.wedding-site.template-luxe .nav.scrolled .nav__link{color:var(--color-primary);text-shadow:none;opacity:.6}.wedding-site.template-luxe .nav.scrolled .nav__link:hover{opacity:1}.wedding-site.template-luxe .nav__link:after{content:"";background:var(--color-accent);width:0;height:1px;transition:all .3s;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.wedding-site.template-luxe .nav__link:hover:after{width:100%}.wedding-site.template-luxe .nav__wwym{font-family:var(--brand-serif);letter-spacing:.05em;color:var(--color-primary);opacity:.2;font-size:clamp(1.1rem,3vw,1.5rem);font-style:italic;font-weight:900;text-decoration:none;transition:all .4s;position:absolute;left:2rem}.wedding-site.template-luxe .nav__wwym:hover{opacity:.6!important}.wedding-site.template-luxe .nav.scrolled .nav__wwym{color:var(--color-primary);text-shadow:none;opacity:.15}.wedding-site.template-luxe .nav__brand{font-family:var(--font-script);color:var(--color-primary);padding:0 1.5rem;font-size:1.6rem;text-decoration:none;transition:all .4s}.wedding-site.template-luxe .nav.scrolled .nav__brand{color:var(--color-primary);text-shadow:none}.wedding-site.template-luxe .nav__toggle{cursor:pointer;z-index:1001;background:0 0;border:none;padding:.5rem;display:none}.wedding-site.template-luxe .nav__toggle span{background:var(--color-primary);width:22px;height:1px;margin:6px 0;transition:all .3s;display:block}.wedding-site.template-luxe .nav.scrolled .nav__toggle span{background:var(--color-primary)}.wedding-site.template-luxe .nav__toggle.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.wedding-site.template-luxe .nav__toggle.active span:nth-child(2){opacity:0}.wedding-site.template-luxe .nav__toggle.active span:nth-child(3){transform:rotate(-45deg)translate(6px,-6px)}.wedding-site.template-luxe .hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex;position:relative;overflow:hidden}.wedding-site.template-luxe .hero__bg{animation:25s ease-in-out infinite alternate heroZoom;position:absolute;inset:0;transform:scale(1.05)}.wedding-site.template-luxe .hero__content{z-index:2;position:relative}.wedding-site.template-luxe .hero__pretext{font-family:var(--font-sans);letter-spacing:.5em;text-transform:uppercase;color:var(--color-accent);opacity:0;margin-bottom:2.5rem;font-size:.72rem;font-weight:400;animation:1s .3s forwards fadeUp;transform:translateY(20px)}.wedding-site.template-luxe .hero__names{font-family:var(--font-script);color:var(--color-primary);font-size:clamp(3.5rem,13vw,9rem);line-height:var(--line-height-script,1.1);opacity:0;margin-bottom:1rem;animation:1.2s .6s forwards fadeUp;transform:translateY(30px)}.wedding-site.template-luxe .hero__ampersand{opacity:.6;color:var(--color-accent);margin:0 .15em;font-size:.6em;display:inline-block}.wedding-site.template-luxe .hero__line{background:var(--color-accent);opacity:0;width:80px;height:1px;box-shadow:0 0 8px color-mix(in srgb,var(--color-accent),transparent 60%);margin:1.5rem auto;animation:.8s .8s forwards fadeUp}.wedding-site.template-luxe .hero__tagline{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.08em;opacity:0;margin-bottom:2.5rem;font-size:clamp(1rem,2vw,1.3rem);font-style:italic;font-weight:300;animation:1s 1s forwards fadeUp;transform:translateY(20px)}.wedding-site.template-luxe .hero__btn{font-family:var(--font-sans);letter-spacing:.3em;text-transform:uppercase;color:var(--color-primary);border:1px solid color-mix(in srgb,var(--color-accent),transparent 30%);opacity:0;background:0 0;padding:1rem 3rem;font-size:.72rem;font-weight:400;transition:all .4s;animation:1s 1.2s forwards fadeUp;display:inline-block;transform:translateY(20px)}.wedding-site.template-luxe .hero__btn:hover{background:var(--color-accent);color:var(--color-dark);border-color:var(--color-accent)}.wedding-site.template-luxe .hero__date-line{font-family:var(--font-sans);letter-spacing:.4em;text-transform:uppercase;color:var(--color-primary);border:1px solid color-mix(in srgb,var(--color-primary),transparent 85%);opacity:0;margin-top:3rem;padding:.6rem 1.5rem;font-size:.8rem;font-weight:400;animation:1s 1.5s forwards fadeUp;display:inline-block;transform:translateY(20px)}.wedding-site.template-luxe .hero__countdown{opacity:0;justify-content:center;gap:2.5rem;margin-top:2.5rem;animation:1s 1.7s forwards fadeUp;display:flex;transform:translateY(20px)}.wedding-site.template-luxe .countdown__item{text-align:center}.wedding-site.template-luxe .countdown__number{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;font-size:clamp(2rem,4vw,3rem);font-weight:300;line-height:1}.wedding-site.template-luxe .countdown__label{font-family:var(--font-sans);letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);opacity:.7;margin-top:.5rem;font-size:.65rem;font-weight:400}.wedding-site.template-luxe .section{padding:var(--section-padding)0}.wedding-site.template-luxe .section--primary{background:color-mix(in srgb,var(--color-dark),#000 15%);color:var(--color-primary)}.wedding-site.template-luxe .section--accent{background:var(--color-dark);color:var(--color-primary)}.wedding-site.template-luxe .section--dark{background:color-mix(in srgb,var(--color-dark),#000 25%);color:var(--color-primary)}.wedding-site.template-luxe .section--accent,.wedding-site.template-luxe .section--primary,.wedding-site.template-luxe .section--accent .section__title,.wedding-site.template-luxe .section--primary .section__title,.wedding-site.template-luxe .section--accent .section__subtitle,.wedding-site.template-luxe .section--primary .section__subtitle,.wedding-site.template-luxe .section--accent .info-card__title,.wedding-site.template-luxe .section--primary .info-card__title{color:var(--color-primary)}.wedding-site.template-luxe .section--accent .section__subtitle,.wedding-site.template-luxe .section--primary .section__subtitle{color:var(--color-accent)}.wedding-site.template-luxe .section--accent .info-card__label,.wedding-site.template-luxe .section--primary .info-card__label{color:var(--color-accent);opacity:.8}.wedding-site.template-luxe .section--accent p,.wedding-site.template-luxe .section--primary p,.wedding-site.template-luxe .section--accent .info-card__text,.wedding-site.template-luxe .section--primary .info-card__text{color:var(--color-primary);opacity:.7}.wedding-site.template-luxe .section--dark .section__subtitle,.wedding-site.template-luxe .section--dark .story__lead,.wedding-site.template-luxe .section--dark .quote__text,.wedding-site.template-luxe .section--dark .featured-photo__caption,.wedding-site.template-luxe .section--dark .schedule-day__label,.wedding-site.template-luxe .section--dark .timeline__hour,.wedding-site.template-luxe .section--dark .timeline__event,.wedding-site.template-luxe .section--dark .timeline-minimal__event,.wedding-site.template-luxe .section--dark .timeline-card__event,.wedding-site.template-luxe .section--dark .gallery__title,.wedding-site.template-luxe .section--dark .explore-group__heading,.wedding-site.template-luxe .section--dark .explore-col__heading,.wedding-site.template-luxe .section--dark .faq-question,.wedding-site.template-luxe .section--dark .hotel-card__name,.wedding-site.template-luxe .section--dark .gift__heading,.wedding-site.template-luxe .section--dark .contact__heading,.wedding-site.template-luxe .section--dark .menu__heading,.wedding-site.template-luxe .section--dark .menu__item-name,.wedding-site.template-luxe .section--dark .menu__category-name,.wedding-site.template-luxe .section--dark .hero__pretext,.wedding-site.template-luxe .section--dark .hero__tagline,.wedding-site.template-luxe .section--dark .hero__date-line,.wedding-site.template-luxe .section--dark .contact__label,.wedding-site.template-luxe .section--dark .letter__opening,.wedding-site.template-luxe .section--dark .letter__closing,.wedding-site.template-luxe .section--dark .footer__names{color:var(--color-primary)}.wedding-site.template-luxe .section--dark .story__text,.wedding-site.template-luxe .section--dark .info-card__text,.wedding-site.template-luxe .section--dark .info-card__label,.wedding-site.template-luxe .section--dark .info-card__title,.wedding-site.template-luxe .section--dark .info-card__time,.wedding-site.template-luxe .section--dark .quote__attribution,.wedding-site.template-luxe .section--dark .schedule-day__date,.wedding-site.template-luxe .section--dark .timeline__period,.wedding-site.template-luxe .section--dark .timeline__venue,.wedding-site.template-luxe .section--dark .timeline__desc,.wedding-site.template-luxe .section--dark .timeline-minimal__time,.wedding-site.template-luxe .section--dark .timeline-minimal__venue,.wedding-site.template-luxe .section--dark .timeline-card__time,.wedding-site.template-luxe .section--dark .timeline-card__venue,.wedding-site.template-luxe .section--dark .timeline-card__desc,.wedding-site.template-luxe .section--dark .explore-link,.wedding-site.template-luxe .section--dark .hotel-card__distance,.wedding-site.template-luxe .section--dark .hotel-card__desc,.wedding-site.template-luxe .section--dark .gift__subheading,.wedding-site.template-luxe .section--dark .gift__note,.wedding-site.template-luxe .section--dark .contact__subheading,.wedding-site.template-luxe .section--dark .contact__entry,.wedding-site.template-luxe .section--dark .contact__entry a,.wedding-site.template-luxe .section--dark .contact__phone-number,.wedding-site.template-luxe .section--dark .contact__link,.wedding-site.template-luxe .section--dark .letter__body,.wedding-site.template-luxe .section--dark .menu__item,.wedding-site.template-luxe .section--dark .menu__category-name{border-color:color-mix(in srgb,var(--color-accent),transparent 80%)}.wedding-site.template-luxe .section--dark .section__title,.wedding-site.template-luxe .section--dark .menu__item-desc,.wedding-site.template-luxe .section--dark .menu__item,.wedding-site.template-luxe .section--dark .menu__note,.wedding-site.template-luxe .section--dark .footer__date,.wedding-site.template-luxe .section--dark .footer__contact,.wedding-site.template-luxe .section--dark .footer__contact a,.wedding-site.template-luxe .section--dark .footer__copy,.wedding-site.template-luxe .section--dark .contact__entry,.wedding-site.template-luxe .section--dark .contact__entry a,.wedding-site.template-luxe .section--dark .contact__phone-number,.wedding-site.template-luxe .section--dark .hotel-card__distance,.wedding-site.template-luxe .section--dark .hotel-card__desc,.wedding-site.template-luxe .section--dark .hotel-card__discount,.wedding-site.template-luxe .section--dark .hotel-card__discount-code,.wedding-site.template-luxe .section--dark .explore-link,.wedding-site.template-luxe .section--dark .explore-col__list li,.wedding-site.template-luxe .section--dark .explore-col__subheading,.wedding-site.template-luxe .section--dark .story__lead,.wedding-site.template-luxe .section--dark .quote__text,.wedding-site.template-luxe .section--dark .letter__body,.wedding-site.template-luxe .section--dark .featured-photo__caption,.wedding-site.template-luxe .section--dark .faq-answer,.wedding-site.template-luxe .section--dark p{color:var(--color-primary);opacity:.75}.wedding-site.template-luxe .section--dark .hero__names,.wedding-site.template-luxe .section--dark .hero__ampersand{color:var(--color-primary)}.wedding-site.template-luxe .section--dark .hero__line{background:var(--color-accent)}.wedding-site.template-luxe .section--dark .hero__btn{color:var(--color-primary);border-color:color-mix(in srgb,var(--color-accent),transparent 30%);background:0 0}.wedding-site.template-luxe .section--dark .hero__btn:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .section--dark .contact__phone-action{color:var(--color-primary);border-color:color-mix(in srgb,var(--color-accent),transparent 70%);background:#ffffff08}.wedding-site.template-luxe .section--dark .info-card{border-color:color-mix(in srgb,var(--color-accent),transparent 70%);background:#ffffff08}.wedding-site.template-luxe .section--dark .info-card:hover{border-color:var(--color-accent);background:#ffffff0f;box-shadow:0 12px 40px #00000080}.wedding-site.template-luxe .section--dark .info-card__time{border-color:color-mix(in srgb,var(--color-accent),transparent 70%);color:var(--color-accent);background:#ffffff0d}.wedding-site.template-luxe .section--dark .info-card__label{color:var(--color-accent);opacity:.8}.wedding-site.template-luxe .section--dark .info-card__name,.wedding-site.template-luxe .section--dark .info-card__title{color:var(--color-primary)}.wedding-site.template-luxe .section--dark .info-card__text{color:var(--color-primary);opacity:.6}.wedding-site.template-luxe .section--dark .info-card__time{color:var(--color-accent);background:color-mix(in srgb,var(--color-accent),transparent 90%);border-color:color-mix(in srgb,var(--color-accent),transparent 75%)}.wedding-site.template-luxe .section--dark .details-minimal__label{color:var(--color-accent)}.wedding-site.template-luxe .section--dark .details-minimal__name{color:var(--color-primary)}.wedding-site.template-luxe .section--dark .details-minimal__time{color:var(--color-primary);opacity:.6}.wedding-site.template-luxe .section--dark .details-minimal__address{color:var(--color-primary);opacity:.5}.wedding-site.template-luxe .section--dark .details-minimal__item{border-color:color-mix(in srgb,var(--color-accent),transparent 85%)}.wedding-site.template-luxe .section--dark .section__date{color:var(--color-primary);opacity:.5}.wedding-site.template-luxe .section--dark .info-block__note{color:var(--color-primary);opacity:.6}.wedding-site.template-luxe .section--dark .section__line{background:var(--color-accent);opacity:.4;box-shadow:0 0 6px color-mix(in srgb,var(--color-accent),transparent 60%)}.wedding-site.template-luxe .section--dark .contact__phone-action:hover{background:var(--color-accent);color:var(--color-dark);border-color:var(--color-accent)}.wedding-site.template-luxe .section--dark .contact__entry a{border-bottom-color:color-mix(in srgb,var(--color-accent),transparent 70%)}.wedding-site.template-luxe .section--dark .contact__entry a:hover{border-color:var(--color-accent)}.wedding-site.template-luxe .section--dark .contact__phone-number{border-bottom-color:color-mix(in srgb,var(--color-accent),transparent 70%)}.wedding-site.template-luxe .section--dark .contact__phone-actions--footer .contact__phone-action{color:var(--color-primary);background:#ffffff08;border-color:color-mix(in srgb,var(--color-accent),transparent 80%)!important}.wedding-site.template-luxe .section--dark .contact__phone-actions--footer .contact__phone-action:hover{background:var(--color-accent);color:var(--color-dark)!important}.wedding-site.template-luxe .section--dark .section__line,.wedding-site.template-luxe .section--dark .footer__line,.wedding-site.template-luxe .section--dark .timeline:before,.wedding-site.template-luxe .section--dark .timeline-minimal__dot{background:var(--color-accent)}.wedding-site.template-luxe .section--dark .timeline__item:before{border-color:var(--color-accent);background:var(--color-dark)}.wedding-site.template-luxe .section--dark .hotel-card,.wedding-site.template-luxe .section--dark .explore-card{border-color:color-mix(in srgb,var(--color-accent),transparent 70%);background:#ffffff08}.wedding-site.template-luxe .section--dark .hotel-card:hover,.wedding-site.template-luxe .section--dark .explore-card:hover{border-color:var(--color-accent);background:#ffffff0f;box-shadow:0 12px 40px #00000080}.wedding-site.template-luxe .section--dark .hotel-card__note{border-left-color:var(--color-accent);color:var(--color-primary);background:#ffffff08}.wedding-site.template-luxe .section--dark .hotel-card__discount{border-color:color-mix(in srgb,var(--color-accent),transparent 60%);color:var(--color-primary);background:#ffffff08}.wedding-site.template-luxe .section--dark .hotel-card__badge{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .section--accent .hotel-card,.wedding-site.template-luxe .section--accent .explore-card{border-color:color-mix(in srgb,var(--color-accent),transparent 75%);background:#ffffff08}.wedding-site.template-luxe .section--primary .hotel-card,.wedding-site.template-luxe .section--primary .explore-card{border-color:color-mix(in srgb,var(--color-accent),transparent 75%);background:#ffffff0a}.wedding-site.template-luxe .section--dark .explore-col__heading{color:var(--color-primary)}.wedding-site.template-luxe .section--dark .explore-col__list li:before{background:var(--color-accent)}.wedding-site.template-luxe .section--dark .explore-col__list a{color:var(--color-primary);-webkit-text-decoration-color:color-mix(in srgb,var(--color-accent),transparent 60%);text-decoration-color:color-mix(in srgb,var(--color-accent),transparent 60%)}.wedding-site.template-luxe .section--dark .explore-col__list a:hover{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}.wedding-site.template-luxe .section--dark .rsvp__button,.wedding-site.template-luxe .section--dark .hotel-card__link,.wedding-site.template-luxe .section--dark .gift__dropdown-toggle{color:var(--color-primary);border:1px solid var(--color-accent);background:0 0}.wedding-site.template-luxe .section--dark .rsvp__button:hover,.wedding-site.template-luxe .section--dark .hotel-card__link:hover,.wedding-site.template-luxe .section--dark .gift__dropdown-toggle:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .section--dark .rsvp__label{color:var(--color-primary);opacity:.6}.wedding-site.template-luxe .section--dark .rsvp__input,.wedding-site.template-luxe .section--dark .rsvp__select,.wedding-site.template-luxe .section--dark .rsvp__textarea{border-color:color-mix(in srgb,var(--color-accent),transparent 70%);color:var(--color-primary);background:#ffffff0a}.wedding-site.template-luxe .section--dark .rsvp__input:focus{border-color:var(--color-accent)}.wedding-site.template-luxe .section--dark .rsvp__allergy-btn{color:var(--color-primary);border-color:color-mix(in srgb,var(--color-accent),transparent 60%)}.wedding-site.template-luxe .section--dark .rsvp__allergy-btn:hover{border-color:var(--color-accent)}.wedding-site.template-luxe .section--dark .rsvp__allergy-btn--active{background:var(--color-accent);color:var(--color-dark);border-color:var(--color-accent)}.wedding-site.template-luxe .section--accent .rsvp__button,.wedding-site.template-luxe .section--accent .hotel-card__link,.wedding-site.template-luxe .section--accent .gift__dropdown-toggle{color:var(--color-primary);border:1px solid var(--color-accent);background:0 0}.wedding-site.template-luxe .section--accent .rsvp__button:hover,.wedding-site.template-luxe .section--accent .hotel-card__link:hover,.wedding-site.template-luxe .section--accent .gift__dropdown-toggle:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .section--primary .rsvp__button,.wedding-site.template-luxe .section--primary .hotel-card__link,.wedding-site.template-luxe .section--primary .gift__dropdown-toggle{color:var(--color-primary);border:1px solid var(--color-accent);background:0 0}.wedding-site.template-luxe .section--primary .rsvp__button:hover,.wedding-site.template-luxe .section--primary .hotel-card__link:hover,.wedding-site.template-luxe .section--primary .gift__dropdown-toggle:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .section--has-bg{min-height:400px;position:relative;background-color:var(--color-dark)!important}.wedding-site.template-luxe .section--has-bg>div{z-index:2;position:relative}.wedding-site.template-luxe .section-bg-desktop{display:none!important}.wedding-site.template-luxe .section-bg-mobile{z-index:0;width:100%;height:50vh;min-height:280px;max-height:500px;line-height:0;display:block;position:relative;overflow:hidden}.wedding-site.template-luxe .section-bg-mobile img{object-fit:cover!important;object-position:center center!important;width:100%!important;height:100%!important}@media (max-width:768px){.wedding-site.template-luxe .section-bg-mobile{height:40vh;min-height:220px;max-height:320px}}.wedding-site.template-luxe .section--has-bg.section--light-text,.wedding-site.template-luxe .section--has-bg.section--light-text .section__title,.wedding-site.template-luxe .section--has-bg.section--light-text .section__subtitle,.wedding-site.template-luxe .section--has-bg.section--light-text .story__lead,.wedding-site.template-luxe .section--has-bg.section--light-text .story__text,.wedding-site.template-luxe .section--has-bg.section--light-text .info-card__title,.wedding-site.template-luxe .section--has-bg.section--light-text .info-card__text,.wedding-site.template-luxe .section--has-bg.section--light-text .info-card__label,.wedding-site.template-luxe .section--has-bg.section--light-text .venue-info__heading,.wedding-site.template-luxe .section--has-bg.section--light-text .venue-info__subheading,.wedding-site.template-luxe .section--has-bg.section--light-text .venue-info__text,.wedding-site.template-luxe .section--has-bg.section--light-text .venue-info__address,.wedding-site.template-luxe .section--has-bg.section--light-text .quote__text,.wedding-site.template-luxe .section--has-bg.section--light-text .quote__attribution,.wedding-site.template-luxe .section--has-bg.section--light-text .featured-photo__caption,.wedding-site.template-luxe .section--has-bg.section--light-text .timeline__hour,.wedding-site.template-luxe .section--has-bg.section--light-text .timeline__event,.wedding-site.template-luxe .section--has-bg.section--light-text .timeline__venue,.wedding-site.template-luxe .section--has-bg.section--light-text .timeline__desc,.wedding-site.template-luxe .section--has-bg.section--light-text .schedule-day__label,.wedding-site.template-luxe .section--has-bg.section--light-text .schedule-day__date,.wedding-site.template-luxe .section--has-bg.section--light-text .rsvp__heading,.wedding-site.template-luxe .section--has-bg.section--light-text .rsvp__subheading,.wedding-site.template-luxe .section--has-bg.section--light-text .gift__heading,.wedding-site.template-luxe .section--has-bg.section--light-text .gift__subheading,.wedding-site.template-luxe .section--has-bg.section--light-text .gift__note,.wedding-site.template-luxe .section--has-bg.section--light-text .contact__heading,.wedding-site.template-luxe .section--has-bg.section--light-text .contact__subheading,.wedding-site.template-luxe .section--has-bg.section--light-text .contact__entry,.wedding-site.template-luxe .section--has-bg.section--light-text .contact__entry a,.wedding-site.template-luxe .section--has-bg.section--light-text .footer__names,.wedding-site.template-luxe .section--has-bg.section--light-text .footer__date,.wedding-site.template-luxe .section--has-bg.section--light-text .footer__copy,.wedding-site.template-luxe .section--has-bg.section--light-text .footer__brand{color:#fff!important}.wedding-site.template-luxe .section--has-bg.section--light-text .footer__brand-line{background:#fff}.wedding-site.template-luxe .section--has-bg.section--light-text .footer__line{opacity:.3;background:#fff!important}.wedding-site.template-luxe .section--has-bg.section--light-text .section__line{opacity:.4;background:#fff!important}.wedding-site.template-luxe .section--has-bg.section--light-text .info-card,.wedding-site.template-luxe .section--has-bg.section--light-text .gift__dropdown-menu{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0006;border-color:#ffffff26}.wedding-site.template-luxe .section--has-bg.section--light-text .gift__dropdown-item,.wedding-site.template-luxe .section--has-bg.section--light-text .info-card__time{color:#fff}.wedding-site.template-luxe .section--has-bg.section--light-text .details-minimal__label,.wedding-site.template-luxe .section--has-bg.section--light-text .details-minimal__name,.wedding-site.template-luxe .section--has-bg.section--light-text .details-minimal__time,.wedding-site.template-luxe .section--has-bg.section--light-text .details-minimal__address,.wedding-site.template-luxe .section--has-bg.section--light-text .section__date,.wedding-site.template-luxe .section--has-bg.section--light-text .info-block__note{color:#fff!important}.wedding-site.template-luxe .section--has-bg.section--light-text .details-minimal__item{border-color:#ffffff26}.wedding-site.template-luxe .container{width:var(--container-width);margin:0 auto}.wedding-site.template-luxe .section__header{text-align:center;margin-bottom:clamp(3rem,6vw,5rem)}.wedding-site.template-luxe .section__subtitle{font-family:var(--font-script);color:var(--color-accent);margin-bottom:.5rem;font-size:clamp(1.5rem,2.8vw,2rem)}.wedding-site.template-luxe .section__title{font-family:var(--font-serif);letter-spacing:.18em;color:var(--color-primary);text-transform:uppercase;font-size:clamp(1.6rem,3.5vw,2.5rem);font-weight:200}.wedding-site.template-luxe .section__line{background:var(--color-accent);opacity:.5;width:50px;height:1px;box-shadow:0 0 8px color-mix(in srgb,var(--color-accent),transparent 50%);margin:1.5rem auto 0}.wedding-site.template-luxe .section__desc{font-family:var(--font-serif);color:var(--color-primary);opacity:.5;margin-top:.75rem;font-size:1rem;font-style:italic;font-weight:300}.wedding-site.template-luxe .section--dark .section__desc{color:var(--color-primary)}.wedding-site.template-luxe .reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(30px)}.wedding-site.template-luxe .reveal.visible,.wedding-site.template-luxe .preview .reveal{opacity:1;transform:none}.wedding-site.template-luxe .preview .hero{min-height:100cqh}.wedding-site.template-luxe .preview .hero__names{font-size:clamp(3.5rem,13cqw,9rem)}.wedding-site.template-luxe .preview .hero__pretext{font-size:clamp(.55rem,1.8cqw,.76rem)}.wedding-site.template-luxe .preview .hero__tagline{font-size:clamp(.9rem,3cqw,1.2rem)}.wedding-site.template-luxe .preview .hero__date-line{font-size:clamp(.65rem,2cqw,.85rem)}.wedding-site.template-luxe .preview .hero__btn{padding:clamp(.6rem,2cqw,1rem) clamp(1.5rem,4cqw,2.5rem);font-size:clamp(.55rem,1.5cqw,.7rem)}.wedding-site.template-luxe .preview .nav{display:none}@container (max-width:768px){.wedding-site.template-luxe .preview .story{grid-template-columns:1fr;gap:2.5rem}.wedding-site.template-luxe .preview .story__img{aspect-ratio:4/3;order:-1}.wedding-site.template-luxe .preview .info-grid{grid-template-columns:1fr;gap:1.5rem}.wedding-site.template-luxe .preview .gallery{grid-template-columns:1fr;gap:.75rem}.wedding-site.template-luxe .preview .gallery__hero,.wedding-site.template-luxe .preview .gallery__thumb{aspect-ratio:16/9}.wedding-site.template-luxe .preview .details-split{grid-template-columns:1fr;gap:2.5rem}.wedding-site.template-luxe .preview .details-split-layout{grid-template-columns:1fr;gap:2rem}.wedding-site.template-luxe .preview .explore-grid{grid-template-columns:1fr;gap:2.5rem}.wedding-site.template-luxe .preview .gallery-float{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.wedding-site.template-luxe .preview .hotels-grid{grid-template-columns:1fr}.wedding-site.template-luxe .preview .timeline__item{grid-template-columns:75px 1px 1fr;gap:1.25rem}.wedding-site.template-luxe .preview .hero__countdown{gap:1.25rem}.wedding-site.template-luxe .preview .section-bg-mobile{height:40cqh;min-height:180px;max-height:280px}.wedding-site.template-luxe .preview .rsvp__input--narrow,.wedding-site.template-luxe .preview .gift-contrib__input--narrow,.wedding-site.template-luxe .preview .rsvp__phone-row--narrow,.wedding-site.template-luxe .preview .gift-contrib__amount-row{max-width:100%}.wedding-site.template-luxe .preview .rsvp__field--centered,.wedding-site.template-luxe .preview .gift-contrib__field--centered{text-align:left}.wedding-site.template-luxe .preview .rsvp__row{grid-template-columns:1fr}}@container (max-width:480px){.wedding-site.template-luxe .preview .hero__countdown{gap:.75rem}.wedding-site.template-luxe .preview .countdown__number{font-size:1.4rem}}.wedding-site.template-luxe .reveal-delay-1{transition-delay:.15s}.wedding-site.template-luxe .reveal-delay-2{transition-delay:.3s}.wedding-site.template-luxe .reveal-delay-3{transition-delay:.45s}.wedding-site.template-luxe .story{grid-template-columns:1.1fr .9fr;align-items:start;gap:clamp(2rem,5vw,4rem);display:grid}.wedding-site.template-luxe .story__text-block{max-width:520px}.wedding-site.template-luxe .story__lead{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:2rem;font-size:clamp(1.1rem,2vw,1.5rem);font-style:italic;font-weight:300;line-height:1.9}.wedding-site.template-luxe .story__text{font-size:.95rem;font-weight:var(--weight-sans,400);letter-spacing:var(--tracking-sans,0em);color:var(--color-primary);opacity:.7;margin-bottom:1.25rem;line-height:1.9}.wedding-site.template-luxe .story__img{object-fit:cover;filter:contrast(1.05)brightness(.95);width:100%;max-width:500px;height:auto;margin-left:auto;box-shadow:0 20px 60px #0000004d}.wedding-site.template-luxe *{scrollbar-width:none;-ms-overflow-style:none}.wedding-site.template-luxe ::-webkit-scrollbar{display:none}.wedding-site.template-luxe .info-grid{grid-template-columns:1fr 1fr;gap:3rem;max-width:800px;margin:0 auto;display:grid}.wedding-site.template-luxe .info-card{text-align:center;border:1px solid color-mix(in srgb,var(--color-accent),transparent 75%);background:#ffffff05;border-radius:0;padding:2.5rem 1.5rem;transition:all .4s cubic-bezier(.165,.84,.44,1)}.wedding-site.template-luxe .info-card:hover{border-color:var(--color-accent);background:#ffffff0d;transform:translateY(-6px);box-shadow:0 12px 40px #0006}.wedding-site.template-luxe .info-card__label{font-family:var(--font-sans);letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);opacity:.8;margin-bottom:1rem;font-size:.7rem;font-weight:500}.wedding-site.template-luxe .info-card__title,.wedding-site.template-luxe .info-card__name{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;margin-bottom:.75rem;font-size:1.4rem;font-weight:300}.wedding-site.template-luxe .info-card__text{color:var(--color-primary);opacity:.6;font-size:.92rem;line-height:1.8}.wedding-site.template-luxe .info-card__time{font-family:var(--font-serif);color:var(--color-accent);opacity:1;border:1px solid color-mix(in srgb,var(--color-accent),transparent 70%);background:#ffffff0a;border-radius:0;margin-top:1.25rem;padding:.4rem 1.2rem;font-size:1.4rem;font-weight:300;display:inline-block}.wedding-site.template-luxe .quote-section{text-align:center;max-width:720px;margin:0 auto;padding:2rem 0}.wedding-site.template-luxe .quote__text{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:1.5rem;font-size:clamp(1.3rem,2.8vw,1.9rem);font-style:italic;font-weight:300;line-height:2}.wedding-site.template-luxe .quote__attribution{font-family:var(--font-sans);letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);opacity:.75;font-size:.7rem;font-weight:400}.wedding-site.template-luxe .featured-photo{text-align:center;max-width:500px;margin:0 auto}.wedding-site.template-luxe .featured-photo__img{aspect-ratio:1;object-fit:cover;filter:contrast(1.05)brightness(.95);width:100%}.wedding-site.template-luxe .featured-photo__caption{font-family:var(--font-script);color:var(--color-accent);opacity:.75;margin-top:1.5rem;font-size:1.3rem}.wedding-site.template-luxe .faq-question{color:var(--color-primary)}.wedding-site.template-luxe .faq-answer{color:var(--color-primary);opacity:.7}.wedding-site.template-luxe .letter{text-align:center;max-width:650px;margin:0 auto}.wedding-site.template-luxe .letter__opening{font-family:var(--font-script);color:var(--color-primary);margin-bottom:2rem;font-size:clamp(1.8rem,3.5vw,2.5rem)}.wedding-site.template-luxe .letter__text,.wedding-site.template-luxe .letter__body{font-family:var(--font-serif);color:var(--color-primary);opacity:.7;margin-bottom:1.5rem;font-size:clamp(1rem,1.8vw,1.15rem);font-weight:300;line-height:2.2}.wedding-site.template-luxe .letter__closing{font-family:var(--font-script);color:var(--color-accent);margin-top:2.5rem;font-size:1.6rem}.wedding-site.template-luxe .section--accent .info-card{border-color:color-mix(in srgb,var(--color-accent),transparent 75%);background:#ffffff05}.wedding-site.template-luxe .section--accent .info-card__time{border-color:color-mix(in srgb,var(--color-accent),transparent 70%);background:#ffffff0a}.wedding-site.template-luxe .section--primary .info-card{border-color:color-mix(in srgb,var(--color-accent),transparent 75%);background:#ffffff08}.wedding-site.template-luxe .section--primary .info-card__time{border-color:color-mix(in srgb,var(--color-accent),transparent 70%);background:#ffffff0a}.wedding-site.template-luxe .section--accent .details-minimal__item,.wedding-site.template-luxe .section--primary .details-minimal__item{border-color:color-mix(in srgb,var(--color-accent),transparent 82%)}.wedding-site.template-luxe .section--accent .info-block__note,.wedding-site.template-luxe .section--primary .info-block__note{color:var(--color-primary);opacity:.6}.wedding-site.template-luxe .schedule-day{margin-bottom:3rem}.wedding-site.template-luxe .schedule-day:last-child{margin-bottom:0}.wedding-site.template-luxe .schedule-day__label{font-family:var(--font-serif);color:var(--color-primary);opacity:.8;text-align:center;font-size:clamp(1.5rem,4vw,1.875rem);font-style:italic}.wedding-site.template-luxe .schedule-day__date{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);opacity:.5;text-align:center;margin-bottom:2.5rem;font-size:.76rem;font-weight:400}.wedding-site.template-luxe .timeline{max-width:800px;margin:0 auto}.wedding-site.template-luxe .timeline__item{margin-bottom:3.5rem;display:flex}.wedding-site.template-luxe .timeline__item:last-child{margin-bottom:0}.wedding-site.template-luxe .timeline__hour{width:120px;font-family:var(--font-serif);color:var(--color-primary);flex-shrink:0;padding-top:.2rem;font-size:1.8rem;font-style:italic;line-height:1}.wedding-site.template-luxe .timeline__hour span{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);opacity:.5;margin-top:.4rem;font-size:.65rem;font-style:normal;font-weight:600;display:block}.wedding-site.template-luxe .timeline__content{border-left:1px solid color-mix(in srgb,var(--color-accent),transparent 70%);flex:1;padding-bottom:.5rem;padding-left:2.5rem}.wedding-site.template-luxe .timeline__event{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;margin-bottom:.6rem;font-size:1.4rem;font-weight:300}.wedding-site.template-luxe .timeline__venue{font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);opacity:.5;margin-bottom:.75rem;font-size:.75rem;font-weight:500}.wedding-site.template-luxe .timeline__desc{color:var(--color-primary);opacity:.6;max-width:500px;font-size:.95rem;line-height:1.8}.wedding-site.template-luxe .timeline-minimal{max-width:600px;margin:0 auto}.wedding-site.template-luxe .timeline-minimal__item{border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 85%);align-items:flex-start;gap:2.5rem;padding:1.75rem 0;display:flex}.wedding-site.template-luxe .timeline-minimal__item:last-child{border-bottom:none}.wedding-site.template-luxe .timeline-minimal__time{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);opacity:.5;flex-shrink:0;width:80px;padding-top:.35rem;font-size:.75rem;font-weight:600}.wedding-site.template-luxe .timeline-minimal__details{flex:1}.wedding-site.template-luxe .timeline-minimal__event{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;margin-bottom:.25rem;font-size:1.2rem;font-weight:300}.wedding-site.template-luxe .timeline-minimal__venue{font-family:var(--font-sans);color:var(--color-primary);opacity:.4;letter-spacing:.02em;font-size:.75rem;font-style:italic}.wedding-site.template-luxe .timeline-cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1100px;margin:0 auto;display:grid}.wedding-site.template-luxe .timeline-card{border:1px solid color-mix(in srgb,var(--color-accent),transparent 75%);text-align:center;background:#ffffff05;border-radius:0;padding:3.5rem 2.5rem;transition:all .4s cubic-bezier(.165,.84,.44,1);position:relative}.wedding-site.template-luxe .timeline-card:hover{border-color:var(--color-accent);background:#ffffff0d;transform:translateY(-8px);box-shadow:0 15px 45px #0006}.wedding-site.template-luxe .timeline-card__time{font-family:var(--font-sans);letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);opacity:.5;margin-bottom:1.5rem;font-size:.75rem;font-weight:600}.wedding-site.template-luxe .timeline-card__event{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;margin-bottom:.5rem;font-size:1.5rem;font-weight:300}.wedding-site.template-luxe .timeline-card__venue{font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:var(--color-primary);opacity:.4;font-size:.8rem;font-weight:500}.wedding-site.template-luxe .timeline-card__desc{color:var(--color-primary);opacity:.6;margin-top:1.5rem;font-size:.9rem;line-height:1.8}.wedding-site.template-luxe .gallery{grid-template-rows:auto auto;grid-template-columns:1fr 1fr 1fr;gap:1rem;display:grid}.wedding-site.template-luxe .gallery__hero{aspect-ratio:16/7;object-fit:cover;filter:contrast(1.05)brightness(.9);grid-column:1/-1;width:100%}.wedding-site.template-luxe .gallery__thumb{aspect-ratio:4/3;object-fit:cover;filter:contrast(1.05)brightness(.9);width:100%;transition:transform .4s}.wedding-site.template-luxe .gallery__thumb:hover{transform:scale(1.03)}.wedding-site.template-luxe .rsvp__heading{font-family:var(--font-script);color:var(--color-primary);margin-bottom:.5rem;font-size:clamp(2.2rem,5vw,3.2rem)}.wedding-site.template-luxe .rsvp__subheading{font-family:var(--font-serif);color:var(--color-primary);opacity:.6;margin-bottom:2.5rem;font-size:1rem;font-style:italic;font-weight:300}.wedding-site.template-luxe .rsvp__form{text-align:left;max-width:560px;margin:0 auto}.wedding-site.template-luxe .rsvp__field{margin-bottom:1.5rem}.wedding-site.template-luxe .rsvp__label{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--color-primary);opacity:.5;margin-bottom:.5rem;font-size:.7rem;font-weight:500;display:block}.wedding-site.template-luxe .rsvp__hint{font-family:var(--font-serif);color:var(--color-primary);opacity:.4;margin-top:.35rem;font-size:.8rem;font-style:italic}.wedding-site.template-luxe .rsvp__input,.wedding-site.template-luxe .rsvp__select{width:100%;font-family:var(--font-serif);border:1px solid color-mix(in srgb,var(--color-accent),transparent 70%);color:var(--color-primary);background:#ffffff0a;border-radius:0;padding:.85rem 1rem;font-size:1rem;transition:border-color .3s}.wedding-site.template-luxe .rsvp__textarea{width:100%;font-family:var(--font-serif);border:1px solid color-mix(in srgb,var(--color-accent),transparent 70%);color:var(--color-primary);resize:vertical;background:#ffffff0a;border-radius:0;padding:.85rem 1rem;font-size:1rem;transition:border-color .3s}.wedding-site.template-luxe .rsvp__select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23ccc' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:12px;padding-right:2.5rem}.wedding-site.template-luxe .rsvp__input:focus,.wedding-site.template-luxe .rsvp__select:focus,.wedding-site.template-luxe .rsvp__textarea:focus{border-color:var(--color-accent);outline:none}.wedding-site.template-luxe .rsvp__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.wedding-site.template-luxe .rsvp__phone-row{align-items:stretch;display:flex}.wedding-site.template-luxe .rsvp__phone-row .rsvp__phone-picker>button{height:100%;font-family:var(--font-serif);font-size:.9rem;border:1px solid color-mix(in srgb,var(--color-accent),transparent 70%)!important;min-width:110px!important;color:var(--color-primary)!important;background:#ffffff08!important;border-right:none!important;border-radius:0!important;padding:.75rem!important}.wedding-site.template-luxe .rsvp__phone-input{flex:1;border-top-left-radius:0!important;border-bottom-left-radius:0!important}.wedding-site.template-luxe .rsvp__field--centered{text-align:center}.wedding-site.template-luxe .rsvp__input--narrow{text-align:left;max-width:100%;display:block}.wedding-site.template-luxe .rsvp__phone-row--narrow{max-width:100%}.wedding-site.template-luxe .rsvp__guest-heading-wrap{margin-top:2.5rem;margin-bottom:1rem}.wedding-site.template-luxe .rsvp__guest-heading{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;opacity:.5;border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 80%);color:var(--color-primary);padding-bottom:.75rem;font-size:.7rem;font-weight:500}.wedding-site.template-luxe .rsvp__guest-card{border:1px solid color-mix(in srgb,var(--color-accent),transparent 80%);background:#ffffff05;border-radius:0;margin-bottom:1.5rem;padding:1.25rem;position:relative}.wedding-site.template-luxe .rsvp__guest-title{font-family:var(--font-serif);letter-spacing:.05em;color:var(--color-primary);opacity:.6;margin:0 0 1rem;font-size:.95rem;font-weight:300}.wedding-site.template-luxe .rsvp__guest-remove{color:var(--color-primary);opacity:.3;cursor:pointer;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;background:0 0;border:none;font-size:.65rem;font-weight:500;position:absolute;top:1rem;right:1rem}.wedding-site.template-luxe .rsvp__guest-remove:hover{opacity:1}.wedding-site.template-luxe .section--dark .rsvp__hint,.wedding-site.template-luxe .section--dark .rsvp__guest-title{color:var(--color-primary)}.wedding-site.template-luxe .section--dark .rsvp__guest-heading{border-bottom-color:color-mix(in srgb,var(--color-accent),transparent 80%);color:var(--color-primary)}.wedding-site.template-luxe .section--dark .rsvp__guest-card{border-color:color-mix(in srgb,var(--color-accent),transparent 85%);background:#ffffff05}.wedding-site.template-luxe .section--dark .rsvp__phone-row .rsvp__phone-picker>button{border-color:color-mix(in srgb,var(--color-accent),transparent 70%)!important;color:var(--color-primary)!important;background:#ffffff08!important}.wedding-site.template-luxe .section--dark .rsvp__phone-row .rsvp__phone-picker>button span{color:var(--color-primary)}.wedding-site.template-luxe .rsvp__button{width:auto;color:var(--color-primary);font-family:var(--font-sans);letter-spacing:.25em;text-transform:uppercase;border:1px solid var(--color-accent);cursor:pointer;background:0 0;margin:2rem auto 0;padding:.9rem 3.5rem;font-size:.72rem;font-weight:400;transition:all .4s;display:block}.wedding-site.template-luxe .rsvp__button:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .rsvp__button:disabled{opacity:.4;cursor:not-allowed}.wedding-site.template-luxe .rsvp__button--outline{color:var(--color-primary);border:1px solid color-mix(in srgb,var(--color-accent),transparent 50%);background:0 0;margin-top:1.5rem;margin-bottom:1.5rem;font-weight:400}.wedding-site.template-luxe .rsvp__button--outline:hover{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .rsvp__allergy-btn{font-family:var(--font-sans);letter-spacing:.04em;cursor:pointer;color:var(--color-primary);border:1px solid color-mix(in srgb,var(--color-accent),transparent 60%);background:0 0;border-radius:0;padding:.45rem .85rem;font-size:.75rem;font-weight:400;transition:all .2s}.wedding-site.template-luxe .rsvp__allergy-btn:hover{border-color:var(--color-accent)}.wedding-site.template-luxe .rsvp__allergy-btn--active{background:var(--color-accent);color:var(--color-dark);border-color:var(--color-accent)}.wedding-site.template-luxe .rsvp__success{border:1px solid color-mix(in srgb,var(--color-accent),transparent 60%);background:#ffffff08;padding:3rem 2rem}.wedding-site.template-luxe .rsvp__success-title{font-family:var(--font-script);color:var(--color-primary);margin-bottom:.5rem;font-size:clamp(2.2rem,5vw,3.2rem)}.wedding-site.template-luxe .rsvp__success-text{font-family:var(--font-serif);color:var(--color-primary);opacity:.6;margin-bottom:.5rem;font-size:1rem;font-style:italic;font-weight:300}.wedding-site.template-luxe .rsvp__calendar-option{width:100%;font-family:var(--font-sans);letter-spacing:.05em;color:var(--color-primary);border:none;border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 85%);text-align:left;cursor:pointer;background:0 0;padding:.6rem 1rem;font-size:.75rem;font-weight:400;transition:background .2s;display:block}.wedding-site.template-luxe .rsvp__calendar-option:last-child{border-bottom:none}.wedding-site.template-luxe .rsvp__calendar-option:hover{background:#ffffff0d}.wedding-site.template-luxe .section--dark .rsvp__calendar-option{color:var(--color-primary);border-bottom-color:color-mix(in srgb,var(--color-accent),transparent 85%)}.wedding-site.template-luxe .section--dark .rsvp__calendar-option:hover{background:#ffffff0d}.wedding-site.template-luxe .rsvp__error{color:#e74c3c;margin-top:1rem;font-size:.85rem;font-style:italic}.wedding-site.template-luxe .details-split{grid-template-columns:1fr 1fr;gap:clamp(3rem,6vw,5rem);max-width:960px;margin:3rem auto 0;display:grid}.wedding-site.template-luxe .details-split-layout{grid-template-columns:1.2fr .8fr;align-items:start;gap:4rem;display:grid}.wedding-site.template-luxe .details-split__venues{gap:2rem;display:grid}.wedding-site.template-luxe .details-split__venues .info-card{text-align:left}.wedding-site.template-luxe .details-split__venues .info-card__map{height:150px}.wedding-site.template-luxe .details-minimal{flex-direction:column;gap:2.5rem;max-width:700px;margin:0 auto;display:flex}.wedding-site.template-luxe .details-minimal__item{text-align:center;border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 85%);flex-direction:column;align-items:center;padding-bottom:2.5rem;display:flex}.wedding-site.template-luxe .details-minimal__item:last-child{border-bottom:none}.wedding-site.template-luxe .details-minimal__label{font-family:var(--font-sans);letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);opacity:.6;margin-bottom:.75rem;font-size:.7rem;font-weight:500}.wedding-site.template-luxe .details-minimal__main{align-items:baseline;gap:1rem;margin-bottom:.5rem;display:flex}.wedding-site.template-luxe .details-minimal__name{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;font-size:1.5rem;font-weight:300}.wedding-site.template-luxe .details-minimal__time{font-family:var(--font-serif);color:var(--color-primary);opacity:.5;font-size:1.1rem;font-style:italic}.wedding-site.template-luxe .details-minimal__address{color:var(--color-primary);opacity:.5;font-size:.95rem}.wedding-site.template-luxe .details-minimal__info{text-align:center;max-width:600px;margin-top:4rem;margin-left:auto;margin-right:auto}.wedding-site.template-luxe .info-block__note{text-align:center;opacity:.6;color:var(--color-primary);margin-top:2.5rem;font-style:italic}.wedding-site.template-luxe .venue-info__heading{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;margin-bottom:.75rem;font-size:1.3rem;font-weight:300}.wedding-site.template-luxe .venue-info__subheading{font-family:var(--font-sans);letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);opacity:.6;margin-top:1.75rem;margin-bottom:.5rem;font-size:.76rem;font-weight:500}.wedding-site.template-luxe .venue-info__subheading:first-child{margin-top:0}.wedding-site.template-luxe .venue-info__text{color:var(--color-primary);opacity:.6;font-size:.94rem;line-height:1.9}.wedding-site.template-luxe .venue-info__address{font-family:var(--font-sans);color:var(--color-primary);opacity:.5;margin-top:.25rem;font-size:.78rem;font-style:italic}.wedding-site.template-luxe .menu-section{text-align:center;max-width:700px;margin:0 auto}.wedding-site.template-luxe .menu__heading{font-family:var(--font-script);color:var(--color-primary);margin-bottom:clamp(2rem,4vw,3rem);font-size:clamp(2.2rem,5vw,3.2rem)}.wedding-site.template-luxe .menu__item{border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 80%);margin-bottom:2rem;padding-bottom:2rem}.wedding-site.template-luxe .menu__item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.wedding-site.template-luxe .menu__item-name{font-family:var(--font-sans);letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.6rem;font-size:.78rem;font-weight:500}.wedding-site.template-luxe .menu__item-desc{font-family:var(--font-serif);color:var(--color-primary);opacity:.6;font-size:1rem;font-weight:300;line-height:1.8}.wedding-site.template-luxe .menu__category{margin-bottom:3rem}.wedding-site.template-luxe .menu__category:last-child{margin-bottom:0}.wedding-site.template-luxe .menu__category-name{font-family:var(--font-serif);letter-spacing:.18em;text-transform:uppercase;color:var(--color-primary);border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 70%);margin-bottom:1.5rem;padding-bottom:.75rem;font-size:clamp(1.1rem,2.5vw,1.4rem);font-weight:300}.wedding-site.template-luxe .menu__note{font-family:var(--font-serif);color:var(--color-primary);opacity:.5;margin-top:3rem;font-size:.95rem;font-style:italic}.wedding-site.template-luxe .explore-grid{grid-template-columns:1fr 1fr;gap:3rem;max-width:900px;margin:0 auto;display:grid}.wedding-site.template-luxe .explore-col__heading{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;margin-bottom:1.25rem;font-size:1.3rem;font-weight:300}.wedding-site.template-luxe .explore-col__list{padding:0;list-style:none}.wedding-site.template-luxe .explore-col__list li{color:var(--color-primary);opacity:.6;padding:.4rem 0 .4rem 1.25rem;font-size:.95rem;line-height:1.7;position:relative}.wedding-site.template-luxe .explore-col__list li:before{content:"";background:var(--color-accent);opacity:.4;border-radius:0;width:4px;height:4px;position:absolute;top:50%;left:0;transform:translateY(-50%)rotate(45deg)}.wedding-site.template-luxe .explore-col__list a{color:var(--color-primary);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,var(--color-accent),transparent 60%);text-decoration-color:color-mix(in srgb,var(--color-accent),transparent 60%);transition:text-decoration-color .3s}.wedding-site.template-luxe .explore-col__list a:hover{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);opacity:1}.wedding-site.template-luxe .explore-col__subheading{font-family:var(--font-sans);letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);opacity:.6;margin-top:2rem;margin-bottom:.75rem;font-size:.74rem;font-weight:500}.wedding-site.template-luxe .gallery-float{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1000px;margin:0 auto;display:grid}.wedding-site.template-luxe .gallery-float__img-wrap{aspect-ratio:3/4;width:100%;transition:transform .5s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden;box-shadow:0 10px 40px #0000004d}.wedding-site.template-luxe .gallery-float__img-wrap:after{content:"";opacity:0;z-index:1;background:linear-gradient(#0000 60%,#0006 100%);transition:opacity .4s;position:absolute;inset:0}.wedding-site.template-luxe .gallery-float__img-wrap:hover{transform:scale(1.03);box-shadow:0 20px 60px #00000080}.wedding-site.template-luxe .gallery-float__img-wrap:hover:after{opacity:1}.wedding-site.template-luxe .gallery-float__img{object-fit:cover;filter:contrast(1.05)brightness(.92);width:100%;height:100%;transition:filter .4s}.wedding-site.template-luxe .gallery-float__img-wrap:hover .gallery-float__img{filter:contrast(1.1)brightness(.95)}.wedding-site.template-luxe .info-card__map{filter:grayscale(.8)brightness(.7)contrast(1.2);border:0;width:100%;height:200px;margin-top:1.25rem;transition:filter .4s}.wedding-site.template-luxe .info-card__map:hover{filter:grayscale(.3)brightness(.85)}.wedding-site.template-luxe .hotels-grid{grid-template-columns:1fr 1fr;gap:2rem;max-width:900px;margin:0 auto;display:grid}.wedding-site.template-luxe .hotel-card,.wedding-site.template-luxe .explore-card{border:1px solid color-mix(in srgb,var(--color-accent),transparent 75%);background:#ffffff05;border-radius:0;padding:2.25rem 2rem;transition:all .4s cubic-bezier(.165,.84,.44,1);position:relative}.wedding-site.template-luxe .hotel-card:hover,.wedding-site.template-luxe .explore-card:hover{border-color:var(--color-accent);background:#ffffff0d;transform:translateY(-6px);box-shadow:0 12px 40px #0006}.wedding-site.template-luxe .hotel-card__badge{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--color-dark);background:var(--color-accent);margin-bottom:1rem;padding:.3rem .75rem;font-size:.7rem;font-weight:500;display:inline-block}.wedding-site.template-luxe .hotel-card__name{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;margin-bottom:.4rem;font-size:1.3rem;font-weight:300}.wedding-site.template-luxe .hotel-card__distance{font-family:var(--font-sans);letter-spacing:.15em;color:var(--color-accent);opacity:.5;margin-bottom:1rem;font-size:.78rem;font-weight:400}.wedding-site.template-luxe .hotel-card__desc{color:var(--color-primary);opacity:.6;overflow-wrap:break-word;word-break:break-word;margin-bottom:1.5rem;font-size:.94rem;line-height:1.8}.wedding-site.template-luxe .hotel-card__desc a{color:var(--color-accent);text-underline-offset:2px;text-decoration:underline}.wedding-site.template-luxe .hotel-card__discount{font-family:var(--font-sans);letter-spacing:.15em;color:var(--color-primary);border:1px dashed color-mix(in srgb,var(--color-accent),transparent 50%);background:#ffffff08;margin-bottom:1.25rem;padding:.5rem 1rem;font-size:.72rem;font-weight:500;display:inline-block}.wedding-site.template-luxe .hotel-card__discount-label{opacity:.5;text-transform:uppercase;letter-spacing:.2em;margin-bottom:.2rem;font-size:.65rem;display:block}.wedding-site.template-luxe .hotel-card__discount-code{letter-spacing:.25em;color:var(--color-accent);font-size:.85rem}.wedding-site.template-luxe .hotel-card__note{border-left:2px solid var(--color-accent);max-width:900px;font-family:var(--font-serif);color:var(--color-primary);opacity:.7;white-space:pre-line;background:#ffffff08;border-radius:0;margin:0 auto 2.5rem;padding:1.25rem 1.5rem;font-size:.92rem;line-height:1.7}.wedding-site.template-luxe .hotel-card__link{font-family:var(--font-sans);letter-spacing:.25em;text-transform:uppercase;color:var(--color-primary);border:1px solid color-mix(in srgb,var(--color-accent),transparent 40%);background:0 0;padding:.6rem 1.4rem;font-size:.68rem;font-weight:400;transition:all .3s;display:inline-block}.wedding-site.template-luxe .hotel-card__link:hover{background:var(--color-accent);color:var(--color-dark);border-color:var(--color-accent)}.wedding-site.template-luxe .hotel-card__link--dropdown{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.wedding-site.template-luxe .hotel-card__dropdown{background:var(--color-dark);border:1px solid var(--color-accent);flex-direction:column;margin-bottom:4px;display:flex;position:absolute;bottom:100%;left:0;right:0}.wedding-site.template-luxe .hotel-card__dropdown-item{font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:var(--color-primary);text-align:center;white-space:nowrap;text-overflow:ellipsis;padding:.65rem 1rem;font-size:.72rem;font-weight:400;text-decoration:none;transition:background .2s;overflow:hidden}.wedding-site.template-luxe .hotel-card__dropdown-item:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .hotel-card__dropdown-item+.hotel-card__dropdown-item{border-top:1px solid color-mix(in srgb,var(--color-accent),transparent 70%)}.wedding-site.template-luxe .gift-section{text-align:center;max-width:620px;margin:0 auto}.wedding-site.template-luxe .gift__heading{font-family:var(--font-script);color:var(--color-primary);margin-bottom:.5rem;font-size:clamp(2.2rem,5vw,3.2rem)}.wedding-site.template-luxe .gift__subheading{font-family:var(--font-serif);color:var(--color-primary);opacity:.6;margin-bottom:2.5rem;font-size:clamp(1rem,2vw,1.15rem);font-weight:300;line-height:1.8}.wedding-site.template-luxe .gift__btns-wrap{flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-bottom:2rem;display:flex}.wedding-site.template-luxe .gift__dropdown-wrap{justify-content:center;margin:2rem 0;display:flex}.wedding-site.template-luxe .gift__dropdown{width:100%;max-width:400px;display:inline-block;position:relative}.wedding-site.template-luxe .gift__dropdown-toggle{width:100%;color:var(--color-primary);border:1px solid var(--color-accent);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.2em;cursor:pointer;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;font-size:.8rem;font-weight:400;transition:all .3s;display:flex}.wedding-site.template-luxe .gift__dropdown-toggle:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .gift__dropdown-toggle svg{transition:transform .3s}.wedding-site.template-luxe .gift__dropdown-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.wedding-site.template-luxe .gift__dropdown-menu{background:var(--color-dark);border:1px solid var(--color-accent);z-index:9999;opacity:0;visibility:hidden;text-align:left;border-radius:0;margin-top:.5rem;padding:.5rem;transition:all .3s;position:absolute;top:100%;left:0;right:0;transform:translateY(-10px);box-shadow:0 20px 60px #00000080}.wedding-site.template-luxe .gift__dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0)}.wedding-site.template-luxe .gift__dropdown-item{text-align:left;width:100%;color:var(--color-primary);border-radius:0;padding:1rem;text-decoration:none;transition:background .2s;display:block}.wedding-site.template-luxe .gift__dropdown-item--link{border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 85%);align-items:center;gap:.75rem;font-size:.9rem;font-weight:500;display:flex}.wedding-site.template-luxe .gift__dropdown-item--link:hover{background:#ffffff0d}.wedding-site.template-luxe .gift__dropdown-item--bank{background:#ffffff05;margin-top:.5rem}.wedding-site.template-luxe .gift__bank-header{text-transform:uppercase;letter-spacing:.05em;color:var(--color-accent);align-items:center;gap:.75rem;margin-bottom:.75rem;font-size:.75rem;font-weight:600;display:flex}.wedding-site.template-luxe .gift__item-icon{width:28px;height:28px;color:var(--color-accent);box-shadow:none;background:#ffffff0d;border-radius:0;justify-content:center;align-items:center;display:flex}.wedding-site.template-luxe .gift__bank-details-mini{flex-direction:column;gap:.4rem;display:flex}.wedding-site.template-luxe .gift__mini-row{align-items:flex-start;gap:.75rem;font-size:.85rem;line-height:1.4;display:flex}.wedding-site.template-luxe .gift__mini-row span{text-transform:uppercase;letter-spacing:.05em;opacity:.4;flex-shrink:0;width:75px;padding-top:.15rem;font-size:.65rem;font-weight:600}.wedding-site.template-luxe .gift__mini-row strong{word-break:break-all;font-weight:500}.wedding-site.template-luxe .bank-copy-btn{border:1px solid color-mix(in srgb,var(--color-accent),transparent 60%);font-size:.65rem;font-weight:500;font-family:var(--font-sans);color:var(--color-primary);text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;margin-left:auto;padding:.2rem .5rem;transition:all .2s}.wedding-site.template-luxe .bank-copy-btn:hover{background:var(--color-accent);color:var(--color-dark);border-color:var(--color-accent)}.wedding-site.template-luxe .gift__cta-btn{color:var(--color-primary);font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--color-accent);cursor:pointer;background:0 0;align-items:center;gap:.75rem;padding:1rem 2.5rem;font-size:.8rem;font-weight:400;text-decoration:none;transition:all .3s;display:inline-flex}.wedding-site.template-luxe .gift__cta-btn:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .gift__cta-btn:active{transform:scale(.98)}.wedding-site.template-luxe .gift__cta-btn svg{width:22px;height:22px}.wedding-site.template-luxe .gift__divider{color:var(--color-primary);opacity:.2;font-family:var(--font-sans);letter-spacing:.25em;text-transform:uppercase;justify-content:center;align-items:center;margin:3rem 0;font-size:.7rem;font-weight:400;display:flex}.wedding-site.template-luxe .gift__divider:before,.wedding-site.template-luxe .gift__divider:after{content:"";background:var(--color-accent);opacity:.3;flex:1;max-width:100px;height:1px;margin:0 1.5rem}.wedding-site.template-luxe .gift__note{font-family:var(--font-serif);color:var(--color-primary);opacity:.5;margin-top:3rem;font-size:.95rem;font-style:italic}.wedding-site.template-luxe .gift-contrib{text-align:left;max-width:560px;margin:3rem auto 0}.wedding-site.template-luxe .gift-contrib__grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:2rem;margin-top:2rem;display:grid}.wedding-site.template-luxe .gift-contrib__card{border:1px solid color-mix(in srgb,var(--color-accent),transparent 75%);text-align:center;cursor:pointer;background:#ffffff05;border-radius:0;flex-direction:column;align-items:center;padding:1.5rem;transition:all .3s;display:flex}.wedding-site.template-luxe .gift-contrib__card:hover{border-color:var(--color-accent);background:#ffffff0d;transform:translateY(-4px);box-shadow:0 10px 40px #0006}.wedding-site.template-luxe .gift-contrib__card-img{aspect-ratio:1;background:#ffffff08;width:100%;margin-bottom:1.25rem;overflow:hidden}.wedding-site.template-luxe .gift-contrib__card-img img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.wedding-site.template-luxe .gift-contrib__card:hover .gift-contrib__card-img img{transform:scale(1.05)}.wedding-site.template-luxe .gift-contrib__card-name{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.05em;margin-bottom:.5rem;font-size:1.15rem;font-weight:300}.wedding-site.template-luxe .gift-contrib__card-desc{opacity:.5;color:var(--color-primary);margin-bottom:1rem;font-size:.85rem;line-height:1.6}.wedding-site.template-luxe .gift-contrib__card-amount{font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);background:#ffffff0a;border-radius:0;margin-top:auto;padding:.4rem 1rem;font-size:.75rem;font-weight:600}.wedding-site.template-luxe .gift-contrib__card--general{background:0 0;border-style:dashed;justify-content:center}.wedding-site.template-luxe .gift-contrib__back{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.2em;color:var(--color-primary);opacity:.4;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.7rem;font-weight:400;transition:opacity .3s;display:flex}.wedding-site.template-luxe .gift-contrib__back:hover{opacity:1}.wedding-site.template-luxe .gift-contrib__selected{text-align:center;margin-bottom:2.5rem}.wedding-site.template-luxe .gift-contrib__selected h4{font-family:var(--font-serif);color:var(--color-primary);font-size:1.8rem;font-style:italic;font-weight:300}.wedding-site.template-luxe .gift-contrib__form{text-align:left;max-width:560px;margin:0 auto}.wedding-site.template-luxe .gift-contrib__field{margin-bottom:1rem}.wedding-site.template-luxe .gift-contrib__field--centered{text-align:center}.wedding-site.template-luxe .gift-contrib__input--narrow{text-align:left;max-width:75%;margin:0 auto;display:block}.wedding-site.template-luxe .gift-contrib__amount-row{align-items:stretch;gap:0;max-width:50%;margin:0 auto;display:flex}.wedding-site.template-luxe .gift-contrib__label{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--color-primary);opacity:.5;margin-bottom:.6rem;font-size:.7rem;font-weight:500;display:block}.wedding-site.template-luxe .gift-contrib__input,.wedding-site.template-luxe .gift-contrib__select,.wedding-site.template-luxe .gift-contrib__textarea{width:100%;font-family:var(--font-serif);border:1px solid color-mix(in srgb,var(--color-accent),transparent 70%);color:var(--color-primary);background:#ffffff0a;border-radius:0;padding:.6rem .85rem;font-size:.9rem;transition:border-color .3s}.wedding-site.template-luxe .gift-contrib__select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23ccc' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:12px;padding-right:2.5rem}.wedding-site.template-luxe .gift-contrib__input:focus,.wedding-site.template-luxe .gift-contrib__select:focus,.wedding-site.template-luxe .gift-contrib__textarea:focus{border-color:var(--color-accent);outline:none}.wedding-site.template-luxe .gift-contrib__btn{width:auto;color:var(--color-primary);font-family:var(--font-sans);letter-spacing:.25em;text-transform:uppercase;border:1px solid var(--color-accent);cursor:pointer;background:0 0;margin:2rem auto 0;padding:.9rem 3.5rem;font-size:.72rem;font-weight:400;transition:all .4s;display:block}.wedding-site.template-luxe .gift-contrib__btn:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .gift-contrib__btn:disabled{opacity:.4;cursor:not-allowed}.wedding-site.template-luxe .gift-contrib__btn--outline{color:var(--color-primary);border:1px solid color-mix(in srgb,var(--color-accent),transparent 50%);background:0 0}.wedding-site.template-luxe .gift-contrib__btn--outline:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .gift-contrib__success{text-align:center;border:1px solid color-mix(in srgb,var(--color-accent),transparent 50%);background:#ffffff08;padding:4rem 2rem}.wedding-site.template-luxe .gift-contrib__success-title{font-family:var(--font-script);color:var(--color-primary);margin-bottom:.5rem;font-size:3rem}.wedding-site.template-luxe .gift-contrib__success-text{font-family:var(--font-serif);opacity:.6;color:var(--color-primary);font-size:1.1rem;font-style:italic}.wedding-site.template-luxe .gift-contrib__error{color:#e74c3c;text-align:center;margin-top:1rem;font-size:.85rem;font-style:italic}.wedding-site.template-luxe .gift-contrib__currency-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.wedding-site.template-luxe .gift-contrib__currency-btn{border:1px solid color-mix(in srgb,var(--color-accent),transparent 70%);color:var(--color-primary);cursor:pointer;letter-spacing:.05em;background:0 0;padding:.35rem;font-family:inherit;font-size:.65rem;font-weight:600;transition:all .2s}.wedding-site.template-luxe .gift-contrib__currency-btn:hover{border-color:var(--color-accent)}.wedding-site.template-luxe .gift-contrib__currency-btn--active{background:var(--color-accent);color:var(--color-dark);border-color:var(--color-accent)}.wedding-site.template-luxe .section--dark .gift-contrib__currency-btn{border-color:color-mix(in srgb,var(--color-accent),transparent 70%);color:var(--color-primary)}.wedding-site.template-luxe .section--dark .gift-contrib__currency-btn:hover{border-color:var(--color-accent)}.wedding-site.template-luxe .section--dark .gift-contrib__currency-btn--active{background:var(--color-accent);color:var(--color-dark);border-color:var(--color-accent)}.wedding-site.template-luxe .section--dark .gift-contrib__card{border-color:color-mix(in srgb,var(--color-accent),transparent 75%);background:#ffffff05}.wedding-site.template-luxe .section--dark .gift-contrib__card:hover{border-color:var(--color-accent);background:#ffffff0d}.wedding-site.template-luxe .section--dark .gift-contrib__card-name,.wedding-site.template-luxe .section--dark .gift-contrib__selected h4,.wedding-site.template-luxe .section--dark .gift-contrib__success-title,.wedding-site.template-luxe .section--dark .gift-contrib__card-desc,.wedding-site.template-luxe .section--dark .gift-contrib__success-text,.wedding-site.template-luxe .section--dark .gift-contrib__back,.wedding-site.template-luxe .section--dark .gift-contrib__label{color:var(--color-primary)}.wedding-site.template-luxe .section--dark .gift-contrib__card-amount{color:var(--color-accent);background:#ffffff0a}.wedding-site.template-luxe .section--dark .gift-contrib__input,.wedding-site.template-luxe .section--dark .gift-contrib__select,.wedding-site.template-luxe .section--dark .gift-contrib__textarea{border-color:color-mix(in srgb,var(--color-accent),transparent 70%);color:var(--color-primary);background:#ffffff0a}.wedding-site.template-luxe .section--dark .gift-contrib__input::placeholder,.wedding-site.template-luxe .section--dark .gift-contrib__textarea::placeholder{color:color-mix(in srgb,var(--color-primary),transparent 60%)}.wedding-site.template-luxe .section--dark .gift-contrib__input:focus,.wedding-site.template-luxe .section--dark .gift-contrib__select:focus,.wedding-site.template-luxe .section--dark .gift-contrib__textarea:focus{border-color:var(--color-accent)}.wedding-site.template-luxe .section--dark .gift-contrib__btn{color:var(--color-primary);border-color:var(--color-accent);background:0 0}.wedding-site.template-luxe .section--dark .gift-contrib__btn:hover{background:var(--color-accent);color:var(--color-dark)}.wedding-site.template-luxe .contact-section{text-align:center;max-width:620px;margin:0 auto}.wedding-site.template-luxe .contact__heading{font-family:var(--font-script);color:var(--color-primary);margin-bottom:.5rem;font-size:clamp(2.2rem,5vw,3.2rem)}.wedding-site.template-luxe .contact__subheading{font-family:var(--font-serif);color:var(--color-primary);opacity:.5;margin-bottom:2rem;font-size:1rem;font-weight:300}.wedding-site.template-luxe .contact__entries{flex-wrap:wrap;justify-content:center;gap:2rem;display:flex}.wedding-site.template-luxe .contact__entry{font-family:var(--font-sans);color:var(--color-primary);font-size:.85rem}.wedding-site.template-luxe .contact__entry a{color:var(--color-primary);border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 60%);padding-bottom:1px;transition:border-color .3s}.wedding-site.template-luxe .contact__entry a:hover{border-color:var(--color-accent);opacity:1}.wedding-site.template-luxe .contact__phone-wrap{flex-direction:column;align-items:center;margin-top:.5rem;display:flex}.wedding-site.template-luxe .contact__phone-number{border-bottom:1px solid color-mix(in srgb,var(--color-accent),transparent 60%)}.wedding-site.template-luxe .contact__phone-actions{gap:.75rem;margin-top:.6rem;display:flex}.wedding-site.template-luxe .contact__phone-action{width:24px;height:24px;color:var(--color-primary);border:1px solid color-mix(in srgb,var(--color-accent),transparent 70%);background:#ffffff0a;border-radius:0;justify-content:center;align-items:center;transition:all .3s;display:flex}.wedding-site.template-luxe .contact__phone-action:hover{background:var(--color-accent);color:var(--color-dark);opacity:1}.wedding-site.template-luxe .section--has-bg.section--light-text .contact__phone-action{color:#fff;background:#ffffff14;border-color:#ffffff40}.wedding-site.template-luxe .section--has-bg.section--light-text .contact__phone-action:hover{color:var(--color-dark);background:#fff}.wedding-site.template-luxe .contact__phone-actions--footer{justify-content:center;gap:.5rem;margin-top:.75rem}.wedding-site.template-luxe .contact__phone-actions--footer .contact__phone-action{text-transform:uppercase;letter-spacing:.15em;background:#ffffff08;border-radius:0;width:auto;height:auto;font-size:.55rem;font-weight:500;border:1px solid color-mix(in srgb,var(--color-accent),transparent 80%)!important;padding:.25rem .6rem!important}.wedding-site.template-luxe .contact__phone-actions--footer .contact__phone-action:hover{background:var(--color-accent);color:var(--color-dark)!important}.wedding-site.template-luxe .section--has-bg.section--light-text .contact__phone-actions--footer .contact__phone-action{background:#ffffff0d;color:#fff!important;border-color:#ffffff26!important}.wedding-site.template-luxe .section--has-bg.section--light-text .contact__phone-actions--footer .contact__phone-action:hover{background:#fff;color:var(--color-dark)!important}.wedding-site.template-luxe .footer{text-align:center;padding:5rem 2rem 3rem}.wedding-site.template-luxe .footer__names{font-family:var(--font-script);color:var(--color-primary);margin-bottom:.75rem;font-size:clamp(2rem,5vw,3rem)}.wedding-site.template-luxe .footer__date{font-family:var(--font-serif);letter-spacing:.15em;color:var(--color-primary);opacity:.5;margin-bottom:2rem;font-size:.95rem;font-weight:300}.wedding-site.template-luxe .footer__line{background:var(--color-accent);opacity:.3;width:40px;height:1px;box-shadow:0 0 6px color-mix(in srgb,var(--color-accent),transparent 60%);margin:0 auto 2rem}.wedding-site.template-luxe .footer__contact{color:var(--color-primary);opacity:.5;margin-bottom:.5rem;font-size:.78rem}.wedding-site.template-luxe .footer__contact a{text-underline-offset:2px;text-decoration:underline}.wedding-site.template-luxe .footer__copy{color:var(--color-primary);opacity:.2;letter-spacing:.15em;margin-top:2rem;font-size:.76rem}.wedding-site.template-luxe .section--dark .footer__names,.wedding-site.template-luxe .section--dark .footer__date,.wedding-site.template-luxe .section--dark .footer__contact,.wedding-site.template-luxe .section--dark .footer__contact a,.wedding-site.template-luxe .section--dark .footer__copy{color:var(--color-primary)}.wedding-site.template-luxe .section--dark .footer__line{background:var(--color-accent)}.wedding-site.template-luxe .section--accent .footer__names,.wedding-site.template-luxe .section--accent .footer__date,.wedding-site.template-luxe .section--accent .footer__contact,.wedding-site.template-luxe .section--accent .footer__contact a,.wedding-site.template-luxe .section--accent .footer__copy{color:var(--color-primary)}.wedding-site.template-luxe .section--accent .footer__line{background:var(--color-accent)}.wedding-site.template-luxe .section--has-bg.section--light-text .footer__names{color:#fff}.wedding-site.template-luxe .section--has-bg.section--light-text .footer__date,.wedding-site.template-luxe .section--has-bg.section--light-text .footer__contact,.wedding-site.template-luxe .section--has-bg.section--light-text .footer__contact a,.wedding-site.template-luxe .section--has-bg.section--light-text .footer__copy{color:#ffffffb3}.wedding-site.template-luxe .section--has-bg.section--light-text .footer__line{background:#fff}.wedding-site.template-luxe .footer__brand-line{background:var(--color-primary);opacity:.1;width:40px;height:1px;margin:1.5rem auto 1.25rem}.wedding-site.template-luxe .section--dark .footer__brand-line,.wedding-site.template-luxe .section--accent .footer__brand-line{background:var(--color-primary)}.wedding-site.template-luxe .footer__brand{font-family:var(--brand-serif);color:var(--color-primary);opacity:.15;letter-spacing:.05em;font-size:clamp(1.1rem,3vw,1.5rem);font-style:italic;font-weight:900;text-decoration:none;transition:opacity .2s;display:block}.wedding-site.template-luxe .footer__brand:hover{opacity:.4}.wedding-site.template-luxe .section--dark .footer__brand,.wedding-site.template-luxe .section--accent .footer__brand{color:var(--color-primary)}.wedding-site.template-luxe .lightbox{z-index:9999;cursor:zoom-out;background:#000000f2;justify-content:center;align-items:center;padding:2rem;display:none;position:fixed;inset:0}.wedding-site.template-luxe .lightbox.open{display:flex}.wedding-site.template-luxe .lightbox__img{object-fit:contain;max-width:90vw;max-height:90vh;animation:.3s lightboxIn}.wedding-site.template-luxe .lightbox__close{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;transition:border-color .3s;display:flex;position:absolute;top:1.5rem;right:1.5rem}.wedding-site.template-luxe .lightbox__close:hover{border-color:#fff}.wedding-site.template-luxe .lightbox__nav{color:#fff;cursor:pointer;z-index:10;background:0 0;border:1px solid #fff3;border-radius:0;justify-content:center;align-items:center;width:48px;height:48px;padding:0;font-size:2.5rem;line-height:1;transition:border-color .3s,background .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.wedding-site.template-luxe .lightbox__nav:hover{background:#ffffff14;border-color:#fff}.wedding-site.template-luxe .lightbox__nav--prev{left:1.5rem}.wedding-site.template-luxe .lightbox__nav--next{right:1.5rem}.wedding-site.template-luxe .lightbox__counter{color:#ffffff80;font-family:var(--font-sans,sans-serif);letter-spacing:.2em;font-size:.85rem;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.wedding-site.template-luxe img[data-zoomable]{cursor:zoom-in}@media (max-width:768px){.wedding-site.template-luxe .nav__links{background:var(--color-dark);flex-direction:column;justify-content:center;gap:1.25rem;width:75%;max-width:300px;height:100vh;padding:5rem 2rem 2rem;transition:right .4s;position:fixed;top:0;right:-100%;overflow-y:auto;box-shadow:-10px 0 50px #0000004d}.wedding-site.template-luxe .nav__links .nav__link{color:var(--color-primary);text-shadow:none}.wedding-site.template-luxe .nav__links.open{right:0}.wedding-site.template-luxe .nav__toggle{display:block;position:absolute;right:1.5rem}.wedding-site.template-luxe .nav__wwym{font-size:clamp(1.1rem,3vw,1.5rem);position:absolute;left:1.5rem}.wedding-site.template-luxe .nav.scrolled .nav__wwym{color:var(--color-primary);text-shadow:none;opacity:.15}.wedding-site.template-luxe .nav__brand{font-size:1.3rem}.wedding-site.template-luxe .story{grid-template-columns:1fr;gap:2.5rem}.wedding-site.template-luxe .story__img{aspect-ratio:4/3;order:-1}.wedding-site.template-luxe .info-grid{grid-template-columns:1fr;gap:1.5rem}.wedding-site.template-luxe .gallery{grid-template-columns:1fr;gap:.75rem}.wedding-site.template-luxe .gallery__hero,.wedding-site.template-luxe .gallery__thumb{aspect-ratio:16/9}.wedding-site.template-luxe .details-split{grid-template-columns:1fr;gap:2.5rem}.wedding-site.template-luxe .details-split-layout{grid-template-columns:1fr;gap:2rem}.wedding-site.template-luxe .explore-grid{grid-template-columns:1fr;gap:2.5rem}.wedding-site.template-luxe .gallery-float{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.wedding-site.template-luxe .hotels-grid{grid-template-columns:1fr}.wedding-site.template-luxe .timeline__item{grid-template-columns:75px 1px 1fr;gap:1.25rem}.wedding-site.template-luxe .hero__countdown{gap:1.25rem}.wedding-site.template-luxe .rsvp__input--narrow,.wedding-site.template-luxe .gift-contrib__input--narrow,.wedding-site.template-luxe .rsvp__phone-row--narrow,.wedding-site.template-luxe .gift-contrib__amount-row{max-width:100%}.wedding-site.template-luxe .rsvp__field--centered,.wedding-site.template-luxe .gift-contrib__field--centered{text-align:left}.wedding-site.template-luxe .rsvp__row{grid-template-columns:1fr}}@media (max-width:480px){.wedding-site.template-luxe .hero__countdown{gap:.75rem}.wedding-site.template-luxe .countdown__number{font-size:1.4rem}.wedding-site.template-luxe .nav__links{width:100%;max-width:none}}.wedding-site.template-luxe [data-editable]{cursor:text;outline-offset:4px;border-radius:0;outline:1.5px dashed #0000;transition:outline .15s,background .15s}.wedding-site.template-luxe [data-editable]:hover{outline-color:var(--color-accent)}.wedding-site.template-luxe [data-editable]:focus{outline-color:var(--color-accent);background:color-mix(in srgb,var(--color-dark)80%,transparent);outline-style:solid}
