/* First-visit brand introduction. Logo introduction followed by a shrinking heart. */
#welcome-screen[hidden]{display:none}
#welcome-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;background:#f5f7f1;color:#173e30}
.is-welcoming{overflow:hidden}
.welcome-content{position:relative;display:grid;place-items:center;padding:32px;width:100%}
.welcome-logo{width:min(380px,74vw);height:auto;object-fit:contain;animation:welcome-logo .8s cubic-bezier(.2,.7,.2,1) both}
#welcome-screen.welcome-exit{background:transparent;pointer-events:none}
.welcome-symbol{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.welcome-exit .welcome-content{opacity:0;transition:opacity .25s ease}
@keyframes welcome-logo{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){#welcome-screen{display:none}}
.is-welcoming .hero-main-copy{animation-play-state:paused}

