@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Great+Vibes&family=Montserrat:wght@300;400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&family=Cormorant:ital,wght@0,300..700;1,300..700&family=Great+Vibes&family=Marck+Script&family=Meddon&family=Meow+Script&display=swap";.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg) var(--spacing-sm)}.hero__content{text-align:center;max-width:600px}.hero__logo{margin-bottom:var(--spacing-lg)}.hero__logo-text{font-size:2rem;color:var(--text-secondary);font-family:var(--font-cursive)}.hero__photos{display:flex;gap:var(--spacing-md);justify-content:center;margin-bottom:var(--spacing-lg)}.hero__photo-item{text-align:center;flex:0 1 auto}.hero__photo-wrapper{width:180px;height:240px;margin-bottom:var(--spacing-sm);overflow:hidden;border-radius:var(--radius-md)}.hero__image{width:100%;height:100%;object-fit:cover;filter:grayscale(100%)}.hero__name{font-family:var(--font-timeline);font-size:2rem;color:var(--text-primary);margin:0}.hero__description{max-width:500px;margin:0 auto}.hero__title{font-family:var(--font-primary);font-size:3rem;color:var(--text-primary);margin-bottom:var(--spacing-sm);font-weight:600}.hero__text{font-family:var(--font-primary);font-size:1.5rem;line-height:1.6;color:var(--text-primary);white-space:pre-line;margin:0}@media(max-width:768px){.hero__photos{gap:var(--spacing-sm)}.hero__photo-wrapper{width:140px;height:190px}}.program{padding:var(--spacing-lg) var(--spacing-sm)}.program__container{max-width:500px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.program__content{text-align:center}.program__title{font-size:3rem;color:var(--text-primary);margin-bottom:var(--spacing-md);line-height:1}.program__schedule{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.program__item{display:flex;justify-content:center}.program__time{display:inline-block;width:300px}@media(max-width:768px){.program__title{font-size:2.5rem}}.dresscode{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg) var(--spacing-sm)}.dresscode__content{text-align:center;max-width:900px;width:100%}.dresscode__header{display:flex;flex-direction:column;align-items:center;margin-bottom:var(--spacing-lg)}.dresscode__title{font-size:3rem;margin-bottom:var(--spacing-md)}.dresscode__palette{display:flex;gap:var(--spacing-sm)}.dresscode__palette-swatch{width:80px;height:80px}.dresscode__description{font-family:var(--font-primary);font-size:1.75rem;max-width:700px;margin:0 auto var(--spacing-lg);line-height:1.6}.dresscode__groups{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.dresscode__group{text-align:center}.dresscode__group-title{font-family:var(--font-primary);font-size:1.5rem;color:var(--text-primary);letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--spacing-md)}.dresscode__colors{display:flex;justify-content:center;gap:var(--spacing-sm);flex-wrap:wrap}.dresscode__color-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.dresscode__color-swatch{width:60px;height:60px;border-radius:50%}.dresscode__color-name{font-family:var(--font-primary);font-size:.9rem;color:var(--text-primary);text-align:center}.dresscode__reference{margin-top:var(--spacing-lg);text-align:center}.dresscode__reference-button{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-gray-800);color:var(--text-light);font-family:var(--font-sans);font-size:.875rem;font-weight:500;letter-spacing:.05em;text-decoration:none;text-transform:uppercase;transition:background-color var(--transition-fast);margin-bottom:var(--spacing-md);border-radius:var(--radius-md)}.dresscode__reference-button:hover{background-color:var(--color-gray-700);color:var(--text-light)}.dresscode__reference-button:active{transform:translateY(0)}@media(max-width:768px){.dresscode__palette-swatch{width:60px;height:60px}.dresscode__groups{grid-template-columns:1fr;gap:var(--spacing-lg)}.dresscode__color-swatch{width:50px;height:50px}}.location{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.location__container{max-width:500px;text-align:center;background:#ffffff80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-silver);border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-sm);margin:0 auto}.location__title{font-size:3rem;margin:0}.location__venue-name{font-family:var(--font-primary);font-size:1.8rem;font-weight:500;color:var(--text-primary);margin:0 0 var(--spacing-xs)}.location__address{font-family:var(--font-sans);font-size:1.2rem;color:var(--text-secondary);margin:0 0 var(--spacing-xs)}.location__description{font-family:var(--font-primary);font-size:1.2rem;font-style:italic;color:var(--color-gray-700);margin:0}.location__button{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-gray-800);color:var(--text-light);font-family:var(--font-sans);font-size:.875rem;font-weight:500;letter-spacing:.05em;text-decoration:none;text-transform:uppercase;transition:background-color var(--transition-fast);margin-top:var(--spacing-md);border-radius:var(--radius-md)}.location__button:hover{background-color:var(--color-gray-700);color:var(--text-light)}.location__map{width:100%;border:1px solid var(--color-gray-300);overflow:hidden}.location__map iframe{display:block;filter:grayscale(30%)}.rsvp{padding:var(--spacing-lg) var(--spacing-sm)}.rsvp__container{max-width:650px;margin:0 auto;text-align:center;background:#ffffff80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-silver);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);margin:0 auto var(--spacing-lg)}.rsvp__header{margin-bottom:var(--spacing-md)}.rsvp__title{font-size:3rem;color:var(--text-primary);margin:0}.rsvp__form-wrapper{position:relative;overflow:hidden}.yandex-form-overlay{position:absolute;bottom:8px;left:0;right:0;height:56px;background:var(--color-silver-light);z-index:10}.rsvp__iframe{width:100%;border:none;background-color:transparent;margin-bottom:-64px}:root{--color-silver: #D8D8D8;--color-silver-light: #F0F0F0;--color-silver-dark: #C0C0C0;--color-gray-100: #F5F5F5;--color-gray-200: #E5E5E5;--color-gray-300: #D4D4D4;--color-gray-400: #A3A3A3;--color-gray-500: #737373;--color-gray-600: #525252;--color-gray-700: #404040;--color-gray-800: rgba(38, 38, 38, .42);--color-gray-900: #171717;--color-blue-steel: #6B7B8C;--color-blue-light: #A4B8C4;--color-charcoal: #3D4249;--bg-primary: #FAFAFA;--bg-paper: linear-gradient(135deg, #F8F8F8 0%, #ECECEC 50%, #F5F5F5 100%);--text-primary: #2D2D2D;--text-secondary: #5A5A5A;--text-light: #FFFFFF;--text-muted: #888888;--font-primary: "Cormorant", serif;--font-script: "Great Vibes", "Tangerine", cursive;--font-sans: "Montserrat", "Helvetica Neue", sans-serif;--font-cursive: "Meddon", cursive;--font-timeline: "Great Vibes", cursive;--font-meow: "Meow Script", cursive;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--gradient-metallic: linear-gradient( 135deg, #F5F5F5 0%, #DEDEDE 25%, #ECECEC 50%, #D0D0D0 75%, #E8E8E8 100% );--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-primary);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.paper-texture{background:url(/images/background.png) center/cover no-repeat;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-primary);font-weight:400;line-height:1.2}.script-font{font-family:var(--font-script);font-weight:400}.sans-font{font-family:var(--font-sans)}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-blue-steel)}img{max-width:100%;height:auto;display:block}button{font-family:var(--font-sans);cursor:pointer;border:none;background:none}input,textarea,select{font-family:var(--font-primary);font-size:1rem}.container{width:100%;max-width:600px;margin:0 auto;padding:0 var(--spacing-sm)}.text-center{text-align:center}.dark-label{background-color:var(--color-gray-800);color:var(--text-light);padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-sans);font-size:.875rem;font-weight:400;letter-spacing:.05em}.tape-decoration{background:url(/images/back1.png) center/cover;padding:2.5rem 3rem;transform:rotate(-2deg);display:inline-block;position:relative;overflow:hidden}.placeholder-image{background:linear-gradient(135deg,#f5f5f5,#e8e8e8);display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-family:var(--font-sans);font-size:.75rem}.metallic-shine{background:linear-gradient(135deg,#fff0,#ffffff1a 45%,#ffffff4d,#ffffff1a 55%,#fff0);background-size:200% 200%;animation:shine 3s infinite}@keyframes shine{0%{background-position:200% 200%}to{background-position:-200% -200%}}@media(max-width:768px){html{font-size:14px}.container{padding:0 var(--spacing-sm)}.section{padding:var(--spacing-md) 0}}.calendar{max-width:100%;margin:0 auto}.calendar__content{padding:var(--spacing-lg) var(--spacing-md);text-align:center}.calendar__title{font-size:3rem;color:var(--text-primary);margin-bottom:var(--spacing-md)}.calendar__widget{max-width:450px;margin:0 auto;background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-silver-dark);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-md)}.calendar__header{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-silver)}.calendar__month{font-family:var(--font-primary);font-size:1.5rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.1em}.calendar__year{font-family:var(--font-primary);font-size:1.5rem;color:var(--color-blue-steel)}.calendar__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:var(--spacing-xs)}.calendar__weekday{font-family:var(--font-sans);font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;padding:var(--spacing-xs) 0}.calendar__days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar__day{font-family:var(--font-primary);font-size:1rem;color:var(--text-secondary);padding:.5rem;aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition-fast)}.calendar__day--empty{visibility:hidden}.calendar__day--selected{background:var(--gradient-metallic);color:var(--text-primary);font-weight:700;box-shadow:0 2px 8px #00000026;transform:scale(1.1);border:2px solid var(--color-blue-steel)}@media(max-width:768px){.calendar__title{font-size:2.5rem}.calendar__content{padding:var(--spacing-md)}.calendar__widget{max-width:280px;padding:var(--spacing-sm)}.calendar__day{font-size:.875rem;padding:.375rem}}.gifts{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg) var(--spacing-sm)}.gifts__content{text-align:center;max-width:700px;width:100%}.gifts__title{font-size:3rem;margin-bottom:var(--spacing-md)}.gifts__description{font-family:var(--font-primary);font-size:1.75rem;color:var(--text-primary);margin-bottom:var(--spacing-md)}.gifts__no-flowers{background:#ffffff80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-silver);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);margin:0 auto var(--spacing-lg)}.gifts__no-flowers-text{font-family:var(--font-primary);font-size:1.5rem;color:var(--text-primary);margin:0;line-height:1.6}.gifts__contact{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-silver)}.gifts__contact-title{font-size:3rem;margin-bottom:var(--spacing-sm)}.gifts__contact-description{font-family:var(--font-primary);font-size:1.75rem;color:var(--text-primary);margin-bottom:var(--spacing-md);line-height:1.6}.gifts__organizers{display:flex;flex-direction:column;gap:var(--spacing-md);align-items:center}.gifts__organizer{text-align:center}.gifts__organizer-name{font-family:var(--font-primary);font-size:1.25rem;color:var(--text-primary);font-weight:600;margin-bottom:var(--spacing-xs)}.gifts__organizer-phone{font-family:var(--font-sans);font-size:1.125rem;color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast)}.gifts__organizer-phone:hover{color:var(--text-primary)}.calendar-program{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg) var(--spacing-sm)}.calendar-program__container{text-align:center;width:100%}.calendar-program__title{margin-bottom:var(--spacing-sm);font-size:3rem}.calendar-program__date{display:flex;flex-direction:column;align-items:center;margin-bottom:var(--spacing-md)}.calendar-program__month{font-family:var(--font-primary);font-size:2rem;color:var(--text-primary)}.calendar-program__year{font-family:var(--font-meow);font-size:2rem;color:var(--text-secondary)}.calendar-program__days{display:flex;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.calendar-program__day{width:64px;height:64px;display:flex;align-items:center;justify-content:center;font-family:var(--font-primary);font-size:2rem;color:var(--text-primary)}.calendar-program__day--wedding{position:relative;color:var(--text-light);font-weight:600;z-index:1}.calendar-program__day--wedding:before{content:"";position:absolute;top:55%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;background-image:url(/images/heart.svg);background-size:contain;background-repeat:no-repeat;background-position:center;filter:invert(9%) sepia(3%) saturate(0%) hue-rotate(94deg) brightness(1000%) contrast(30%);z-index:0}.calendar-program__day--wedding .calendar-program__day-number{position:relative;z-index:2}.calendar-program__day-number{font:var(--font-meow);display:block}.calendar-program__timeline{position:relative;padding-top:var(--spacing-md)}.calendar-program__timeline:before{content:"";position:absolute;left:50%;top:-40px;bottom:-192px;width:2px;background-color:#000;filter:invert(9%) sepia(3%) saturate(0%) hue-rotate(94deg) brightness(50%) contrast(30%) opacity(70%);transform:translate(-50%)}.calendar-program__event{position:relative;display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:auto 10px 10px;column-gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);z-index:1}.calendar-program__event:nth-child(odd){text-align:right}.calendar-program__event:nth-child(odd) .calendar-program__event-time{grid-column:1;grid-row:1;justify-self:end}.calendar-program__event:nth-child(odd) .calendar-program__event-dot{grid-column:2;grid-row:2;align-self:center}.calendar-program__event:nth-child(odd) .calendar-program__event-description{grid-column:1;grid-row:3;justify-self:end}.calendar-program__event:nth-child(2n){text-align:left}.calendar-program__event:nth-child(2n) .calendar-program__event-time{grid-column:3;grid-row:1;justify-self:start}.calendar-program__event:nth-child(2n) .calendar-program__event-dot{grid-column:2;grid-row:2;align-self:center}.calendar-program__event:nth-child(2n) .calendar-program__event-description{grid-column:3;grid-row:3;justify-self:start}.calendar-program__event-time{font-family:var(--font-meow);font-size:2rem;color:var(--text-primary)}.calendar-program__event-dot{width:24px;height:24px;background-image:url(/images/heart.svg);background-size:contain;background-repeat:no-repeat;background-position:center;filter:invert(9%) sepia(3%) saturate(0%) hue-rotate(94deg) brightness(1000%) contrast(30%);align-self:center}.calendar-program__event-description{font-size:2rem;color:var(--text-primary);line-height:1.4;font-family:var(--font-timeline)}
