body.invitation-locked{overflow:hidden}
.invitation-opening[hidden]{display:none!important}
.invitation-opening{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow-y:auto;padding:32px 22px;background:#f4eee7 url('assets/ivory-chiffon-background-v1.png') center/cover;color:#741b2b;text-align:center;opacity:1;transition:opacity .75s ease}
.invitation-opening::before{content:'';position:absolute;inset:0;background:rgba(251,248,243,.32);pointer-events:none}
.opening-envelope{position:relative;isolation:isolate;width:min(100%,560px);aspect-ratio:14/9;border:1px solid #d5c5b2;border-radius:4px;background:#faf6ee;box-shadow:0 24px 65px #5e483225,0 3px 7px #5e483212;transform:rotate(-1deg)}
.envelope-folds{position:absolute;inset:0;width:100%;height:100%;z-index:-1;border-radius:4px}
.envelope-flap{fill:#fdfaf5}
.envelope-side{fill:#eee5d8;opacity:.5}
.envelope-bottom{fill:#f7f0e5;opacity:.8}
.envelope-lines{fill:none;stroke:#cbb89f;stroke-width:1;opacity:.55;vector-effect:non-scaling-stroke}
.envelope-date{position:absolute;z-index:0;inset:9% 0 auto;display:block;color:#a18766;opacity:.12;font:400 clamp(64px,19vw,116px)/1 'Cormorant Garamond',Georgia,serif;letter-spacing:.06em;pointer-events:none;user-select:none}
.envelope-content{position:absolute;inset:46% 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(14px,4vw,25px);padding:12px 16px 20px}
#opening-title{margin:0;font:400 clamp(23px,5.7vw,36px)/1.4 'Noto Serif Armenian',serif;color:#741b2b}
.opening-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 23px;border:1px solid #baa184;border-radius:2px;background:rgba(255,252,246,.5);color:#73533d;font:400 clamp(11px,2.9vw,13px)/1.6 'Noto Sans Armenian',sans-serif;cursor:pointer;transition:background .2s,border-color .2s}
.opening-button:hover{background:#fffaf1;border-color:#8c6d4a}
.opening-button:focus-visible{outline:2px solid #741b2b;outline-offset:5px}
.invitation-opening.is-opening{opacity:0;pointer-events:none}
@media(max-width:420px){.opening-envelope{aspect-ratio:1.35}.envelope-content{inset:43% 0 0}.envelope-date{top:12%}}
@media(prefers-reduced-motion:reduce){.invitation-opening,.opening-button{transition:none}}

/* Wax seal and softly printed heading on the upper envelope flap. */
.opening-envelope{min-height:300px}
.envelope-heading{position:absolute;inset:8% 12px auto;z-index:1;pointer-events:none}
#opening-title{font-size:clamp(22px,5.7vw,34px);line-height:1.4;color:#927b60;opacity:.48;filter:blur(.35px);text-shadow:0 1px 1px #fffdf9}
.envelope-date{position:static;inset:auto;margin:5px 0 0;color:#a18766;opacity:.35;font-size:clamp(26px,6vw,38px);line-height:1;letter-spacing:.12em;filter:blur(.25px)}
.envelope-seal{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%) rotate(8deg);z-index:2;width:clamp(94px,25%,140px);height:auto;object-fit:contain;filter:drop-shadow(1px 5px 5px #79644830);pointer-events:none}
.envelope-content{inset:auto 0 8%;padding:0 16px;gap:0}
@media(max-width:420px){.opening-envelope{min-height:300px}.envelope-heading{top:8%}.envelope-content{inset:auto 0 8%}.envelope-date{top:auto}}
