:root{font-family:Cinzel,serif;color:#f5e6c8;background:#000;font-synthesis:none}@font-face{font-family:Cinzel;font-style:normal;font-weight:400 900;font-display:swap;src:url(/savethedate-resources/photobooth/assets/fonts/cinzel-latin.woff2) format("woff2")}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#000}body{margin:0;min-width:320px;min-height:100vh;background:#000;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}#root{min-height:100vh}button{font:inherit}.invitation-page{min-height:100vh;min-height:100dvh;width:100%;position:relative;overflow:hidden;background:#000}.invitation-stage{width:min(100vw,390px);height:100vh;height:100dvh;margin-inline:auto;overflow:hidden;position:relative;background:#000}.envelope-experience{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;overflow:hidden;cursor:pointer;color:#5a5248;background:#1a0305;-webkit-tap-highlight-color:transparent}.envelope-experience:focus-visible{outline:2px solid rgba(245,230,200,.9);outline-offset:-4px}.envelope-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;object-fit:cover}.tap-label{position:absolute;left:50%;bottom:48px;z-index:2;transform:translate(-50%);color:#5a5248;font-size:14px;line-height:20px;font-style:italic;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;transition:opacity .18s ease}.envelope-experience.is-opening{cursor:default}.envelope-experience.is-opening .tap-label{opacity:0}.save-the-date{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;opacity:0;background:radial-gradient(#6e232e,#010000);animation:invitationReveal .7s ease-out forwards}.save-the-date:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.4;mix-blend-mode:overlay;background:radial-gradient(circle at 20% 30%,#ffffff24,#0000 45%),radial-gradient(circle at 80% 70%,#00000059,#0000 55%)}.save-the-date:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;box-shadow:inset 0 0 140px 40px #0009}.wedding-heading{position:absolute;top:0;left:0;right:0;z-index:30;padding:56px 24px 0;text-align:center}.wedding-heading p,.wedding-heading h1,.date-lockup h2,.date-lockup p{margin:0;font-weight:400}.wedding-heading p{margin-bottom:6px;color:#fff0dcd9;font-size:10px;line-height:15px;letter-spacing:.35em;text-transform:uppercase}.wedding-heading h1{color:#f5e6c8;font-size:clamp(29.25px,7.5vw,30px);line-height:1.25;white-space:nowrap}.photobooth-scene{position:absolute;top:8%;left:50%;z-index:10;width:78%;aspect-ratio:3 / 4;transform:translate(-50%)}.photobooth-frame{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;user-select:none}.photobooth-strip-slot{position:absolute;top:80.5%;left:50%;z-index:10;width:51%;height:68.85%;transform:translate(-50%);overflow:visible}.photobooth-strip{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:3px;padding:5px 5px 8px;background:#f3eee5;box-shadow:0 8px 14px #000000d1;animation:photoboothStripSlide 9s cubic-bezier(.55,.05,.35,1.05) infinite}.photo-cell{position:relative;flex:1;min-height:0;overflow:hidden;background:#d4d4d4}.photo-cell img{width:100%;height:100%;display:block;object-fit:cover;filter:grayscale(1);transform-origin:center}.photo-tint{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to bottom,#ffebb414,#0000001f)}.photobooth-glow{position:absolute;top:25%;left:18%;z-index:15;width:64%;height:60%;border-radius:50%;pointer-events:none;background:radial-gradient(at 50% 40%,#ffebbe47,#ffdca000 65%)}.frame-shadow{position:absolute;top:80.5%;left:24.5%;z-index:25;width:51%;height:6%;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,.85),rgba(0,0,0,.35) 55%,transparent)}.date-lockup{position:absolute;left:0;right:0;bottom:0;z-index:30;padding:0 24px 24px;text-align:center}.date-lockup h2{margin-bottom:8px;color:#f5e6c8;font-size:clamp(35.1px,9vw,40px);line-height:1;white-space:nowrap}.date-lockup p{color:#f5e6c8e6;font-size:12px;line-height:16px;letter-spacing:.25em;white-space:nowrap}.sound-toggle{position:fixed;right:24px;bottom:24px;z-index:2147483647;width:56px;height:56px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;color:#fff;background:#171717d9;box-shadow:0 0 0 1px #ffffff4d,0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:transform .18s ease,background .18s ease}.sound-toggle:hover{transform:scale(1.05)}.sound-toggle img{width:24px;height:24px;display:block}@keyframes invitationReveal{0%{opacity:0}to{opacity:1}}@keyframes photoboothStripSlide{0%{transform:translateY(-100%)}17.78%{transform:translateY(-66.67%)}35.56%{transform:translateY(-33.33%)}53.33%{transform:translateY(0)}80%{transform:translateY(0)}to{transform:translateY(140%)}}@media(min-width:640px){.date-lockup p{font-size:14px;line-height:20px}}@media(prefers-reduced-motion:reduce){.save-the-date{animation-duration:1ms}.photobooth-strip{animation:none;transform:translateY(0)}}
