@font-face{font-family:Red Hat Display;src:url(/assets/RedHatDisplay-Bold-NM7yhIdt.otf) format("opentype");font-weight:700;font-display:swap}:root{font-family:Arial,sans-serif;color:#20204b;background:#c7b6f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}::selection{background:#20204b;color:#fff9ec}:focus-visible{outline:3px solid #ec542e;outline-offset:4px}.invitation{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;padding:0 clamp(24px,5vw,76px)}.masthead,.footer{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:76px;font-size:11px;font-weight:700;letter-spacing:.12em}.masthead{border-bottom:1px solid rgba(32,32,75,.35)}.footer{border-top:1px solid rgba(32,32,75,.35);min-height:63px}.content{flex:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:center;gap:4vw;padding:36px 0}.invitation-copy{position:relative;z-index:1}h1,h2,p{margin:0}h1{font-family:Red Hat Display,Arial,sans-serif;font-weight:700;font-size:clamp(64px,8.2vw,122px);line-height:.87;letter-spacing:-.04em}h1 span{color:#fff9ec;background:#20204b;padding:0 .08em}.coming-soon{margin-top:32px;font-family:Red Hat Display,Arial,sans-serif;font-size:clamp(20px,2vw,27px);font-weight:700}.intro{max-width:350px;margin-top:10px;font-size:15px;line-height:1.55}.rsvp-area{margin-top:26px}.rsvp-toggle,.submit-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border:0;background:#20204b;color:#fff9ec;font-weight:700}.rsvp-toggle{width:195px;min-height:58px;padding:0 20px;font-size:15px;transition:background .2s,color .2s}.rsvp-toggle:hover{background:#fff9ec;color:#20204b}.rsvp-toggle svg{width:22px;transition:transform .35s cubic-bezier(.16,1,.3,1)}.rsvp-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.rsvp-panel{max-width:800px;padding-top:26px;animation:reveal .45s cubic-bezier(.16,1,.3,1) both}.rsvp-panel[hidden]{display:none}.form-heading h2{font-family:Red Hat Display,Arial,sans-serif;font-size:24px}.form-heading p{margin-top:5px;font-size:14px;line-height:1.4}.form-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0;margin:20px 0 0;padding:0;border:0}label{display:grid;gap:7px;font-size:14px;font-weight:700}input{width:100%;min-width:0;height:46px;border:1px solid #20204b;border-radius:0;background:#f7f1ff;color:#20204b;padding:0 12px;font-size:14px}input::placeholder{color:#5c5879;opacity:1}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px}.form-footer p{max-width:300px;font-size:14px;line-height:1.4}.submit-button{min-height:44px;padding:0 16px;white-space:nowrap}.submit-button:disabled{opacity:.55;cursor:not-allowed}.artwork{position:relative;width:min(100%,560px);aspect-ratio:1;justify-self:center}.js.is-ready .artwork{animation:artwork-entrance .9s cubic-bezier(.16,1,.3,1) both}.artwork-orbit{position:absolute;inset:12%;border:1.5px solid #20204b;border-radius:50%}.orbit-one{transform:rotate(-32deg) scaleX(.66)}.orbit-two{transform:rotate(32deg) scaleX(.66)}.artwork-disc{position:absolute;inset:21%;display:grid;place-items:center;border-radius:50%;background:#ec542e;color:#20204b;text-align:center;transform:rotate(-12deg)}.artwork-disc span{font-family:Red Hat Display,Arial,sans-serif;font-size:clamp(24px,3.5vw,50px);font-weight:700;line-height:.95;letter-spacing:-.04em}.artwork-spark{position:absolute;fill:#fff9ec}.spark-one{width:16%;top:7%;right:16%}.spark-two{width:8%;bottom:17%;left:14%}.artwork-caption{position:absolute;right:0;bottom:10%;font-size:10px;line-height:1.5;font-weight:700;letter-spacing:.08em}.loader{display:none}.js .loader{position:fixed;z-index:10;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:26px;background:#20204b;color:#fff9ec;transition:opacity .65s ease,visibility .65s}.js.is-ready .loader{opacity:0;visibility:hidden;pointer-events:none}.loader-mark{width:54px;height:54px;position:relative;animation:loader-turn 2s linear infinite}.loader-mark span{position:absolute;width:24px;height:24px;background:#c7b6f3;border-radius:50%}.loader-mark span:nth-child(1){top:0;left:15px}.loader-mark span:nth-child(2){top:15px;right:0}.loader-mark span:nth-child(3){bottom:0;left:15px}.loader-mark span:nth-child(4){top:15px;left:0}.loader-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}@keyframes loader-turn{to{transform:rotate(360deg)}}@keyframes reveal{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes artwork-entrance{0%{opacity:0;transform:scale(.92) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media(min-width:761px){.content:has(.rsvp-panel:not([hidden])){grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr)}}@media(max-width:760px){.invitation{padding:0 24px}.masthead,.footer{min-height:60px;font-size:11px}.masthead span:last-child{text-align:right}.content{display:flex;flex-direction:column-reverse;align-items:stretch;gap:10px;padding:18px 0 28px}.artwork{width:min(52vw,220px);margin:0 auto;flex:none}.artwork-disc span{font-size:clamp(17px,5vw,24px)}.artwork-caption{font-size:7px}h1{font-size:clamp(58px,12vw,90px)}.coming-soon,.rsvp-area{margin-top:20px}.form-fields{grid-template-columns:1fr}.form-footer{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
