@font-face{font-family:Slight;src:url(/fonts/slight-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Adobe Garamond;src:url(/fonts/AGaramond-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/CormorantGaramond-Variable.ttf)format("truetype");font-weight:300 700;font-style:normal;font-display:swap}:root{--colorBurgundy:#8a8178;--colorDarkRose:#8a8178;--colorPink:#e8cbd0;--colorCream:#faf6ed;--colorOlive:#8a8178;--colorBackground:#f0e9df;--colorPaper:var(--colorCream);--colorInk:#8a8178;--colorMuted:#8a8178;--colorBorder:#e0d4cb;--fontSerif:"Adobe Garamond", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--fontScript:"Slight", "Snell Roundhand", "Segoe Script", cursive;font-family:var(--fontSerif);color:var(--colorInk);background:var(--colorBackground);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{min-width:0;margin:0}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}#root{min-height:100svh}h1,p{margin:0}::selection{color:var(--colorPaper);background:var(--colorInk)}.weddingPage{min-width:0}.weddingScreen{scroll-snap-align:start;place-items:center;min-height:100svh;padding:clamp(16px,3vw,40px);display:grid}.envelopeStage{width:100%;min-width:0;height:100svh;container-type:size}#envelope{padding:0}.envelope{--envelopeZoom:1;--artHeight:calc(max(100cqh, 56.28cqw) * var(--envelopeZoom));isolation:isolate;width:100%;height:100%;color:var(--colorBurgundy);background:var(--colorCream);font:inherit;-webkit-tap-highlight-color:transparent;border:0;padding:0;text-decoration:none;display:block;position:relative;overflow:hidden}.envelope:focus-visible,.backToEnvelope:focus-visible{outline:3px solid var(--colorBurgundy);outline-offset:6px}.envelope:focus-visible{outline-offset:-6px}.envelopeImage{width:calc(var(--artHeight) * 1672 / 941);height:var(--artHeight);max-width:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.envelopeHeading{--writingDuration:2.9s;--writingDelay:.35s;inset:clamp(24px, calc(46% - var(--artHeight) * .35), 11%) 3% auto;color:var(--colorOlive);text-align:center;gap:12px;display:grid;position:absolute}.envelopeDetails{width:94%;color:var(--colorOlive);font-family:var(--fontSerif);text-align:center;justify-items:center;gap:clamp(16px,2.4cqh,24px);display:grid;position:absolute;top:81%;left:3%}.envelopeDate{white-space:nowrap;font-variant-numeric:lining-nums tabular-nums;font-size:clamp(25px,min(3.9cqw,5.9cqh),62px);line-height:1.1}.envelopeComingSoon{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-family:var(--fontScript);font-size:clamp(18px,min(4.5cqw,3.8cqh),36px);font-weight:400;line-height:1.6}@media (width<=767px) and (orientation:portrait){.envelopeDetails{top:77%}.envelopeDate{font-size:clamp(32px,8.5cqw,48px)}.envelopeComingSoon{white-space:nowrap;margin-top:clamp(8px,1.2cqh,12px);font-size:min(4.2cqw,29px)}}.invitationDots{vertical-align:baseline;gap:.1em;margin-left:.2em;font-size:1.2em;line-height:1;display:inline-flex}@media (width>=768px),(orientation:landscape){.envelopeComingSoon{bottom:max(2.5cqh, env(safe-area-inset-bottom));width:94%;font-size:clamp(16px,min(3.8cqw,3.2cqh),30px);position:fixed;left:3%}.invitationDots{font-size:1em}}.invitationDots>span{opacity:1;background:currentColor;border-radius:50%;flex:none;width:max(3px,.14em);height:max(3px,.14em);display:block}@media (width<=767px) and (orientation:portrait){.invitationDots>span{width:max(2.5px,.12em);height:max(2.5px,.12em)}}@media (prefers-reduced-motion:no-preference){.invitationDots>span{animation:1.8s ease-in-out infinite flashInvitationDot}.invitationDots>span:nth-child(2){animation-delay:.3s}.invitationDots>span:nth-child(3){animation-delay:.6s}}@keyframes flashInvitationDot{0%,60%,to{opacity:.4}30%{opacity:1}}.envelopeKicker{letter-spacing:.08em;text-transform:uppercase;font-size:clamp(18px,min(2.4cqw,3.3cqh),35px)}.envelopeNames,.envelopeSaveTheDate,.envelopeComingSoon{color:var(--colorOlive)}.envelopeNames{width:calc(min(94cqw, 104cqh) * var(--envelopeZoom));justify-self:center;max-width:100%;height:auto;display:block}.envelopeComingSoon,.envelopeSaveTheDate,.invitationEyebrow,.invitationNames{text-shadow:.009em 0,-.009em 0,0 .009em,0 -.009em,.006em .006em,-.006em .006em,.006em -.006em,-.006em -.006em}.envelopeNames>path{stroke:currentColor;stroke-width:.8px;stroke-linejoin:round;paint-order:stroke fill}@media (prefers-reduced-motion:no-preference){.writingStroke{stroke-dasharray:1;animation-name:writeStroke;animation-timing-function:linear;animation-fill-mode:both}}@keyframes writeStroke{0%{stroke-dashoffset:1px;opacity:0}2%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@media (width<=767px) and (orientation:portrait){.envelope{--artHeight:max(100cqh, 216.667cqw)}.envelopeImage{width:calc(var(--artHeight) * 852 / 1846);transform:translate(-50%,-50%)}.envelopeHeading{top:12%}}.envelopeSaveTheDate{text-align:center;font-family:var(--fontScript);justify-self:center;margin-top:clamp(8px,1.5cqh,16px);font-size:clamp(32px,min(4.4cqw,5.5cqh),58px);font-weight:400;line-height:1.5}@media (prefers-reduced-motion:no-preference){.envelopeSaveTheDate{animation:2s cubic-bezier(.22,1,.36,1) both revealSaveTheDate;animation-delay:calc(var(--writingDelay) + var(--writingDuration) + .15s)}}@keyframes revealSaveTheDate{0%{opacity:0;clip-path:inset(0 -10% 100%);transform:translateY(-12px)}to{opacity:1;clip-path:inset(-20% -10%);transform:translateY(0)}}.invitationStage{flex-direction:column;gap:24px;width:min(100%,540px);display:flex}.backToEnvelope{width:auto;min-height:44px;color:var(--colorInk);text-underline-offset:4px;align-self:center;padding:8px 16px;text-decoration:underline}.invitation{border:1px solid var(--colorBorder);background:var(--colorPaper);text-align:center;flex-direction:column;align-items:center;gap:clamp(24px,5vw,36px);padding:clamp(40px,8vw,64px) clamp(28px,6vw,56px);display:flex;position:relative;box-shadow:0 2px 4px #332e2108,0 20px 60px #332e2114}.invitation:before{content:"";border:1px solid var(--colorPink);pointer-events:none;position:absolute;inset:12px}.monogram{color:var(--colorMuted);align-items:center;gap:8px;font-size:24px;font-weight:400;display:inline-flex}.monogramPlus{font-size:14px}.invitationEyebrow{color:var(--colorDarkRose);font-family:var(--fontScript);font-size:clamp(26px,6vw,36px);font-weight:400;line-height:1.6}.invitationNames{font-family:var(--fontScript);flex-direction:column;font-size:clamp(40px,10vw,68px);font-weight:400;line-height:1.4;display:flex}.invitationAmpersand{color:var(--colorDarkRose);margin-block:4px;font-size:.55em;font-style:normal}.invitationDetails{justify-items:center;gap:24px;font-size:clamp(19px,4vw,22px);line-height:1.6;display:grid}.invitationDate{letter-spacing:.04em;border-block:0;padding-block:14px;font-size:clamp(22px,5vw,28px);display:block}.invitationVenue{color:var(--colorOlive)}.invitationLocation{color:var(--colorMuted);letter-spacing:.03em;font-size:17px;display:block}.weddingPage{display:grid}.weddingPage>.weddingScreen{grid-area:1/1}#envelope{z-index:2;pointer-events:none;height:200svh;display:block;position:relative}#envelope .envelopeStage{position:sticky;top:0}#invitation{z-index:1;align-self:start;position:sticky;top:0}.invitationStage{width:100%}.envelope{perspective:1400px;background:0 0}.envelopeBottomLayer,.envelopeTopLayer{opacity:var(--layerOpacity,1);position:absolute;inset:0}.envelopeBottomLayer{background:var(--colorCream)}.envelopeTopLayer{opacity:var(--topOpacity,1);transform-origin:50% 0;transform:rotateX(var(--flapAngle,0deg));backface-visibility:hidden;filter:drop-shadow(0 var(--shadowOffset,12px) var(--shadowBlur,14px) rgb(78 55 29/var(--shadowOpacity,.38)))}.envelopeDetails{opacity:var(--layerOpacity,1)}.clickToOpen .invitationStage{z-index:1;opacity:var(--cardOpacity,0);position:relative}.envelopePocket{background:0 0}.envelopePocket .envelopeImage{clip-path:polygon(0 0,29.6% 50.5%,70.4% 50.5%,100% 0,100% 100%,0 100%)}@media (width<=767px) and (orientation:portrait){.envelopePocket .envelopeImage{clip-path:polygon(0 40.3%,26% 52.3%,74.5% 52.3%,100% 40.3%,100% 100%,0 100%)}}.envelopeOpen{left:calc(50% - var(--artHeight) * 129 / 941);top:calc(50% - var(--artHeight) * 70.5 / 941);width:calc(var(--artHeight) * 250 / 941);height:calc(var(--artHeight) * 290 / 941);cursor:pointer;pointer-events:auto;background:0 0;border:0;border-radius:50%;position:absolute}.envelopeOpen:focus-visible{outline:3px solid var(--colorOlive);outline-offset:4px}.envelopeStage[inert] .envelopeOpen{pointer-events:none}.backToEnvelope{font:inherit;cursor:pointer;background:0 0;border:0}@media (width>=768px),(orientation:landscape){.envelopeBottomLayer .envelopeImage{height:calc(var(--artHeight) * 1.04);top:48%}}@media (width<=767px) and (orientation:portrait){.envelopeBottomLayer .envelopeImage{height:calc(var(--artHeight) * 1.14);top:43%}.envelopeTopLayer .envelopeImage{top:calc(50% - var(--artHeight) * .09907);height:calc(var(--artHeight) * .91654)}.envelopeTopLayer:before{content:none}.envelopeOpen{left:calc(50% - var(--artHeight) * 108.5 / 1846);top:calc(50% - var(--artHeight) * 73 / 1846);width:calc(var(--artHeight) * 215 / 1846);height:calc(var(--artHeight) * 250 / 1846)}}.clickToOpen:not(.isOpen){height:100svh;overflow:clip}.clickToOpen #envelope{height:100svh}.clickToOpen.isOpen #envelope{visibility:hidden}.clickToOpen #invitation{position:relative}.clickToOpen:not(.showScenery) #invitation{visibility:hidden}.clickToOpen{background:var(--colorBackground)}.envelopeChapter{font-family:var(--fontScript);color:var(--colorOlive);font-size:clamp(20px,min(3.87cqw,4.86cqh),53px);line-height:1.6}.envelopeOpenLabel{font-family:var(--fontScript);color:var(--colorOlive);cursor:pointer;pointer-events:auto;background:0 0;border:0;padding:8px 24px;font-size:clamp(28px,4cqw,48px)}.envelopeOpenLabel:focus-visible{outline-offset:4px;outline:2px solid}.envelopeChapter,.envelopeOpenLabel{text-shadow:.006em 0,-.006em 0}.handwrittenChapter{font:inherit;white-space:nowrap;display:inline-block;position:relative}.chapterBaseline{width:0;height:0;display:inline-block}.chapterInk{width:100%;height:2.2em;font-family:var(--fontScript);position:absolute;left:0;overflow:visible}@media (prefers-reduced-motion:no-preference){.chapterTextMeasure{visibility:hidden}.chapterInkFinish{animation:.12s linear both chapterInkSettle}}@keyframes chapterInkSettle{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.chapterInk{display:none}}@media (width<=767px) and (orientation:portrait){.envelopeChapter{white-space:nowrap;padding-inline:4%;font-size:4.3cqw}.envelopeChapterLead,.envelopeChapterEnd{display:inline}}.clickToOpen .envelopeHeading{top:auto;bottom:max(5cqh, env(safe-area-inset-bottom));opacity:var(--layerOpacity,1);margin-top:0}.envelopeOpenLabel{font-family:var(--fontSerif);text-shadow:none}.clickToOpen #invitation{isolation:isolate;background:#586047;padding:clamp(40px,7vh,80px) clamp(20px,6vw,100px);overflow:clip}.invitationScenery{z-index:-1;pointer-events:none;position:absolute;inset:0}.invitationScenery img{object-fit:cover;object-position:center;width:100%;height:100%}.clickToOpen .invitationStage{gap:18px;width:min(100%,560px)}.clickToOpen .invitation{color:#635e48;background:linear-gradient(135deg,#f7efdb,#faf5e8 48%,#eee3c9);border:1px solid #bdad80;gap:clamp(18px,2.5vh,28px);padding:clamp(38px,5vw,56px) clamp(28px,4vw,52px);box-shadow:0 16px 65px #19241466,inset 0 0 36px #b6a57822}.clickToOpen .invitation:before{border-color:#a5a27c;inset:13px}.clickToOpen .invitationEyebrow{font-size:clamp(28px,3vw,36px)}.clickToOpen .invitationDate{font-size:clamp(23px,2.5vw,28px)}.cardBotanical{color:#7e8254;pointer-events:none;width:clamp(60px,8vw,85px);height:auto;position:absolute}.cardBotanical.topLeft{top:15px;left:15px}.cardBotanical.topRight{top:15px;right:15px;transform:scaleX(-1)}.cardBotanical.bottomLeft{bottom:15px;left:15px;transform:scaleY(-1)}.cardBotanical.bottomRight{bottom:15px;right:15px;transform:scale(-1)}.clickToOpen .backToEnvelope{color:#fff9e9;text-shadow:0 1px 5px #172510;background:#23341bb3;border-radius:2px}@media (width<=767px) and (orientation:portrait){.clickToOpen #invitation{padding:64px 24px 32px}.clickToOpen .invitationStage{width:min(100%,420px)}.invitationScenery img{object-position:center}}.clickToOpen .invitation{aspect-ratio:2/3;box-shadow:none;isolation:isolate;background:0 0;border:0;justify-content:center;padding:22% 18%;container-type:inline-size}.invitationCardArtwork{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.clickToOpen .invitation:before{display:none}.clickToOpen .invitationNames{font-size:clamp(36px,10vw,64px)}@media (width<=767px){.clickToOpen .invitation{gap:12px;padding:25% 17%}.clickToOpen .invitationNames{font-size:10vw}.clickToOpen .invitationEyebrow{font-size:7vw}.clickToOpen .invitationDate{padding-block:8px;font-size:5.5vw}.clickToOpen .invitationDetails{gap:12px}}.clickToOpen #invitation{height:100svh;min-height:100svh;padding:12px}.clickToOpen .invitationStage{gap:0;width:min(94vw,66.6667svh - 16px,560px);container-type:inline-size}.clickToOpen .invitation{aspect-ratio:2/3;gap:4cqw;width:100%;height:auto;padding:16%;container-type:normal}.clickToOpen .invitationEyebrow{font-size:7cqw;line-height:1.4}.clickToOpen .invitationNames{font-size:13cqw;line-height:1.15}.clickToOpen .invitationAmpersand{margin-block:1cqw}.clickToOpen .invitationDetails{gap:3cqw}.clickToOpen .invitationDate{padding-block:2cqw;font-size:5.5cqw}.clickToOpen .invitationVenue{font-size:4.2cqw}.cardPetals{pointer-events:none;position:absolute;inset:0}.cardPetal{opacity:.68;filter:drop-shadow(1px 2px 2px #70504018);width:5.5%;height:auto;position:absolute}.cardPetal1{top:21%;left:22%;transform:rotate(-32deg)}.cardPetal2{width:4%;top:32%;right:18%;transform:rotate(42deg)}.cardPetal3{width:4.5%;top:49%;left:17%;transform:rotate(110deg)}.cardPetal4{top:66%;right:20%;transform:rotate(-60deg)}.cardPetal5{width:4%;top:79%;left:29%;transform:rotate(25deg)}.cardPetal6{width:4.5%;top:17%;right:30%;transform:rotate(-15deg)}.cardPetal{width:7%}.cardPetal2,.cardPetal5{width:5.5%}.cardPetal3,.cardPetal6{width:6%}.cardPetal7{width:5.5%;top:69%;left:18%;transform:rotate(75deg)}.cardPetal8{width:6%;top:44%;right:17%;transform:rotate(-25deg)}.clickToOpen .invitationEyebrow{width:68%;position:absolute;top:21%;left:16%}.clickToOpen .invitationNames{gap:2cqw;width:60%;position:absolute;top:32%;left:20%}.clickToOpen .invitationNames>span:first-child,.clickToOpen .invitationNames>span:last-child{align-self:center}.clickToOpen .invitationAmpersand{align-self:center;margin:0}.clickToOpen .invitationDetails{width:68%;position:absolute;top:74%;left:16%}.clickToOpen .invitationVenue{white-space:nowrap;font-size:3.8cqw;font-family:var(--fontScript);text-shadow:.006em 0,-.006em 0;font-weight:400}.sealArrow{top:calc(50% + var(--artHeight) * 212 / 941);width:120px;min-height:52px;color:#524a48;opacity:var(--layerOpacity,1);cursor:pointer;pointer-events:auto;background:0 0;border:0;grid-template-rows:auto 14px;place-items:center;gap:7px;padding:0;display:grid;position:absolute;left:50%;transform:translate(-50%)}.sealOpenHint{font-family:var(--fontSerif);letter-spacing:.14em;white-space:nowrap;font-size:clamp(11px,1.2cqw,14px);font-weight:400;line-height:1.3}.sealArrow svg{width:23px;height:14px}.sealArrow:focus-visible{outline-offset:2px;outline:2px solid}@media (width>=768px),(orientation:landscape){.sealArrow{top:calc(50% + var(--artHeight) * 212 / 941 + 24px);grid-template-rows:auto auto;align-content:start;gap:16px;width:150px;min-height:60px}}@media (prefers-reduced-motion:no-preference){.sealArrow svg{animation:1.8s ease-in-out infinite pulseSealArrow}}@keyframes pulseSealArrow{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(3px)}}@media (width<=767px) and (orientation:portrait){.sealArrow{top:calc(50% + var(--artHeight) * 173 / 1846)}}.invitationForeground{z-index:2;pointer-events:none;opacity:calc(1 - var(--layerOpacity,1));position:absolute;inset:0}.invitationForeground img{object-fit:cover;object-position:center;width:100%;height:100%}.invitationForeground svg{width:100%;height:100%;position:absolute;inset:0}.foregroundPhone{display:none}@media (width<=767px) and (orientation:portrait){.foregroundDesktop{display:none}.foregroundPhone{display:block}}.clickToOpen .invitationNames{font-family:"Cormorant Garamond", var(--fontSerif);text-shadow:none;font-weight:400}.clickToOpen .invitationAmpersand{font-style:normal;line-height:1.15;transform:translateY(.18em)}.cardPetal9{width:6%;top:29%;left:3%;transform:rotate(35deg)}.cardPetal10{width:5.5%;top:57%;right:2%;transform:rotate(-45deg)}.cardPetal11{width:6%;top:83%;left:5%;transform:rotate(115deg)}.cardPetal12{width:5%;top:12%;right:7%;transform:rotate(-20deg)}.clickToOpen .invitationDay{width:68%;font-family:var(--fontSerif);letter-spacing:.14em;margin:0;padding:0;font-size:3.6cqw;line-height:1.6;position:absolute;top:68%;left:16%}.clickToOpen .invitationDate{min-height:12.4cqw;font-family:var(--fontSerif);letter-spacing:.14em;white-space:nowrap;text-shadow:none;padding-block:2cqw;font-size:3.6cqw;font-weight:400;line-height:1.4;position:relative;top:-2cqw}@media (width>=768px){.clickToOpen .invitationStage{width:min(60vw,80svh - 19.2px,760px)}.clickToOpen .invitation{aspect-ratio:4/5}.clickToOpen .invitationEyebrow{font-size:5.83cqw}.clickToOpen .invitationNames{gap:1.67cqw;font-size:10.83cqw}.clickToOpen .invitationDay{font-size:3cqw}.clickToOpen .invitationDetails{gap:2.5cqw}.clickToOpen .invitationDate{min-height:10.34cqw;padding-block:1.67cqw;font-size:3cqw;top:-1.67cqw}.clickToOpen .invitationVenue{font-size:3.17cqw}}
