@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_b0be4939-module__VEr6JG__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_b0be4939-module__VEr6JG__variable{--font-body:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 900;font-display:swap;src:url(../media/35161b7740c25d33-s.05wv8sp_ts~44.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 900;font-display:swap;src:url(../media/391e53907fa6d8ec-s.09se41kx.zlna.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 900;font-display:swap;src:url(../media/ae8872c8a32e309c-s.05txd3dlozf45.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 900;font-display:swap;src:url(../media/70e3db2de7f94926-s.p.0~0iy9faq3424.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/65c558afe41e89d6-s.113htgw8u-emy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/14e23f9b59180572-s.08.c8psu~gif9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/b49b0d9b851e4899-s.0yfy_qj1.2qn0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/2a65768255d6b625-s.p.14by5b4al-y~f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display Fallback;src:local(Times New Roman);ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.0%;size-adjust:111.26%}.playfair_display_c58c44d5-module__qSQmxG__className{font-family:Playfair Display,Playfair Display Fallback}.playfair_display_c58c44d5-module__qSQmxG__variable{--font-display:"Playfair Display", "Playfair Display Fallback"}
@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/da4b870ab52b3094-s.0v_p~5_c0b~1d.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/86d70b7c76b6ec6e-s.17_wf1k7ou9-q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/11cc37d7380d16b4-s.0ptcwqi9jx~4d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/a85fe84266768609-s.p.05b418i5bs~lg.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat Fallback;src:local(Arial);ascent-override:124.77%;descent-override:38.99%;line-gap-override:0.0%;size-adjust:76.94%}.caveat_f4b61a99-module__qhs43G__className{font-family:Caveat,Caveat Fallback;font-style:normal}.caveat_f4b61a99-module__qhs43G__variable{--font-hand:"Caveat", "Caveat Fallback"}
:root{--ink:#223449;--cream:#fff7e8;--red:#e84855;--sky:#7ec9d5;--gold:#f3bd5b}*{box-sizing:border-box}html{background:#f0b761}body{color:var(--ink);font-family:var(--font-body), Arial, sans-serif;margin:0}button,input{font:inherit}.site-shell{background:radial-gradient(circle at 15% 18%,#ffffff47 0 4px,#0000 5px),linear-gradient(145deg,#f6ca72 0%,#ef9d6a 48%,#e98478 100%);place-items:center;min-height:100svh;padding:48px 20px 70px;display:grid;position:relative;overflow:hidden}.sun{border:2px solid #fff7e857;border-radius:50%;position:absolute}.sun:before,.sun:after{content:"";border-radius:inherit;border:inherit;position:absolute;inset:16px}.sun:after{inset:35px}.sun-one{width:240px;height:240px;top:-80px;left:-60px}.sun-two{width:180px;height:180px;bottom:-45px;right:-55px}.route-line{border-top:3px dashed #2234492e;width:280px;position:absolute;transform:rotate(-14deg)}.route-one{top:22%;right:-80px}.route-two{bottom:14%;left:-90px;transform:rotate(20deg)}.postcard{background:var(--cream);isolation:isolate;border:1px solid #63463133;width:min(920px,100%);min-height:580px;padding:clamp(32px,6vw,70px);position:relative;transform:rotate(-1deg);box-shadow:0 30px 75px #4926263d,inset 0 3px #fff9}.postcard:before{content:"";pointer-events:none;border:2px solid #2234491a;position:absolute;inset:12px}.paper-grain{z-index:-1;opacity:.2;background-image:repeating-linear-gradient(95deg,#0000 0 3px,#50342609 4px);position:absolute;inset:0}.gate,.countdown-view{min-height:440px;position:relative}.eyebrow{color:var(--red);letter-spacing:.2em;margin:0 0 14px;font-size:12px;font-weight:800}h1{max-width:650px;color:var(--ink);font-family:var(--font-display), Georgia, serif;letter-spacing:-.055em;margin:0;font-size:clamp(48px,8vw,86px);font-weight:700;line-height:.88}h1 span{color:var(--red);font-style:italic;font-weight:400;display:block}.gate-copy{max-width:530px;font-family:var(--font-display), Georgia, serif;margin:28px 0 30px;font-size:clamp(17px,2.4vw,22px);line-height:1.45}.postmark{text-align:center;opacity:.75;border:3px double #22344975;border-radius:50%;place-content:center;width:150px;height:74px;display:grid;position:absolute;top:-8px;right:12px;transform:rotate(9deg)}.postmark span{font:800 12px/1.3 var(--font-body);letter-spacing:.14em}.postmark b{letter-spacing:.12em;font-size:9px}.stamp{width:105px;height:125px;color:var(--cream);clip-path:polygon(6% 0,12% 3%,18% 0,24% 3%,30% 0,36% 3%,42% 0,48% 3%,54% 0,60% 3%,66% 0,72% 3%,78% 0,84% 3%,90% 0,94% 5%,100% 10%,97% 16%,100% 22%,97% 28%,100% 34%,97% 40%,100% 46%,97% 52%,100% 58%,97% 64%,100% 70%,97% 76%,100% 82%,97% 88%,100% 94%,94% 100%,88% 97%,82% 100%,76% 97%,70% 100%,64% 97%,58% 100%,52% 97%,46% 100%,40% 97%,34% 100%,28% 97%,22% 100%,16% 97%,10% 100%,3% 94%,6% 88%,3% 82%,6% 76%,3% 70%,6% 64%,3% 58%,6% 52%,3% 46%,6% 40%,3% 34%,6% 28%,3% 22%,6% 16%,3% 10%);text-align:center;background:#75c6d2;place-content:center;display:grid;position:absolute;bottom:-15px;right:8px;transform:rotate(5deg)}.stamp span{font-size:46px}.stamp small{letter-spacing:.16em;font-size:9px;font-weight:900}.password-form{width:min(520px,100%)}.password-form label{letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:800;display:block}.password-clue{max-width:490px;font-family:var(--font-display), Georgia, serif;margin:0 0 14px;font-size:17px;font-weight:600;line-height:1.35}.input-row{gap:9px;display:flex}.input-row input{border:2px solid var(--ink);min-width:0;height:54px;color:var(--ink);letter-spacing:.2em;background:#ffffff80;border-radius:0;outline:none;flex:1;padding:0 16px;font-size:24px}.input-row input:focus{box-shadow:4px 4px 0 var(--gold)}.input-row button{background:var(--red);color:#fff;cursor:pointer;box-shadow:4px 4px 0 var(--ink);border:0;padding:0 24px;font-weight:800;transition:transform .15s,box-shadow .15s}.input-row button:hover{box-shadow:6px 6px 0 var(--ink);transform:translate(-2px,-2px)}.input-row button:active{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)}.form-message{opacity:.65;min-height:20px;margin:10px 0 0;font-size:12px}.form-message.is-error{color:#b51e34;opacity:1;font-weight:800}.signature{font-family:var(--font-hand), cursive;margin:42px 0 0;font-size:24px;transform:rotate(-2deg)}.signature strong{color:var(--red);font-size:1.25em}.postcard-unlocked{transform:rotate(.7deg)}.countdown-view{text-align:center}.countdown-view h1{margin-inline:auto;font-size:clamp(45px,7.5vw,80px)}.postmark-small{top:-25px;right:-20px;transform:rotate(11deg)scale(.78)}.countdown{grid-template-columns:repeat(4,1fr);gap:clamp(8px,2vw,18px);margin:32px auto 25px;display:grid}.time-unit{border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:13px 4px 11px}.time-unit span{font-family:var(--font-display), Georgia, serif;font-variant-numeric:tabular-nums;font-size:clamp(32px,6vw,62px);line-height:1;display:block}.time-unit small{color:var(--red);letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:800}.route-card{grid-template-columns:1fr minmax(80px,1.5fr) 1fr;align-items:center;gap:14px;max-width:670px;margin:0 auto;display:grid}.route-card>div:first-child{text-align:left}.route-card>div:last-child{text-align:right}.airport-code{font-size:24px;font-weight:900;display:block}.route-card small{opacity:.65;font-size:10px}.flight-path{color:var(--red);align-items:center;gap:8px;display:flex}.flight-path i{border-top:2px dashed var(--sky);flex:1}.flight-path span{font-size:22px;transform:rotate(9deg)}.naughty-note{max-width:560px;font:italic 19px/1.45 var(--font-display), Georgia, serif;margin:24px auto 0}.kiss-mark{filter:saturate(.8);font-size:52px;position:absolute;bottom:-20px;right:4px;transform:rotate(18deg)}.countdown-signature{margin-top:22px}.arrival-message{margin:38px auto}.arrival-message span{color:var(--red);letter-spacing:.18em;font-size:12px;font-weight:900;display:block}.arrival-message strong{font:italic 42px var(--font-display), Georgia, serif;margin-top:8px;display:block}footer{color:#223449b3;letter-spacing:.16em;text-align:center;font-size:9px;font-weight:900;position:absolute;bottom:20px}@media (max-width:680px){.site-shell{place-items:start center;padding:28px 13px 58px}.postcard{min-height:calc(100svh - 88px);padding:54px 28px 38px;transform:none}.postcard:before{inset:8px}.postmark{top:-34px;right:-8px;transform:rotate(8deg)scale(.68)}.stamp{display:none}.gate-copy{margin-top:24px}.input-row{flex-direction:column}.input-row button{height:52px}.signature{margin-top:30px}.countdown{gap:5px;margin-top:27px}.time-unit small{letter-spacing:.09em;font-size:8px}.route-card{grid-template-columns:1fr 1fr;margin-top:22px}.flight-path{grid-area:1/1/auto/-1}.route-card>div:first-child,.route-card>div:last-child{grid-row:2}.postmark-small{top:-42px}.kiss-mark{bottom:-10px}}@media (prefers-reduced-motion:no-preference){.postcard{animation:.65s cubic-bezier(.2,.8,.2,1) both land}.countdown-view{animation:.5s both reveal}@keyframes land{0%{opacity:0;transform:translateY(28px)rotate(-3deg)}}@keyframes reveal{0%{opacity:0;transform:translateY(8px)}}}
