.introduction{padding:1.25rem 0;overflow:visible;position:relative}.intro-content{max-width:56.25rem;margin:0 auto;width:100%;box-sizing:border-box}.intro-section{margin-bottom:4rem}.intro-section h2{font-size:5rem;text-align:center;margin-bottom:2rem;color:var(--secondary-color);font-family:Great Vibes,cursive;font-weight:400;line-height:1.1}.intro-section p{font-size:1.05rem;line-height:1.95;margin-bottom:1.25rem;color:var(--text-color)}.couple-intro{display:grid;grid-template-columns:repeat(auto-fit,minmax(18.75rem,1fr));gap:2.5rem;margin-top:8rem;padding-top:4.5rem;width:100%;max-width:100%}@media (max-width: 20rem){.couple-intro{grid-template-columns:1fr}}.couple-card{background:linear-gradient(160deg,#fff,#fdfaf3 60%,#faf5ec);padding:5rem 1.875rem 3.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #5a28050f,0 8px 32px #5a28051a,0 20px 60px #5a280512;text-align:center;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s ease;position:relative;overflow:visible;min-height:31.25rem;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid rgba(196,144,112,.18)}.couple-card:before{content:"";position:absolute;top:12.5rem;left:2rem;right:2rem;width:calc(100% - 4rem);height:1px;background:linear-gradient(to right,transparent,var(--gold),var(--gold-light),var(--gold),transparent);z-index:15}.couple-card:hover{transform:translateY(-8px);box-shadow:0 2px 4px #5a28050a,0 16px 48px #5a280524,0 32px 80px #5a280517}.couple-image-3d{position:absolute;top:-11.25rem;left:50%;transform:translate(-50%);width:23.75rem;height:23.75rem;z-index:10}.couple-image-3d img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(90,40,5,.2));will-change:filter}.couple-info{position:relative;z-index:1;margin-top:auto;padding-top:.625rem}.couple-icon{font-size:3rem;margin-bottom:1.25rem}.couple-card h3{font-size:.72rem;color:var(--secondary-color);margin-bottom:.6rem;text-transform:uppercase;letter-spacing:.25em;font-weight:600;font-family:Montserrat,sans-serif}.couple-card h4{font-size:2.1rem;color:var(--secondary-color);margin-bottom:1.25rem;font-family:Cormorant Garamond,serif;font-weight:400}.couple-card p{font-size:.95rem;line-height:1.85;text-align:center;color:var(--text-color)}.groomsmen-section{margin-top:5rem;padding:4.5rem 0 3rem;position:relative;border-radius:0;width:100vw;margin-left:calc(50% - 50vw)}.groomsmen-section h2{text-align:center;margin-bottom:2.5rem;font-size:5rem;color:var(--secondary-color);font-family:Great Vibes,cursive;font-weight:400;padding:0 1rem;box-sizing:border-box;position:relative;z-index:1}.groomsmen-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.75rem;margin-top:.5rem;position:relative;z-index:1;max-width:56.25rem;margin-left:auto;margin-right:auto;padding:0 1.25rem;width:100%;box-sizing:border-box}.groomsmen-grid:before{content:"";display:none}@media (max-width: 48rem){.groomsmen-section h2{font-size:4rem}.groomsmen-grid{grid-template-columns:1fr;gap:2.5rem;padding:0 1rem;max-width:100%}.groomsmen-section{padding:3.25rem 0 2.5rem;width:100vw;margin-left:calc(50% - 50vw)}.groomsman-card{padding:2.25rem 1.5rem 2.5rem;width:calc(100% - 1.75rem)}.groomsman-card p{max-width:100%}}.groomsman-card{padding:3.25rem 3rem 3.5rem;max-width:44rem;width:calc(100% - 2.5rem);margin:0 auto;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;background:linear-gradient(160deg,#fff,#fdfaf3 60%,#faf5ec);border:1px solid rgba(196,137,58,.18);border-radius:1.5rem;box-shadow:0 2px 4px #5a28050f,0 8px 32px #5a28051a,0 20px 60px #5a280512}.groomsman-card h3{text-align:center}.grooms-names{text-align:center;font-family:Great Vibes,cursive;font-size:3rem;font-weight:400;color:var(--secondary-color);width:100%;margin:0 auto;margin-bottom:2rem;line-height:1.2}.groomsman-card p{font-size:1rem;line-height:1.85;margin-bottom:1.15rem;color:var(--text-color);text-align:left;max-width:38rem;width:100%}.groomsman-card p:last-child{margin-bottom:0}.groomsman-image{width:17rem;height:17rem;margin:0 auto 1.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;border:3px solid rgba(196,137,58,.35);overflow:hidden;padding:0;box-shadow:0 6px 20px #5a28051f,0 0 0 6px #c4893a14}.groomsman-image img{width:100%;height:100%;object-fit:cover;border-radius:50%}.groomsman-card h3{font-size:1.6rem;color:var(--secondary-color);margin-bottom:.5rem;font-weight:500;font-family:Cormorant Garamond,serif}.groomsman-role{font-size:.7rem;color:var(--secondary-color);text-transform:uppercase;letter-spacing:.22em;font-weight:700;font-family:Montserrat,sans-serif;margin-bottom:0}.location-section{margin-top:5rem}.location-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 4px 24px #5a280514,0 1px 4px #5a28050d;border:1px solid rgba(196,144,112,.16)}.location-image{width:100%;height:20rem;overflow:hidden;background:linear-gradient(135deg,#faf5ec,#f2e4cc);position:relative}@media (max-width: 48rem){.location-image{height:15rem}}.location-image-link{display:block;text-decoration:none;cursor:pointer;position:relative}.location-image-link:hover .location-image img{transform:scale(1.06)}.location-image-link:hover .location-map-badge{opacity:1;transform:translateY(0)}.location-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s ease}.location-image-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(8,2,0,.92) 0%,rgba(8,2,0,.82) 25%,rgba(8,2,0,.55) 50%,rgba(8,2,0,.18) 70%,transparent 100%);padding:3.5rem 2rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.75rem}.location-image-overlay h3{font-family:Cormorant Garamond,serif;font-size:2.1rem;color:var(--hero-text);margin:0;text-align:center;font-weight:400;letter-spacing:.04rem;text-shadow:0 2px 6px rgba(0,0,0,.9),0 4px 18px rgba(0,0,0,.6);line-height:1.3;word-break:break-word;max-width:100%;padding:0 .5rem}.location-map-badge{display:inline-flex;align-items:center;gap:.35rem;color:var(--secondary-color);font-size:.72rem;font-weight:700;padding:.52rem 1.1rem;border:1.5px solid rgba(196,137,58,.4);border-radius:var(--radius-pill);background:var(--ivory);font-family:Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.map-icon{flex-shrink:0}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.location-card-content{padding:2.25rem 2.5rem}.location-card h3{font-size:2.25rem;color:var(--secondary-color);margin-bottom:.75rem;text-align:center;line-height:1.3}.location-image-link .location-image-overlay h3{color:var(--hero-text)}.location-address{text-align:center;font-size:.82rem;color:var(--secondary-color);margin-bottom:1.5rem;font-weight:700;font-family:Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase}.location-card p{text-align:center}.location-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(12.5rem,1fr));gap:1.25rem;margin-top:1.875rem;padding-top:1.875rem;border-top:1px solid var(--accent-color)}.detail-item{text-align:center;font-size:.92rem}.detail-item strong{display:block;color:var(--secondary-color);margin-bottom:.3rem;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.location-time{font-size:1.5rem;color:var(--secondary-color);font-weight:400;text-align:center;margin-bottom:1.25rem;font-family:Cormorant Garamond,serif}.location-description{text-align:center;font-size:1rem;line-height:1.85;color:var(--text-color);margin-bottom:1.5rem}.location-details-modern{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;padding-top:1.25rem;border-top:1px solid var(--accent-color)}.detail-badge{background:var(--ivory);color:var(--secondary-color);padding:.42rem 1.1rem;border-radius:var(--radius-pill);font-size:.78rem;font-weight:600;border:1px solid var(--border-warm);font-family:Montserrat,sans-serif;letter-spacing:.05em}.location-info-box{background:linear-gradient(160deg,var(--ivory) 0%,#faf5ec 100%);padding:2.5rem;border-radius:var(--radius-lg);border:1.5px dashed rgba(196,137,58,.4);display:flex;gap:1.5rem;align-items:flex-start}.info-icon{font-size:2.75rem;flex-shrink:0}.info-content h4{font-size:1.5rem;color:var(--secondary-color);margin-bottom:.9375rem}.info-content p{font-size:.98rem;line-height:1.85;color:var(--text-color);margin-bottom:.625rem}@media (max-width: 48rem){.introduction{padding:1.25rem 1rem;overflow:visible}.intro-content{max-width:100%;padding:0;box-sizing:border-box}.intro-section h2{font-size:4rem}.intro-section p{font-size:.95rem}.couple-intro{grid-template-columns:1fr;gap:6.25rem;margin-top:8rem;padding-top:7rem;width:100%;max-width:100%}.couple-card{min-height:28.125rem;padding:3.75rem 1rem 2rem;width:100%;max-width:100%;box-sizing:border-box;margin:0}.couple-image-3d{width:17.5rem;height:17.5rem;top:-8.75rem}.location-card{width:100%;max-width:100%;box-sizing:border-box}.location-card-content{padding:1.5rem 1.25rem}.location-info-box{flex-direction:column;padding:1.5rem 1rem;gap:1.25rem}.info-icon{font-size:2.5rem}}@media (max-width: 30rem){.intro-section h2{font-size:3.25rem}.couple-intro{margin-top:6rem;padding-top:6.5rem}.couple-card{min-height:25rem}.couple-image-3d{width:15rem;height:15rem;top:-7.5rem}.couple-card:before{top:7.5rem}.location-card h3{font-size:1.75rem}.groomsmen-section h2{font-size:3.25rem}.groomsman-image{width:13.5rem;height:13.5rem}}.gallery-intro{margin-top:5rem}.gallery-intro h2{font-size:5rem;text-align:center;margin-bottom:2.5rem;color:var(--secondary-color);font-family:Great Vibes,cursive;font-weight:400;line-height:1.1}.photo-gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(12.5rem,1fr);gap:.75rem;max-width:56.25rem;margin:0 auto;padding:0 1.25rem;box-sizing:border-box;aspect-ratio:1}.gallery-item{position:relative;overflow:hidden;border-radius:1rem;cursor:pointer;background:var(--ivory);box-shadow:0 2px 8px #5a280514,0 4px 20px #5a280512;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s ease;border:none;padding:0;font:inherit;text-align:left;display:block;width:100%}.gallery-item:focus-visible{outline:2px solid rgba(232,192,122,.8);outline-offset:2px}.gallery-item.loading{background:var(--linen);position:relative;overflow:hidden}.gallery-item.loading:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,248,220,.55) 50%,transparent 100%);transform:translate(-100%);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.image-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2.25rem;height:2.25rem;border:2.5px solid var(--linen);border-top:2.5px solid var(--gold);border-radius:50%;animation:spin 1s linear infinite;z-index:10}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.gallery-item.large{grid-column:span 2;grid-row:span 2}.gallery-item.wide{grid-column:span 2;grid-row:span 1}.gallery-item.tall{grid-column:span 1;grid-row:span 2}.gallery-item.medium{grid-column:span 1;grid-row:span 1}.gallery-item:hover{transform:translateY(-5px) scale(1.015);box-shadow:0 8px 24px #5a280526,0 16px 50px #5a28051a}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.07)}.gallery-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:transparent;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s ease;border-radius:1rem}.gallery-item:hover .gallery-overlay{opacity:0}.gallery-item:before{display:none}.lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a0401f7;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease;cursor:pointer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-content{max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;animation:zoomIn .35s cubic-bezier(.22,1,.36,1);cursor:default}@keyframes zoomIn{0%{transform:scale(.88);opacity:0}to{transform:scale(1);opacity:1}}.lightbox-content img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:.625rem;box-shadow:0 16px 60px #000000b3}.lightbox-caption{color:#fff0c3e0;font-size:1.2rem;margin-top:1.5rem;text-align:center;font-style:italic;font-family:Cormorant Garamond,serif;text-shadow:0 2px 8px rgba(0,0,0,.5)}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background:#fff5d71a;border:1.5px solid rgba(232,192,122,.22);color:#fff0c3eb;font-size:2.5rem;cursor:pointer;padding:0;transition:background-color .3s ease,border-color .3s ease,transform .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;width:3.5rem;height:3.5rem;display:flex;align-items:center;justify-content:center;line-height:1;font-weight:300}.lightbox-close:focus-visible,.lightbox-prev:focus-visible,.lightbox-next:focus-visible{outline:2px solid rgba(232,192,122,.8);outline-offset:3px}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:#e8c07a2e;border-color:#e8c07a80;transform:scale(1.1)}.lightbox-close{top:2rem;right:2rem;font-size:2rem}.lightbox-prev{left:2rem;top:50%;transform:translateY(-50%)}.lightbox-prev:hover{transform:translateY(-50%) scale(1.1)}.lightbox-next{right:2rem;top:50%;transform:translateY(-50%)}.lightbox-next:hover{transform:translateY(-50%) scale(1.1)}.lightbox-counter{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);color:#fff0c3d1;font-size:1rem;background:#0a040199;padding:.5rem 1.75rem;border-radius:2rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(232,192,122,.18);font-weight:600;font-family:Montserrat,sans-serif;letter-spacing:.08em}@media (max-width: 48rem){.gallery-intro h2{font-size:4rem}.photo-gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px;gap:.625rem;padding:0 1rem;aspect-ratio:auto}.gallery-item.large{grid-column:span 2;grid-row:span 2}.gallery-item.wide{grid-column:span 2;grid-row:span 1}.gallery-item.tall{grid-column:span 2;grid-row:span 2}.gallery-item.medium{grid-column:span 1;grid-row:span 1}.lightbox-close{top:1rem;right:1rem;font-size:1.8rem;width:3rem;height:3rem}.lightbox-prev,.lightbox-next{font-size:2rem;width:3rem;height:3rem}.lightbox-prev{left:.5rem}.lightbox-next{right:.5rem}.lightbox-caption{font-size:1rem;margin-top:1rem;padding:0 1rem}.lightbox-counter{bottom:1rem;font-size:.9rem;padding:.38rem 1rem}}@media (max-width: 30rem){.gallery-intro h2{font-size:3.25rem}}@media (prefers-reduced-motion: reduce){.gallery-item.loading:before,.image-loader{animation:none}.lightbox,.lightbox-content{animation:none}}.navigation{position:fixed;top:0;left:0;right:0;background:#fffef9f5;-webkit-backdrop-filter:blur(1rem) saturate(1.5);backdrop-filter:blur(1rem) saturate(1.5);z-index:1000;transition:box-shadow .3s ease;width:100%;max-width:100vw;overflow-x:hidden;box-shadow:0 1px #c4893a33,0 4px 24px #5a280512}.navigation:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--linen) 0%,var(--gold) 25%,var(--gold-light) 50%,var(--gold) 75%,var(--linen) 100%);z-index:1}.nav-container{max-width:75rem;margin:0 auto;padding:.9rem 2.5rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{display:flex;align-items:center;background:none;border:none;padding:0;cursor:pointer}.nav-logo:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:var(--radius-sm)}.nav-logo-wordmark{font-family:Great Vibes,cursive;font-size:2.5rem;font-weight:400;color:var(--secondary-color);letter-spacing:.04rem;margin:0;white-space:nowrap;text-shadow:0 1px 0 rgba(196,137,58,.3),0 2px 8px rgba(90,40,5,.12)}.nav-menu{display:flex;gap:0;list-style:none;align-items:center}.nav-menu button{background:none;border:none;font-family:Montserrat,sans-serif;font-size:.7rem;font-weight:600;color:#7a5538;cursor:pointer;padding:.45rem .85rem;transition:color .25s ease,background-color .25s ease;position:relative;letter-spacing:.14em;text-transform:uppercase;border-radius:var(--radius-pill)}.nav-menu button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.nav-menu button:after{content:"";position:absolute;bottom:.1rem;left:.85rem;right:.85rem;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left center;transition:transform .35s ease-out,opacity .35s ease;opacity:.7}.nav-menu button:hover:after{transform:scaleX(1)}.nav-menu button:hover{color:var(--secondary-color)}.nav-rsvp-button{background:var(--secondary-color)!important;color:#fffef9!important;border-radius:var(--radius-pill)!important;padding:.5rem 1.4rem!important;font-weight:600!important;letter-spacing:.12em!important;box-shadow:0 2px 14px #7d44184d!important;transition:background-color .3s ease,transform .3s ease,box-shadow .3s ease!important}.nav-rsvp-button:after{display:none!important}.nav-rsvp-button:hover{background:var(--cta-hover)!important;color:#fffef9!important;transform:translateY(-1px)!important;box-shadow:0 5px 20px #7d441866!important}.nav-tabbar{display:none}@media (max-width: 48rem){.nav-container{flex-direction:row;justify-content:center;padding:.7rem 1rem;width:100%;box-sizing:border-box}.nav-logo-wordmark{font-size:1.85rem}.nav-menu{display:none}.nav-tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:1000;justify-content:space-around;align-items:stretch;background:#fffef9f7;-webkit-backdrop-filter:blur(1rem) saturate(1.5);backdrop-filter:blur(1rem) saturate(1.5);border-top:1px solid rgba(196,137,58,.28);box-shadow:0 -2px 20px #5a28051a;padding:.45rem .35rem calc(.45rem + env(safe-area-inset-bottom,0px));width:100%;max-width:100vw;box-sizing:border-box}.nav-tab{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.22rem;min-height:2.75rem;background:none;border:none;cursor:pointer;color:#9a7a58;padding:.45rem .25rem;border-radius:var(--radius-md);-webkit-tap-highlight-color:transparent;transition:color .25s ease}.nav-tab-icon{position:relative;z-index:1;display:inline-flex}.nav-tab .nav-tab-label{position:relative;z-index:1}.nav-tab.is-active{color:var(--secondary-color, #7d4418)}.nav-tab.is-active .nav-tab-icon{color:var(--gold, #c4893a)}.nav-tab:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.nav-tab-label{font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.02em;line-height:1.15;text-align:center;-webkit-hyphens:auto;hyphens:auto;max-width:100%}.nav-tab.is-active .nav-tab-label{font-weight:700}.nav-tab--primary{color:var(--secondary-color)}.nav-tab--primary .nav-tab-label{font-weight:700}}@media (max-width: 30rem){.nav-container{padding:.55rem .75rem}.nav-logo-wordmark{font-size:1.6rem}.nav-tab-label{font-size:.72rem;letter-spacing:.01em}}@media (min-width: 48rem) and (max-width: 64rem){.nav-container{flex-direction:row;padding:.65rem 1rem;gap:.75rem}.nav-menu{flex-wrap:nowrap;gap:0}.nav-menu button{font-size:.65rem;padding:.3rem .5rem}.nav-rsvp-button{padding:.35rem .8rem!important;font-size:.65rem!important}}@media (orientation: landscape) and (max-height: 600px) and (max-width: 48rem){.nav-container{padding:.3rem .75rem}.nav-logo-wordmark{font-size:1.4rem}.nav-tabbar{padding:.25rem .35rem calc(.25rem + env(safe-area-inset-bottom,0px))}.nav-tab{min-height:2.5rem;flex-direction:row;gap:.4rem}.nav-tab-label{white-space:nowrap}}@media (orientation: landscape) and (max-height: 600px) and (min-width: 48rem){.navigation{overflow:visible!important}.nav-container{flex-direction:row!important;padding:.4rem 1rem!important}.nav-logo-wordmark{font-size:1.4rem!important}}.countdown-rings-wrapper{display:flex;flex-direction:column;align-items:center;margin-bottom:3.25rem;animation:heroFadeIn 1.2s .4s cubic-bezier(.22,1,.36,1) both}.countdown-rings{display:flex;justify-content:center;align-items:center;gap:1.75rem;flex-wrap:wrap}.ring-dial{position:relative;width:108px;height:108px;flex-shrink:0}.ring-dial svg{position:absolute;top:0;left:0;width:100%;height:100%}.ring-arc{transition:stroke-dashoffset .35s ease;filter:drop-shadow(0 0 3px rgba(232,192,122,.3))}.ring-arc-seconds{transition:stroke-dashoffset .92s linear}@keyframes secondsGlow{0%{filter:drop-shadow(0 0 3px rgba(232,192,122,.3))}35%{filter:drop-shadow(0 0 9px rgba(232,192,122,.78))}to{filter:drop-shadow(0 0 3px rgba(232,192,122,.3))}}.ring-dial-glow .ring-arc-seconds{animation:secondsGlow .5s ease-out forwards}.ring-dial-inner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.18rem}.ring-dial-number{font-family:Cormorant Garamond,serif;font-size:2.65rem;font-weight:400;color:#fff;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 1px 6px rgba(0,0,0,.8),0 0 20px rgba(255,240,180,.25)}.ring-dial-large .ring-dial-number{font-size:3.2rem}.ring-dial-label{font-family:Cormorant Garamond,serif;font-size:.6rem;text-transform:uppercase;letter-spacing:.22rem;color:#ffeeb9e6;font-style:italic}@media (max-width: 48rem){.countdown-rings{gap:1rem}.ring-dial{width:88px;height:88px}.ring-dial-number{font-size:2rem}}@media (max-width: 30rem){.countdown-rings{gap:.55rem}.ring-dial{width:72px;height:72px}.ring-dial-number{font-size:1.65rem}.ring-dial-label{font-size:.5rem;letter-spacing:.12rem}}@media (prefers-reduced-motion: reduce){.ring-arc,.ring-arc-seconds{transition:none}.countdown-rings-wrapper,.ring-dial-glow .ring-arc-seconds{animation:none}}@media (orientation: landscape) and (max-height: 500px){.ring-dial{width:70px;height:70px}.ring-dial-label{font-size:.48rem}.countdown-rings{gap:.7rem}.countdown-rings-wrapper{margin-bottom:.8rem}}.hero-section{position:relative;height:100dvh;min-height:100vh;width:100%;max-width:100vw;overflow:hidden;display:flex;align-items:center;justify-content:center;background-color:#fffef9;margin-bottom:0}.hero-section:before{content:"";position:fixed;top:-100px;left:0;right:0;height:100px;background-color:#fffef9;z-index:999}.hero-video{position:absolute;top:50%;left:50%;min-width:100vw;min-height:100vh;width:auto;height:auto;transform:translate(-50%,-50%) scale(1.25);object-fit:cover;z-index:0}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(160deg,rgba(12,4,1,.28) 0%,rgba(25,10,2,.35) 50%,rgba(18,7,1,.22) 80%,transparent 100%);z-index:1;pointer-events:none}.hero-overlay:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 55% at 50% 42%,rgba(10,4,1,.52) 0%,rgba(10,4,1,.28) 45%,transparent 75%);pointer-events:none}.hero-bottom-fade{position:absolute;bottom:-1px;left:0;right:0;height:220px;background:linear-gradient(to bottom,transparent 0%,rgba(255,254,249,.4) 40%,rgba(255,254,249,.85) 75%,#fffef9 100%);z-index:1;pointer-events:none}.hero-content{position:relative;z-index:2;text-align:center;color:#fff;padding:1.25rem;width:100%;max-width:100%;box-sizing:border-box}.hero-title{font-size:8rem;font-weight:400;margin-bottom:1rem;letter-spacing:.08rem;font-family:Great Vibes,cursive;color:var(--hero-text);word-spacing:.5rem;text-shadow:0 4px 20px rgba(0,0,0,.65),0 1px 4px rgba(0,0,0,.5),0 0 60px rgba(196,137,58,.2)}.hero-title-decoration-top,.hero-title-decoration-bottom{width:28rem;max-width:80%;height:1px;margin:0 auto;background:linear-gradient(to right,transparent 0%,rgba(232,192,122,.5) 20%,rgba(255,240,180,.9) 50%,rgba(232,192,122,.5) 80%,transparent 100%)}.hero-title-decoration-top{margin-bottom:1.5rem}.hero-title-decoration-bottom{margin-top:1.5rem;margin-bottom:1.1rem}.hero-title-connector{font-size:.6em;margin:0 .3rem;opacity:.85}.hero-subtitle-br{display:none}.hero-subtitle{font-size:1.35rem;font-weight:300;letter-spacing:.38rem;margin-top:4rem;margin-bottom:3.25rem;text-transform:uppercase;color:#fff8e6f2;text-shadow:0 2px 10px rgba(0,0,0,.65)}.countdown{display:flex;justify-content:center;align-items:center;gap:.85rem;margin-bottom:3.25rem;flex-wrap:wrap;width:100%;max-width:100%;padding:0 .5rem;box-sizing:border-box}.countdown-item{display:flex;flex-direction:column;align-items:center;background:#fff8eb1a;padding:1rem 1.75rem .85rem;min-width:5.5rem;position:relative;border-bottom:1.5px solid rgba(232,192,122,.55)}.countdown-item:before{display:none}.countdown-number{font-size:3.25rem;font-weight:300;line-height:1;margin-bottom:.4rem;font-family:Cormorant Garamond,serif;color:var(--hero-text);font-variant-numeric:tabular-nums}.countdown-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.25rem;font-weight:400;font-family:Cormorant Garamond,serif;color:#ffeeb9bf;font-style:italic}.countdown-separator{font-size:2.5rem;opacity:.35;font-weight:300;color:#e8c07acc;font-family:Cormorant Garamond,serif;align-self:flex-start;padding-top:.5rem;line-height:1}.hero-actions{display:flex;flex-direction:column;align-items:center;gap:.85rem;margin-top:1.5rem}.hero-scroll-btn{width:auto;height:3.25rem;padding:0 2.5rem;border-radius:var(--radius-pill);background:var(--secondary-color);border:none;color:#fffef9;font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:700;cursor:pointer;transition:background-color .3s ease,transform .3s ease,box-shadow .3s ease;white-space:nowrap;letter-spacing:.18em;text-transform:uppercase;position:relative;box-shadow:0 4px 22px #5a280573}.hero-scroll-btn:hover{background:var(--cta-hover);transform:translateY(-3px);box-shadow:0 8px 30px #5a28058c}.hero-calendar-btn{display:inline-flex;align-items:center;gap:.5rem;height:2.75rem;padding:0 2rem;border-radius:var(--radius-pill);background:#00000073;border:1.5px solid rgba(255,240,200,.7);color:var(--hero-text);font-family:Montserrat,sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:border-color .25s ease,color .25s ease,background .25s ease,transform .25s ease,box-shadow .25s ease}.hero-calendar-btn:hover{border-color:#e8c07a;color:var(--hero-text);background:#0006;transform:translateY(-2px);box-shadow:0 4px 18px #5a28054d}@media (max-width: 48rem){.hero-section{background-attachment:scroll}.hero-subtitle-br{display:inline}.hero-title{font-size:9vw;white-space:nowrap;padding:0 1rem}.hero-subtitle{font-size:1rem;letter-spacing:.25rem;margin-top:2rem;margin-bottom:2.25rem}.countdown{gap:.55rem}.countdown-item{padding:.85rem 1rem;min-width:4.5rem}.countdown-number{font-size:2rem}.countdown-label{font-size:.6rem;letter-spacing:.12rem}.countdown-separator{display:none}.hero-scroll-btn{height:2.8rem;padding:0 1.5rem;font-size:.72rem}.hero-calendar-btn{height:2.5rem;padding:0 1.5rem;font-size:.68rem}}@media (max-width: 30rem){.hero-content{padding-top:4rem}.hero-title{font-size:10vw;white-space:nowrap}.hero-subtitle{font-size:.88rem;letter-spacing:.18rem}.countdown{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;max-width:18rem;margin-left:auto;margin-right:auto}.countdown-separator{display:none}.countdown-item{min-width:0;width:100%}.countdown-number{font-size:2.5rem}}@media (orientation: landscape) and (max-height: 500px){.hero-section{align-items:flex-start}.hero-content{padding-top:4.5rem}.hero-title{font-size:7vw;margin-bottom:.4rem}.hero-title-decoration-top,.hero-title-decoration-bottom{margin-top:.4rem;margin-bottom:.4rem}.hero-subtitle{margin-top:.5rem;font-size:.75rem;margin-bottom:.8rem;letter-spacing:.18rem}.countdown{gap:.3rem;margin-bottom:.8rem}.countdown-item{padding:.38rem .55rem;min-width:2.8rem}.countdown-number{font-size:1.2rem;margin-bottom:.15rem}.countdown-label{font-size:.46rem}.hero-actions{flex-direction:row;gap:.6rem;margin-top:.5rem}.hero-scroll-btn{height:2.2rem;padding:0 1.2rem;font-size:.65rem}.hero-calendar-btn{height:2.2rem;padding:0 1rem;font-size:.62rem}}@media (orientation: landscape) and (min-height: 501px) and (max-height: 1000px){.hero-section{align-items:flex-start}.hero-content{padding-top:7rem}.hero-title-decoration-top{margin-bottom:1rem}.hero-title-decoration-bottom{margin-top:1rem}.hero-actions{flex-direction:row;gap:.75rem;margin-top:.75rem}.hero-scroll-btn{height:2.75rem;padding:0 1.75rem;font-size:.75rem}.hero-calendar-btn{height:2.5rem;padding:0 1.5rem;font-size:.7rem}}.app{min-height:100vh;position:relative;overflow-x:hidden;width:100%;max-width:100vw}main{max-width:75rem;margin:0 auto;padding:0 1.5rem 5rem;width:100%;box-sizing:border-box;overflow:visible}section{display:block;margin-bottom:8rem;width:100%;max-width:100%;overflow:visible;position:relative}section.no-divider:after,section.no-divider:before{display:none}section:not(:last-child):after{content:"✦";display:flex;align-items:center;justify-content:center;position:absolute;bottom:-4rem;left:0;right:0;font-size:.6rem;color:var(--gold);opacity:.55;letter-spacing:0}section:not(:last-child):before{content:"";position:absolute;bottom:-4rem;left:50%;transform:translate(-50%);width:min(24rem,60%);height:1px;background:linear-gradient(to right,transparent 0%,rgba(196,137,58,.35) 20%,rgba(196,137,58,.35) 80%,transparent 100%)}section:last-child{margin-bottom:4rem}@media (max-width: 48rem){main{padding:5rem 1rem calc(6rem + env(safe-area-inset-bottom,0px));max-width:100%;box-sizing:border-box;overflow:visible}section{margin-bottom:5rem}section:last-child{margin-bottom:2.5rem}}.back-to-top{position:fixed;bottom:2rem;right:2rem;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--secondary-color);color:var(--gold-light);border:1px solid rgba(196,137,58,.35);font-size:1.1rem;cursor:pointer;opacity:0;transform:translateY(.75rem);transition:opacity .3s ease,transform .3s ease,background .2s ease;pointer-events:none;z-index:900;box-shadow:0 2px 12px #5a280540}.back-to-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}.back-to-top:hover{background:var(--primary-color)}@media (max-width: 48rem){.back-to-top{bottom:calc(4.75rem + env(safe-area-inset-bottom,0px));right:1.25rem;width:2.5rem;height:2.5rem;font-size:1rem}}@media (prefers-reduced-motion: reduce){.back-to-top{transition:opacity .15s ease;transform:none}}.lazy-loading{display:flex;justify-content:center;align-items:center;min-height:200px;font-family:Montserrat,sans-serif;color:var(--gold);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;opacity:.7}@font-face{font-family:Great Vibes;font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;src:url(/assets/fonts/great-vibes-cyrillic-Dy8dZvp5.woff2) format("woff2")}@font-face{font-family:Great Vibes;font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;src:url(/fonts/great-vibes-latin.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;src:url(/assets/fonts/cormorant-garamond-300-cyrillic-KZtADeSH.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;src:url(/fonts/cormorant-garamond-400-cyrillic.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;src:url(/assets/fonts/cormorant-garamond-300-cyrillic-KZtADeSH.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;src:url(/assets/fonts/cormorant-garamond-300-latin-vTYAbwjx.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;src:url(/fonts/cormorant-garamond-400-latin.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;src:url(/assets/fonts/cormorant-garamond-300-latin-vTYAbwjx.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;src:url(/assets/fonts/montserrat-300-cyrillic-p6IpLZeA.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;src:url(/assets/fonts/montserrat-300-cyrillic-p6IpLZeA.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;src:url(/assets/fonts/montserrat-300-cyrillic-p6IpLZeA.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;src:url(/assets/fonts/montserrat-300-latin-Dk9Pm7OY.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;src:url(/fonts/montserrat-400-latin.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;src:url(/assets/fonts/montserrat-300-latin-Dk9Pm7OY.woff2) format("woff2")}*{margin:0;padding:0;box-sizing:border-box}img{max-width:100%;height:auto}html{font-size:16px;overflow-x:hidden;overflow-y:auto;width:100%;max-width:100vw}body{font-family:Montserrat,sans-serif;color:#3a2215;background-color:#fffef9;line-height:1.75;overflow-x:hidden;overflow-y:auto;width:100%;max-width:100vw;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:Cormorant Garamond,serif;font-weight:300;color:var(--heading-color);line-height:1.2;text-wrap:balance;scroll-margin-top:6rem}button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}:root{--primary-color: #c9a070;--secondary-color: #7d4418;--accent-color: #f2e6d0;--text-color: #3a2215;--light-bg: #fffef9;--gold: #c4893a;--gold-light: #e8c07a;--ivory: #f5ead8;--linen: #f0e4cc;--border-warm: #ddc9a8;--shadow-warm: rgba(90, 40, 5, .1);--heading-color: #6b3a1f;--hero-text: #fff8ee;--cta-hover: #5c3010;--toast-bg: #2a1508;--error: #b83022;--radius-sm: .375rem;--radius-md: .875rem;--radius-lg: 1.25rem;--radius-pill: 2rem}@media (max-width: 48rem){html{font-size:14px}}@media (max-width: 30rem){html{font-size:13px}}
