@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Great+Vibes&family=Playfair+Display:wght@500;600;700&display=swap";:root{color:#283052;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--pink:#cf1e68;--deep-pink:#b82865;--navy:#273052;--ivory:#fff7f79e;--gold:#b17828;background:#fff6f8;font-family:Cormorant Garamond,Georgia,serif}*{box-sizing:border-box}.invitation-entry{z-index:4;isolation:isolate;place-items:center;width:100%;height:100dvh;display:grid;position:fixed;inset:0}.invitation-entry__background{z-index:-2;position:absolute;inset:0}.invitation-entry__background img{object-fit:cover;width:100%;height:100%}.invitation-entry:before{content:"";z-index:-1;background:#1e0c167a;position:absolute;inset:0}.invitation-entry__content{padding:24px 24px max(40px, calc(env(safe-area-inset-bottom) + 24px));text-align:center;color:#fff;text-shadow:0 2px 8px #0000004d;align-self:end}.invitation-entry__eyebrow{margin:0 0 24px;font-size:15px}.invitation-entry h1{margin:0;font-family:Great Vibes,cursive;font-size:64px;font-weight:400;line-height:1.1}.invitation-entry__occasion{margin:12px 0 32px;font-size:23px}.invitation-entry__open{color:#a32660;cursor:pointer;background:#fff4f8;border:1px solid #fff;border-radius:6px;justify-content:center;align-items:center;gap:10px;padding:14px 22px;font:600 19px Cormorant Garamond,Georgia,serif;display:inline-flex}.invitation-entry__open:hover{background:#f9dce9}.invitation-film{background:#000;border:0;width:min(100vw - 24px,480px,50.625dvh);height:min(90dvh,177.778vw - 42.6667px);padding:0;overflow:hidden}.invitation-film::backdrop{background:#0c070ae6}.invitation-entry,.invitation-film,.invitation-film::backdrop{transition:opacity .7s}.invitation-entry--leaving,.invitation-film--leaving,.invitation-film--leaving::backdrop{opacity:0;pointer-events:none}.invitation-film video{object-fit:contain;width:100%;height:100%;display:block}.invitation-film__skip{z-index:1;color:#fff;cursor:pointer;background:#0009;border:0;border-radius:4px;align-items:center;gap:4px;min-height:44px;padding:8px 12px;display:flex;position:absolute;top:12px;right:12px}.invitation-film__continue{color:#a32660;cursor:pointer;background:#fff4f8;border:0;border-radius:4px;width:80%;padding:12px;position:absolute;bottom:60px;left:10%}@media (width<=380px){.invitation-entry h1{font-size:52px}}html,body,#root{width:100%;min-width:320px;height:100%;margin:0;overflow:hidden}body{min-height:100dvh}.page-shell,.hero{width:100%;height:100dvh;position:relative;overflow:hidden}.invitation-page-loading{z-index:5;background:#24141f url(/backround.png) 50%/cover no-repeat;position:fixed;inset:0}.invitation-page-loading:before{content:"";background:radial-gradient(circle,#120a0f2e 0%,#120a0f6b 56%,#120a0f9e 100%),linear-gradient(#120a0f33,#120a0f80);position:absolute;inset:0}.background-music-control{top:max(18px, env(safe-area-inset-top));right:max(18px, env(safe-area-inset-right));z-index:21;color:#fff;cursor:pointer;background:#24141f99;border:1px solid #fff6;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:fixed}.background-music-control:hover{background:#24141fd9}.background-music-control:focus-visible{outline-offset:4px;outline:2px solid #fff}.footer-nav{z-index:8;bottom:max(16px, env(safe-area-inset-bottom));background:0 0;border:0;grid-template-columns:repeat(4,minmax(0,1fr));width:min(460px,100% - 24px);height:68px;padding:6px;display:grid;position:fixed;left:50%;transform:translate(-50%)}.page-shell:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#1e0c1600,#1e0c16a6);height:125px;position:absolute;inset:auto 0 0}.footer-nav__item{color:#fff;text-shadow:0 1px 3px #000000d9;letter-spacing:0;cursor:pointer;background:0 0;border:0;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;padding:0 2px;font-family:Cormorant Garamond,Georgia,serif;font-size:13px;font-weight:600;line-height:1.2;transition:background-color .16s,color .16s;display:flex}.footer-nav__icon{width:24px;height:24px;color:inherit;filter:drop-shadow(0 1px 3px #000000b3);place-items:center;display:grid}.footer-nav__item:hover,.footer-nav__item:active{color:#fff}.footer-nav__item--active,.footer-nav__item--active:hover,.footer-nav__item--active:active{color:#ff8fbd;text-shadow:0 1px 3px #2d0819e6}.footer-nav__item>span:last-child{overflow-wrap:anywhere;place-items:center;max-width:100%;min-height:16px;display:grid}.footer-nav__item:focus-visible{outline:2px solid var(--pink);outline-offset:-2px}.nav-dialog{z-index:7;width:min(360px,100% - 32px);height:fit-content;color:var(--navy);text-align:center;background:#fff6fa;border:1px solid #efb7ce;border-radius:8px;margin:auto;padding:28px;position:fixed;inset:0}.nav-dialog::backdrop{background:#28141e59}.nav-dialog-overlay{z-index:6;background:#28141e59;position:fixed;inset:0}.nav-dialog h2{color:var(--pink);margin:0 0 12px;font-size:26px}.nav-dialog p{margin:0;font-size:20px}.magic-seven-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin:0;padding:0;list-style:none;display:grid}.magic-seven-list li{border-bottom:1px solid #efb7ce;padding:12px 0;font-size:19px}.nav-dialog__close{width:32px;height:32px;color:var(--pink);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:5px;right:5px}.hero__video{object-fit:cover;object-position:center center;background:#fff6f8;width:100%;height:100%;position:absolute;inset:0}.hero__veil{pointer-events:none;background:radial-gradient(circle at 55% 46%,#fffdfab8 0 16%,#fffcfa4d 28%,#fff0 48%),linear-gradient(90deg,#fff0 0 30%,#fffafc42 44%,#ffffff14 78%);position:absolute;inset:0}.hero__content{z-index:1;width:100%;height:100%;padding:max(18px, env(safe-area-inset-top)) max(28px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(28px, env(safe-area-inset-left));grid-template-columns:minmax(38vw,1fr) minmax(500px,48vw) minmax(220px,.8fr);align-items:center;display:grid;position:relative}.invitation{text-align:center;text-shadow:0 2px 18px #ffffffdb,0 1px 2px #fffffff2;flex-direction:column;grid-column:2;justify-content:center;align-items:center;width:min(100%,850px);max-height:calc(100dvh - 28px);display:flex}.birthday-details,.birthday-details__heading{display:contents}.crown,.memories-heading__crown,.magic-seven-crown,.royal-venue-crown{color:var(--gold);text-shadow:0 2px 18px #ffffffdb,0 1px 2px #fffffff2;filter:drop-shadow(0 2px 1px #ffffffb3);font-family:Cormorant Garamond,Georgia,serif;font-weight:400}.crown{color:var(--gold);filter:drop-shadow(0 2px 1px #ffffffb3);margin-bottom:clamp(0px,.25vw,5px);font-size:clamp(34px,3.1vw,58px);line-height:.9;animation:.8s both floatIn}.script{color:var(--pink);margin:0;font-family:Great Vibes,Allura,Alex Brush,cursive;font-weight:400}.script--intro{font-size:clamp(48px,4.6vw,92px);line-height:.86;animation:.9s 80ms both softRise}.story{color:var(--navy);margin:clamp(7px,.8vw,12px) 0 30px;font-size:clamp(24px,1.9vw,38px);font-weight:600;line-height:1.08;animation:.9s .14s both softRise}.name{color:var(--pink);text-shadow:0 2px 22px #ffffffe6,0 1px #fffffff2;margin:0;font-family:Great Vibes,Allura,Alex Brush,cursive;font-size:clamp(96px,8vw,168px);font-weight:400;line-height:.78;animation:.98s .21s both nameIn}.surname{color:#ad2b63;letter-spacing:clamp(7px,.75vw,15px);margin:clamp(8px,.8vw,14px) 0 0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(27px,2.4vw,48px);font-weight:600;line-height:.95;animation:.9s .28s both softRise}.divider{display:none}.turning,.celebration,.countdown__heading,.countdown__label{letter-spacing:clamp(5px,.45vw,10px);text-transform:uppercase;font-family:Cormorant Garamond,Georgia,serif}.turning{color:var(--navy);margin:clamp(17px,1.25vw,24px) 0 0;font-size:clamp(20px,1.55vw,32px);font-weight:700;line-height:1;animation:.9s .33s both softRise}.seven{letter-spacing:clamp(8px,.9vw,18px);text-shadow:0 2px 18px #ffffffe0;margin:clamp(4px,.55vw,11px) 0 0;font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-size:clamp(74px,6.2vw,130px);font-weight:600;line-height:.88;animation:.9s .38s both softRise}.seven__s{color:#d72472}.seven__e1{color:#8fc4e5}.seven__v{color:#f08aa7}.seven__e2{color:#b7a6e4}.seven__n{color:#c9a147}.celebration{color:var(--navy);margin:clamp(7px,.75vw,14px) 0 0;font-size:clamp(17px,1.35vw,27px);font-weight:700;line-height:1;animation:.9s .43s both softRise}.mini-heart{color:#ed367c;margin-top:clamp(7px,.55vw,11px);font-size:clamp(18px,1.35vw,26px);line-height:1;animation:.9s .47s both softRise}.countdown{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:linear-gradient(#fff9f9ad,#ffe5ec80);border:1px solid #dd69976b;border-radius:22px;width:min(100%,600px);margin-top:clamp(8px,.8vw,14px);padding:clamp(10px,1vw,18px) clamp(18px,1.7vw,32px) clamp(11px,1vw,18px);animation:.9s .52s both softRise;box-shadow:0 16px 42px #9a4d6017}.countdown__heading{color:var(--deep-pink);margin:0 0 clamp(9px,.65vw,13px);font-size:clamp(17px,1.25vw,26px);font-weight:700;line-height:1}.countdown__grid{grid-template-columns:repeat(4,1fr);align-items:end;display:grid}.countdown__unit{flex-direction:column;align-items:center;gap:3px;min-width:0;display:flex}.countdown__unit+.countdown__unit{border-left:1px solid #c6497757}.countdown__value{color:#c52266;font-variant-numeric:tabular-nums;font-family:Playfair Display,Cormorant Garamond,Georgia,serif;font-size:clamp(34px,2.9vw,58px);font-weight:600;line-height:.92}.countdown__label{color:var(--navy);letter-spacing:clamp(2px,.22vw,4px);font-size:clamp(11px,.8vw,16px);font-weight:700;line-height:1}.event-location{max-width:100%;color:var(--navy);text-align:center;margin:10px 0 0;font-size:26px;font-weight:600;line-height:1.3}.countdown__arrived{color:var(--deep-pink);margin:0;font-size:clamp(22px,1.6vw,32px);font-weight:700;line-height:1.1}.quote{color:var(--pink);text-align:center;text-shadow:0 2px 16px #ffffffe6,0 1px #fffffff2;grid-column:3;place-self:end center;margin:0 1vw 12vh 0;font-family:Great Vibes,Allura,Alex Brush,cursive;font-size:clamp(38px,3.2vw,66px);line-height:.86;animation:.9s .62s both softRise;transform:rotate(-7deg)}.quote p{margin:0}.quote--compact{display:none}.quote span{margin-top:9px;font-family:Cormorant Garamond,Georgia,serif;font-size:.65em;line-height:1;display:inline-block}@media (aspect-ratio<=4/3) and (width>=768px){.hero__content{grid-template-columns:minmax(31vw,1fr) minmax(500px,58vw) minmax(120px,.45fr)}.quote{font-size:30px}}@media (width<=767px),(orientation:portrait){.hero__video{object-fit:cover;object-position:center center}.hero__veil{background:linear-gradient(#fffafc33 0%,#fffafc1f 70%,#0000 100%);height:40%;bottom:auto}.hero__content{padding:max(11px, env(safe-area-inset-top)) max(11px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(11px, env(safe-area-inset-left));display:block}.invitation{justify-content:flex-start;width:min(100%,700px);height:auto;max-height:none;margin:0 auto;padding-top:clamp(3px,1.2dvh,12px)}.crown{margin-bottom:1px;font-size:clamp(24px,7.2vw,36px)}.script--intro{font-size:clamp(34px,10.8vw,58px);line-height:.82}.story{margin:clamp(4px,.65dvh,7px) 0 18px;font-size:clamp(16px,4.35vw,24px);line-height:1.02}.name{font-size:clamp(54px,15.8vw,88px);line-height:.74}.surname{letter-spacing:clamp(3px,1.15vw,7px);margin-top:clamp(4px,.55dvh,7px);font-size:clamp(17px,5vw,29px)}.divider{color:#e73579;align-items:center;gap:clamp(8px,2.2vw,15px);width:min(52vw,230px);margin-top:clamp(4px,.55dvh,7px);display:flex}.divider span{background:#c44a7970;flex:1;height:1px}.divider b{font-size:clamp(10px,3vw,16px);line-height:1}.birthday-details{flex-direction:column;flex-shrink:0;align-self:flex-end;align-items:center;gap:clamp(5px,1dvh,10px);width:46%;max-width:220px;margin-top:clamp(20px,3dvh,30px);display:flex}.birthday-details__heading{align-items:center;gap:inherit;isolation:isolate;flex-direction:column;width:100%;display:flex;position:relative;left:-8px}.birthday-details__heading:before{content:"";z-index:-1;filter:blur(5px);pointer-events:none;background:radial-gradient(#ffffffe6 0%,#ffffffa6 50%,#0000 80%);position:absolute;inset:-10px -6px}.turning{letter-spacing:2px;margin:0;font-size:18px}.seven{letter-spacing:0;margin:0;font-size:52px}.celebration{letter-spacing:0;text-align:center;width:100%;margin:0;font-size:15px;line-height:1.2}.mini-heart{display:none}.countdown{border-radius:8px;width:100%;margin-top:0;padding:9px 7px}.countdown__heading{letter-spacing:0;margin-bottom:8px;font-size:10px;line-height:1.25}.countdown__grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:9px}.countdown__unit:nth-child(3){border-left:0}.countdown__value{font-size:24px}.countdown__label{letter-spacing:0;font-size:8px}.countdown__arrived{font-size:clamp(17px,4.6vw,24px)}.event-location{margin:10px 0 0;font-size:18px}.quote{display:none}.quote--compact{align-self:center;width:100%;margin:8px 0 0;font-size:26px;line-height:1.05;display:block;transform:none}.quote--compact span{margin-top:5px;font-size:22px}}@media (width<=380px) and (height<=820px){.invitation{padding-top:2px}.crown{font-size:27px}.script--intro{font-size:clamp(32px,10.4vw,40px)}.story{font-size:clamp(16px,4.6vw,19px)}.name{font-size:clamp(50px,15.5vw,60px)}.surname{font-size:clamp(18px,5.4vw,22px)}.seven{font-size:44px}}@media (height<=740px) and (width<=767px){.invitation{padding-top:0}.crown{font-size:24px}.script--intro{font-size:34px}.story{margin:5px 0 18px;font-size:16px}.name{font-size:54px}.surname{letter-spacing:3px;font-size:17px}.birthday-details{gap:5px;margin-top:20px}.turning{font-size:16px}.seven{font-size:42px}.celebration{font-size:14px}.countdown{padding:7px}.countdown__grid{row-gap:6px}.countdown__value{font-size:21px}.quote--compact{margin-top:3px;font-size:22px}}@media (width>=768px) and (orientation:landscape){.hero__content{padding-bottom:max(120px, calc(env(safe-area-inset-bottom) + 110px))}.invitation{max-height:none}.crown{font-size:min(3.1vw,5dvh)}.script--intro{font-size:min(4.6vw,8dvh)}.story{margin-bottom:3dvh;font-size:min(1.9vw,3.4dvh)}.name{font-size:min(8vw,13.5dvh)}.surname{font-size:min(2.4vw,4.2dvh)}.turning{margin-top:2dvh;font-size:min(1.55vw,2.8dvh)}.seven{font-size:min(6.2vw,10.5dvh)}.celebration{font-size:min(1.35vw,2.4dvh)}.countdown__value{font-size:min(2.9vw,5dvh)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes softRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes nameIn{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes floatIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
