@font-face{font-family:Gilroy;src:url(../fonts/Gilroy-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Gilroy;src:url(../fonts/Gilroy-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Gilroy;src:url(../fonts/Gilroy-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{--green-deep: #1d2316;--page-width: 430px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:#0f0d09;-webkit-font-smoothing:antialiased}img{display:block}.stage{min-height:100vh;width:100%;background:#0f0d09;display:flex;justify-content:center;position:relative}.stage:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:#0f0d09 url(../screens/bg-blur.webp) center center / cover no-repeat;filter:blur(8px);transform:scale(1.1)}.stage:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:#0f0d0959}.page{width:100%;max-width:var(--page-width);margin:0 auto;background:var(--green-deep);position:relative;z-index:1;box-shadow:0 0 60px #00000080}.page picture{display:block;font-size:0;margin-bottom:-4px}.page picture:last-child{margin-bottom:0}.screen{width:100%;height:auto;display:block}.page .screen:last-child{margin-bottom:0}.intro picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0f0d09 url(../screens/bg-blur.webp) center center / cover no-repeat;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden}.intro:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;opacity:0;pointer-events:none;transition:opacity .7s ease;z-index:2}.intro--leaving:after{opacity:1}.intro__img{width:auto;height:100dvh;max-width:100vw;object-fit:contain;position:relative;z-index:1}@media(max-width:500px){.intro__img{width:100vw;height:100dvh;max-width:none;object-fit:cover;object-position:center center}}.page--hidden{opacity:0;pointer-events:none;position:absolute}.page--visible{opacity:1;animation:pageReveal .9s ease both}@keyframes pageReveal{0%{opacity:0;background:#fff}to{opacity:1}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.countdown{background:var(--green-deep);color:var(--cream, #eaebde);padding:46px 28px 60px;text-align:center;margin-top:-4px}.countdown__title{font-family:var(--font-script, "Great Vibes", cursive);font-weight:400;font-size:38px;line-height:1.1;color:#eaebde;margin:0 0 30px}.countdown__grid{display:flex;justify-content:center;gap:14px;max-width:380px;margin:0 auto}.countdown__unit{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 6px;border:1px solid rgba(234,235,222,.22);border-radius:4px;background:#eaebde0a}.countdown__num{font-family:Gilroy,sans-serif;font-weight:400;font-size:40px;line-height:1;color:#eaebde;font-variant-numeric:tabular-nums;letter-spacing:.01em;display:block;overflow:hidden;height:40px}.countdown__flip{display:block;animation:flipIn .55s cubic-bezier(.22,1,.36,1)}@keyframes flipIn{0%{transform:translateY(-58%);opacity:0}55%{opacity:1}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.countdown__flip{animation:none}}.countdown__label{font-family:Gilroy,sans-serif;font-weight:500;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#eaebdeb8}.countdown__date{font-family:Gilroy,sans-serif;font-weight:500;font-size:15px;letter-spacing:.04em;color:#eaebded9;margin:30px 0 0}.countdown__cal{font-family:Great Vibes,cursive;font-size:26px;letter-spacing:.02em;text-transform:none;color:#eaebde;background:transparent;border:1px solid rgba(234,235,222,.5);border-radius:2px;padding:8px 34px;margin-top:24px;cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.countdown__cal:hover{background:#eaebde;color:#1d2316;border-color:#eaebde}.countdown__cal-wrap{margin-top:24px}.countdown__cal-options{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;animation:calFade .4s ease both}@keyframes calFade{0%{opacity:0}to{opacity:1}}.countdown__cal-opt{font-family:Marcellus,serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#eaebde;background:transparent;border:1px solid rgba(234,235,222,.4);border-radius:2px;padding:10px 16px;cursor:pointer;text-decoration:none;transition:background .25s ease,color .25s ease,border-color .25s ease}.countdown__cal-opt:hover{background:#eaebde;color:#1d2316;border-color:#eaebde}.countdown__married{font-family:Gilroy,sans-serif;font-weight:500;font-size:20px;color:#eaebde;margin:0}@media(min-width:500px){.countdown__title{font-size:44px}.countdown__num{font-size:46px;height:46px}}.oib{position:fixed;top:0;left:0;right:0;z-index:200;background:#1d2316f7;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-bottom:1px solid rgba(234,235,222,.18);display:flex;align-items:center;justify-content:center;padding:12px 40px 12px 18px;animation:oibDrop .5s ease both}@keyframes oibDrop{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.oib__inner{display:flex;flex-direction:column;align-items:center;gap:8px;max-width:360px;text-align:center}.oib__text{font-family:Cormorant Garamond,serif;font-size:15px;line-height:1.35;color:#eaebde;margin:0}.oib__hint{font-family:Montserrat,sans-serif;font-size:11.5px;line-height:1.4;color:#eaebdecc;margin:0}.oib__hint b{color:#eaebde;font-weight:600}.oib__dots{font-weight:700;letter-spacing:.05em}.oib__btn{font-family:Marcellus,serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#1d2316;background:#eaebde;border:none;border-radius:2px;padding:9px 22px;cursor:pointer}.oib__btn:hover{background:#fff}.oib__close{position:absolute;top:50%;right:12px;transform:translateY(-50%);background:none;border:none;color:#eaebdeb3;font-size:24px;line-height:1;cursor:pointer;padding:4px 8px}.oib__close:hover{color:#eaebde}.reveal{opacity:0;transform:translateY(26px);transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.reveal--in{opacity:1;transform:translateY(0)}.reveal picture{display:block;margin-bottom:-4px}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}body.no-scroll{overflow:hidden;position:fixed;width:100%;height:100%;top:0;left:0;touch-action:none;overscroll-behavior:none}.intro{position:fixed}.intro__tap{position:absolute;left:50%;bottom:13%;transform:translate(-50%);z-index:3;font-family:Marcellus,serif;font-size:clamp(20px,6vw,30px);letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;color:#f4f1e9;white-space:nowrap;pointer-events:none;text-shadow:0 1px 12px rgba(0,0,0,.5);animation:tapFloat 3.2s ease-in-out infinite}@keyframes tapFloat{0%,to{transform:translate(-50%) translateY(0);opacity:.78}50%{transform:translate(-50%) translateY(-6px);opacity:1}}.intro--leaving .intro__tap{opacity:0;transition:opacity .4s ease;animation:none}@media(prefers-reduced-motion:reduce){.intro__tap{animation:none;opacity:.95}}.music{position:fixed;bottom:18px;right:18px;z-index:120;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#1d2316;background:#eaebdeeb;border:1px solid rgba(29,35,22,.15);box-shadow:0 3px 14px #00000047;cursor:pointer;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:background .2s ease,transform .15s ease;animation:musicIn .6s ease both}.music:hover{background:#fff;transform:translateY(-1px)}.music:active{transform:translateY(0)}@keyframes musicIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
