.invitation-intro{z-index:50;overscroll-behavior:contain;touch-action:manipulation;flex-direction:column;justify-content:center;align-items:center;height:100dvh;transition:opacity .7s,visibility linear;display:flex;position:fixed;inset:0}.invitation-intro[data-phase=open]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .7s,visibility 0s linear .7s}.envelope-intro{background-color:var(--papier-fond,#1a1a1a);overflow:hidden}.envelope-intro:before{content:"";background:var(--papier-image) center / cover no-repeat;filter:blur(18px)brightness(.6);position:absolute;inset:-40px}.envelope-intro[data-encre=sombre]{--env-ink:#3b3129;--env-ink-muted:#3b3129ad}.envelope-intro[data-encre=clair]{--env-ink:#f5ecd9;--env-ink-muted:#f5ecd9b8}.envelope-intro__hint{left:0;right:0;bottom:max(34px, calc(env(safe-area-inset-bottom) + 20px));z-index:5;letter-spacing:.38em;text-transform:uppercase;color:var(--env-ink);pointer-events:none;flex-direction:column;align-items:center;gap:10px;font-size:10px;transition:opacity .3s;display:flex;position:absolute}.envelope-intro__rule{opacity:.7;background:linear-gradient(currentColor,currentColor) 0/36px 1px no-repeat,linear-gradient(currentColor,currentColor) 100%/36px 1px no-repeat,linear-gradient(45deg,#0000 35%,currentColor 35% 65%,#0000 65%) 50%/7px 7px no-repeat;width:88px;height:7px;display:block}.invitation-intro:not([data-phase=sealed]) .envelope-intro__hint{opacity:0}.envelope{--env-ease:cubic-bezier(.22, 1, .36, 1);--papier:var(--papier-image) center / cover no-repeat, var(--papier-fond);cursor:pointer;perspective:1600px;-webkit-tap-highlight-color:transparent;width:min(100%,480px);height:100%;animation:envelope-arrive .9s var(--env-ease) both;transition:scale .7s var(--env-ease);background:0 0;border:0;margin:0;padding:0;display:block;position:relative;box-shadow:0 0 60px #00000073}.envelope:focus-visible{outline:2px solid var(--env-ink);outline-offset:-10px}.invitation-intro[data-phase=open] .envelope{scale:1.12}@keyframes envelope-arrive{0%{opacity:0;transform:scale(1.03)}to{opacity:1;transform:none}}.envelope__inside,.envelope__card,.envelope__pocket,.envelope__flap-shadow,.envelope__flap,.envelope__seal,.envelope__halo,.envelope__seal-disc,.envelope__seal-half,.envelope__sheen{position:absolute}.envelope__inside{background:linear-gradient(#0000004d, #00000024 50%), var(--papier);inset:0}.envelope__card{z-index:1;background:#fbf7ee;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;height:40%;display:flex;top:14%;left:10%;right:10%;box-shadow:0 -8px 24px -10px #00000073}.envelope__card-couple{text-align:center;color:#2f2721;padding:0 8%;font-size:clamp(26px,8vw,40px);line-height:1.15}.envelope__card-rule{background:#b8955a;width:22%;height:1px;margin-top:5%}.envelope__pocket{z-index:2;background:var(--papier);clip-path:polygon(0 0,50% 50%,100% 0,100% 100%,0 100%);inset:0}.envelope__pocket:before{content:"";pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 100 L50 60 L100 100' fill='none' stroke='%23000' stroke-opacity='.13' stroke-width='1.2' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M0 99.4 L50 60.6 L100 99.4' fill='none' stroke='%23fff' stroke-opacity='.18' stroke-width='1' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") 50%/100% 100% no-repeat;position:absolute;inset:0}.envelope__recipient{z-index:1;text-align:center;flex-direction:column;align-items:center;display:flex;position:absolute;top:66%;left:9%;right:9%}.envelope__caption{letter-spacing:.34em;text-transform:uppercase;color:var(--env-ink-muted);font-size:10px}.envelope__name{color:var(--env-ink);overflow-wrap:anywhere;margin-top:.15em;font-size:clamp(34px,11vw,50px);line-height:1.1}.envelope__name[data-long]{font-size:clamp(26px,7.5vw,36px)}.envelope__flap-shadow{z-index:3;transform-origin:50% 0;filter:drop-shadow(0 3px 4px #0000003d);pointer-events:none;inset:0}.envelope__flap{background:linear-gradient(#ffffff0d, #00000012 50%), var(--papier);clip-path:polygon(0 0,100% 0,50% 50%);inset:0}.envelope__seal{aspect-ratio:1;z-index:4;filter:drop-shadow(0 5px 7px #00000061);width:clamp(88px,29vw,118px);top:50%;left:50%;transform:translate(-50%,-50%);container-type:inline-size}.envelope[data-phase=sealed] .envelope__seal{animation:2.8s ease-in-out 1.2s infinite seal-breathe}@keyframes seal-breathe{50%{scale:1.045}}.envelope__seal-disc,.envelope__seal-half{justify-content:center;align-items:center;display:flex;inset:0}.envelope__seal-disc:before,.envelope__seal-half:before{content:"";background:radial-gradient(circle at 34% 28%, #ffffff73, transparent 44%), radial-gradient(circle at 70% 78%, #0000004d, transparent 58%), var(--sceau-teinte);border-radius:50%;position:absolute;inset:7%;box-shadow:inset 0 0 0 3px #0000001f,inset 0 0 0 7px #ffffff1a}.envelope__seal-disc:after,.envelope__seal-half:after{content:"";background:var(--sceau-image) center / contain no-repeat;position:absolute;inset:0}.envelope__seal-half--l{clip-path:polygon(0 0,54% 0,47% 22%,56% 41%,45% 63%,53% 82%,48% 100%,0 100%)}.envelope__seal-half--r{clip-path:polygon(54% 0,100% 0,100% 100%,48% 100%,53% 82%,45% 63%,56% 41%,47% 22%)}.envelope__stamp{z-index:1;color:var(--sceau-teinte);filter:brightness(.7);text-shadow:0 1px #ffffff6b,0 -1px #00000073;line-height:1;position:relative}.envelope__initials{align-items:baseline;gap:.06em;font-size:27cqi;font-weight:600;display:flex}.envelope__amp{opacity:.85;font-size:.66em}.envelope__bismillah{font-family:var(--font-amiri);font-size:21cqi;font-weight:700}.envelope__sheen{mix-blend-mode:soft-light;background:linear-gradient(115deg,#0000 38%,#ffffff80 50%,#0000 62%) 0 0/260% 100% no-repeat;border-radius:50%;animation:4.6s ease-in-out 1.6s infinite seal-sheen;inset:9%}@keyframes seal-sheen{0%{background-position:130% 0}45%,to{background-position:-30% 0}}.envelope__halo{z-index:-1;opacity:0;pointer-events:none;inset:-95%}.envelope__halo:before,.envelope__halo:after{content:"";border-radius:50%;position:absolute;inset:0}.envelope__halo:before{background:radial-gradient(circle,#ffecaaf2 0%,#f6cd6899 20%,#e6b64838 42%,#0000 66%)}.envelope__halo:after{background:repeating-conic-gradient(#ffe8a066 0deg 3deg,#0000 3deg 15deg);-webkit-mask:radial-gradient(circle,#0000 16%,#000 24%,#0000 62%);mask:radial-gradient(circle,#0000 16%,#000 24%,#0000 62%)}.envelope:not([data-phase=sealed]) .envelope__halo{animation:1.1s ease-out forwards halo-rayonne}.envelope:not([data-phase=sealed]) .envelope__halo:after{animation:1.1s ease-out forwards halo-rayons}@keyframes halo-rayonne{0%{opacity:0;transform:scale(.3)}28%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}@keyframes halo-rayons{to{transform:rotate(24deg)}}.envelope:not([data-phase=sealed]) .envelope__seal-disc{animation:seal-lift .8s var(--env-ease) .25s forwards}@keyframes seal-lift{0%{filter:brightness();opacity:1}35%{filter:brightness(1.35);opacity:1}to{filter:brightness(1.6);opacity:0;transform:scale(1.18)}}.envelope:not([data-phase=sealed]) .envelope__seal-half--l{animation:seal-break-l .7s var(--env-ease) forwards}.envelope:not([data-phase=sealed]) .envelope__seal-half--r{animation:seal-break-r .7s var(--env-ease) forwards}@keyframes seal-break-l{0%{opacity:1;transform:none}22%{opacity:1;transform:translate(-4%,1%)rotate(-4deg)}to{opacity:0;transform:translate(-70%,55%)rotate(-38deg)}}@keyframes seal-break-r{0%{opacity:1;transform:none}22%{opacity:1;transform:translate(4%,1%)rotate(4deg)}to{opacity:0;transform:translate(70%,60%)rotate(34deg)}}.envelope:not([data-phase=sealed]) .envelope__flap-shadow{animation:.76s cubic-bezier(.45,0,.2,1) .6s forwards flap-open}@keyframes flap-open{to{transform:rotateX(180deg)}}.envelope:not([data-phase=sealed]) .envelope__card{animation:.9s cubic-bezier(.45,0,.2,1) 1.1s forwards card-rise}@keyframes card-rise{0%{z-index:1;transform:none}45%{z-index:1;transform:translateY(-34%)}46%{z-index:5}to{z-index:5;transform:translateY(18%)scale(1.06)}}@media (max-height:600px){.envelope__seal{width:clamp(60px,17vh,96px)}.envelope__recipient{top:62%}.envelope__name{font-size:clamp(20px,6vh,34px)}.envelope__name[data-long]{font-size:clamp(16px,4.6vh,26px)}.envelope__card-couple{font-size:clamp(20px,5vh,30px)}.envelope-intro__hint{bottom:max(12px, calc(env(safe-area-inset-bottom) + 8px));gap:6px}}@media (prefers-reduced-motion:reduce){.envelope,.envelope__seal,.envelope__seal-disc,.envelope__seal-half,.envelope__sheen,.envelope__halo,.envelope__halo:after,.envelope__flap-shadow,.envelope__card{animation:none!important}.invitation-intro[data-phase=open]{transition:opacity .3s,visibility 0s linear .3s}.invitation-intro[data-phase=open] .envelope{scale:none}}.envelope[data-phase=sealed]{touch-action:none}