@import "https://fonts.googleapis.com/css2?family=Bellefair&family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500&family=Great+Vibes&family=Outfit:wght@400;500;600;700&display=swap";:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{height:100%}body{color:#1c2433;-webkit-font-smoothing:antialiased;background:radial-gradient(at 12% 8%,#5a96e638,#0000 42%),radial-gradient(at 92% 18%,#2563b81f,#0000 36%),linear-gradient(165deg,#f7fbff 0%,#eef4fc 48%,#e7eef8 100%);margin:0;font-family:Outfit,sans-serif;overflow-x:hidden}button,a{font-family:inherit}.page{min-height:100dvh;position:relative}.wash{pointer-events:none;z-index:0;filter:blur(28px);opacity:.55;position:fixed}.wash-one{background:radial-gradient(circle,#4682dc73,#0000 70%);width:55vw;height:42vh;animation:12s ease-in-out infinite alternate drift;top:-8vh;left:-10vw}.wash-two{background:radial-gradient(circle,#1a4f9c33,#0000 72%);width:40vw;height:34vh;animation:14s ease-in-out infinite alternate-reverse drift;bottom:8vh;right:-8vw}@keyframes drift{0%{transform:translateY(0)scale(1)}to{transform:translateY(18px)scale(1.05)}}.cover{z-index:2;min-height:100dvh;padding:max(20px, env(safe-area-inset-top)) 18px max(28px, env(safe-area-inset-bottom));cursor:pointer;place-items:center;animation:.85s both coverIn;display:grid;position:relative}.cover-card{text-align:center;background:linear-gradient(160deg,#fffffff5,#f8fbffeb),radial-gradient(circle at 0 0,#5a96e62e,#0000 42%);border-radius:28px;width:min(420px,100%);padding:42px 28px 34px;animation:4.8s ease-in-out infinite floatSoft;box-shadow:0 28px 60px #1c376424,inset 0 0 0 1px #1a4f9c1f}.cover-script{color:#1a4f9c;margin:0 0 10px;font-family:Great Vibes,cursive;font-size:clamp(2rem,8vw,2.7rem);transform:rotate(-6deg)}.cover-intro{letter-spacing:.28em;text-indent:.28em;text-transform:uppercase;color:#5b6a82;margin:18px 0 0;font-size:.78rem}.children-names{margin-top:6px}.child-block{flex-direction:column;align-items:center;display:flex}.child-name{letter-spacing:.04em;text-transform:uppercase;color:#13233f1f;-webkit-text-stroke:1.7px #152238;paint-order:stroke fill;margin:0;font-family:Bellefair,serif;font-size:clamp(2.4rem,10vw,3.4rem);font-weight:400;line-height:1}.child-amp{color:#1a4f9c;margin:2px 0;font-family:Great Vibes,cursive;font-size:1.7rem;font-weight:400;line-height:1}.child-surname{letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;color:#243049;margin:10px 0 0;font-family:Outfit,sans-serif;font-size:.98rem;font-weight:600}.cover-date{letter-spacing:.12em;color:#1c2433;margin:22px 0 0;font-family:Bellefair,serif;font-size:1.15rem}.cover-date span{color:#0000;-webkit-text-stroke:1.2px #152238;font-size:1.55rem}.touch-text{color:#6d7d96;margin:28px 0 0;font-family:Cormorant Garamond,serif;font-size:1.15rem;font-style:italic}.cover-opening .cover-card{animation:.78s cubic-bezier(.16,1,.3,1) forwards coverOpen}.nazar{width:118px;height:118px;margin:0 auto;position:relative}.nazar-hero{width:138px;height:138px;animation:3.4s ease-in-out infinite sealPulse}.nazar-card{width:104px;height:104px}.nazar-bow{z-index:2;filter:drop-shadow(0 4px 6px #0d356e40);width:118%;position:absolute;top:-6%;left:50%;transform:translate(-50%)}.nazar-bead{filter:drop-shadow(0 10px 18px #0d356e47);width:100%;height:100%;display:block}.invite-wrap{z-index:2;justify-content:center;min-height:100dvh;padding:22px 14px 40px;display:flex;position:relative}.invite-card{background:linear-gradient(#fffffffa,#f7fafff5),radial-gradient(circle at 100% 0,#5a96e629,#0000 40%);border-radius:30px;width:min(460px,100%);padding:34px 22px 30px;animation:.8s cubic-bezier(.16,1,.3,1) both invitationIn;box-shadow:0 34px 70px #1c376429,inset 0 0 0 1px #1a4f9c24}.invite-header{text-align:center}.intro-label{letter-spacing:.32em;text-indent:.32em;text-transform:uppercase;color:#6a7a93;margin:0;font-size:.72rem}.invite-header .child-name{-webkit-text-stroke:1.55px #152238;font-size:clamp(2.15rem,8.8vw,3.05rem)}.invite-header .child-surname{margin-bottom:14px;font-size:.95rem}.script-line{color:#1a4f9c;margin:12px 0 0;font-family:Great Vibes,cursive;font-size:clamp(2rem,7vw,2.5rem)}.invite-body{place-items:center;gap:26px;margin-top:28px;display:grid}.schedule{align-content:center;justify-items:stretch;gap:18px;width:max-content;max-width:100%;margin:0 auto;padding:8px 0;display:grid;position:relative}.schedule-rail{display:none}.schedule-item{z-index:1;text-align:left;grid-template-columns:44px 1fr;align-items:center;gap:12px;display:grid;position:relative}.schedule-icon{background:#fff;border:1.5px solid #1a4f9c38;border-radius:50%;flex-shrink:0;width:44px;height:44px;position:relative;overflow:hidden;box-shadow:0 8px 16px #1c376414}.schedule-icon svg{width:20px;height:20px;margin:0;padding:0;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.schedule-item strong{letter-spacing:.04em;color:#1a4f9c;font-size:.95rem;display:block}.schedule-item span{text-transform:uppercase;letter-spacing:.08em;color:#44526a;margin-top:2px;font-size:.86rem;display:block}.poem-block{text-align:center;width:100%;padding:4px 8px 0}.poem-block p{letter-spacing:.05em;text-transform:uppercase;color:#2a364c;white-space:nowrap;margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(1.02rem,4.2vw,1.12rem);line-height:1.55}.date-banner{justify-content:center;align-items:baseline;gap:10px;margin:28px auto 0;font-family:Bellefair,serif;display:flex}.date-banner span,.date-banner strong{letter-spacing:.04em;color:#13233f1a;-webkit-text-stroke:1.45px #152238;paint-order:stroke fill;font-size:clamp(2rem,8vw,2.55rem);font-weight:400}.date-banner em{letter-spacing:.14em;color:#1c2433;font-size:1.05rem;font-style:normal;font-weight:400}.family-grid{text-align:center;gap:18px;margin-top:26px;display:grid}.family-group+.family-group{border-top:1px solid #1a4f9c1a;padding-top:14px}.parent-label{letter-spacing:.02em;text-transform:none;color:#1a4f9c;margin:0 0 4px;font-family:Great Vibes,cursive;font-size:clamp(1.65rem,5.5vw,2rem);font-weight:400;line-height:1.15}.parent-name{letter-spacing:.04em;text-transform:none;color:#1c2433;margin:3px 0 0;font-family:Cormorant Garamond,serif;font-size:1.18rem;font-weight:700}.venue{text-align:center;border-top:1px solid #1a4f9c24;margin-top:28px;padding-top:22px}.venue-meta{letter-spacing:.16em;color:#5b6a82;margin:0;font-size:.78rem}.venue h2{letter-spacing:.04em;margin:8px 0 0;font-family:Bellefair,serif;font-size:1.45rem;font-weight:400}.venue p{color:#44526a;margin:6px 0 0;font-size:.92rem;line-height:1.4}.venue-city{letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#1a4f9c!important}.venue-note{font-family:Cormorant Garamond,serif;font-style:italic;color:#4a5a72!important;margin-top:12px!important;font-size:1.05rem!important}.contact-block{flex-direction:column;align-items:center;gap:4px;margin-top:20px;display:flex}.contact-label{letter-spacing:.16em;text-transform:uppercase;color:#5b6a82!important;margin:0!important;font-family:Outfit,sans-serif!important;font-size:.78rem!important;font-style:normal!important;font-weight:700!important}.venue-phone{letter-spacing:.06em;color:#13233f;margin-top:0;font-size:1.12rem;font-weight:700;text-decoration:none;display:inline-block}.map-btn{letter-spacing:.14em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#1a4f9c 0%,#3b7fd4 100%);border-radius:999px;margin-top:22px;padding:13px 26px;font-size:.78rem;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 14px 28px #1a4f9c47}.map-btn:hover{transform:translateY(-2px);box-shadow:0 18px 34px #1a4f9c57}@keyframes coverIn{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:none}}@keyframes floatSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes sealPulse{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}@keyframes coverOpen{to{opacity:0;filter:blur(6px);transform:scale(1.04)translateY(-16px)}}@keyframes invitationIn{0%{opacity:0;transform:translateY(36px)scale(.97)}to{opacity:1;transform:none}}@media (width>=720px){.invite-body{grid-template-columns:1.05fr 1fr;place-items:center stretch;gap:18px}.schedule{justify-self:start;width:auto;margin:0;padding:8px 0 8px 6px}.schedule-rail{background:linear-gradient(#0000,#1a4f9c59,#0000);width:1.5px;display:block;position:absolute;top:18px;bottom:18px;left:27px}.poem-block{text-align:left;padding-left:8px}.poem-block p{letter-spacing:.06em;white-space:normal;font-size:1.05rem}}@media (width<=380px){.invite-card{padding:28px 16px 24px}.poem-block p{letter-spacing:.03em;font-size:.95rem}}
