@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Noto+Serif:wght@300&display=swap";.venue-photo-viewer{position:fixed;inset:0;box-sizing:border-box;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:max(76px,env(safe-area-inset-top)) 20px max(32px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;background:#282421;color:#f5f0e9}.venue-photo-viewer::backdrop{background:#282421}.venue-photo-viewer img{display:block;width:min(100%,520px);max-width:100%;height:auto;margin-inline:auto}.venue-photo-viewer-close{position:fixed;top:max(16px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));z-index:1;min-height:44px;padding:8px 18px;border:1px solid #f5f0e980;border-radius:4px;background:#282421;color:#f5f0e9;font:18px/1.3 Cormorant Garamond,Georgia,serif;cursor:pointer}.venue-photo-viewer-close span{margin-left:8px;font:24px/1 sans-serif}.venue-photo-viewer-close:hover{background:#443c37}.venue-photo-viewer-close:focus-visible{outline:2px solid #f5f0e9;outline-offset:4px}.tuscany-map{position:relative;margin:22px 0 28px;text-align:center}.tuscany-map .tuscany-hand{margin-bottom:2svh}.tuscany-map .tuscany-hand{position:relative;z-index:1}.tuscany-svg{display:block;width:min(100%,440px);height:auto;margin:0 auto;overflow:visible;font-family:Cormorant Garamond,Georgia,serif;transform:translate(var(--tuscany-map-shift-x, clamp(-72px, -6vw, -22px)))}.tm-context{pointer-events:none}.tm-photo-link{cursor:zoom-in}.tm-photo-link:focus-visible{outline:2px solid #ad0c0c;outline-offset:4px}.tm-place-link{cursor:pointer}.tm-place-link:hover .tm-borgo,.tm-place-link:focus-visible .tm-borgo{text-decoration:underline}.tm-place-link:focus-visible{outline:2px solid #ad0c0c;outline-offset:4px}.tm-context-land{fill:#e4dccd;fill-opacity:.56;stroke:#766d66;stroke-opacity:.38;stroke-width:1.1;stroke-dasharray:4 5;stroke-linejoin:round}.tm-land{fill:#ebe0cd;opacity:.8}.tm-shadow{fill:#786b5a22}.tm-coast{fill:none;stroke:#554c45;stroke-width:1.3;stroke-linejoin:round;stroke-dasharray:5 3;opacity:.75}.tm-sea{font-style:italic;font-size:16px;fill:#766d66;letter-spacing:.08em}.tm-region{font:400 38px var(--invitation-script);fill:#554c4570;letter-spacing:.06em}.tm-route-ghost{fill:none;stroke:#ad0c0c;stroke-width:2;stroke-dasharray:1 7;stroke-linecap:round;opacity:.25}.tm-route{fill:none;stroke:#ad0c0c;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1}.tm-florence circle{fill:var(--paper, #f5f0e9);stroke:#ad0c0c;stroke-width:2.5}.tm-florence text,.tm-borgo{font-size:21px;font-weight:600;fill:#282421}.tm-borgo-sub{font-size:14px;font-style:italic;fill:#554c45}.tm-pin-drop path{fill:#ad0c0c}.tm-pin-drop circle{fill:var(--paper, #f5f0e9)}.tm-pulse{fill:none;stroke:#ad0c0c;stroke-width:1.5;opacity:0;transform-box:fill-box;transform-origin:center;pointer-events:none}.tm-pin-drop{transform-box:fill-box;transform-origin:50% 100%}.tuscany-map[data-state=scroll][data-motion-active=true] .tm-pulse{animation:tm-pulse 2.4s ease-out infinite}@keyframes tm-pulse{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(3)}}@media(max-width:599px){.tm-sea{translate:70px 215px}}@media(min-width:1000px){.letter-sheet .tuscany-map{grid-column:2 / 12;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,4fr);grid-template-areas:"map note";column-gap:var(--col-gap);align-items:center}.tuscany-map .tuscany-hand{grid-area:note;align-self:center;margin-bottom:0}.tuscany-svg{grid-area:map;justify-self:center;width:min(100%,640px)}}@media(min-width:700px)and (max-width:999px){.tuscany-map{margin:70px 0}}@media(prefers-reduced-motion:reduce){.tm-route{stroke-dashoffset:0!important;animation:none!important}.tm-borgo,.tm-borgo-sub{opacity:1!important;animation:none!important}.tm-pin,.tm-venue-photo{opacity:1!important}.tm-venue-photo{transform:none!important}.tm-pin-drop,.tm-pulse{animation:none!important}.tm-pin-drop{transform:none!important}}.invitation-languages{position:absolute;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));z-index:6;display:flex;gap:4px}.language-choice{position:relative;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;border-radius:4px}.language-choice img{display:block;width:32px;height:24px;object-fit:contain}.language-choice:after{content:"";position:absolute;bottom:3px;left:15px;right:15px;height:2px;background:var(--red, #a32931);opacity:0}.language-choice[aria-pressed=true]:after{opacity:1}.language-choice:focus-visible{outline:2px solid var(--red, #a32931);outline-offset:2px}.rsvp-paper-roll{position:relative;flex:0 0 auto;width:100%;max-width:720px;margin:20px auto 5px}.love-letter .letter-sheet .rsvp-paper-roll .rsvp-letter{margin:0}.rsvp-paper-curl{display:none;pointer-events:none}.rsvp-paper-roll[data-roll-ready=true] .rsvp-paper-surface{clip-path:inset(0 0 var(--roll-hidden, 0px) 0)}.rsvp-paper-roll[data-roll-ready=true] .rsvp-paper-curl{display:block;position:absolute;z-index:1;top:0;left:-1px;right:-1px;height:28px;transform:translateY(calc(var(--roll-edge, 0px) - 85%));border:1px solid #9f958a85;border-radius:48%/22%;background:linear-gradient(to bottom,#d3c7b7,#eee4d7 17%,#fffdf8 38%,#f7efe3 55%,#cabda9 86%,#9c8d78);box-shadow:0 7px 9px -5px #443a2a66,inset 0 2px 2px #fffdf8b3;opacity:var(--curl-opacity, 0)}.rsvp-paper-roll[data-roll-moving=true] .rsvp-paper-surface{will-change:clip-path}.rsvp-paper-roll[data-roll-moving=true] .rsvp-paper-curl{will-change:transform}.rsvp-paper-roll:focus-within .rsvp-paper-surface,.rsvp-paper-roll[data-keep-open=true] .rsvp-paper-surface{clip-path:none}.rsvp-paper-roll:focus-within .rsvp-paper-curl,.rsvp-paper-roll[data-keep-open=true] .rsvp-paper-curl{display:none}@media(max-width:699px){.rsvp-paper-roll{margin:0 auto}}@media(prefers-reduced-motion:reduce){.rsvp-paper-roll[data-roll-ready=true] .rsvp-paper-surface{clip-path:none}.rsvp-paper-roll[data-roll-ready=true] .rsvp-paper-curl{display:none}}@font-face{font-family:Bootzy TM;src:url(/assets/BootzyTM-CUzKjtxx.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:TT Norms Black;src:url(/assets/TTNorms-Black-4se2MSdY.otf) format("opentype");font-style:normal;font-weight:900;font-display:swap}.love-letter{--invitation-script: "Bootzy TM";--paper: #f5f0e9;--ink: #282421;--red: #a32931;--muted: #766d66;min-height:100dvh;background:#44413d;color:var(--ink);font-family:Cormorant Garamond,Georgia,serif;isolation:isolate;overflow:clip;position:relative}.love-letter:after{content:"";pointer-events:none;position:fixed;inset:0;z-index:5;opacity:.04;background-image:radial-gradient(circle at 20% 30%,#00000040 0 .6px,transparent .9px),radial-gradient(circle at 70% 60%,#00000033 0 .6px,transparent .9px),radial-gradient(circle at 45% 85%,#00000026 0 .5px,transparent .8px),repeating-linear-gradient(0deg,#0000001a 0 1px,transparent 1px 3px);background-size:4px 4px,6px 6px,3px 3px,auto;mix-blend-mode:multiply}.letter-sheet{position:relative;width:min(100%,490px);min-height:100dvh;margin-inline:auto;padding:29px clamp(25px,7vw,45px) 34px;background-color:var(--paper);background-image:radial-gradient(ellipse at 18% 12%,#fff9f1 0,transparent 38%),repeating-linear-gradient(0deg,#786b5a05 0 1px,transparent 1px 4px);box-shadow:0 0 55px #100e0d70}.letter-sheet:has(>.rsvp-scene:last-child){padding-bottom:0}.love-letter h1,.love-letter h2,.love-letter .letter-script,.love-letter .form-response{font-family:var(--invitation-script);font-weight:400;font-synthesis:none}.letter-topline{text-align:center;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#68605a}.letter-script{color:var(--red);font-family:var(--invitation-script);font-weight:400}.love-intro{position:relative;padding-top:4px;text-align:center}.love-intro h1{margin:0 0 12px;font-size:16px;font-weight:400;letter-spacing:.05em;text-transform:uppercase;white-space:pre-wrap}.love-intro h1 .greeting-letter{display:inline-block;opacity:0}.love-intro.is-visible h1 .greeting-letter{animation:greeting-letter-fade-in .4s ease-out both}@keyframes greeting-letter-fade-in{0%{opacity:0}to{opacity:1}}.love-letter .love-intro h1{font-family:var(--invitation-script)}html[lang=ru] .love-letter .love-intro h1{font-weight:900}.love-photo{position:relative;z-index:2;width:fit-content;max-width:100%;height:390px;margin:18px auto 15px;padding:0;background:transparent;box-shadow:none;transform:rotate(-5deg)}.love-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(.94)}.love-photo img{width:auto;max-width:100%;object-fit:contain;filter:none}.love-photo .couple-photo{position:relative;z-index:1}.love-photo .love-lettering{--lettering-tile-width: min(120vw, 490px);--lettering-repeat-gap: 0px;position:absolute;z-index:0;left:50%;top:50%;width:min(100vw,490px);height:var(--lettering-tile-width);overflow:hidden;transform:translate(-50%,-50%) rotate(5deg);pointer-events:none}.love-lettering-angle{position:absolute;left:50%;top:50%;width:calc(var(--lettering-tile-width) * 2);transform:translate(-50%,-50%) rotate(15deg)}.love-lettering-row{height:calc(var(--lettering-tile-width) * .125);display:flex;align-items:center}.love-lettering-track{display:flex;gap:var(--lettering-repeat-gap);width:max-content;animation:love-lettering-scroll 18s linear infinite;will-change:transform}.love-lettering-row--two .love-lettering-track{animation-direction:reverse}.love-lettering[data-in-view=false] .love-lettering-track{animation-play-state:paused;will-change:auto}.love-photo .love-lettering-tile{flex:0 0 var(--lettering-tile-width);width:var(--lettering-tile-width);max-width:none;height:auto}@keyframes love-lettering-scroll{0%{transform:translate(0)}to{transform:translate(calc(0px - var(--lettering-tile-width) - var(--lettering-repeat-gap)))}}.love-caption{margin:14px 0 25px;text-align:center;font-size:14px;letter-spacing:normal;text-transform:none}.love-quote{display:block;white-space:pre-line;line-height:1.1}.love-attribution{display:block;margin-top:.65em;line-height:1.35}.envelope-scene{position:relative;min-height:236px;margin:22px -9px 28px;display:grid;place-items:center}.hand-note{margin:17px auto 22px;max-width:280px;color:var(--red);font:700 112px/1 var(--invitation-script);text-align:center;transform:rotate(-3deg)}.what-else{box-sizing:border-box;grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(100%,1040px);min-height:clamp(360px,48vh,620px);margin-inline:auto;padding:clamp(24px,4vw,56px);gap:clamp(24px,4vh,40px);text-align:center}.love-letter .what-else-heading{width:100%;max-width:none;margin:0;color:var(--red);font:700 clamp(52px,8vw,112px)/1 var(--invitation-script);text-align:center;white-space:nowrap;transform:rotate(-3deg)}.what-else-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px);width:100%}.what-else-details p{margin:0;color:var(--ink);font-size:clamp(18px,1.55vw,22px);line-height:1.45}.what-else-details strong{color:var(--red);font-weight:600}.date-calendar{position:relative;margin:24px calc(-1*clamp(25px,7vw,45px)) 21px;border-block:1px solid #554c454d;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}.calendar-day{position:relative;min-height:112px;padding:8px 3px 6px;border-right:1px solid #554c454d}.calendar-day:first-child{border-left:1px solid #554c454d}.calendar-day abbr{display:block;font-size:9px;line-height:1.3;text-decoration:none;letter-spacing:.1em;text-transform:uppercase}.calendar-day small{display:block;margin-top:2px;font-size:9px;line-height:1.3;text-transform:uppercase}.calendar-day b{display:block;margin-top:3px;font-size:clamp(38px,12.5vw,64px);line-height:1.2;font-weight:300}.calendar-ink{position:absolute;inset:0;z-index:2;width:100%;height:100%;overflow:visible;pointer-events:none}.calendar-ink path{fill:none;stroke:var(--red);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.calendar-ink .wedding-heart{stroke-width:2.5;fill:var(--red)}.venue-note{text-align:center;font-size:13px;line-height:1.3}.venue-note .letter-script{font-size:27px}.stay-dates-mobile{display:none}.venue-note a{color:var(--ink);text-underline-offset:3px}.dance-memory{position:relative;grid-column:1 / -1;width:100vw;min-height:0;margin:22px calc(50% - 50vw) 28px}.dance-memory-photo{display:block;width:100%;max-width:none;height:auto}.borgo-stay-note{box-sizing:border-box;max-width:820px;margin:clamp(28px,4vw,54px) auto 18px;padding-inline:clamp(25px,6vw,74px);color:var(--ink);font-size:clamp(19px,1.8vw,26px);line-height:1.45;text-align:center}.childhood-photo{box-sizing:border-box;grid-column:1 / -1;display:flex;align-items:flex-end;justify-content:center;width:100%;max-width:900px;min-height:0;margin:0 auto;padding:0}.childhood-photo img{display:block;width:min(100%,820px);max-height:min(76vh,680px);height:auto;object-fit:contain}.rsvp-letter{position:relative;margin:20px -5px 5px;padding:20px 18px 18px;border:1px solid #9f958a75;background:#fffdf8a6}.rsvp-letter:before{content:"";position:absolute;inset:5px;border:1px solid #9f958a45;pointer-events:none}.rsvp-letter h2{margin:0;color:var(--red);font:400 34px/.9 var(--invitation-script);text-align:center}.rsvp-letter>p{margin:8px 0 13px;text-align:center;font-size:13px}.rsvp-letter label{display:block;margin:10px 0 4px;font-size:12px;letter-spacing:.02em}.rsvp-letter input,.rsvp-letter textarea,.rsvp-letter select{display:block;width:100%;border:0;border-bottom:1px solid #62594f87;border-radius:0;padding:7px 2px;color:var(--ink);background:transparent;font:16px Cormorant Garamond,Georgia,serif;outline:none}.rsvp-letter textarea{min-height:58px;resize:vertical}.rsvp-letter input:focus,.rsvp-letter textarea:focus,.rsvp-letter select:focus{border-bottom:2px solid var(--red)}.rsvp-letter button{display:block;margin:17px auto 0;padding:7px 23px;border:1px solid var(--red);color:var(--red);background:transparent;font:400 22px var(--invitation-script);cursor:pointer;transform:rotate(-2deg);transition:background-color .2s ease,color .2s ease,opacity .2s ease}.rsvp-letter button:hover,.rsvp-letter button:focus-visible{background:var(--red);color:var(--paper)}.rsvp-letter button:disabled{opacity:.58;cursor:progress}.rsvp-disclaimer{margin:12px auto 0!important;max-width:265px;color:#62594f;font-size:11px!important;line-height:1.3}.rsvp-disclaimer-greek{font-family:"Noto Serif",Cormorant Garamond,Georgia,serif;font-size:.85em;font-weight:300;font-synthesis:none}.form-response{padding:16px 4px;color:var(--red);font:400 23px/1.05 var(--invitation-script);text-align:center}.form-response small{display:block;margin-top:10px;color:var(--ink);font:14px Cormorant Garamond,Georgia,serif}.field-error,.submit-error{color:#a32931;font-size:13px!important}.submit-error{margin:12px 0!important;text-align:center}.rsvp-pending{color:#62594f}.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.rsvp-letter.reveal{transition-delay:.04s}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.love-lettering-track{animation:none;will-change:auto}.love-intro h1 .greeting-letter{opacity:1;animation:none!important}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important}}@media(min-width:700px){.letter-sheet{margin-block:26px;min-height:calc(100dvh - 52px)}}@media(max-width:360px){.letter-sheet{padding-inline:24px}.calendar-day{min-height:100px;padding-inline:1px}.calendar-day abbr,.calendar-day small{font-size:8px}.calendar-day b{font-size:36px}}.invitation-not-found{min-height:100dvh;display:grid;place-items:center;padding:28px;background:#44413d;color:#282421;font-family:Cormorant Garamond,Georgia,serif}.invitation-not-found section{width:min(100%,490px);padding:48px 38px;background:#f5f0e9;text-align:center;box-shadow:0 0 55px #100e0d70}.invitation-not-found .not-found-overline{margin:0 0 24px;color:#766d66;font-size:12px;letter-spacing:.16em;text-transform:uppercase}.invitation-not-found h1{margin:0;color:#a32931;font:400 clamp(36px,10vw,52px)/.98 var(--invitation-script)}.invitation-not-found section>p:not(.not-found-overline){max-width:300px;margin:20px auto 26px;font-size:18px;line-height:1.3}.invitation-not-found a{display:inline-block;padding:8px 17px;border:1px solid #a32931;color:#a32931;text-decoration:none;font:400 21px var(--invitation-script)}.invitation-not-found a:hover,.invitation-not-found a:focus-visible{background:#a32931;color:#f5f0e9}@media(max-width:699px){.letter-sheet{--page-gutter: clamp(18px, 5vw, 28px);padding:3svh var(--page-gutter) 8svh}.letter-sheet .mobile-page{min-height:92svh;margin-block:0 -16svh;padding-block:10svh;scroll-margin-block-start:10svh;display:flex;flex-direction:column;justify-content:center;align-items:center}.letter-sheet .love-intro{min-height:100svh;padding-block:3svh 8svh;scroll-margin-block-start:0}.love-intro h1{font-size:22px;margin-bottom:4svh}.love-photo{width:fit-content;height:clamp(300px,56svh,590px);margin:0 auto 4svh;padding:0}.love-caption{margin:0;max-width:330px;font-size:18px;line-height:1.35}.letter-sheet .envelope-scene{display:flex;min-height:94svh;margin-inline:-6px}.hand-note{max-width:none;margin:0 auto 5svh;font-size:84px}.date-calendar{width:calc(100% + 2 * var(--page-gutter));margin:0 calc(-1 * var(--page-gutter)) 5svh}.calendar-day{min-height:145px;padding:13px 2px 9px}.calendar-day abbr,.calendar-day small{font-size:10px}.calendar-day b{font-size:clamp(38px,14vw,62px);margin-top:9px}.venue-note{font-size:19px;line-height:1.35}.venue-note p{margin-block:16px}.venue-note .letter-script{font-size:clamp(27px,7.7vw,37px)}html[lang=ru] .venue-note .letter-script{font-size:clamp(20px,5.8vw,25px)}.stay-dates-desktop{display:none}.stay-dates-mobile{display:block;white-space:pre-line;line-height:1.18}.letter-sheet .dance-memory{display:block;margin-inline:calc(50% - 50vw)}.borgo-stay-note{margin-block:24px 22px;padding-inline:var(--page-gutter);font-size:clamp(18px,5vw,21px);line-height:1.5}.letter-sheet .rsvp-letter{display:block;margin-block:10svh 0;padding:5svh 20px;min-height:88svh}.letter-sheet .childhood-photo{align-items:center;justify-content:flex-end;margin-block:0;padding-block:10svh 0}.letter-sheet .what-else-details{grid-template-columns:1fr;gap:clamp(18px,3.5svh,28px);max-width:360px}.letter-sheet .what-else-details p{font-size:clamp(17px,4.8vw,20px)}.rsvp-letter h2{font-size:43px}.rsvp-letter>p{font-size:18px;margin-block:16px 24px}.rsvp-letter label{font-size:17px;margin-top:18px}.rsvp-letter input,.rsvp-letter select,.rsvp-letter textarea{min-height:48px;padding-block:10px;font-size:19px}.rsvp-letter textarea{min-height:100px}.rsvp-letter button{min-height:48px;font-size:28px;margin-top:28px}.rsvp-disclaimer{max-width:none;font-size:14px!important}.form-response{font-size:29px;padding-block:4svh}}@media(min-width:700px){.love-letter{background:var(--paper)}.letter-sheet{--gutter: clamp(32px, 6vw, 128px);--col-gap: clamp(20px, 3vw, 56px);width:100%;max-width:none;margin:0;min-height:100dvh;padding:0 var(--gutter) 40px;box-shadow:none;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:clamp(56px,9vw,140px);align-content:start}.letter-sheet>*{min-width:0}.letter-sheet .love-intro{grid-column:1 / -1;min-height:100dvh;margin:0 calc(-1 * var(--gutter));padding:5vh var(--gutter) 6vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.love-intro h1{font-size:clamp(26px,2.4vw,38px);margin-bottom:2vh}.love-photo{height:clamp(420px,66vh,680px);margin:3vh auto 4vh}.love-photo .love-lettering{--lettering-tile-width: clamp(640px, 64vw, 1200px);width:100vw}.love-caption{font-size:clamp(18px,1.5vw,24px);margin:0;max-width:none}.letter-sheet .envelope-scene{grid-column:3 / 11;min-height:clamp(460px,56vh,640px);margin:0}.letter-sheet .date-page{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:"note cal" "venue cal";column-gap:var(--col-gap);row-gap:24px;align-items:center}.hand-note{grid-area:note;align-self:end;margin:0 auto;font-size:clamp(80px,8vw,132px);max-width:460px}.date-calendar{grid-area:cal;margin:0 calc(-1 * var(--gutter)) 0 0}.calendar-day{min-height:clamp(150px,15vw,230px);padding-top:16px}.calendar-day abbr,.calendar-day small{font-size:clamp(11px,.9vw,14px)}.calendar-day b{font-size:clamp(44px,5vw,84px);margin-top:10px}.venue-note{grid-area:venue;align-self:start;font-size:clamp(19px,1.6vw,25px);line-height:1.4;max-width:460px;margin:0 auto}.venue-note p{margin-block:14px}.venue-note .letter-script{font-size:clamp(32px,3vw,48px)}.letter-sheet .dance-memory{grid-column:1 / -1;grid-row:auto;width:100vw;margin-block:0;min-height:0}.letter-sheet .rsvp-scene{grid-column:1 / -1;width:100%;min-height:100dvh}.letter-sheet .rsvp-letter{width:100%;max-width:720px;justify-self:center;margin:0;padding:clamp(32px,4vw,56px) clamp(28px,4vw,60px)}.rsvp-letter h2{font-size:clamp(42px,3.8vw,60px)}.rsvp-letter>p{font-size:19px;margin-block:14px 22px}.rsvp-letter label{font-size:18px;margin-top:18px}.rsvp-letter input,.rsvp-letter select,.rsvp-letter textarea{font-size:20px;padding-block:10px}.rsvp-letter textarea{min-height:110px}.rsvp-letter button{font-size:28px;padding:9px 32px;margin-top:28px}.rsvp-disclaimer{max-width:440px;font-size:14px!important}.form-response{font-size:30px}.letter-sheet .letter-topline{grid-column:1 / -1;margin-top:0!important;font-size:12px!important}}@media(min-width:700px)and (max-width:999px){.letter-sheet{--gutter: clamp(28px, 5vw, 50px);display:block}.letter-sheet .envelope-scene{margin:70px 0}.letter-sheet .date-page{grid-template-columns:1fr;grid-template-areas:"note" "cal" "venue";gap:32px}.date-calendar{margin:0}.letter-sheet .dance-memory{margin:80px 0 35px;min-height:auto}.letter-sheet .letter-topline{margin-top:40px!important}}.letter-sheet .envelope-scene{container-type:inline-size;display:block;height:180svh;min-height:0;margin-block-end:clamp(112px,16svh,192px);padding-block:0}.envelope-stage{position:sticky;top:0;height:94svh;display:grid;place-items:center;padding-top:12svh}.letter-sheet .envelope-scene[data-reduced-motion=true]{height:110svh}.envelope-scene[data-reduced-motion=true] .envelope-stage{position:relative}.paper-env{--hinge: 41.8919%;position:relative;width:min(90cqw,560px,46svh);aspect-ratio:606 / 740;margin:0 auto;container-type:inline-size;perspective:1100px}.paper-env>*{position:absolute;inset:0}.pe-back,.pe-lid,.pe-front,.pe-signature{pointer-events:none}.pe-back{z-index:1;background:url(/assets/envelope-photo-back-GJzZ229Z.webp) 0 0 / 100% 100% no-repeat,linear-gradient(#24080d,#420c17);-webkit-mask:url(data:image/webp;base64,UklGRoIAAABXRUJQVlA4THUAAAAvXcK4EA8w//M///Mf8GAUSbYTMkckfClYQxpSkMAxv2dgf/6wEf2fgIr+p//pf/qf/v+BfyhOP6qrx4sESOsw6iijuyxetCKZsGxetHvRgcQ4y4zlyUKE/qP/6D/6j/7jdJQiEyjqLAJFkwRxFk0SxIcMlBEA) 0 0 / 100% 100% no-repeat;mask:url(data:image/webp;base64,UklGRoIAAABXRUJQVlA4THUAAAAvXcK4EA8w//M///Mf8GAUSbYTMkckfClYQxpSkMAxv2dgf/6wEf2fgIr+p//pf/qf/v+BfyhOP6qrx4sESOsw6iijuyxetCKZsGxetHvRgcQ4y4zlyUKE/qP/6D/6j/7jdJQiEyjqLAJFkwRxFk0SxIcMlBEA) 0 0 / 100% 100% no-repeat}.pe-lid{height:var(--hinge);bottom:auto;transform-origin:50% 100%}.pe-lid i{position:absolute;inset:0;background:url(/assets/envelope-photo-flap-DduLODam.webp) 0 0 / 100% 100% no-repeat}.pe-paper-pocket{z-index:2;clip-path:inset(-60% -12% 0 -12%)}.pe-card{position:absolute;inset:5.4595% 18.48% auto 15.51%;aspect-ratio:2405 / 3508}.pe-letter-art{display:block;width:100%;height:auto}.pe-front{z-index:4;background:url(/assets/envelope-photo-front-BktFVLWu.webp) 0 0 / 100% 100% no-repeat}.pe-signature{z-index:6}.pe-signature span{position:absolute;left:50%;top:79%;width:76%;transform:translate(-50%);text-align:center;color:#fbeee4;font:400 8cqw/1.1 var(--invitation-script);text-shadow:0 -.1cqw .1cqw #4a0a1088;-webkit-user-select:text;user-select:text;pointer-events:auto}html[lang=ru] .pe-signature span{font-size:6cqw}.envelope-scene[data-motion-active=true][data-reduced-motion=false] :is(.paper-env,.pe-card,.pe-lid){will-change:transform}.date-calendar{isolation:isolate}.date-calendar .calendar-day{z-index:1}.date-calendar .chosen b{opacity:0}.calendar-pencil{position:absolute;left:calc(300% / 7);right:0;top:-8px;bottom:-8px;z-index:0;pointer-events:none;overflow:visible}.calendar-pencil-svg{display:block;width:100%;height:100%;overflow:visible}.calendar-pencil-stroke{opacity:0;stroke-dasharray:1 1;stroke-dashoffset:1}.date-calendar.is-visible .calendar-pencil-stroke{animation-name:calendar-pencil-draw;animation-timing-function:linear;animation-fill-mode:both;animation-iteration-count:1}@keyframes calendar-pencil-draw{0%{opacity:0;stroke-dashoffset:1}2%{opacity:1;stroke-dashoffset:.995}16%{opacity:1;stroke-dashoffset:.91}43%{opacity:1;stroke-dashoffset:.48}77%{opacity:1;stroke-dashoffset:.085}to{opacity:1;stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.date-calendar .calendar-pencil-stroke{animation:none!important;opacity:1;stroke-dashoffset:0}}.love-letter .letter-sheet{display:block;width:100%;max-width:none;margin-block:0;padding-block:0;box-shadow:none}.love-letter .letter-sheet>.invitation-scene{box-sizing:border-box;min-height:100dvh;margin-block:0;scroll-margin-block:0}.love-letter .invitation-scene.reveal{transform:none}.love-letter .letter-sheet>:is(.date-page,.tuscany-map,.what-else,.dance-memory){padding-block:8dvh}.love-letter .letter-sheet .love-photo{height:min(56dvh,680px)}.love-letter .letter-sheet .envelope-scene{display:block;height:200dvh;padding-block:0}.love-letter .envelope-stage,.love-letter .envelope-scene[data-reduced-motion=true]{height:100dvh}.love-letter .letter-sheet .tuscany-map{min-height:150dvh}.love-letter .tuscany-svg{max-height:68dvh}.love-letter .letter-sheet .dance-memory{display:flex;flex-direction:column;justify-content:center;align-items:center}.love-letter .letter-sheet .rsvp-letter{width:100%;max-width:720px;margin-inline:auto}.love-letter .letter-sheet>.rsvp-scene{display:flex;flex-direction:column;align-items:center}.love-letter .letter-sheet .childhood-photo{align-items:center;justify-content:center}.love-letter .letter-sheet .rsvp-scene>.childhood-photo{flex:0 0 auto;align-self:center;width:min(100%,420px);max-width:420px;margin:auto auto 0;padding:0}.love-letter .letter-sheet .rsvp-scene>.childhood-photo img{width:min(100%,420px);max-height:min(30dvh,240px)}@media(min-width:700px){.love-letter .letter-sheet>.rsvp-scene{grid-column:1 / -1}.love-letter .letter-sheet .love-photo{height:min(66dvh,680px)}}@media(max-width:699px){.love-letter .letter-sheet>.rsvp-scene.mobile-page{min-height:100svh;margin-block:0;padding-block:2svh 0;scroll-margin-block-start:0;justify-content:flex-start;align-items:stretch}.love-letter .letter-sheet>.rsvp-scene.mobile-page .rsvp-letter{display:block;width:100%;max-width:720px;margin:0 auto;padding:clamp(14px,2svh,22px) 20px;min-height:0}.love-letter .letter-sheet>.rsvp-scene.mobile-page>.childhood-photo{width:min(100%,360px);max-width:360px}.love-letter .letter-sheet>.rsvp-scene.mobile-page>.childhood-photo img{width:min(100%,360px);max-height:min(28svh,220px)}}@media(prefers-reduced-motion:reduce){html:has(.love-letter){scroll-behavior:auto}.love-letter .letter-sheet .tuscany-map{min-height:100dvh}}@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-font-weight:initial}}}@layer theme{:root,:host{--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-semibold:600;--default-font-family:var(--app-font-sans);--default-mono-font-family:var(--app-font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:hsl(var(--border))}html{scroll-behavior:smooth}body{background-color:hsl(var(--background));font-family:var(--app-font-sans);color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.block{display:block}.flex{display:flex}.hidden{display:none}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-lg{max-width:var(--container-lg)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-900{background-color:var(--color-gray-900)}.p-3{padding:calc(var(--spacing) * 3)}.p-6{padding:calc(var(--spacing) * 6)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-left{text-align:left}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-gray-600{color:var(--color-gray-600)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-white{color:var(--color-white)}@media(hover:hover){.hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}}}:root{--background:38 36% 94%;--foreground:24 8% 15%;--border:30 12% 78%;--input:30 12% 78%;--ring:354 61% 40%;--card:40 39% 97%;--card-foreground:24 8% 15%;--popover:40 39% 97%;--popover-foreground:24 8% 15%;--primary:354 61% 40%;--primary-foreground:38 36% 94%;--secondary:30 16% 88%;--secondary-foreground:24 8% 15%;--muted:30 16% 88%;--muted-foreground:25 9% 43%;--accent:354 61% 40%;--accent-foreground:38 36% 94%;--destructive:0 67% 44%;--destructive-foreground:0 0% 100%;--app-font-sans:"Cormorant Garamond", Georgia, serif;--app-font-serif:"Cormorant Garamond", Georgia, serif;--app-font-mono:"Cormorant Garamond", Georgia, serif;--radius:.25rem;--shadow-2xs:0 1px 2px #20191512;--shadow-xs:0 2px 5px #20191516;--shadow-sm:0 4px 12px #2019151b;--shadow:0 8px 26px #20191520;--shadow-md:0 10px 32px #20191524;--shadow-lg:0 16px 44px #20191528;--shadow-xl:0 22px 60px #20191530;--shadow-2xl:0 28px 80px #20191535;--tracking-normal:0em}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}html[lang=ru] :is(.love-letter,.invitation-not-found){--invitation-script: "TT Norms Black"}html[lang=fr] .love-letter .what-else-heading{font-size:clamp(34px,8vw,80px);white-space:normal}html:not([lang=en]) .rsvp-letter h2{line-height:1.12}html:not([lang=en]) .rsvp-letter select{font-size:clamp(14px,3.8vw,20px)}@media(max-width:699px){html:not([lang=en]) .rsvp-letter h2{font-size:clamp(30px,8.5vw,40px)}html:not([lang=en]) .rsvp-letter button{max-width:100%;font-size:25px}html[lang=fr] .hand-note:not(.what-else-heading){font-size:clamp(60px,18vw,84px)}html[lang=ru] .hand-note:not(.what-else-heading){font-size:clamp(48px,15vw,60px)}}
