@font-face{font-family:The Seasons;src:url(/fonts/TheSeasons-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:The Seasons;src:url(/fonts/TheSeasons-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:The Seasons;src:url(/fonts/TheSeasons-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}:root{--burgundy-deep:#1a0101;--burgundy-mid:#4a0404;--burgundy-light:#6b1515;--gold:#d4af37;--gold-light:#f5e6a3;--gold-dark:#8b6914;--gold-metallic:linear-gradient(180deg, #f5e6a3 0%, #e8c84a 18%, #d4af37 38%, #a8841e 52%, #d4af37 68%, #f0d878 85%, #c9a227 100%);--cream:#f8f0e0;--kraft:#c9a87c;--kraft-dark:#a08050;--font-seasons:"The Seasons", "Cormorant Garamond", Georgia, serif;--ease-out-expo:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-seasons);background:var(--burgundy-deep);color:var(--gold);min-height:100dvh;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.invitation-bg{z-index:0;background-color:#2d0505;background-image:radial-gradient(90% 70% at 0 0,#4a0a0a73 0%,#0000 62%),radial-gradient(80% 55% at 100% 0,#0c01018c 0%,#0000 58%),radial-gradient(80% 55% at 0 100%,#0c01018c 0%,#0000 58%),radial-gradient(90% 70% at 100% 100%,#4a0a0a73 0%,#0000 62%),radial-gradient(80% 60%,#3a0606 0%,#2d0505 55%,#1a0101 100%);position:fixed;inset:0}.sparkles{z-index:1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.sparkle{width:var(--size,8px);height:var(--size,8px);opacity:0;animation:sparkle-fall var(--duration,12s) linear infinite;animation-delay:var(--delay,0s);background:radial-gradient(circle,#fff5d2 0%,#f5e6a3d9 35%,#d4af3780 60%,#0000 75%);border-radius:50%;position:absolute;top:-30px;box-shadow:0 0 8px #f5e6a3b3,0 0 16px #d4af3759}.sparkle:before,.sparkle:after{content:"";background:#fff5d2d9;border-radius:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sparkle:before{width:calc(var(--size,8px) * 2.8);height:2px}.sparkle:after{width:2px;height:calc(var(--size,8px) * 2.8)}@keyframes sparkle-fall{0%{opacity:0;transform:translateY(0)translate(0)scale(.7)}8%{opacity:var(--sparkle-opacity,.6)}85%{opacity:calc(var(--sparkle-opacity,.6) * .75)}to{transform:translateY(105vh) translateX(var(--drift,0px)) scale(1);opacity:0}}.sound-toggle{z-index:20;letter-spacing:.15em;opacity:.75;border:1px solid #0000;border-radius:999px;padding:.5rem .75rem;font-size:.7rem;transition:opacity .2s}.sound-toggle:not(.is-playing){animation:2.8s ease-in-out infinite sound-glow}.sound-toggle__label{z-index:1;position:relative}.sound-toggle:hover,.sound-toggle:focus-visible{opacity:1}.sound-toggle.is-playing{opacity:.75;border-color:#d4af3733;animation:none}@keyframes sound-glow{0%,to{opacity:.6;text-shadow:0 0 4px #d4af3726;border-color:#d4af371a;box-shadow:0 0 #d4af3700}50%{opacity:1;text-shadow:0 0 10px #f5e6a38c,0 0 18px #d4af3740;border-color:#d4af3773;box-shadow:0 0 14px #d4af3733}}.sound-toggle--inline{z-index:1;position:relative}@media (prefers-reduced-motion:reduce){.sparkle{animation:none;display:none}.sound-toggle:not(.is-playing){opacity:.85;animation:none}}.gold-metallic{background:var(--gold-metallic);-webkit-text-fill-color:transparent;color:#0000;background-clip:text}.gold-text{color:var(--gold)}.cream-text{color:var(--cream)}.florish{color:var(--gold);margin-inline:auto;display:block}.florish--sm{width:120px;height:auto}.florish--md{width:180px;height:auto}.florish--lg{width:220px;height:auto}.divider-line{align-items:center;gap:.75rem;width:100%;max-width:280px;margin-inline:auto;display:flex}.divider-line:before,.divider-line:after{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);flex:1;height:1px}.header-block{text-align:center;flex-direction:column;align-items:center;gap:.35rem;display:flex}.header-block__name{letter-spacing:.04em;color:var(--cream);margin-bottom:.25rem;font-size:clamp(1.6rem,5vw,2.2rem);font-style:italic;font-weight:400}.header-block__title{letter-spacing:.12em;font-size:clamp(2.8rem,10vw,4.5rem);font-weight:700;line-height:1}.header-block__subtitle{letter-spacing:.35em;text-transform:uppercase;font-size:clamp(.75rem,2.5vw,.95rem);font-weight:400}.header-block__date{letter-spacing:.25em;margin-top:.5rem;font-size:clamp(.9rem,3vw,1.1rem)}.cover{z-index:10;transition:opacity .8s var(--ease-out-expo), visibility .8s;flex-direction:column;justify-content:center;align-items:center;padding:clamp(1.25rem,4vw,2.5rem) clamp(1rem,4vw,2rem);display:flex;position:fixed;inset:0}.cover__content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(1.5rem,5vw,2.5rem);width:100%;max-width:420px;display:flex}.cover__header{flex-direction:column;align-items:center;width:100%;display:flex}.cover__header-image{object-fit:contain;width:min(100%,380px);height:auto}.cover__envelope-zone{flex-direction:column;align-items:center;gap:clamp(.75rem,3vw,1.25rem);width:100%;display:flex}.cover.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.cover__frame{pointer-events:none;position:absolute;inset:clamp(.75rem,3vw,1.5rem)}.cover__frame-corner{pointer-events:none;width:clamp(140px,38vw,220px);height:auto;position:absolute}.cover__frame-corner--tl{top:0;left:0}.cover__frame-corner--br{bottom:0;right:0}.cover__bottom-text{letter-spacing:.2em;text-transform:uppercase;text-align:center;opacity:.9;margin-top:.25rem;font-size:clamp(.65rem,2vw,.8rem)}.envelope-trigger{perspective:800px;-webkit-tap-highlight-color:transparent;flex-direction:column;align-items:center;padding:0;display:flex;position:relative}.envelope-trigger:focus-visible{outline:2px solid var(--gold);outline-offset:6px;border-radius:4px}.envelope{width:clamp(220px,65vw,300px);height:clamp(160px,42vw,210px);margin-bottom:.5rem;position:relative}.envelope__body{background:linear-gradient(160deg, #dcc9a0 0%, var(--kraft) 40%, var(--kraft-dark) 100%);border-radius:2px;position:absolute;inset:0;box-shadow:0 8px 24px #00000073,inset 0 1px #ffffff40}.envelope__body:before,.envelope__body:after{content:"";background:linear-gradient(#0000000f 0%,#0000 100%);width:50%;height:55%;position:absolute;bottom:0}.envelope__body:before{clip-path:polygon(0 100%,100% 0,100% 100%);left:0}.envelope__body:after{clip-path:polygon(0 0,100% 100%,0 100%);right:0}.envelope__flap{background:linear-gradient(180deg, #e8d5b0 0%, var(--kraft) 60%, var(--kraft-dark) 100%);clip-path:polygon(0 0,50% 100%,100% 0);transform-origin:top;height:55%;transition:transform .9s var(--ease-out-expo);z-index:2;position:absolute;top:0;left:0;right:0;box-shadow:0 2px 8px #0003}.envelope__seal{z-index:3;width:clamp(44px,12vw,56px);height:clamp(44px,12vw,56px);transition:opacity .4s ease, transform .6s var(--ease-out-expo);background:radial-gradient(circle at 35% 30%,#f5e6a3,#d4af37 50%,#8b6914 100%);border-radius:50%;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 6px #0006,inset 0 1px 2px #fff6}.envelope__seal:after{content:"A";font-family:var(--font-seasons);color:#8b6914b3;justify-content:center;align-items:center;font-size:1.4rem;font-style:italic;display:flex;position:absolute;inset:0}.envelope__flower{z-index:4;pointer-events:none;filter:drop-shadow(0 2px 4px #0000004d);width:clamp(70px,20vw,100px);height:auto;transition:opacity .6s;position:absolute}.envelope__flower--tr{top:-18%;right:-12%}.envelope__flower--bl{bottom:-15%;left:-14%}.envelope-trigger__cta{letter-spacing:.3em;text-transform:uppercase;opacity:.85;font-size:clamp(.55rem,1.8vw,.7rem);transition:opacity .3s}.envelope-trigger:hover .envelope-trigger__cta,.envelope-trigger:focus-visible .envelope-trigger__cta{opacity:1}.cover.is-opening .envelope__flap{transform:rotateX(160deg)}.cover.is-opening .envelope__seal{opacity:0;transform:translate(-50%,-80%)scale(.5)}.cover.is-opening .envelope__flower{opacity:0}.cover.is-opening .envelope{animation:.6s .7s forwards envelope-fade}@keyframes envelope-fade{to{opacity:0;transform:scale(.92)translateY(20px)}}.invitation{z-index:5;opacity:0;visibility:hidden;min-height:100dvh;transition:opacity 1s .5s var(--ease-out-expo), transform 1s .5s var(--ease-out-expo), visibility 0s 1.5s;flex-direction:column;align-items:center;padding:clamp(1.5rem,5vw,2.5rem) clamp(1rem,5vw,2rem) 3rem;display:flex;position:relative;transform:translateY(40px)}.invitation.is-visible{opacity:1;visibility:visible;transition:opacity 1s .5s var(--ease-out-expo), transform 1s .5s var(--ease-out-expo), visibility 0s 0s;transform:translateY(0)}.invitation__inner{flex-direction:column;align-items:center;gap:clamp(1.25rem,4vw,2rem);width:100%;max-width:420px;display:flex}.invitation__sound.sound-toggle{z-index:auto;position:relative}.invitation__body-text{text-align:center;letter-spacing:.02em;max-width:360px;font-size:clamp(.85rem,2.8vw,1rem);font-weight:400;line-height:1.75}.date-block{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem 1rem;width:100%;max-width:300px;display:grid}.date-block__side{letter-spacing:.2em;text-align:center;font-size:clamp(.75rem,2.5vw,.9rem)}.date-block__side--left{text-align:right}.date-block__side--right{text-align:left}.date-block__day{letter-spacing:.05em;font-size:clamp(3rem,12vw,4.5rem);font-weight:700;line-height:1}.date-block__line{background:linear-gradient(90deg, transparent, var(--gold), transparent);grid-column:1/-1;height:1px}.location-block{text-align:center}.location-block__venue{letter-spacing:.08em;text-underline-offset:4px;font-size:clamp(1rem,3.5vw,1.25rem);font-weight:700;text-decoration:underline;transition:opacity .2s}.location-block__venue:hover{opacity:.8}.location-block__hint{opacity:.85;margin-top:.35rem;font-size:clamp(.75rem,2.5vw,.85rem);font-style:italic}.dress-code{text-align:center}.dress-code__title{margin-bottom:.5rem;font-size:clamp(.9rem,3vw,1.05rem);font-style:italic}.dress-code__detail{opacity:.9;font-size:clamp(.8rem,2.5vw,.9rem);line-height:1.6}.gift-block{flex-direction:column;align-items:center;gap:.75rem;display:flex}.gift-block__icon{width:48px;height:auto;color:var(--gold)}.gift-block__text{text-align:center;font-size:clamp(.8rem,2.5vw,.9rem);line-height:1.5}.rsvp-block{flex-direction:column;align-items:center;gap:.75rem;width:100%;display:flex}.rsvp-block__frame{text-align:center;width:clamp(200px,60vw,260px);padding:clamp(1.25rem,4vw,1.75rem) clamp(1rem,4vw,1.5rem);position:relative}.rsvp-block__frame-svg{width:100%;height:100%;color:var(--gold);pointer-events:none;position:absolute;inset:0}.rsvp-block__confirm{z-index:1;flex-direction:column;gap:.15rem;display:flex;position:relative}.rsvp-block__confirm-main{letter-spacing:.2em;font-size:clamp(1.1rem,4vw,1.4rem);font-weight:700}.rsvp-block__confirm-sub{letter-spacing:.25em;font-size:clamp(.7rem,2.5vw,.85rem)}.rsvp-block__hint{opacity:.85;font-size:clamp(.7rem,2vw,.8rem);font-style:italic}.rsvp-block__note{text-align:center;opacity:.9;max-width:320px;font-size:clamp(.75rem,2.5vw,.85rem);line-height:1.6}.whatsapp-links{flex-direction:column;align-items:center;gap:.65rem;width:100%;max-width:280px;display:flex}.whatsapp-link{letter-spacing:.12em;border:1px solid #d4af3773;border-radius:999px;justify-content:center;align-items:center;gap:.65rem;width:100%;padding:.7rem 1.25rem;font-size:clamp(.8rem,2.5vw,.9rem);transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;display:flex}.whatsapp-link:hover,.whatsapp-link:focus-visible{background:#d4af371a;border-color:#d4af37bf;transform:scale(1.02);box-shadow:0 0 12px #d4af3726}.whatsapp-link__icon{opacity:.9;flex-shrink:0;width:1.15rem;height:1.15rem}.whatsapp-link__number{font-weight:400}
