.envelope-button{width:min(440px,calc(100vw - 36px),calc((100svh - 185px) * .7483));aspect-ratio:1085/1450;height:auto;max-height:none;display:block;perspective:900px;border-radius:0}.envelope-button .envelope-sizer{width:100%;height:auto;visibility:hidden;max-height:none}.envelope-flap{position:absolute;inset:0;backface-visibility:hidden;transform-style:preserve-3d;z-index:2;transition:transform .9s cubic-bezier(.25,.7,.2,1),opacity .8s}.envelope-button .envelope-flap img{width:100%;height:auto;max-height:none}.flap-left{clip-path:polygon(0 0,50% 50%,0 100%);transform-origin:0 50%}.flap-right{clip-path:polygon(100% 0,50% 50%,100% 100%);transform-origin:100% 50%}.flap-top{clip-path:polygon(0 0,100% 0,50% 50%);transform-origin:50% 0}.flap-bottom{clip-path:polygon(0 100%,100% 100%,50% 50%);transform-origin:50% 100%}.envelope-seal{position:absolute;z-index:4;width:30%;top:51%;left:50%;transform:translate(-50%,-50%);filter:drop-shadow(0 3px 3px #552e263b);transition:transform .5s ease,opacity .4s ease}.envelope-button .envelope-seal img{width:100%;height:auto;max-height:none}.envelope-open-hint{position:absolute;z-index:3;top:66.5%;left:0;width:100%;color:#ad8e64;font:10px/1.6 var(--serif);letter-spacing:.2em;text-transform:uppercase;transition:opacity .2s}.envelope-note{position:absolute;inset:0;background:#fcf6e9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;border:1px solid #d5c19b;color:var(--ink);text-align:center;font:italic 26px/1.4 var(--serif);box-shadow:inset 0 0 60px #d5ba811a}.envelope-note-monogram{color:var(--wine);font:60px/1 var(--serif);letter-spacing:-.15em;padding-right:.15em}.envelope.is-opening{opacity:1;transform:none;transition:none}.is-opening .envelope-button{transform:none}.is-opening .envelope-seal{transform:translate(-50%,-50%) scale(.72) rotate(-14deg);opacity:0}.is-opening .envelope-open-hint{opacity:0}.is-opening .flap-left{transform:rotateY(-105deg);opacity:0;transition-delay:.2s}.is-opening .flap-right{transform:rotateY(105deg);opacity:0;transition-delay:.3s}.is-opening .flap-top{transform:rotateX(100deg);opacity:0;transition-delay:.15s}.is-opening .flap-bottom{transform:rotateX(-95deg);opacity:0;transition-delay:.4s}@media (prefers-reduced-motion:reduce){.envelope-flap,.envelope-open-hint,.envelope-seal{transition:none!important}}.invitation-opening{position:relative;width:100%;min-height:100svh;min-height:100dvh;isolation:isolate}.invitation-opening-cover{position:relative;width:100%;z-index:2}.invitation-opening[data-phase=revealing] .invitation-opening-cover{position:absolute;inset:0;pointer-events:none;animation:invitation-cover-fade var(--invitation-reveal-duration) ease-in-out both}.invitation-opening-welcome{position:relative;width:100%;z-index:1;animation:invitation-welcome-reveal var(--invitation-reveal-duration) ease-in-out both}@keyframes invitation-cover-fade{0%{opacity:1}to{opacity:0}}@keyframes invitation-welcome-reveal{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.invitation-opening-cover,.invitation-opening-welcome{animation:none!important;transition:none!important;opacity:1}}