.site-intro{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:radial-gradient(circle at 50% 38%,#fff 0%,#f3f9ed 70%,#e5f1db 100%);color:#4b3529;opacity:0;visibility:hidden;pointer-events:none}
.site-intro-inner{display:flex;align-items:center;flex-direction:column;text-align:center;padding:24px}
.site-intro img{display:block;width:min(72vw,360px);height:auto}
.site-intro i{display:block;width:125px;height:2px;margin-top:12px;border-radius:4px;background:#8db672;transform-origin:left;transform:scaleX(0)}
html.intro-pending{overflow:hidden}
.intro-pending .site-intro{opacity:1;visibility:visible;pointer-events:auto}
.intro-pending .site-intro img{animation:intro-logo 1.5s cubic-bezier(.22,1,.36,1) both}
.intro-pending .site-intro i{animation:intro-progress 1.55s ease-in-out both}
.intro-reveal .site-intro{opacity:0;visibility:hidden;transform:translateY(-18px);transition:opacity .75s ease,transform .75s cubic-bezier(.22,1,.36,1),visibility 0s .75s}
.intro-complete .site-intro{display:none}
@keyframes intro-logo{0%{opacity:0;transform:translateY(18px) scale(.9)}55%{opacity:1;transform:translateY(0) scale(1.03)}100%{transform:scale(1)}}
@keyframes intro-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.announcement,.site-header,.hero-copy .eyebrow,.hero-logo,.hero h1,.hero-copy>p:not(.eyebrow),.book-here{transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}
.intro-pending .announcement,.intro-pending .site-header{opacity:0;transform:translateY(-24px)}
.intro-pending .hero-copy .eyebrow,.intro-pending .hero-logo,.intro-pending .hero h1,.intro-pending .hero-copy>p:not(.eyebrow),.intro-pending .book-here{opacity:0;transform:translateY(24px)}
.intro-reveal .announcement,.intro-reveal .site-header,.intro-reveal .hero-copy .eyebrow,.intro-reveal .hero-logo,.intro-reveal .hero h1,.intro-reveal .hero-copy>p:not(.eyebrow),.intro-reveal .book-here{opacity:1;transform:none}
.intro-reveal .announcement{transition-delay:.12s}
.intro-reveal .site-header{transition-delay:.28s}
.intro-reveal .hero-copy .eyebrow{transition-delay:.48s}
.intro-reveal .hero-logo{transition-delay:.62s}
.intro-reveal .hero h1{transition-delay:.81s}
.intro-reveal .hero-copy>p:not(.eyebrow){transition-delay:1s}
.intro-reveal .book-here{transition-delay:1.16s}
@media(prefers-reduced-motion:reduce){.site-intro{display:none}.announcement,.site-header,.hero-copy .eyebrow,.hero-logo,.hero h1,.hero-copy>p:not(.eyebrow),.book-here{transition:none}}
