.circle-1,.circle-2,.circle-3{display:none !important}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html,body{overflow-x:hidden}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:"Source Serif 4",serif;font-weight:400;line-height:1.75;color:rgba(245,237,227,.72);background-color:#0f0e0d;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:min(800px,92vw);margin:0 auto;padding:0 28px}@media(max-width: 768px){.container{padding:0 20px}}h1,h2,h3,h4,h5,h6{font-family:"Cinzel",serif;margin-bottom:20px;line-height:1.3;font-weight:500;color:#f5ede3}h2{text-align:center;font-size:clamp(1.65rem,4vw,2.35rem);margin-bottom:40px;letter-spacing:.1em;text-transform:uppercase}p{margin-bottom:20px;color:rgba(245,237,227,.72);font-size:1.0625rem}a{color:#c9a962;text-decoration:underline;text-underline-offset:3px;transition:all .4s ease}a:hover{color:#e0c989}a:focus-visible{outline:2px solid #c9a962;outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}@media(max-width: 768px){h2{margin-bottom:32px}p{font-size:1rem}}.desktop-blocker{display:none}@media(min-width: 769px){.desktop-blocker{display:flex;position:fixed;inset:0;z-index:10000;align-items:center;justify-content:center;padding:40px 28px;background:#0f0e0d;text-align:center;overflow:hidden}.desktop-blocker::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");z-index:2}.desktop-blocker::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 50% 0%, rgba(201, 169, 98, 0.12) 0%, transparent 70%),linear-gradient(180deg, rgba(53, 31, 30, 0.35) 0%, #0f0e0d 100%);z-index:0}}.desktop-blocker__content{position:relative;z-index:1;max-width:480px;width:100%;padding:48px 36px;border:1px solid rgba(201,169,98,.35);border-radius:4px;background:rgba(42,36,32,.85);box-shadow:0 8px 32px rgba(0,0,0,.35)}.desktop-blocker__meta{margin:0 0 20px;font-family:"Cinzel",serif;font-size:.65rem;letter-spacing:.28em;text-transform:uppercase;color:#c9a962}.desktop-blocker__title{margin:0 0 24px;font-family:"Cinzel",serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#f5ede3;line-height:1.35}.desktop-blocker__message{margin:0 0 32px;font-family:"Libre Baskerville",serif;font-style:italic;font-size:1.125rem;line-height:1.65;color:rgba(245,237,227,.72)}.desktop-blocker__icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border:1px solid rgba(201,169,98,.45);border-radius:50%;color:#c9a962;font-size:2rem;animation:desktopBlockerPulse 2.5s ease-in-out infinite}@media(min-width: 769px){body{overflow:hidden}body>*:not(.desktop-blocker){display:none !important}}@keyframes desktopBlockerPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.75;transform:scale(0.96)}}.mobile-splash-screen{position:fixed;width:100%;height:100vh;z-index:9999;display:none;transition:transform .5s ease-out;background:#0f0e0d}.mobile-splash-screen::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(15, 14, 13, 0.3) 0%, rgba(15, 14, 13, 0.85) 100%);z-index:1}.mobile-splash-screen.hidden{transform:translateY(-100%)}.mobile-splash-screen.hidden~.hero .names,.mobile-splash-screen.hidden~.hero .date{opacity:1;visibility:visible;transition:opacity .5s ease-out,visibility .5s ease-out}.mobile-splash-screen.hidden~.music-control{opacity:1;visibility:visible;transition:opacity .5s ease-out,visibility .5s ease-out}.mobile-splash-screen .splash-content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:20px;position:relative;overflow:hidden}.mobile-splash-screen .splash-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;position:absolute;inset:0;z-index:0;animation:imageAppear 1.5s ease-out forwards;transform:scale(1.04);opacity:0;filter:sepia(0.4) contrast(1.08) brightness(0.78) saturate(0.85)}.mobile-splash-screen .splash-text{font-family:"Cinzel",serif;font-size:clamp(1.25rem,4vw,1.75rem);letter-spacing:.2em;text-transform:uppercase;text-align:center;margin-bottom:1rem;line-height:1.4;z-index:2;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);filter:drop-shadow(0 4px 20px rgba(0, 0, 0, 0.6));opacity:0;animation:textAppear 1s ease-out .5s forwards;transform:translateY(16px)}.mobile-splash-screen .swipe-indicator{position:absolute;bottom:18%;left:50%;transform:translateX(-50%);color:#e0c989;z-index:2;opacity:0;animation:indicatorAppear 1s ease-out 1s forwards}.mobile-splash-screen .swipe-indicator .swipe-text{font-family:"Cinzel",serif;font-size:.65rem;letter-spacing:.32em;text-transform:uppercase;opacity:.9;animation:pulse 2.5s ease-in-out infinite}@media(max-width: 768px){.mobile-splash-screen{display:flex}.mobile-splash-screen:not(.hidden)~.hero .names,.mobile-splash-screen:not(.hidden)~.hero .date{opacity:0;visibility:hidden}.mobile-splash-screen:not(.hidden)~.music-control{opacity:0;visibility:hidden}}@keyframes imageAppear{0%{opacity:0;transform:scale(1.04)}100%{opacity:1;transform:scale(1)}}@keyframes textAppear{0%{opacity:0;transform:translateY(16px);filter:blur(4px)}100%{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes indicatorAppear{0%{opacity:0;transform:translateX(-50%) translateY(12px)}100%{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes pulse{0%,100%{opacity:.9}50%{opacity:.45}}.music-control{position:fixed;top:20px;right:20px;z-index:1000}.music-control .music-toggle{display:flex;align-items:center;justify-content:center;background:rgba(42,36,32,.92);border:1px solid rgba(201,169,98,.35);border-radius:4px;padding:0 14px;height:40px;min-width:100px;cursor:pointer;transition:all .45s cubic-bezier(0.77, 0, 0.18, 1);box-shadow:0 8px 32px rgba(0,0,0,.35);font-family:"Source Serif 4",serif}.music-control .music-toggle .music-hint{display:inline-block;white-space:nowrap;color:rgba(245,237,227,.72);font-size:.7rem;letter-spacing:.08em;margin-right:8px;opacity:1;max-width:200px;transition:all .45s cubic-bezier(0.77, 0, 0.18, 1);overflow:hidden}.music-control .music-toggle i{font-size:.95rem;color:#c9a962}.music-control .music-toggle.hint-hidden{padding:0;width:40px;min-width:0;border-radius:50%}.music-control .music-toggle.hint-hidden .music-hint{opacity:0;max-width:0;margin-right:0;pointer-events:none}.music-control .music-toggle.playing{animation:rotate 4s linear infinite;background:#c9a962;border-color:#e0c989}.music-control .music-toggle.playing i{color:#0f0e0d}@keyframes rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.hero{position:relative;width:100%;min-height:100vh;min-height:100dvh;overflow:hidden;background:#0f0e0d;display:grid;grid-template:1fr/1fr}.hero>.hero-image,.hero>.hero-shade,.hero>.hero-content{grid-area:1/1}.hero-image{width:100%;height:100%;min-height:100vh;min-height:100dvh;-o-object-fit:cover;object-fit:cover;-o-object-position:32% 24%;object-position:32% 24%;z-index:1;justify-self:stretch;align-self:stretch;filter:sepia(0.18) contrast(1.03) brightness(0.94) saturate(0.92);transform:scale(1.06) translateX(-3%);transform-origin:center center}.hero-shade{z-index:2;pointer-events:none;background:linear-gradient(180deg, rgba(15, 14, 13, 0.08) 0%, rgba(15, 14, 13, 0.02) 45%, rgba(15, 14, 13, 0.45) 75%, rgba(15, 14, 13, 0.78) 100%)}.hero-content{z-index:3;display:flex;align-items:flex-end;justify-content:center;padding:0 24px clamp(48px,11vh,112px);pointer-events:none;min-height:100vh;min-height:100dvh}.hero .text-overlay{position:relative;z-index:1;width:100%;max-width:900px;text-align:center;pointer-events:auto;padding:28px 24px 20px}.hero .text-overlay::before{content:"";position:absolute;left:50%;bottom:-12px;transform:translateX(-50%);width:min(100%,520px);height:calc(100% + 48px);background:radial-gradient(ellipse 90% 100% at 50% 100%, rgba(15, 14, 13, 0.72) 0%, rgba(15, 14, 13, 0.35) 55%, transparent 100%);z-index:-1;pointer-events:none}.hero .names{position:relative;z-index:1;font-family:"Libre Baskerville",serif;font-weight:400;font-size:clamp(2.75rem,8vw,4.5rem);margin:0 0 1rem;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem 1rem;line-height:1.15;color:#e0c989;text-shadow:0 1px 0 rgba(0,0,0,.9),0 3px 12px rgba(0,0,0,.9),0 0 40px rgba(0,0,0,.5)}.hero .names .ring-icon{height:clamp(1.5rem,4vw,2.5rem);width:auto;filter:brightness(0) saturate(100%) invert(78%) sepia(28%) saturate(600%) hue-rotate(5deg) brightness(95%)}.hero .date{position:relative;z-index:1;margin:0;font-family:"Cinzel",serif;font-size:.72rem;font-weight:500;letter-spacing:.38em;text-transform:uppercase;color:#f5ede3;text-shadow:0 1px 0 rgba(0,0,0,.9),0 2px 10px rgba(0,0,0,.85)}@media(min-width: 769px){.hero .names,.hero .date{opacity:1 !important;visibility:visible !important}.hero-image{-o-object-position:28% 22%;object-position:28% 22%;transform:scale(1.08) translateX(-5%)}}@media(max-width: 768px){.hero-content{padding-bottom:clamp(56px,14vh,96px)}.hero-image{-o-object-position:22% 18%;object-position:22% 18%;transform:scale(1.12) translateX(-6%)}.hero .names{font-size:clamp(2.25rem,9vw,3.25rem)}}.info{padding:100px 0;background-color:#1a1512;color:#f5ede3;position:relative}.info h2{font-family:"Cinzel",serif;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0)}.info h2::before{content:"◆";display:block;text-align:center;font-size:.65rem;color:#c9a962;opacity:.7;margin-bottom:14px;letter-spacing:.5em;line-height:1}.info h2::after{content:"";display:block;width:80px;height:1px;background:linear-gradient(90deg, transparent, rgba(201, 169, 98, 0.5), transparent);margin:22px auto 0}.info h2{margin-bottom:48px}.info p{text-align:center;max-width:36em;margin-left:auto;margin-right:auto;line-height:1.8;color:rgba(245,237,227,.72)}.info .calendar{max-width:400px;margin:48px auto 0;background:#2a2420;border:1px solid rgba(201,169,98,.28);box-shadow:0 8px 32px rgba(0,0,0,.35);outline:1px solid rgba(201,169,98,.08);outline-offset:5px;border-radius:4px;padding:28px 24px;position:relative;z-index:2}.info .calendar-title{text-align:center;font-family:"Cinzel",serif;font-size:1.1rem;letter-spacing:.15em;text-transform:uppercase;margin-bottom:16px;color:#c9a962}.info .calendar-weekdays{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center;margin-bottom:8px}.info .calendar-days{display:grid;grid-template-columns:repeat(7, 1fr);gap:4px;isolation:isolate}.info .weekday{font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#c9a962;opacity:.7;padding:4px 0}.info .day{position:relative;display:flex;align-items:center;justify-content:center;height:38px;font-size:.9rem;color:rgba(245,237,227,.72);border-radius:2px;transition:all .4s ease}.info .day:hover:not(.empty):not(.selected){background:rgba(201,169,98,.08);color:#f5ede3}.info .day.selected{background:#c9a962;color:#0f0e0d;font-weight:600;border-radius:50%;box-shadow:0 0 16px rgba(201,169,98,.45);z-index:1}@media(max-width: 768px){.info{padding:72px 0}}.rsvp{padding:100px 0;background-color:#242019;color:#f5ede3;position:relative}.rsvp p,.rsvp .subtitle{color:rgba(245,237,227,.72);text-align:center}.rsvp .container{max-width:min(520px,92vw);margin:0 auto}.rsvp h2{font-family:"Cinzel",serif;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0)}.rsvp h2::before{content:"◆";display:block;text-align:center;font-size:.65rem;color:#c9a962;opacity:.7;margin-bottom:14px;letter-spacing:.5em;line-height:1}.rsvp h2::after{content:"";display:block;width:80px;height:1px;background:linear-gradient(90deg, transparent, rgba(201, 169, 98, 0.5), transparent);margin:22px auto 0}.rsvp h2{margin-bottom:20px}.rsvp .subtitle{font-family:"Libre Baskerville",serif;font-size:1.05rem;font-style:italic;margin-bottom:.65rem;line-height:1.65}.rsvp .subtitle:last-of-type{margin-bottom:2rem}.rsvp .form{display:flex;flex-direction:column;gap:1.75rem;background:#2a2420;border:1px solid rgba(201,169,98,.28);box-shadow:0 8px 32px rgba(0,0,0,.35);outline:1px solid rgba(201,169,98,.08);outline-offset:5px;padding:36px 32px;border-radius:4px}.rsvp .form-group{display:flex;flex-direction:column;gap:.75rem}.rsvp .form-group>label{font-family:"Cinzel",serif;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#c9a962;font-weight:500}.rsvp .form-group input[type=text]{width:100%;padding:14px 16px;border:1px solid rgba(201,169,98,.22);border-radius:4px;background:#0f0e0d;color:#f5ede3;font-family:"Source Serif 4",serif;font-size:1rem;transition:all all .4s ease}.rsvp .form-group input[type=text]::-moz-placeholder{color:rgba(245,237,227,.4)}.rsvp .form-group input[type=text]::placeholder{color:rgba(245,237,227,.4)}.rsvp .form-group input[type=text]:focus{outline:none;border-color:#c9a962;box-shadow:0 0 0 3px rgba(201,169,98,.15)}.rsvp .form-group .radio-group{display:flex;flex-direction:column;gap:.6rem}.rsvp .form-group .radio-group label{display:flex;align-items:flex-start;gap:12px;font-size:.95rem;cursor:pointer;color:rgba(245,237,227,.72);font-family:"Source Serif 4",serif}.rsvp .form-group .radio-group label input[type=radio],.rsvp .form-group .radio-group label input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.15rem;height:1.15rem;min-width:1.15rem;border:1px solid rgba(201,169,98,.5);border-radius:50%;margin-top:3px;cursor:pointer;transition:all .4s ease}.rsvp .form-group .radio-group label input[type=radio]:checked,.rsvp .form-group .radio-group label input[type=checkbox]:checked{background:#c9a962;border-color:#c9a962;box-shadow:inset 0 0 0 3px #0f0e0d}.rsvp .form-group .radio-group label input[type=radio]:focus-visible,.rsvp .form-group .radio-group label input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px rgba(201,169,98,.2)}.rsvp .form-group .radio-group label input[type=checkbox]{border-radius:2px}.rsvp .form-group .radio-group label input[type=checkbox]:checked{box-shadow:none;background:#c9a962 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='%231a1512' d='M10 3L4.5 8.5 2 6'/%3E%3C/svg%3E") center/10px no-repeat}.rsvp .submit-btn{width:100%;padding:18px 24px;border-radius:4px;cursor:pointer;font-family:"Cinzel",serif;letter-spacing:.2em;text-transform:uppercase;font-size:.75rem;font-weight:600;color:#0f0e0d;background:radial-gradient(circle at 35% 30%, #e0c989 0%, #c9a962 55%, #9a7d3c 100%);border:2px solid #e0c989;box-shadow:0 6px 24px rgba(0,0,0,.45),inset 0 1px 0 hsla(0,0%,100%,.25);transition:all .4s ease}.rsvp .submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 32px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.3)}.rsvp .submit-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.rsvp .form-errors{display:none;margin-top:1rem;padding:1rem;background:rgba(212,115,115,.1);border-radius:4px;border:1px solid rgba(212,115,115,.3)}.rsvp .form-errors.show{display:block}.rsvp .form-errors .error-list{list-style:none;padding:0;margin:0;color:#d47373;font-size:.9rem}.rsvp .form-group select,.rsvp .wine-select{width:100%;padding:14px 16px;border:1px solid rgba(201,169,98,.22);border-radius:4px;background:#0f0e0d;color:#f5ede3;font-family:"Source Serif 4",serif;font-size:1rem;transition:all all .4s ease}.rsvp .form-group select::-moz-placeholder, .rsvp .wine-select::-moz-placeholder{color:rgba(245,237,227,.4)}.rsvp .form-group select::placeholder,.rsvp .wine-select::placeholder{color:rgba(245,237,227,.4)}.rsvp .form-group select:focus,.rsvp .wine-select:focus{outline:none;border-color:#c9a962;box-shadow:0 0 0 3px rgba(201,169,98,.15)}.rsvp .form-group select,.rsvp .wine-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url('data:image/svg+xml;utf8,<svg fill="%23c9a962" height="20" viewBox="0 0 20 20" width="20" xmlns="http://www.w3.org/2000/svg"><path d="M5.516 7.548a.75.75 0 0 1 1.06 0L10 10.97l3.424-3.423a.75.75 0 1 1 1.06 1.06l-3.954 3.954a.75.75 0 0 1-1.06 0L5.516 8.608a.75.75 0 0 1 0-1.06z"/></svg>');background-repeat:no-repeat;background-position:right 1rem center;background-size:1rem}.success-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:1000;opacity:0;transition:opacity .3s ease}.success-modal.show{display:flex;align-items:center;justify-content:center;opacity:1}.success-modal.show .modal-content{transform:translateY(0)}.success-modal .modal-content{background:#2a2420;border:1px solid rgba(201,169,98,.28);box-shadow:0 8px 32px rgba(0,0,0,.35);outline:1px solid rgba(201,169,98,.08);outline-offset:5px;padding:2.5rem 2rem;border-radius:4px;text-align:center;transform:translateY(16px);transition:transform .3s ease;max-width:90%;width:400px}.success-modal .modal-content .modal-icon{font-size:2.25rem;color:#c9a962;margin-bottom:1rem}.success-modal .modal-content h3{font-family:"Cinzel",serif;font-size:1.25rem;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0)}.success-modal .modal-content p{font-family:"Libre Baskerville",serif;font-style:italic;font-size:1.05rem;color:rgba(245,237,227,.72);margin-bottom:1.5rem}.success-modal .modal-content .modal-close{font-family:"Cinzel",serif;letter-spacing:.2em;text-transform:uppercase;font-size:.75rem;font-weight:600;color:#0f0e0d;background:radial-gradient(circle at 35% 30%, #e0c989 0%, #c9a962 55%, #9a7d3c 100%);border:2px solid #e0c989;box-shadow:0 6px 24px rgba(0,0,0,.45),inset 0 1px 0 hsla(0,0%,100%,.25);transition:all .4s ease}.success-modal .modal-content .modal-close:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 32px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.3)}.success-modal .modal-content .modal-close{padding:12px 28px}@media(max-width: 768px){.rsvp{padding:72px 0}.rsvp .form{padding:24px 20px}}.location{padding:88px 0;background-color:#0f0e0d;background-image:url("../img/res.jpg");background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;color:#f5ede3;position:relative}.location::before{content:"";position:absolute;inset:0;background:rgba(15,14,13,.82);z-index:1}.location .container{max-width:min(800px,92vw);margin:0 auto;padding:0 28px;position:relative;z-index:2}.location h2{font-family:"Cinzel",serif;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0)}.location h2::after{content:"";display:block;width:80px;height:1px;background:linear-gradient(90deg, transparent, rgba(201, 169, 98, 0.5), transparent);margin:22px auto 0}.location h2{margin-bottom:28px}.location .location-description{text-align:center;font-size:1.05rem;margin-bottom:12px;color:rgba(245,237,227,.72)}.location .location-address{text-align:center;font-family:"Libre Baskerville",serif;font-size:1.65rem;color:#f5ede3;margin-bottom:6px}.location .location-name{text-align:center;font-family:"Cinzel",serif;font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;margin-bottom:32px;color:#c9a962}.location .map-container{width:100%;max-width:720px;height:380px;margin:0 auto;border-radius:4px;overflow:hidden;position:relative;z-index:2;box-shadow:0 20px 60px rgba(0,0,0,.45);border:1px solid rgba(201,169,98,.35);outline:1px solid rgba(201,169,98,.1);outline-offset:4px}@media(max-width: 768px){.location{background-attachment:scroll}.location .map-container{height:280px}}.countdown{position:relative;padding:0;display:block;overflow:hidden;background:#0f0e0d;border-top:1px solid rgba(201,169,98,.15);border-bottom:1px solid rgba(201,169,98,.15)}.countdown::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");z-index:2}.countdown-bg{display:block;width:100%;height:auto;z-index:0;filter:sepia(0.22) contrast(1.05) brightness(0.72) saturate(0.88)}.countdown-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg, rgba(15, 14, 13, 0.55) 0%, rgba(15, 14, 13, 0.72) 50%, rgba(15, 14, 13, 0.82) 100%)}.countdown h2{font-family:"Cinzel",serif;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);font-size:clamp(1.5rem,4vw,2.25rem);margin-bottom:36px}.countdown-content{position:absolute;inset:0;z-index:3;width:100%;text-align:center;display:flex;align-items:center;justify-content:center;padding:clamp(40px,8vw,80px) 28px}.countdown-content .content-wrapper{position:relative;z-index:1;max-width:800px;margin:0 auto;width:100%}.countdown-timer{display:flex;justify-content:center;align-items:flex-start;flex-wrap:wrap;gap:clamp(1.25rem,5vw,3.5rem);margin-top:1rem}.countdown-item{display:flex;flex-direction:column;align-items:center;transition:transform .35s ease}.countdown-item:hover{transform:translateY(-3px)}.countdown-number{display:block;font-family:"Cinzel",serif;font-size:clamp(2.75rem,9vw,5rem);font-weight:500;line-height:1;margin-bottom:10px;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);font-variant-numeric:tabular-nums;filter:drop-shadow(0 4px 16px rgba(0, 0, 0, 0.5))}.countdown-label{display:block;font-family:"Cinzel",serif;font-size:.6rem;text-transform:uppercase;letter-spacing:.25em;color:rgba(245,237,227,.72)}@media(max-width: 768px){.countdown-content{padding:48px 20px}}.plan-day{padding:100px 0;background-color:#0f0e0d;color:#f5ede3;position:relative;overflow:hidden;min-height:100vh;display:flex;align-items:center}.plan-day::before{content:"";position:absolute;inset:0;z-index:0;background-image:url("../img/plan.jpg");background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.35}.plan-day::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 80% 50% at 50% 0%, rgba(201, 169, 98, 0.06) 0%, transparent 55%)}.plan-day .container{position:relative;z-index:2;max-width:min(640px,92vw);margin:0 auto}.plan-day h2{font-family:"Cinzel",serif;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0)}.plan-day h2::before{content:"◆";display:block;text-align:center;font-size:.65rem;color:#c9a962;opacity:.7;margin-bottom:14px;letter-spacing:.5em;line-height:1}.plan-day h2::after{content:"";display:block;width:80px;height:1px;background:linear-gradient(90deg, transparent, rgba(201, 169, 98, 0.45), transparent);margin:22px auto 0}.plan-day h2{margin-bottom:48px}.plan-day .day-schedule-wrap{background:#2a2420;border:1px solid rgba(201,169,98,.28);box-shadow:0 8px 32px rgba(0,0,0,.35);outline:1px solid rgba(201,169,98,.08);outline-offset:5px;border-radius:4px;padding:40px 36px 40px 56px;position:relative;background:linear-gradient(145deg, rgba(42, 36, 32, 0.98) 0%, rgba(53, 31, 30, 0.35) 100%)}.plan-day .day-schedule{list-style:none;margin:0;padding:0;position:relative}.plan-day .day-schedule::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:1px;background:linear-gradient(180deg, transparent, rgba(201, 169, 98, 0.55) 8%, rgba(201, 169, 98, 0.55) 92%, transparent)}.plan-day .schedule-item{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px 24px;padding:22px 0 22px 28px;border-bottom:1px solid rgba(201,169,98,.12);transition:all .4s ease}.plan-day .schedule-item:first-child{padding-top:8px}.plan-day .schedule-item:last-child{padding-bottom:8px;border-bottom:none}.plan-day .schedule-item::before{content:"";position:absolute;left:-5px;top:50%;transform:translateY(-50%);width:11px;height:11px;border-radius:50%;background:#c9a962;border:2px solid #2a2420;box-shadow:0 0 14px rgba(201,169,98,.5);z-index:1;transition:all .4s ease}.plan-day .schedule-item:hover{padding-left:32px}.plan-day .schedule-item:hover::before{transform:translateY(-50%) scale(1.15);box-shadow:0 0 20px rgba(201,169,98,.65)}.plan-day .schedule-item:hover .time{color:#e0c989}.plan-day .schedule-item .event{font-family:"Libre Baskerville",serif;font-size:clamp(1.05rem,2.5vw,1.2rem);font-style:italic;line-height:1.45;color:#f5ede3;letter-spacing:.01em;text-transform:none}.plan-day .schedule-item .time{font-family:"Cinzel",serif;font-size:clamp(1.1rem,3vw,1.35rem);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#c9a962;white-space:nowrap;font-variant-numeric:tabular-nums;transition:color .35s ease}@media(max-width: 768px){.plan-day{padding:72px 0}.plan-day::before{background-image:url("../img/plan.jpg")}.plan-day .day-schedule-wrap{padding:32px 24px 32px 44px}.plan-day .schedule-item{grid-template-columns:1fr;align-items:flex-start;gap:8px;padding-left:24px}.plan-day .schedule-item .time{font-size:.85rem;letter-spacing:.22em}}.contacts{padding:100px 0;background-color:#1a1512;color:#f5ede3;position:relative}.contacts .container{position:relative;z-index:2;max-width:min(900px,94vw);margin:0 auto}.contacts h2{font-family:"Cinzel",serif;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0)}.contacts h2::before{content:"◆";display:block;text-align:center;font-size:.65rem;color:#c9a962;opacity:.7;margin-bottom:14px;letter-spacing:.5em;line-height:1}.contacts h2::after{content:"";display:block;width:80px;height:1px;background:linear-gradient(90deg, transparent, rgba(201, 169, 98, 0.5), transparent);margin:22px auto 0}.contacts h2{margin-bottom:48px}.contacts-wrapper{display:flex;justify-content:center;gap:28px;flex-wrap:wrap}.contacts .contact-person{text-align:center;padding:40px 36px;background:#2a2420;border:1px solid rgba(201,169,98,.28);box-shadow:0 8px 32px rgba(0,0,0,.35);outline:1px solid rgba(201,169,98,.08);outline-offset:5px;border-radius:4px;transition:all .4s ease;min-width:280px;flex:1 1 280px;max-width:380px}.contacts .contact-person:hover{transform:translateY(-4px);border-color:rgba(201,169,98,.5);box-shadow:0 20px 60px rgba(0,0,0,.45)}.contacts .contact-person h3{font-family:"Cinzel",serif;font-size:.65rem;color:#c9a962;margin-bottom:.5rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase}.contacts .contact-person .name{font-family:"Libre Baskerville",serif;font-size:1.75rem;color:#f5ede3;margin-bottom:.75rem}.contacts .contact-person .phone{font-size:.95rem;color:rgba(245,237,227,.72);margin-bottom:1.5rem}.contacts .contact-person .phone a{color:inherit;text-decoration:none}.contacts .contact-person .phone a:hover{color:#c9a962}.contacts .contact-person .social-links{display:flex;justify-content:center;gap:10px}.contacts .contact-person .social-link{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(0,0,0,0);color:#c9a962;font-size:1.15rem;transition:all .4s ease;border:1px solid rgba(201,169,98,.35);text-decoration:none}.contacts .contact-person .social-link:hover{background:#c9a962;color:#0f0e0d;border-color:#c9a962}@media(max-width: 768px){.contacts{padding:72px 0}}.transfer{position:relative;padding:100px 0;background-color:#242019;color:#f5ede3;overflow:hidden}.transfer .container{position:relative;z-index:2;max-width:min(800px,92vw);margin:0 auto}.transfer h2{font-family:"Cinzel",serif;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0)}.transfer h2::before{content:"◆";display:block;text-align:center;font-size:.65rem;color:#c9a962;opacity:.7;margin-bottom:14px;letter-spacing:.5em;line-height:1}.transfer h2::after{content:"";display:block;width:80px;height:1px;background:linear-gradient(90deg, transparent, rgba(201, 169, 98, 0.5), transparent);margin:22px auto 0}.transfer h2{margin-bottom:40px}.transfer p{text-align:center;line-height:1.8;color:rgba(245,237,227,.72);font-size:1.05rem}.transfer p.location-address{font-family:"Libre Baskerville",serif;font-size:1.35rem;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0);text-decoration:none}@media(max-width: 768px){.transfer{padding:72px 0}}.car-animation-container{width:100%;max-width:480px;margin:32px auto;overflow:hidden;position:relative;height:64px}.car-animation-container .road{width:100%;height:1px;background:linear-gradient(90deg, transparent, rgba(201, 169, 98, 0.4), transparent);position:absolute;bottom:6px;left:0}.car-animation-container .car{position:absolute;bottom:8px;left:0;width:48px;height:48px;animation:carMove 8s ease-in-out infinite}.car-animation-container .car img{width:100%;height:100%;animation:flipBus 8s ease-in-out infinite;filter:brightness(0) saturate(100%) invert(78%) sepia(28%) saturate(600%) hue-rotate(5deg);opacity:.9}@keyframes carMove{0%{left:-48px}45%{left:calc(100% + 48px)}50%{left:calc(100% + 48px)}95%{left:-48px}100%{left:-48px}}@keyframes flipBus{0%,45%{transform:scaleX(1)}50%,100%{transform:scaleX(-1)}}.dress-code{padding:100px 0;background-color:#1a1512;color:#f5ede3;background:linear-gradient(180deg, #1a1512 0%, #351f1e 100%);position:relative}.dress-code .container{max-width:min(800px,92vw);position:relative;z-index:2;padding-bottom:64px}.dress-code .container h2{font-family:"Cinzel",serif;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0)}.dress-code .container h2::before{content:"◆";display:block;text-align:center;font-size:.65rem;color:#c9a962;opacity:.7;margin-bottom:14px;letter-spacing:.5em;line-height:1}.dress-code .container h2::after{content:"";display:block;width:80px;height:1px;background:linear-gradient(90deg, transparent, rgba(201, 169, 98, 0.5), transparent);margin:22px auto 0}.dress-code .container h2{margin-bottom:36px}.dress-code .container .dress-code-intro{text-align:center;font-family:"Libre Baskerville",serif;font-style:italic;font-size:1.15rem;color:rgba(245,237,227,.72);max-width:32em;margin:0 auto 2.5rem;line-height:1.7}.dress-code .container .dress-carousel-block{margin-top:2.75rem}.dress-code .container .dress-carousel-block+.dress-code .container .dress-carousel-block{margin-top:3.5rem}.dress-code .container .dress-carousel-block__title{margin:0 0 1.25rem;text-align:center;font-family:"Cinzel",serif;font-size:.85rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#c9a962}.dress-code .container .color-palettes{margin-bottom:2.5rem}.dress-code .container .color-palettes .palette-title{margin:0 0 16px;font-family:"Cinzel",serif;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:#c9a962;display:flex;align-items:flex-start;justify-content:center;gap:8px;text-align:center}.dress-code .container .color-palettes .palette-title img{width:18px;height:18px;opacity:.8;filter:brightness(0) saturate(100%) invert(78%) sepia(28%) saturate(600%) hue-rotate(5deg)}.dress-code .container .color-palettes .forbidden-colors{margin-bottom:2rem}.dress-code .container .color-palettes .palette-swatches{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-bottom:1.5rem}.dress-code .container .color-palettes .swatch{width:44px;height:44px;border-radius:50%;border:1px solid rgba(201,169,98,.35);box-shadow:0 4px 16px rgba(0,0,0,.35);transition:transform .25s ease}.dress-code .container .color-palettes .swatch:hover{transform:scale(1.08);border-color:#c9a962}.dress-code .container .color-palettes .swatch.swatch-cream{background-color:#e8dfd4}.dress-code .container .color-palettes .swatch.swatch-sand{background-color:#c4a484}.dress-code .container .color-palettes .swatch.swatch-rose{background-color:#9a7f72}.dress-code .container .color-palettes .swatch.swatch-sage-light{background-color:#6b7a6e}.dress-code .container .color-palettes .swatch.swatch-sage{background-color:#4a5c4e}.dress-code .container .color-palettes .swatch.swatch-sage-muted{background-color:#8b7355}.dress-code .container .color-palettes .swatch.swatch-blush{background-color:#8a6a62}.dress-code .container .color-palettes .swatch.swatch-warm{background-color:#5c5348}.dress-code .container .color-palettes .swatch.swatch-yellow{background-color:#c9a020}.dress-code .container .color-palettes .swatch.swatch-green{background-color:#2d5a40}.dress-code .container .color-palettes .swatch.swatch-blue{background-color:#3a5a7a}.dress-code .container .color-palettes .swatch.swatch-red{background-color:#9a3a3a}.dress-code .container .color-palettes .swatch.swatch-white{background-color:#f0ebe5}.dress-code .container .color-palettes .swatch.swatch-black{background-color:#0a0a0a}.dress-code .dress-carousel{--slides-per-view: 1;--slide-gap: 12px;position:relative;max-width:min(960px,94vw);margin:0 auto;padding:0 48px;outline:none}@media(min-width: 600px){.dress-code .dress-carousel{--slides-per-view: 2}}@media(min-width: 900px){.dress-code .dress-carousel{--slides-per-view: 3}}.dress-code .dress-carousel:focus-visible{outline:2px solid #c9a962;outline-offset:8px}.dress-code .dress-carousel__viewport{overflow:hidden;border-radius:4px;padding:var(--slide-gap) 0;width:100%;container-type:inline-size}.dress-code .dress-carousel__track{display:flex;gap:var(--slide-gap);width:-moz-max-content;width:max-content;transition:transform .45s cubic-bezier(0.4, 0, 0.2, 1);will-change:transform}.dress-code .dress-carousel__slide{flex:0 0 auto;width:calc((100cqi - (var(--slides-per-view) - 1)*var(--slide-gap))/var(--slides-per-view));margin:0;aspect-ratio:3/4;max-height:min(52vh,420px);border-radius:4px;overflow:hidden;border:1px solid rgba(201,169,98,.35);box-shadow:0 8px 32px rgba(0,0,0,.35)}.dress-code .dress-carousel__slide img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.dress-code .dress-carousel__btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(201,169,98,.45);border-radius:50%;background:rgba(42,36,32,.92);color:#c9a962;font-family:"Cinzel",serif;font-size:1.75rem;line-height:1;cursor:pointer;transition:all .4s ease;padding:0 0 4px}.dress-code .dress-carousel__btn span{display:block}.dress-code .dress-carousel__btn:hover{background:#c9a962;color:#0f0e0d;border-color:#e0c989}.dress-code .dress-carousel__btn:focus-visible{outline:2px solid #e0c989;outline-offset:2px}.dress-code .dress-carousel__btn:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.dress-code .dress-carousel__btn--prev{left:0}.dress-code .dress-carousel__btn--next{right:0}.dress-code .dress-carousel__counter{margin:16px 0 0;text-align:center;font-family:"Cinzel",serif;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:#c9a962}.dress-code .dress-carousel__separator{margin:0 .35em;opacity:.6}@media(max-width: 768px){.dress-code .dress-carousel-block{margin-top:2rem}.dress-code .dress-carousel-block+.dress-code .dress-carousel-block{margin-top:2.75rem}.dress-code .dress-carousel{padding:0 40px}.dress-code .dress-carousel__btn{width:36px;height:36px;font-size:1.5rem}.dress-code .dress-carousel{--slide-gap: 8px}.dress-code .dress-carousel__slide{max-height:min(48vh,380px)}}.hints{position:relative;padding:100px 0;background-color:#0f0e0d;color:#f5ede3;overflow:hidden}.hints .container{position:relative;z-index:2;max-width:min(800px,92vw);margin:0 auto}.hints h2{font-family:"Cinzel",serif;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg, #e0c989 0%, #c9a962 45%, #9a7d3c 100%);-webkit-background-clip:text;background-clip:text;color:rgba(0,0,0,0)}.hints h2::before{content:"◆";display:block;text-align:center;font-size:.65rem;color:#c9a962;opacity:.7;margin-bottom:14px;letter-spacing:.5em;line-height:1}.hints h2::after{content:"";display:block;width:80px;height:1px;background:linear-gradient(90deg, transparent, rgba(201, 169, 98, 0.5), transparent);margin:22px auto 0}.hints h2{margin-bottom:40px}.hints a{color:#e0c989}.hints a:hover{color:#f5ede3}.hints .hint-intro{text-align:center;margin-bottom:2.5rem;color:rgba(245,237,227,.72);font-size:1.05rem;max-width:32em;margin-left:auto;margin-right:auto}.hints .hints-content{display:flex;flex-direction:column;gap:20px}.hints .hint-item{background:#2a2420;border:1px solid rgba(201,169,98,.28);box-shadow:0 8px 32px rgba(0,0,0,.35);outline:1px solid rgba(201,169,98,.08);outline-offset:5px;padding:28px 32px;border-radius:4px;transition:all .4s ease}.hints .hint-item:hover{border-color:rgba(201,169,98,.5);box-shadow:0 20px 60px rgba(0,0,0,.45)}.hints .hint-item h3{font-family:"Cinzel",serif;font-size:.9rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.75rem;color:#c9a962}.hints .hint-item p{line-height:1.75;color:rgba(245,237,227,.72);font-size:1rem;margin-bottom:0}@media(max-width: 768px){.hints{padding:72px 0}.hints .hint-item{padding:22px 20px}}.side-menu{position:fixed;top:0;left:-100%;width:min(320px,88%);height:100vh;background-color:#2a2420;z-index:9998;transition:left .35s ease;box-shadow:0 20px 60px rgba(0,0,0,.45);border-right:1px solid rgba(201,169,98,.25)}.side-menu.open{left:0}.side-menu .menu-content{padding:64px 28px;height:100%}.side-menu .menu-close{position:absolute;top:18px;right:20px;font-size:28px;color:#c9a962;cursor:pointer;line-height:1}.side-menu .menu-nav{margin-top:24px}.side-menu .menu-nav ul{list-style:none;padding:0;margin:0}.side-menu .menu-nav a{font-family:"Cinzel",serif;font-size:.95rem;letter-spacing:.1em;text-transform:uppercase;color:#f5ede3;text-decoration:none;display:block;padding:14px 0;border-bottom:1px solid rgba(201,169,98,.15);transition:all .4s ease}.side-menu .menu-nav a:hover{color:#c9a962;padding-left:8px}.burger-btn{position:fixed;top:20px;left:20px;z-index:10000;width:40px;height:40px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:rgba(42,36,32,.92);border:1px solid rgba(201,169,98,.35);border-radius:4px;box-shadow:0 8px 32px rgba(0,0,0,.35);cursor:pointer;padding:0}.burger-btn .burger-line{width:18px;height:1.5px;background:#c9a962;margin:3px 0;transition:all .2s}body:not(.content-visible) .burger-btn{display:none}@media(min-width: 1024px){.side-menu{width:340px}}@media(max-width: 1024px){.container{padding:0 15px}}@media(max-width: 768px){.container{padding:0 10px}h2{font-size:2rem}.section-padding{padding:60px 0}.hero-content{padding:0 15px}.rsvp-form{padding:0 15px}}@media(max-width: 480px){.hero-image{width:132%;margin:0}.hero-image .hero-names{font-size:2rem}.hero-image .hero-date{font-size:1rem}.info-details-item{padding:15px}.info-details-item .info-icon{font-size:1.5rem}}.form-error{color:#d47373;margin-top:5px;display:none}.form-group.error .form-error{display:block}.form-group.error input,.form-group.error textarea,.form-group.error select{box-shadow:0 0 0 2px rgba(212,115,115,.4)}