/* Page Custom CSS. All styles are scoped to this component. */
#mc-invitation{--mc-purple:#736d80;--mc-cream:#e1ded1;--mc-ink:#37323f;position:relative;isolation:isolate;overflow:hidden;background:var(--mc-purple);padding:68px 24px;min-height:700px;color:var(--mc-cream);text-align:center;transition:background .9s ease,color .9s ease;font-family:inherit}
#mc-invitation *{box-sizing:border-box}
#mc-invitation [hidden]{display:none!important}
#mc-invitation .mc-eyebrow{font:500 11px/1.5 Montserrat,Arial,sans-serif;letter-spacing:.28em;margin:0 0 22px;padding:0;color:inherit}
#mc-invitation .mc-title{font-family:the-youngest-serif,Cormorant,Georgia,serif;font-size:clamp(34px,5vw,58px);font-weight:400;line-height:1.15;letter-spacing:-.025em;color:inherit;margin:0 0 18px;padding:0}
#mc-invitation .mc-subtitle{font:400 14px/1.8 Montserrat,Arial,sans-serif;color:inherit;margin:0 auto;max-width:500px;padding:0}
#mc-invitation .mc-intro{transition:opacity .65s ease,transform .65s ease}
#mc-invitation .mc-envelope{display:block;position:relative;width:min(410px,90%);aspect-ratio:1.6;margin:100px auto 35px;border:0;padding:0;border-radius:3px;background:transparent;cursor:pointer;perspective:1100px;appearance:none;color:var(--mc-ink);box-shadow:0 26px 45px -17px #211a3b66;-webkit-tap-highlight-color:transparent}
#mc-invitation .mc-back{position:absolute;inset:0;background:#b8b2a2;border-radius:3px}
#mc-invitation .mc-card{position:absolute;inset:12px 16px 14px;background:#f5f2e9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:17px;box-shadow:0 0 0 1px #b4a99744,inset 0 0 0 9px #f5f2e9,inset 0 0 0 10px #b4a99766;transition:transform 1.3s cubic-bezier(.22,.61,.36,1) .8s;z-index:2}
#mc-invitation .mc-card>span{font:9px/1.4 Arial,sans-serif;letter-spacing:.23em}
#mc-invitation .mc-card strong{font:400 clamp(24px,4vw,35px)/1.2 the-youngest-serif,Georgia,serif}
#mc-invitation .mc-card i{font:italic 13px/1.4 Georgia,serif}
#mc-invitation .mc-pocket{position:absolute;inset:0;z-index:3;background:linear-gradient(145deg,#e9e5d9,#d1cbbd);clip-path:polygon(0 0,50% 55%,100% 0,100% 100%,0 100%);border-radius:3px}
#mc-invitation .mc-pocket:after{content:"";position:absolute;inset:0;background:#e1ded1;clip-path:polygon(0 100%,50% 45%,100% 100%)}
#mc-invitation .mc-flap{position:absolute;inset:0 0 auto;height:57%;background:linear-gradient(#eeeadf,#d8d2c3);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top center;transition:transform 1.05s ease,z-index 0s .5s;z-index:4;backface-visibility:visible}
#mc-invitation .mc-seal{position:absolute;top:45%;left:50%;transform:translate(-50%,-12%);width:57px;height:57px;border-radius:50%;border:3px double #b5adbf;background:var(--mc-purple);color:var(--mc-cream);display:flex;align-items:center;justify-content:center;gap:2px;font:16px/1 Georgia,serif;box-shadow:0 3px 8px #30293d33;z-index:5;transition:opacity .25s,transform .35s}
#mc-invitation .mc-seal span{font-size:10px}
#mc-invitation.mc-opening .mc-flap{transform:rotateX(180deg);z-index:1}
#mc-invitation.mc-opening .mc-card{transform:translateY(-48%)}
#mc-invitation.mc-opening .mc-seal{opacity:0;transform:translate(-50%,12%) scale(.85)}
#mc-invitation .mc-hint{font:11px/1.7 Montserrat,Arial,sans-serif;letter-spacing:.02em;margin:0 0 14px;padding:0;color:inherit}
#mc-invitation .mc-skip{background:none;border:0;border-bottom:1px solid currentColor;padding:4px 0;color:inherit;font:12px/1.6 Montserrat,Arial,sans-serif;cursor:pointer;border-radius:0}
#mc-invitation button:focus-visible,#mc-invitation a:focus-visible{outline:3px solid currentColor;outline-offset:7px}
#mc-invitation.mc-leaving .mc-intro{opacity:0;transform:translateY(-16px);pointer-events:none}
#mc-invitation.mc-ready{background:#f6f4ef;color:var(--mc-ink);min-height:700px}
#mc-invitation .mc-form{max-width:980px;margin:0 auto}
#mc-invitation.mc-pending .mc-form{position:absolute;top:0;left:0;width:100%;visibility:hidden;pointer-events:none}
#mc-invitation.mc-ready .mc-form{animation:mc-arrive .65s ease both}
#mc-invitation .mc-form .mc-subtitle{margin-bottom:35px}
#mc-invitation .mc-direct{font:12px/1.8 Arial,sans-serif;margin:24px 0 0;color:inherit}
#mc-invitation .mc-direct a{color:inherit;text-decoration:underline}
@keyframes mc-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:600px){#mc-invitation{padding:48px 18px;min-height:620px}#mc-invitation .mc-envelope{margin-top:100px;margin-bottom:32px}#mc-invitation .mc-card{gap:12px}#mc-invitation .mc-hint{max-width:240px;margin-left:auto;margin-right:auto}#mc-invitation .mc-form .mc-title{font-size:34px}}
@media(prefers-reduced-motion:reduce){#mc-invitation,#mc-invitation *{animation:none!important;transition:none!important}}

#mc-invitation .mc-open-label{position:absolute;bottom:16%;left:0;width:100%;z-index:5;color:var(--mc-ink);font:500 10px/1.5 Montserrat,Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;transition:opacity .3s ease}
#mc-invitation.mc-opening .mc-open-label{opacity:0}
#mc-invitation .mc-tap-word{display:none}
@media(pointer:coarse){#mc-invitation .mc-click-word{display:none}#mc-invitation .mc-tap-word{display:inline}}

/* Keep the entire form hidden until the envelope finishes opening */
#mc-invitation.mc-pending #mc-form {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Reveal the form after opening */
#mc-invitation.mc-ready #mc-form {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}