@font-face{font-family:ForestCormorant;src:url('/fonts/CormorantSC-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
.forest-slideshow .forest-title{position:relative;width:min(96vw,1100px);padding:0;text-shadow:none;pointer-events:none}
.forest-title svg{font-family:ForestCormorant,Georgia,serif;font-weight:600;display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 3px 9px #020609aa)}
.forest-slideshow .forest-title h1{font-family:ForestCormorant,Georgia,serif;font-weight:600;color:#d0eff7;font-size:clamp(2.6rem,8vw,6rem);text-shadow:0 0 18px #7ac5e788}
.forest-title.is-ready h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.forest-title text{font-family:ForestCormorant,Georgia,serif;font-weight:600}
.forest-branch-motion{animation:forest-sway var(--duration,7s) ease-in-out infinite;transform-box:view-box;transform-origin:0 0;animation-delay:var(--delay,0s)}
.forest-leaf-motion{animation:forest-leaf var(--duration,5.7s) ease-in-out infinite;transform-box:view-box;transform-origin:0 0;animation-delay:var(--delay,0s)}
.forest-mist{transform-box:view-box;transform-origin:500px 195px;animation:forest-breathe 10s ease-in-out infinite;animation-delay:-2s}
.forest-mist-drift{transform-box:view-box;transform-origin:500px 195px;animation:forest-drift 13s ease-in-out infinite;animation-delay:-7s}
.forest-glint{animation:forest-twinkle var(--duration,5s) ease-in-out infinite;animation-delay:var(--delay,0s);opacity:.08}
.forest-title.is-paused *{animation-play-state:paused!important}
/* Mount groups hold each branch root and leaf stem in local coordinates. */
@keyframes forest-sway{0%,100%{transform:rotate(-2.2deg)}23%{transform:rotate(1.1deg)}43%{transform:rotate(3.8deg)}62%{transform:rotate(.3deg)}80%{transform:rotate(-3deg)}}
@keyframes forest-leaf{0%,100%{transform:rotate(-8deg)}22%{transform:rotate(3deg)}40%{transform:rotate(13deg)}58%{transform:rotate(-2deg)}76%{transform:rotate(-11deg)}}
@keyframes forest-breathe{0%,100%{transform:translate(-24px,8px) scale(1.04);opacity:.6}30%{transform:translate(9px,-9px) scale(1.12);opacity:.95}62%{transform:translate(32px,3px) scale(1.06);opacity:.74}82%{transform:translate(4px,12px) scale(1.1);opacity:.88}}
@keyframes forest-drift{0%,100%{transform:translate(30px,-8px) scale(1.1);opacity:.65}35%{transform:translate(-8px,14px) scale(1.03);opacity:.92}65%{transform:translate(-36px,-4px) scale(1.14);opacity:.55}}
@keyframes forest-twinkle{0%,42%,70%,100%{opacity:.04}54%{opacity:.95}60%{opacity:.3}}
@media(prefers-reduced-motion:reduce){.forest-title *{animation:none!important}.forest-glint{opacity:.3}.forest-mist{opacity:.85}}

