/* A hopeful, illustrated first screen */
.hero{overflow:clip;max-width:1440px;padding-top:65px;padding-bottom:75px;gap:36px;grid-template-columns:1fr 1.05fr}
.hero>div:first-of-type{z-index:3}.hero>.stork-decoration{display:none}
.hero-photo.dream-stage{position:relative;height:660px;margin:0;isolation:isolate;perspective:1000px}
.hero-photo.dream-stage>img.dream-portrait{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:150px 35px 130px 35px;box-shadow:13px 18px 0 #91dee7,0 28px 70px #105a791f;animation:dream-breathe 12s ease-in-out infinite}
.dream-stage .photo-caption{z-index:4;bottom:20px;left:20px;right:20px;background:#ffffffeb;backdrop-filter:blur(8px);box-shadow:0 12px 30px #115b7612}
.dream-stage>img.baby-stork{position:absolute;top:-22px;right:-18px;width:225px;height:150px;object-fit:contain;border-radius:0;box-shadow:none;z-index:5;filter:drop-shadow(0 10px 12px #1a678c22);animation:stork-delivery 9s ease-in-out infinite}
.dream-glow{position:absolute;inset:5% -5% 0 -6%;border-radius:50%;background:radial-gradient(ellipse,#9ce5ee77,transparent 65%);z-index:-1;filter:blur(16px);animation:glow-drift 10s ease-in-out infinite}
.dream-orbit{position:absolute;z-index:2;border-radius:50%;pointer-events:none;background:#ffce9b;box-shadow:0 0 18px #ffd7af99}.dream-orbit.one{width:12px;height:12px;left:7%;top:22%;animation:spark-drift 7s ease-in-out infinite}.dream-orbit.two{width:8px;height:8px;right:9%;top:55%;background:#fff;animation:spark-drift 6s ease-in-out -2s infinite}.dream-orbit.three{width:10px;height:10px;left:20%;top:68%;animation:spark-drift 9s ease-in-out -4s infinite}
.stork-banner{height:130px;background:linear-gradient(180deg,transparent,#e9faff70,transparent)}.stork-banner .stork-decoration{width:200px;top:-5px;animation:stork-pass 15s ease-in-out infinite}
.card{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.card:hover{border-color:#42b5c3;transform:translateY(-9px)}.card .num{transition:transform .35s ease;transform-origin:left center}.card:hover .num{transform:scale(1.1)}
.btn{position:relative;overflow:hidden}.btn:after{content:'';position:absolute;inset:0;transform:translateX(-130%) skewX(-20deg);background:linear-gradient(90deg,transparent,#ffffff30,transparent);pointer-events:none}.btn:hover:after{animation:button-shine .7s ease-out}
.reveal-ready{transition:transform .85s cubic-bezier(.2,.7,.2,1),opacity .85s ease;transition-delay:var(--reveal-delay,0ms)}
@keyframes dream-breathe{0%,100%{transform:translateY(0) rotate(-.3deg)}50%{transform:translateY(-8px) rotate(.3deg)}}
@keyframes stork-delivery{0%,100%{transform:translate(-5px,3px) rotate(-4deg)}35%{transform:translate(-28px,-12px) rotate(2deg)}70%{transform:translate(-12px,-5px) rotate(-1deg)}}
@keyframes spark-drift{0%,100%{transform:translate(0,0);opacity:.55}50%{transform:translate(8px,-18px);opacity:1}}
@keyframes glow-drift{0%,100%{transform:scale(.96);opacity:.65}50%{transform:scale(1.06);opacity:1}}
@keyframes stork-pass{0%,100%{transform:translateX(0) translateY(0) rotate(-2deg)}50%{transform:translateX(-110px) translateY(-8px) rotate(2deg)}}
@keyframes button-shine{to{transform:translateX(130%) skewX(-20deg)}}
@media(max-width:1100px) and (min-width:801px){.hero{gap:30px;padding-left:30px;padding-right:30px}.hero-photo.dream-stage{height:570px}.dream-stage>img.baby-stork{width:175px;right:0}.hero h1{font-size:48px}}
@media(max-width:800px){.hero{display:grid;grid-template-columns:1fr;padding:35px 20px 55px;gap:36px}.hero-photo.dream-stage{height:auto;aspect-ratio:4/5;margin-right:10px;max-height:650px}.hero-photo.dream-stage>img.dream-portrait{border-radius:85px 24px 85px 24px;box-shadow:9px 12px 0 #91dee7;animation:none}.dream-stage>img.baby-stork{width:145px;height:105px;top:-22px;right:-8px;animation-duration:11s}.dream-stage .photo-caption{left:14px;right:14px;bottom:14px;padding:14px;font-size:20px}.hero>div:first-of-type>.eyebrow{padding-right:0}.dream-orbit{display:none}.stork-banner{height:100px}.stork-banner .stork-decoration{width:150px;top:-2px;animation-name:stork-delivery}.card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-ready{opacity:1!important;transform:none!important}}

/* Illustration precedes the introduction only on phones. */
@media(max-width:800px){.hero>.dream-stage{grid-row:1;grid-column:1}.hero>div:first-of-type{grid-row:2;grid-column:1}.hero{padding-top:30px;gap:32px}.hero-photo.dream-stage{max-height:520px}}
