.birthday-page{overflow-x:clip}.intro-header{min-height:150svh}.section-label{color:#ffffffa6;font-family:var(--font-inter), sans-serif;letter-spacing:.08em;font-size:.8rem;line-height:1.6}.wish-constellation{z-index:1;max-width:64rem;margin-inline:auto;padding:5rem 2rem 6rem;position:relative}.wishes-header{text-align:center;margin-bottom:4rem}.wishes-header h2{text-wrap:balance;margin-top:1rem;font-size:clamp(2.25rem,6vw,3.5rem);font-weight:400;line-height:1.15}.wishes-list{margin:0;padding:0;list-style:none}.wish-item{align-items:center;min-height:58svh;padding:clamp(4rem,12svh,8rem) 2rem;display:flex;position:relative}.wish-item:before{content:"";background:#f5d0b533;width:1px;position:absolute;top:0;bottom:0;left:0}.wish-item:last-child:before{background:linear-gradient(#f5d0b533,#0000)}.wish-star{background:#f5d0b5;border-radius:50%;width:.45rem;height:.45rem;position:absolute;top:50%;left:-.2rem;box-shadow:0 0 14px #f5d0b580}.wish-content{transform-origin:0;width:100%;max-width:38rem;margin-inline:auto}.wish-emoji{margin-bottom:1rem;font-size:1.5rem;display:block}.wish-content p{text-wrap:pretty;font-size:clamp(1.75rem,4vw,2.5rem);font-style:italic;font-weight:400;line-height:1.35}@media (max-width:640px){.intro-header{min-height:120svh}.wish-constellation{padding:4rem 1.5rem 3rem}.wishes-header{margin-bottom:2rem}.wish-item{min-height:56svh;padding:clamp(4rem,10svh,6rem) 0 clamp(5rem,14svh,8rem) 1.5rem}.wish-star{top:45%}.photo-section{padding-inline:1rem}}.memory-card{touch-action:pan-y pinch-zoom!important}.message-paragraphs{flex-direction:column;gap:1.75rem;display:flex}.wish-constellation{isolation:isolate}.wishes-header,.wishes-list{z-index:1;position:relative}.wish-star{animation:3s ease-in-out infinite alternate wish-twinkle}.wish-item:nth-child(2n) .wish-star{animation-delay:-1.5s}@keyframes wish-twinkle{0%{opacity:.55;transform:scale(.8)}to{opacity:1;transform:scale(1.3)}}@media (prefers-reduced-motion:reduce){.wish-star{animation:none}}
.reveal-paragraph{width:100%;position:relative}.paragraph-probe{visibility:hidden;pointer-events:none;width:100%;position:absolute;top:0;left:0}.paragraph-lines,.paragraph-line-mask,.paragraph-line{display:block}.paragraph-line-mask{margin-bottom:-.15em;padding-bottom:.15em;overflow:hidden}.paragraph-line{white-space:nowrap}
