.guests-page{color:#f3eddf;min-height:100svh;font-family:var(--sans);background:#10281f;padding:48px 24px}.guests-shell{max-width:820px;margin:0 auto}.guests-heading{border-bottom:1px solid #c9b38a45;justify-content:space-between;align-items:center;gap:24px;padding-bottom:28px;display:flex}.guests-kicker{letter-spacing:2px;color:#c9b38a;margin-bottom:12px;font-size:10px}.guests-heading h1{font-family:var(--serif);font-size:48px;font-weight:400;line-height:1}.guests-heading>a{color:#dccba6;white-space:nowrap;font-size:12px}.guests-toolbar{justify-content:space-between;align-items:center;gap:20px;margin:30px 0 15px;display:flex}.guests-toolbar strong{font-family:var(--serif);color:#dccba6;margin-right:8px;font-size:42px;font-weight:400}.guests-toolbar p{font-size:13px}.guests-toolbar button{border:1px solid #c9b38a66;border-radius:3px;min-height:44px;padding:10px 14px;font-size:12px}.guests-toolbar>div{gap:10px;display:flex}.guests-caption{color:#b8c0af;max-width:590px;font-size:12px;line-height:1.7}.guests-empty{text-align:center;border:1px solid #c9b38a45;margin-top:30px;padding:48px 24px}.guests-empty>span,.guests-snowflake{color:#c9b38a;font-size:40px}.guests-empty h2{font-family:var(--serif);margin:15px 0 10px;font-size:30px;font-weight:400}.guests-empty p{color:#b8c0af;font-size:12px;line-height:1.8}.guests-list{margin:26px 0;padding:0;list-style:none}.guests-list>li{color:#304437;background:#f3eddf;border:1px solid #c9b38a99;border-radius:3px;margin-bottom:12px;padding:22px 24px}.guest-row{align-items:center;gap:20px;display:flex}.guest-number{color:#a18c5d;font-size:12px}.guest-row h2{font-family:var(--serif);overflow-wrap:anywhere;font-size:29px;font-weight:500;line-height:1.1}.guest-row time{color:#787e69;margin-top:7px;font-size:11px;display:block}.guest-confirmed{white-space:nowrap;color:#476441;margin-left:auto;font-size:11px}.guests-list details{margin:15px 0 0 34px}.guests-list summary{cursor:pointer;color:#64705a;padding:5px 0;font-size:12px}.guests-list svg{border-bottom:1px solid #bba47866;width:100%;max-width:300px;height:100px;margin-top:12px;display:block}.guests-login{color:#304437;background:#f3eddf;border-radius:3px;max-width:390px;margin:45px auto;padding:36px 28px}.guests-login h2{font-family:var(--serif);margin:15px 0 10px;font-size:34px;font-weight:500}.guests-login>p{color:#64705a;font-size:13px;line-height:1.7}.guests-login label{margin:25px 0 8px;font-size:12px;display:block}.guests-login input{color:#304437;background:#fffcf5;border:1px solid #bba478;border-radius:3px;width:100%;min-height:46px;padding:10px 12px;font-size:16px}.guests-login button{color:#f3eddf;background:#294734;border-radius:3px;width:100%;min-height:46px;margin-top:18px;padding:13px 16px}.guests-page button:disabled{opacity:.55}.guests-error{color:#ae4740;margin-top:15px;font-size:13px;line-height:1.6}.guests-footer{color:#b5a47e;letter-spacing:2px;text-align:center;margin-top:45px;font-size:9px}@media (width<=520px){.guests-page{padding:28px 18px}.guests-heading{align-items:flex-start;gap:15px}.guests-heading h1{font-size:36px}.guests-heading>a{padding-top:4px;font-size:10px}.guests-toolbar{flex-direction:column;align-items:flex-start;gap:8px}.guests-toolbar strong{font-size:36px}.guests-list>li{padding:18px 15px}.guest-row{gap:12px}.guest-row h2{font-size:26px}.guest-confirmed{font-size:10px}.guests-login{margin-top:30px;padding:28px 22px}.guests-empty{padding:30px 18px}.guests-list details{margin-left:24px}}:root{--green:#10281f;--gold:#c9b38a;--cream:#f3eddf;--wine:#772c38;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Golos Text",Arial,sans-serif}*{box-sizing:border-box}html,body{min-height:100%;color:var(--cream);font-family:var(--sans);background:#10251e;margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button{color:inherit}a{color:inherit;text-decoration:none}button{background:0 0;border:0}::selection{color:#fff;background:#a88b58}p,h1,h2{margin:0}.invitation{isolation:isolate;background:#10251e;flex-direction:column;min-height:max(850px,100svh);display:flex;position:relative;overflow:hidden}.scenery{z-index:-4;background:#10251e url(/assets/christmas-background.webp) 50%/cover no-repeat;transition:filter 2s;position:absolute;inset:0}.vignette{z-index:-3;background:radial-gradient(at 49% 43%,#0000 10%,#06191120 65%,#04150f70 100%),linear-gradient(#0b201838,#0000 35%,#0a20194a);position:absolute;inset:0}.grain{z-index:20;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.8' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.site-header{z-index:10;flex:none;justify-content:space-between;align-items:center;gap:25px;height:116px;padding:0 56px;display:flex;position:relative}.brand{color:#dccba6;align-items:center;gap:13px;display:flex}.brand>svg{width:42px;height:42px}.brand>span{letter-spacing:2.2px;font-size:9px;line-height:1.8}.header-date{letter-spacing:2.2px;color:#d5c9af;white-space:nowrap;align-items:center;gap:15px;font-size:10px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.header-date i{background:#bfa774;border-radius:50%;width:3px;height:3px}.sound-toggle{color:#e0d8c8;letter-spacing:.6px;align-items:center;gap:10px;padding:12px 0 12px 14px;font-size:10px;display:flex}.sound-toggle svg{width:20px;height:20px}.sound-toggle:hover{color:#ffe6b0}.experience{flex-direction:column;flex:1;align-items:center;min-height:630px;display:flex;position:relative}.intro{text-align:center;z-index:2;padding-top:9px;transition:opacity .4s;position:relative}.eyebrow{letter-spacing:4px;color:#bba77f;justify-content:center;align-items:center;gap:17px;margin-bottom:22px;font-size:9px;display:flex}.eyebrow span{background:#bba77f66;width:26px;height:1px;display:block}.intro h1{font-family:var(--serif);letter-spacing:-.7px;color:#f6efdf;text-shadow:0 2px 30px #05191044;font-size:68px;font-weight:400;line-height:.95}.intro h1 em{color:#d1bb8c;font-size:1.12em;font-weight:400;line-height:1.16}.intro-note{color:#c2c5b6;letter-spacing:.25px;margin-top:20px;font-size:11px;font-weight:400}.envelope-scene{z-index:3;perspective:1500px;width:540px;height:355px;margin-top:64px;position:relative}.envelope{width:480px;height:280px;transform-style:preserve-3d;transition:transform .6s;position:relative;left:30px;transform:rotate(-5deg)}.stage-sealed .envelope:hover{transform:rotate(-3deg)translateY(-3px)}.envelope-shadow{filter:blur(25px);background:#0009;border-radius:50%;width:460px;height:50px;position:absolute;top:235px;left:40px;transform:rotate(-5deg)}.envelope-back{background:#cec2a9;border-radius:2px;position:absolute;inset:0;box-shadow:0 3px 4px #0003,0 28px 60px #0007}.envelope-flap{z-index:6;transform-origin:top;transform-style:preserve-3d;filter:drop-shadow(0 3px 1px #5e503532);backface-visibility:hidden;transition:transform .85s cubic-bezier(.4,0,.25,1);position:absolute;inset:0}.envelope-flap:before{content:"";clip-path:polygon(0 0,100% 0,51.5% 61%,48.5% 61%);background:linear-gradient(176deg,#f2eadb 0%,#e8decb 78%,#e3d6be 100%);position:absolute;inset:0}.flap-inner{clip-path:polygon(0 0,100% 0,50% 60%);backface-visibility:hidden;background:#d1c4aa;position:absolute;inset:0;transform:rotateX(180deg)}.envelope-front{z-index:5;pointer-events:none;filter:drop-shadow(0 -1px 1px #6e5b3715);position:absolute;inset:0}.envelope-left,.envelope-right,.envelope-bottom{position:absolute;inset:0}.envelope-left{clip-path:polygon(0 0,55% 61%,0 100%);background:linear-gradient(90deg,#e5dac4,#efe6d5)}.envelope-right{clip-path:polygon(100% 0,45% 61%,100% 100%);background:linear-gradient(270deg,#e9decb,#ddd0b8)}.envelope-bottom{clip-path:polygon(0 100%,0 98%,48.5% 47%,51.5% 47%,100% 98%,100% 100%);filter:drop-shadow(0 -1px 2px #6c5d3d20);background:linear-gradient(#eee4d2 0%,#e8dcc6 100%)}.envelope-address{text-align:center;letter-spacing:3.2px;color:#8d7c5d;font-size:8px;position:absolute;bottom:26px;left:0;right:0}.envelope-corner{z-index:8;pointer-events:none;border:1px solid #ac96645c;width:29px;height:29px;position:absolute}.corner-tl{border-bottom:0;border-right:0;top:14px;left:14px}.corner-br{border-top:0;border-left:0;bottom:14px;right:14px}.wax-seal{z-index:8;background:radial-gradient(circle at 29% 19%,#b05a5b 0,#8b3540 38%,#722b35 68%,#5d222d 92%);border-radius:45% 48% 46% 43%/44% 45% 50% 48%;justify-content:center;align-items:center;width:92px;height:91px;transition:transform .3s,filter .3s,opacity .3s;display:flex;position:absolute;top:110px;left:calc(50% - 46px);transform:rotate(7deg);box-shadow:1px 3px 1px #551d28,2px 5px 7px #2d181765,inset 2px 3px 3px #c5786a70,inset -2px -2px 2px #451524bb}.wax-seal:before{content:"";border:1px solid #bc6a6555;border-radius:50%;position:absolute;inset:5px}.wax-ring{border:2px solid #611c2c;border-radius:50%;justify-content:center;align-items:center;width:67px;height:67px;display:flex;box-shadow:inset 1px 2px 2px #43162570,1px 1px 1px #c77a6466}.wax-ring>svg{color:#d1987d;filter:drop-shadow(1px 1px #4d1825);width:46px;height:46px}.wax-seal:hover{filter:brightness(1.1);transform:rotate(0)scale(1.09)}.seal-spark{color:#d5b578;opacity:0;pointer-events:none;font-size:20px;transition:opacity .25s,transform .3s;position:absolute}.spark-one{top:-15px;right:-10px}.spark-two{font-size:14px;bottom:0;left:-16px}.wax-seal:hover .seal-spark{opacity:1;transform:translateY(-4px)}.scene-hint{color:#c9cbbb;letter-spacing:.2px;justify-content:center;align-items:center;gap:12px;min-height:20px;font-size:10px;display:flex;position:absolute;top:323px;left:-30px;right:-30px}.hint-line{background:#bca67580;width:25px;height:1px}.tiny-star{color:#c9b38a;font-size:15px}.folded-letter{z-index:3;color:#4c5948;opacity:0;background:linear-gradient(162deg,#faf5e9,#e9dfca);border-radius:1px;flex-direction:column;align-items:center;width:394px;height:235px;padding:26px;transition:transform .9s cubic-bezier(.2,.65,.25,1),opacity .3s,box-shadow .3s;display:flex;position:absolute;top:22px;left:43px;transform:translateY(0)rotate(0);box-shadow:0 5px 15px #0002}.folded-letter>svg{color:#9e8b62;width:25px;height:25px;margin-bottom:10px}.folded-border{pointer-events:none;border:1px solid #bba57866;position:absolute;inset:12px}.folded-title{font-family:var(--serif);letter-spacing:-.2px;font-size:30px;line-height:.94}.folded-title em{font-weight:400}.folded-hint{letter-spacing:1px;color:#8a7b60;margin-top:24px;font-size:8px}.folded-hint>span{margin-left:8px}.fold-line{background:#b4a4861c;height:1px;position:absolute;top:50%;left:0;right:0;box-shadow:0 1px #fff5}.stage-opening .envelope-flap,.stage-folded .envelope-flap{z-index:1;transform:rotateX(180deg)}.stage-opening .wax-seal,.stage-folded .wax-seal{opacity:0;pointer-events:none;transform:translateY(40px)rotate(22deg)scale(.7)}.stage-opening .folded-letter{opacity:1;transition-delay:.45s;transform:translateY(-120px)}.stage-folded .folded-letter{opacity:1;z-index:7;transform:translateY(-140px)rotate(4deg);box-shadow:0 3px 5px #0002,0 24px 38px #0004}.stage-folded .folded-letter:hover{transform:translateY(-150px)rotate(2deg)}.stage-folded .envelope{transform:translateY(25px)rotate(-4deg)}.stage-folded .scene-hint{top:340px}.stage-reading .intro,.stage-reading .envelope-scene{display:none}.stage-reading .experience{justify-content:center;min-height:680px;padding:5px 30px 34px}.stage-reading .site-header{height:95px}.open-letter{z-index:3;color:#304437;transform-origin:50% 28%;background:linear-gradient(120deg,#f8f3e6,#eee6d6);border-radius:1px;outline:none;width:620px;padding:16px;animation:.9s cubic-bezier(.2,.7,.25,1) both unfold;position:relative;box-shadow:0 3px 8px #0002,0 22px 80px #0006}.open-letter:after{content:"";pointer-events:none;background:#bba98d22;height:1px;position:absolute;top:50%;left:0;right:0;box-shadow:0 1px 1px #fff8}.letter-inner{z-index:2;border:1px solid #b09a6b70;padding:20px 32px 17px;position:relative}.letter-topline{letter-spacing:1.6px;color:#918363;justify-content:space-between;align-items:center;font-size:7px;display:flex}.letter-topline>svg{color:#a49062;width:28px;height:28px}.letter-pretitle{text-align:center;color:#8c816a;letter-spacing:.2px;margin-top:22px;font-size:9px}.open-letter h2{font-family:var(--serif);letter-spacing:3px;text-align:center;margin-top:9px;font-size:49px;font-weight:500;line-height:1.2}.letter-subtitle{font-family:var(--serif);text-align:center;color:#64705a;font-size:35px;font-style:italic;line-height:1.1}.letter-divider{color:#a48b5d;justify-content:center;align-items:center;gap:13px;margin-top:20px;font-size:12px;display:flex}.letter-divider>span{background:#b39b6e6b;width:45px;height:1px}.event-date{font-family:var(--serif);justify-content:center;align-items:center;gap:26px;margin-top:17px;font-size:26px;line-height:1.1;display:flex}.event-date>strong{border-left:1px solid #bba47877;border-right:1px solid #bba47877;padding:0 28px;font-size:49px;font-weight:400}.event-address{color:#64705c;white-space:nowrap;justify-content:center;align-items:center;gap:6px;margin-top:16px;font-size:11px;display:flex}.event-address svg{flex:none;width:15px;height:15px}.letter-message{font-family:var(--serif);text-align:center;color:#7e7c67;margin-top:20px;font-size:18px;font-style:italic;line-height:1.45}.letter-bottom{grid-template-columns:1fr 224px;align-items:center;gap:20px;margin-top:27px;display:grid}.letter-wish{position:relative}.letter-wish>span:first-child{color:#8b826c;letter-spacing:.2px;font-size:8px}.letter-wish>p{font-family:var(--serif);color:#707b62;margin-top:15px;font-size:25px;font-style:italic;line-height:.96;transform:rotate(-6deg)}.wish-star{font-size:44px;font-family:var(--serif);color:#a18c5d;margin-top:20px;margin-left:29px;display:block}.rsvp-title{font-family:var(--serif);color:#3b503e;margin-bottom:5px;font-size:19px;display:block}.name-input{color:#304437;outline-offset:1px;background:0 0;border:0;border-bottom:1px solid #9c987d6b;border-radius:0;width:100%;padding:8px 1px;font-size:11px}.name-input::placeholder{color:#8c8b78}.signature-pad{border-bottom:1px solid #9c987d6b;height:62px;position:relative}.signature-pad canvas{touch-action:none;width:100%;height:100%;display:block}.signature-placeholder{font-family:var(--serif);color:#b6ad97;pointer-events:none;font-size:20px;font-style:italic;position:absolute;top:23px;left:4px}.clear-ink{color:#998e75;padding:3px;font-size:8px;position:absolute;bottom:5px;right:0}.confirm-button{color:#f4ebd9;background:#294734;justify-content:space-between;align-items:center;width:100%;margin-top:11px;padding:12px 17px;font-size:11px;transition:background .2s;display:flex}.confirm-button:hover{background:#3c6048}.confirm-button>span{font-size:18px;line-height:10px}.confirm-button:disabled{opacity:.65}.rsvp-note{color:#91866b;text-align:center;margin-top:8px;font-size:7px;line-height:1.4;display:block}.form-error{color:#9c3d3d;margin-top:8px;font-size:9px;line-height:1.45}.letter-footline{letter-spacing:2.2px;color:#a08d66;justify-content:center;align-items:center;gap:13px;margin-top:25px;font-size:7px;display:flex}.letter-footline>span{background:#bba77866;width:48px;height:1px}.restart-button{color:#c4b38f;transform-origin:100% 100%;white-space:nowrap;align-items:center;gap:7px;padding:10px;font-size:18px;display:flex;position:absolute;bottom:5px;left:-94px;transform:rotate(-90deg)}.restart-button>span{letter-spacing:1px;font-size:8px}.success-message{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:210px;display:flex}.success-check{color:#4d6846;border:1px solid #8d9f79;border-radius:50%;place-items:center;width:32px;height:32px;margin-bottom:13px;display:grid}.success-message p{font-family:var(--serif);overflow-wrap:anywhere;font-size:23px;line-height:1.1}.success-message>span:not(.success-check){color:#7c816b;margin-top:9px;font-size:9px;line-height:1.7}.replay-button{color:#6c795d;border-bottom:1px solid #a9af9180;margin-top:15px;padding:5px 0;font-size:8px}.replay-button>span{color:#9c8551;margin-left:5px}.site-footer{color:#8e9c8e;z-index:2;justify-content:space-between;align-items:center;gap:20px;min-height:94px;padding:20px 56px;display:flex;position:relative}.footer-note{font-family:var(--serif);color:#b1baa6;font-size:14px;font-style:italic}.footer-year{letter-spacing:2px;color:#a7ae98;font-size:7px}.steps{white-space:nowrap;align-items:center;gap:14px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.steps>span{color:#93a08d;align-items:center;gap:7px;font-size:8px;transition:color .3s;display:flex}.steps>span>b{font-family:var(--serif);color:#9c9b79;font-size:13px;font-weight:400}.steps>span.active{color:#e3d7ba}.steps>span.active>b{color:#d3bb86}.steps i{background:#acaf8c42;width:20px;height:1px;margin-left:8px}.christmas-tree{z-index:-1;filter:drop-shadow(5px 10px 14px #0006);pointer-events:none;width:268px;position:absolute;bottom:82px;right:23px}.tree-bulbs{opacity:.05;transition:opacity 2s}.branch-lights{pointer-events:none;z-index:1;opacity:0;transition:opacity 2s;position:absolute;inset:0}.branch-lights i{background:#fff1b3;border-radius:50%;width:4px;height:4px;position:absolute;box-shadow:0 0 8px 2px #f9d47777,0 0 22px 5px #f2c06433}.is-confirmed .tree-bulbs,.is-confirmed .branch-lights{opacity:1}.is-confirmed .fairy-light,.is-confirmed .branch-lights i{animation:2.8s ease-in-out infinite alternate twinkle}.is-confirmed .scenery{filter:brightness(1.13)}.fireworks{z-index:30;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}@keyframes unfold{0%{opacity:0;transform:perspective(1200px)rotateX(45deg)scaleY(.4)scaleX(.85)}40%{opacity:1}to{opacity:1;transform:perspective(1200px)rotateX(0)scale(1)}}@keyframes twinkle{0%{opacity:.58}to{opacity:1}}@media (height>=950px) and (width>=800px){.experience{justify-content:center}.intro{margin-top:-18px}.envelope-scene{margin-top:70px;margin-bottom:25px}}@media (width>=1600px){.christmas-tree{width:340px;right:5vw}.intro h1{font-size:78px}.envelope-scene{margin-top:85px;transform:scale(1.08)}}@media (width<=1100px){.site-header{padding:0 32px}.site-footer{padding:20px 32px}.footer-note{max-width:140px;font-size:12px}.footer-year{text-align:right;max-width:100px;line-height:1.8}.steps{gap:9px}.steps i{width:12px;margin-left:2px}.christmas-tree{opacity:.8;width:220px;right:-45px}}@media (width<=700px){.invitation{min-height:max(760px,100svh)}.site-header{height:94px;padding:0 24px}.brand{gap:9px}.brand>svg{width:32px;height:32px}.brand>span{letter-spacing:1.5px;font-size:7px}.header-date{display:none}.sound-toggle{gap:8px;font-size:9px}.sound-toggle svg{width:18px;height:18px}.experience{min-height:570px;padding-top:25px}.intro{padding-top:10px}.eyebrow{margin-bottom:24px;font-size:8px}.intro h1{font-size:55px;line-height:.95}.intro-note{max-width:255px;margin-top:20px;margin-left:auto;margin-right:auto;font-size:10px;line-height:1.7}.envelope-scene{transform-origin:top;width:360px;height:290px;margin-top:72px;margin-bottom:-45px;transform:scale(.72)}.envelope{left:-60px}.envelope-shadow{left:-50px}.scene-hint{font-size:13px;top:326px;left:-72px;right:-72px}.hint-line{width:17px}.site-footer{flex-direction:column;justify-content:center;gap:18px;min-height:100px;padding:16px 20px 25px}.footer-note{max-width:none;font-size:13px}.footer-year{display:none}.steps{order:-1;gap:10px;position:static;transform:none}.steps>span{gap:5px;font-size:7px}.steps>span>b{font-size:12px}.steps i{width:12px;margin-left:4px}.christmas-tree{opacity:.55;width:155px;bottom:72px;right:-43px}.scenery{background-position:47%}.vignette{background:radial-gradient(at 50% 40%,#0922190d,#061b1466),linear-gradient(90deg,#0c241a30,#0c241a22)}.stage-reading .site-header{height:78px}.stage-reading .experience{justify-content:flex-start;min-height:640px;padding:8px 18px 25px}.open-letter{width:100%;max-width:420px;padding:10px}.letter-inner{padding:17px 16px 18px}.letter-topline{letter-spacing:1px;font-size:6px}.letter-topline>svg{width:23px;height:23px}.letter-pretitle{margin-top:23px;font-size:8px}.open-letter h2{letter-spacing:1.7px;margin-top:10px;font-size:34px}.letter-subtitle{margin-top:3px;font-size:29px}.letter-divider{margin-top:18px}.event-date{gap:18px;margin-top:15px;font-size:22px}.event-date>strong{padding:0 23px;font-size:42px}.event-address{gap:4px;margin-top:14px;font-size:9px}.event-address svg{width:13px}.letter-message{margin-top:17px;font-size:16px}.letter-bottom{grid-template-columns:1fr 172px;gap:12px;margin-top:23px}.letter-wish>span:first-child{font-size:7px;line-height:1.8;display:block}.letter-wish>p{font-size:22px}.wish-star{margin-top:18px;margin-left:15px;font-size:35px}.rsvp-title{font-size:18px}.name-input{font-size:10px}.signature-pad{height:61px}.rsvp-note{font-size:6px}.letter-footline{letter-spacing:1.8px;gap:10px;margin-top:23px;font-size:6px}.letter-footline>span{width:30px}.restart-button{padding:3px 0;font-size:17px;bottom:-27px;left:10px;transform:none}.restart-button>span{font-size:7px}.success-message p{font-size:21px}.stage-reading .site-footer{padding-top:24px}.stage-reading .christmas-tree{opacity:.35;width:170px}.success-message{min-height:210px}}@media (width<=370px){.site-header{padding:0 18px}.intro h1{font-size:49px}.envelope-scene{margin-top:68px;margin-bottom:-65px;transform:scale(.6)}.letter-inner{padding:16px 11px}.open-letter h2{font-size:30px}.letter-bottom{grid-template-columns:1fr 156px;gap:10px}.event-address{font-size:8px}.letter-wish>p{font-size:20px}.steps{gap:6px}.steps i{width:7px}.steps>span{font-size:6.5px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}.fireworks{display:none}}.lighting-art{pointer-events:none;z-index:1;position:absolute;inset:0}.lighting-art>svg{width:100%;height:100%;position:absolute;inset:0}.light-map-mobile{display:none}.tree-bulbs,.branch-bulbs{opacity:0;transition:opacity 2s}.is-confirmed .tree-bulbs,.is-confirmed .branch-bulbs{opacity:1}@media (width<=700px){.scenery{background-position:100%}.light-map-desktop{display:none}.light-map-mobile{display:block}.vignette{background:linear-gradient(90deg,#09221933,#061b1470)}.name-input{padding:10px 1px;font-size:16px}.signature-pad{height:78px}.signature-placeholder{top:28px}.confirm-button{min-height:44px;margin-top:5px;font-size:12px}.rsvp-note{font-size:8px}.letter-bottom{align-items:center}.letter-wish>p{line-height:1.05}.success-message>span:not(.success-check){font-size:10px}}.name-input{font-size:16px!important}.signature-pad{height:90px;min-height:90px}.rsvp-note{font-size:9px;line-height:1.5}.open-letter{z-index:4}.fireworks{pointer-events:none}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorantgaramond-0.ttf)format("truetype")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/cormorantgaramond-1.ttf)format("truetype")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorantgaramond-2.ttf)format("truetype")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorantgaramond-3.ttf)format("truetype")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorantgaramond-4.ttf)format("truetype")}@font-face{font-family:Golos Text;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/golostext-0.ttf)format("truetype")}@font-face{font-family:Golos Text;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/golostext-1.ttf)format("truetype")}@font-face{font-family:Golos Text;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/golostext-2.ttf)format("truetype")}@font-face{font-family:Yeseva One;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/yesevaone-0.ttf)format("truetype")}.open-letter h2{letter-spacing:1px;font-family:Yeseva One,Georgia,serif;font-size:45px;font-weight:400}@media (width<=600px){.open-letter h2{letter-spacing:.25px;font-size:29px}}@media (width<=370px){.open-letter h2{letter-spacing:0;font-size:24px}}
