*,*:before,*:after{box-sizing:border-box}*{margin:0}html{interpolate-size:allow-keywords}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p{overflow-wrap:break-word;text-wrap:pretty}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;text-wrap:balance}#root,#app{isolation:isolate}:root{--aubergine-deep: #1e0a19;--aubergine: #2a1022;--aubergine-soft: #3b1a30;--aubergine-lift: #48213b;--ivory: #f6ede0;--ivory-dim: #dfd0c2;--ivory-faint: #b9a79c;--blush: #e7b7b6;--blush-soft: #f0cfcd;--gold: #d9b36c;--gold-deep: #a9803c;--ember: #e0764f;--font-serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", "Hoefler Text", Garamond, Georgia, "Times New Roman", serif;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--space-1: .375rem;--space-2: .75rem;--space-3: 1.25rem;--space-4: 2rem;--space-5: 3rem;--section-gap: clamp(4rem, 12vw, 7.5rem);--measure: 34rem;--radius: 4px;--radius-lg: 10px;--ease: cubic-bezier(.22, .61, .36, 1);color-scheme:dark;font-family:var(--font-sans);accent-color:var(--gold)}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{min-height:100dvh;background-color:var(--aubergine);color:var(--ivory);font-size:1rem;letter-spacing:.01em;-webkit-tap-highlight-color:transparent}::selection{background:var(--blush);color:var(--aubergine-deep)}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}a{color:var(--blush);text-decoration-color:color-mix(in srgb,var(--blush) 40%,transparent);text-underline-offset:3px;transition:color .25s var(--ease),text-decoration-color .25s var(--ease)}a:hover{color:var(--blush-soft);text-decoration-color:var(--blush-soft)}.page{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:100dvh;padding:2rem;text-align:center}.page h1{font-family:var(--font-serif);font-size:clamp(2.5rem,12vw,4rem);font-weight:400;color:var(--ivory)}.page p{color:var(--ivory-faint)}.invitation{position:relative;isolation:isolate;padding-bottom:calc(6.5rem + env(safe-area-inset-bottom));background:radial-gradient(120% 60% at 50% -10%,color-mix(in srgb,var(--aubergine-soft) 90%,var(--ember)) 0%,transparent 60%),radial-gradient(90% 50% at 85% 110%,var(--aubergine-soft) 0%,transparent 55%),var(--aubergine)}.invitation:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.55;background-image:radial-gradient(color-mix(in srgb,var(--ivory) 6%,transparent) .5px,transparent .6px);background-size:3px 3px}.section{scroll-margin-top:1.5rem;padding-inline:clamp(1.25rem,6vw,2.5rem);padding-block:var(--section-gap) 0}.section__inner{max-width:var(--measure);margin-inline:auto}.section__eyebrow{font-size:.6875rem;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:var(--space-2)}.section__title{font-family:var(--font-serif);font-size:clamp(1.75rem,7vw,2.375rem);font-weight:400;line-height:1.15;letter-spacing:.005em;color:var(--ivory)}.section__lede{margin-top:var(--space-3);color:var(--ivory-dim);line-height:1.75;font-size:.9375rem}.section__rule{width:100%;height:1px;margin-top:var(--space-4);border:0;background:linear-gradient(to right,transparent,color-mix(in srgb,var(--gold) 55%,transparent) 22%,color-mix(in srgb,var(--gold) 55%,transparent) 78%,transparent)}.section__body{margin-top:var(--space-4)}.card{padding:var(--space-3) var(--space-3) calc(var(--space-3) + .125rem);border:1px solid color-mix(in srgb,var(--gold) 22%,transparent);border-radius:var(--radius);background:linear-gradient(to bottom,color-mix(in srgb,var(--aubergine-soft) 70%,transparent),color-mix(in srgb,var(--aubergine-deep) 45%,transparent))}.hero{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;padding:clamp(3rem,10vh,5rem) clamp(1.25rem,6vw,2.5rem) clamp(2rem,8vh,4rem);text-align:center}.hero__glow{position:relative;width:100%;max-width:30rem}.hero__glow:before,.hero__glow:after{content:"";position:absolute;inset:-18% -12%;z-index:-1;border-radius:50%;pointer-events:none;background:radial-gradient(closest-side,color-mix(in srgb,var(--gold) 30%,transparent),color-mix(in srgb,var(--ember) 12%,transparent) 55%,transparent 75%);filter:blur(28px);animation:candle-breathe 7s ease-in-out infinite alternate}.hero__glow:after{inset:-6% 4%;background:radial-gradient(closest-side,color-mix(in srgb,var(--blush) 26%,transparent),transparent 70%);filter:blur(38px);animation-duration:11s;animation-delay:-3s}@keyframes candle-breathe{0%{opacity:.6;transform:scale(.97)}to{opacity:1;transform:scale(1.05)}}.hero__card{position:relative;padding:clamp(2rem,9vw,3.25rem) clamp(1.25rem,7vw,2.75rem);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);border-radius:var(--radius-lg);background:linear-gradient(170deg,color-mix(in srgb,var(--aubergine-lift) 72%,transparent),color-mix(in srgb,var(--aubergine-deep) 82%,transparent));box-shadow:0 1px color-mix(in srgb,var(--ivory) 8%,transparent) inset,0 30px 70px -30px #000000bf;animation:card-rise 1.2s var(--ease) both}.hero__card:after{content:"";position:absolute;inset:7px;border:1px solid color-mix(in srgb,var(--gold) 16%,transparent);border-radius:calc(var(--radius-lg) - 3px);pointer-events:none}@keyframes card-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.hero__monogram{display:inline-flex;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;margin-inline:auto;border:1px solid color-mix(in srgb,var(--gold) 50%,transparent);border-radius:50%;font-family:var(--font-serif);font-size:.9375rem;letter-spacing:.04em;color:var(--gold)}.hero__invitation{margin-top:var(--space-3);font-size:.8125rem;line-height:1.7;letter-spacing:.08em;text-transform:uppercase;color:var(--ivory-faint)}.hero__names{margin-top:var(--space-3);font-family:var(--font-serif);font-size:clamp(2.75rem,15vw,4.5rem);font-weight:400;line-height:1.02;letter-spacing:.01em;color:var(--ivory)}.hero__amp{display:block;margin-block:.1em;font-size:.42em;font-style:italic;color:var(--gold)}.hero__meta{margin-top:var(--space-4);display:grid;gap:var(--space-1)}.hero__date{font-family:var(--font-serif);font-size:1.0625rem;color:var(--ivory)}.hero__time,.hero__place{font-size:.8125rem;letter-spacing:.06em;color:var(--ivory-faint)}.hero__place{text-transform:uppercase}.hero__blessing{max-width:22rem;margin:var(--space-4) auto 0;padding-top:var(--space-3);border-top:1px solid color-mix(in srgb,var(--gold) 22%,transparent);font-family:var(--font-serif);font-style:italic;font-size:.9375rem;line-height:1.7;color:var(--blush)}.hero__actions{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);margin-top:clamp(2rem,7vh,3rem)}.hero__cue{display:inline-flex;flex-direction:column;align-items:center;gap:.5rem;font-size:.625rem;letter-spacing:.3em;text-transform:uppercase;color:var(--ivory-faint)}.hero__cue:after{content:"";width:1px;height:2.25rem;background:linear-gradient(to bottom,color-mix(in srgb,var(--gold) 70%,transparent),transparent);animation:cue-drift 2.8s ease-in-out infinite}@keyframes cue-drift{0%,to{opacity:.4;transform:scaleY(.7);transform-origin:top}50%{opacity:1;transform:scaleY(1);transform-origin:top}}.button{--button-bg: color-mix(in srgb, var(--gold) 16%, transparent);display:inline-flex;align-items:center;justify-content:center;gap:.625rem;min-height:3rem;padding:.75rem 1.75rem;border:1px solid color-mix(in srgb,var(--gold) 55%,transparent);border-radius:999px;background:var(--button-bg);color:var(--ivory);font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:transform .18s var(--ease),background-color .3s var(--ease),border-color .3s var(--ease),box-shadow .3s var(--ease)}.button:hover{background:color-mix(in srgb,var(--gold) 26%,transparent);border-color:var(--gold);box-shadow:0 0 24px -6px color-mix(in srgb,var(--gold) 45%,transparent)}.button:active{transform:scale(.97) translateY(1px);box-shadow:0 0 0 0 transparent}.button--quiet{border-color:color-mix(in srgb,var(--ivory) 22%,transparent);background:transparent;color:var(--ivory-dim)}.button--quiet:hover{border-color:color-mix(in srgb,var(--ivory) 45%,transparent);background:color-mix(in srgb,var(--ivory) 6%,transparent);box-shadow:none}.button:disabled{opacity:.55;cursor:default;transform:none}.bottom-nav{position:fixed;inset-inline:0;bottom:0;z-index:10;padding:.5rem clamp(.5rem,3vw,1rem) calc(.5rem + env(safe-area-inset-bottom));border-top:1px solid color-mix(in srgb,var(--gold) 20%,transparent);background:color-mix(in srgb,var(--aubergine-deep) 88%,transparent);-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1)}.bottom-nav__list{display:flex;align-items:stretch;justify-content:space-between;gap:.25rem;max-width:28rem;margin-inline:auto;padding:0;list-style:none}.bottom-nav__item{flex:1}.bottom-nav__link{display:flex;flex-direction:column;align-items:center;gap:.3rem;width:100%;min-height:3rem;padding:.4rem .25rem;border:0;border-radius:var(--radius);background:none;color:var(--ivory-faint);font-family:var(--font-sans);font-size:.5625rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:color .25s var(--ease),transform .18s var(--ease)}.bottom-nav__link:hover{color:var(--blush)}.bottom-nav__link:active{transform:scale(.94)}.bottom-nav__link[aria-current=true]{color:var(--ivory)}.bottom-nav__dot{width:4px;height:4px;border-radius:50%;background:transparent;transition:background-color .3s var(--ease),box-shadow .3s var(--ease)}.bottom-nav__link[aria-current=true] .bottom-nav__dot{background:var(--gold);box-shadow:0 0 8px color-mix(in srgb,var(--gold) 80%,transparent)}.bottom-nav__icon{font-family:var(--font-serif);font-size:1rem;line-height:1}.invitation__footer{margin-top:var(--section-gap);padding:var(--space-5) var(--space-3) 0;text-align:center}.invitation__footer-mark{font-family:var(--font-serif);font-size:1.125rem;letter-spacing:.18em;color:var(--gold)}.invitation__footer-note{margin-top:var(--space-2);font-size:.8125rem;font-style:italic;color:var(--ivory-faint)}@media(min-width:48rem){:root{--measure: 38rem}.bottom-nav{padding-block:.625rem}.bottom-nav__link{font-size:.625rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.hero__glow:before,.hero__glow:after{opacity:.85}}.story__list{display:grid;gap:var(--space-5);margin:0;padding:0;list-style:none}.story__item{position:relative;padding-left:var(--space-4)}.story__item:before{content:"";position:absolute;top:.55rem;bottom:calc(var(--space-5) * -1);left:3px;width:1px;background:linear-gradient(to bottom,color-mix(in srgb,var(--gold) 40%,transparent),color-mix(in srgb,var(--gold) 8%,transparent))}.story__item:last-child:before{display:none}.story__item:after{content:"";position:absolute;top:.4rem;left:0;width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px color-mix(in srgb,var(--gold) 70%,transparent)}.story__when{font-size:.6875rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}.story__title{margin-top:var(--space-1);font-family:var(--font-serif);font-size:1.1875rem;font-weight:400;color:var(--ivory)}.story__text{margin-top:var(--space-2);font-size:.9375rem;line-height:1.75;color:var(--ivory-dim)}.ceremony__events{display:grid;gap:var(--space-3)}.event__name{font-family:var(--font-serif);font-size:1.25rem;font-weight:400;color:var(--ivory)}.event__time{margin-top:var(--space-1);font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.event__where{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid color-mix(in srgb,var(--ivory) 10%,transparent);font-size:.9375rem;line-height:1.7;color:var(--ivory-dim)}.event__venue{display:block;color:var(--ivory)}.event__note{margin-top:var(--space-2);font-family:var(--font-serif);font-style:italic;font-size:.875rem;color:var(--blush)}.event__map{display:inline-block;margin-top:var(--space-3);font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase}.itinerary__days{display:grid;gap:var(--space-5)}.itinerary__day-name{font-family:var(--font-serif);font-size:1.25rem;font-weight:400;color:var(--ivory)}.itinerary__day-date{margin-left:.5rem;font-family:var(--font-sans);font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.itinerary__list{display:grid;gap:0;margin:var(--space-3) 0 0;padding:0;list-style:none}.itinerary__item{display:grid;grid-template-columns:5.25rem 1fr;gap:var(--space-2);padding-block:var(--space-3);border-top:1px solid color-mix(in srgb,var(--ivory) 8%,transparent)}.itinerary__item:last-child{border-bottom:1px solid color-mix(in srgb,var(--ivory) 8%,transparent)}.itinerary__time{font-size:.75rem;letter-spacing:.08em;color:var(--gold);padding-top:.15rem}.itinerary__title{font-size:.9375rem;color:var(--ivory)}.itinerary__place{margin-top:.15rem;font-size:.8125rem;color:var(--ivory-faint)}.itinerary__note{margin-top:.35rem;font-family:var(--font-serif);font-style:italic;font-size:.8125rem;color:var(--blush)}.travel__notes{display:grid;gap:var(--space-4)}.travel__note-title{font-family:var(--font-serif);font-size:1.0625rem;font-weight:400;color:var(--ivory)}.travel__note-body{margin-top:var(--space-2);font-size:.9375rem;line-height:1.75;color:var(--ivory-dim)}.travel__note-link{display:inline-block;margin-top:var(--space-2);font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase}.travel__stays-title{margin-top:var(--space-5);font-size:.6875rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}.travel__stays{display:grid;gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none}.stay__name{font-family:var(--font-serif);font-size:1rem;color:var(--ivory)}.stay__distance{margin-top:.2rem;font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.stay__note{margin-top:var(--space-2);font-size:.875rem;line-height:1.7;color:var(--ivory-dim)}.stay__link{display:inline-block;margin-top:var(--space-2);font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase}.dress__title{font-family:var(--font-serif);font-size:1.375rem;font-weight:400;font-style:italic;color:var(--blush)}.dress__body{margin-top:var(--space-3);font-size:.9375rem;line-height:1.8;color:var(--ivory-dim)}.dress__palette{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-4) 0 0;padding:0;list-style:none}.dress__swatch{display:flex;flex-direction:column;align-items:center;gap:.5rem;font-size:.625rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ivory-faint)}.dress__chip{width:2.75rem;height:2.75rem;border-radius:50%;border:1px solid color-mix(in srgb,var(--gold) 35%,transparent);box-shadow:0 6px 18px -10px #000c;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.dress__swatch:hover .dress__chip{transform:translateY(-3px) scale(1.04);box-shadow:0 10px 22px -10px #000000e6}.dress__asides{display:grid;gap:var(--space-2);margin:var(--space-4) 0 0;padding:0;list-style:none}.dress__aside{padding-left:var(--space-3);border-left:1px solid color-mix(in srgb,var(--gold) 35%,transparent);font-size:.875rem;line-height:1.7;color:var(--ivory-faint)}.gifts__body{font-family:var(--font-serif);font-size:1.0625rem;line-height:1.8;color:var(--ivory-dim)}.gifts__list{display:grid;gap:var(--space-2);margin:var(--space-4) 0 0;padding:0;list-style:none}.gift__name{font-family:var(--font-serif);font-size:1rem;color:var(--ivory)}.gift__note{margin-top:var(--space-1);font-size:.875rem;line-height:1.7;color:var(--ivory-faint)}.gift__link{display:inline-block;margin-top:var(--space-2);font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase}.gallery__strip{display:flex;gap:var(--space-3);margin-top:var(--space-4);margin-inline:calc(clamp(1.25rem,6vw,2.5rem)*-1);padding-inline:clamp(1.25rem,6vw,2.5rem);padding-bottom:var(--space-2);list-style:none;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.gallery__strip::-webkit-scrollbar{display:none}.gallery__plate{flex:0 0 auto;width:63%;max-width:15rem;scroll-snap-align:center}.gallery__frame{position:relative;aspect-ratio:4 / 5;overflow:hidden;border:1px solid color-mix(in srgb,var(--gold) 28%,transparent);border-radius:var(--radius);background:linear-gradient(150deg,var(--aubergine-lift),var(--aubergine-deep));transition:transform .4s var(--ease),border-color .4s var(--ease)}.gallery__plate:hover .gallery__frame,.gallery__plate:active .gallery__frame{transform:translateY(-4px);border-color:color-mix(in srgb,var(--gold) 60%,transparent)}.gallery__frame:after{content:"";position:absolute;inset:0;background:radial-gradient(70% 55% at 50% 25%,color-mix(in srgb,var(--gold) 18%,transparent),transparent 70%)}.gallery__plate:nth-child(2n) .gallery__frame{background:linear-gradient(150deg,var(--aubergine-soft),#24101f)}.gallery__plate:nth-child(3n) .gallery__frame{background:linear-gradient(150deg,color-mix(in srgb,var(--blush) 22%,var(--aubergine-soft)),var(--aubergine-deep))}.gallery__image{width:100%;height:100%;object-fit:cover}.gallery__caption{margin-top:var(--space-2);font-family:var(--font-serif);font-size:.8125rem;font-style:italic;color:var(--ivory-faint)}.gallery__hint{margin-top:var(--space-2);font-size:.625rem;letter-spacing:.24em;text-transform:uppercase;color:color-mix(in srgb,var(--ivory-faint) 70%,transparent)}.faq__list{display:grid;margin:0;padding:0;list-style:none;border-top:1px solid color-mix(in srgb,var(--ivory) 10%,transparent)}.faq__item{border-bottom:1px solid color-mix(in srgb,var(--ivory) 10%,transparent)}.faq__trigger{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) 0;border:0;background:none;color:var(--ivory);font-family:var(--font-serif);font-size:1.0625rem;text-align:left;cursor:pointer;transition:color .25s var(--ease)}.faq__trigger:hover{color:var(--blush)}.faq__sign{position:relative;flex:0 0 auto;width:12px;height:12px;margin-left:auto}.faq__sign:before,.faq__sign:after{content:"";position:absolute;inset:50% 0 auto;height:1px;background:var(--gold);transition:transform .35s var(--ease),opacity .35s var(--ease)}.faq__sign:after{transform:rotate(90deg)}.faq__trigger[aria-expanded=true] .faq__sign:after{transform:rotate(90deg) scaleX(0);opacity:0}.faq__answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}.faq__answer[data-open=true]{grid-template-rows:1fr}.faq__answer-inner{overflow:hidden}.faq__answer-text{padding-bottom:var(--space-3);font-size:.9375rem;line-height:1.8;color:var(--ivory-dim)}.contacts__list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.contact__name{font-family:var(--font-serif);font-size:1.0625rem;color:var(--ivory)}.contact__role{margin-top:.2rem;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.contact__links{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-3)}.contact__link{font-size:.8125rem;letter-spacing:.04em}.rsvp{padding-bottom:var(--space-2)}.rsvp__card{margin-top:var(--space-4);padding:clamp(1.5rem,7vw,2.25rem) clamp(1.25rem,6vw,2rem);border:1px solid color-mix(in srgb,var(--gold) 32%,transparent);border-radius:var(--radius-lg);background:linear-gradient(to bottom,color-mix(in srgb,var(--aubergine-lift) 55%,transparent),color-mix(in srgb,var(--aubergine-deep) 60%,transparent));box-shadow:0 24px 60px -34px #000c}.rsvp__deadline{font-size:.8125rem;line-height:1.7;color:var(--ivory-faint)}.rsvp__form{display:grid;gap:var(--space-4);margin-top:var(--space-4)}.rsvp__form fieldset{border:0;padding:0;min-inline-size:0}.rsvp__form legend{padding:0}.field{display:grid;gap:var(--space-2)}.field__label{font-size:.6875rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ivory-faint)}.field__input,.field__select,.field__textarea{width:100%;min-height:3rem;padding:.75rem .875rem;border:1px solid color-mix(in srgb,var(--ivory) 18%,transparent);border-radius:var(--radius);background:color-mix(in srgb,var(--aubergine-deep) 55%,transparent);color:var(--ivory);font-family:var(--font-sans);font-size:1rem;transition:border-color .3s var(--ease),box-shadow .3s var(--ease),background-color .3s var(--ease)}.field__textarea{min-height:6rem;resize:vertical;line-height:1.7}.field__input::placeholder,.field__textarea::placeholder{color:color-mix(in srgb,var(--ivory-faint) 60%,transparent)}.field__input:focus,.field__select:focus,.field__textarea:focus{outline:none;border-color:color-mix(in srgb,var(--gold) 70%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 14%,transparent)}.field__input[aria-invalid=true],.field__select[aria-invalid=true]{border-color:color-mix(in srgb,var(--blush) 75%,transparent)}.field__error{font-size:.8125rem;color:var(--blush)}.field__hint{font-size:.8125rem;color:var(--ivory-faint)}.choice{display:grid;gap:var(--space-2)}.choice__option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid color-mix(in srgb,var(--ivory) 16%,transparent);border-radius:var(--radius);cursor:pointer;transition:border-color .3s var(--ease),background-color .3s var(--ease),transform .18s var(--ease)}.choice__option:hover{border-color:color-mix(in srgb,var(--gold) 45%,transparent);background:color-mix(in srgb,var(--gold) 7%,transparent)}.choice__option:active{transform:scale(.99)}.choice__option:has(input:checked){border-color:color-mix(in srgb,var(--gold) 70%,transparent);background:color-mix(in srgb,var(--gold) 12%,transparent)}.choice__option input{position:absolute;opacity:0;pointer-events:none}.choice__mark{flex:0 0 auto;display:grid;place-items:center;width:1.125rem;height:1.125rem;border:1px solid color-mix(in srgb,var(--gold) 60%,transparent);border-radius:50%}.choice__mark:after{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--gold);transform:scale(0);transition:transform .25s var(--ease)}.choice__option:has(input:checked) .choice__mark:after{transform:scale(1)}.choice__option:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:3px}.choice__text{font-size:.9375rem;color:var(--ivory)}.rsvp__submit{justify-self:stretch}.seal{position:relative;display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;border:1px solid color-mix(in srgb,var(--gold) 70%,transparent);background:radial-gradient(circle at 35% 30%,var(--gold),var(--gold-deep));color:var(--aubergine-deep);font-family:var(--font-serif);font-size:.625rem;letter-spacing:0;transition:transform .25s var(--ease)}.button:hover .seal{transform:rotate(-8deg) scale(1.06)}.button:active .seal{transform:scale(.9)}.rsvp__success{display:grid;justify-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:clamp(2rem,9vw,3rem) var(--space-3);border:1px solid color-mix(in srgb,var(--gold) 32%,transparent);border-radius:var(--radius-lg);background:linear-gradient(to bottom,color-mix(in srgb,var(--aubergine-lift) 55%,transparent),color-mix(in srgb,var(--aubergine-deep) 60%,transparent));text-align:center;animation:success-settle .6s var(--ease) both}@keyframes success-settle{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rsvp__seal{position:relative;display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:50%;border:1px solid color-mix(in srgb,var(--gold) 55%,transparent);background:radial-gradient(circle at 34% 28%,var(--gold),var(--gold-deep) 70%,#7d5a26);color:var(--aubergine-deep);font-family:var(--font-serif);font-size:1.125rem;letter-spacing:.02em;box-shadow:0 10px 30px -12px color-mix(in srgb,var(--gold) 60%,transparent);animation:seal-press .75s var(--ease) both}.rsvp__seal:after{content:"";position:absolute;inset:-.5rem;border-radius:50%;border:1px solid color-mix(in srgb,var(--gold) 60%,transparent);animation:seal-open 1.4s var(--ease) .35s both}@keyframes seal-press{0%{opacity:0;transform:scale(1.5) rotate(-14deg)}60%{opacity:1;transform:scale(.94) rotate(2deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes seal-open{0%{opacity:.9;transform:scale(.85)}to{opacity:0;transform:scale(1.7)}}.rsvp__success-title{font-family:var(--font-serif);font-size:clamp(1.375rem,6vw,1.75rem);font-weight:400;color:var(--ivory)}.rsvp__success-text{max-width:26rem;font-size:.9375rem;line-height:1.8;color:var(--ivory-dim)}.rsvp__summary{display:grid;gap:var(--space-1);width:100%;max-width:22rem;margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid color-mix(in srgb,var(--gold) 22%,transparent);font-size:.875rem;text-align:left;color:var(--ivory-dim)}.rsvp__summary div{display:flex;justify-content:space-between;gap:var(--space-3)}.rsvp__summary dt{color:var(--ivory-faint)}.rsvp__summary dd{margin:0;color:var(--ivory);text-align:right}@media(min-width:48rem){.ceremony__events,.travel__stays,.gifts__list,.contacts__list{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery__plate{width:40%;max-width:13rem}}
