/* A quiet view from high in the canopy. */
.redwood-hero{background:#14251e}
.redwood-hero .forest-scene,.forest-stage .forest-scene{inset:-1.5%;width:103%;height:103%;transform:translate3d(var(--grove-x,0px),var(--grove-y,0px),0);will-change:transform}
.redwood-hero .forest-image,.forest-stage .forest-image{object-position:50% 50%;filter:none}
.redwood-hero #forest-canvas,.forest-stage #forest-canvas{filter:none;opacity:0;transition:opacity .7s}
.redwood-hero .grove-ready #forest-canvas,.forest-stage .grove-ready #forest-canvas{opacity:1}
.redwood-hero .hero-shade{background:linear-gradient(90deg,rgba(5,17,24,.65),rgba(5,17,24,.4) 33%,transparent 69%),linear-gradient(0deg,rgba(5,17,24,.56),transparent 26%)}
.forest-enter{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;padding:10px 0;background:none;border:0;border-bottom:1px solid #fff8;color:var(--cream);font:500 .875rem var(--body);min-height:44px;text-align:left}
.forest-enter>span{font-size:1.2rem}.forest-enter:hover{color:#fff;border-color:var(--coral)}
.forest-dialog{border:0;padding:0;max-width:none;max-height:none;width:100vw;height:100svh;margin:0;background:#15281f;color:var(--cream);overflow:hidden}
.forest-dialog::backdrop{background:#0b1f3a}.forest-dialog:not([open]){display:none}
.forest-stage{position:absolute;inset:0;overflow:hidden;touch-action:manipulation}
.forest-stage .forest-scene{position:absolute;pointer-events:none}
.forest-dialog-top,.forest-dialog-bottom{position:absolute;left:0;right:0;z-index:2;pointer-events:none}
.forest-dialog-top{top:0;padding:34px 4.5% 72px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;background:linear-gradient(#061a21b8,transparent)}
.forest-dialog-top .eyebrow{font-size:.75rem;color:#e6c0a1;letter-spacing:.22em;margin-bottom:8px}
.forest-dialog h2{font-size:clamp(1.25rem,2vw,1.8rem);letter-spacing:-.035em;line-height:1.3;font-weight:500}
.forest-close{pointer-events:auto;display:flex;align-items:center;gap:20px;min-height:46px;padding:10px 16px;border:1px solid #fff7;border-radius:4px;background:#0b1f3a80;color:var(--cream);font-size:.875rem;backdrop-filter:blur(8px)}
.forest-close>span{font-size:1.6rem;line-height:1}.forest-close:hover{background:var(--navy)}
.forest-dialog-bottom{bottom:0;padding:70px 4.5% max(24px,env(safe-area-inset-bottom));background:linear-gradient(transparent,#061a21dc)}
body.exploring-forest{overflow:hidden}body.exploring-forest .mobile-call,body.exploring-forest .bird-cursor{display:none!important}
body.exploring-forest,body.exploring-forest *{cursor:auto!important}body.exploring-forest button{cursor:pointer!important}
@media(max-width:850px){.redwood-hero .hero-copy{width:76%}}
@media(max-width:600px){
  .redwood-hero .hero-copy{width:88%;padding-top:clamp(190px,28svh,225px)}
  .redwood-hero .forest-image{object-position:68% 50%}.forest-stage .forest-image{object-position:68% 50%}
  .redwood-hero .hero-shade{background:linear-gradient(0deg,rgba(5,17,30,.92),rgba(5,17,30,.72) 27%,rgba(5,17,30,.27) 58%,transparent 88%)}
  .redwood-hero .hero-bottom{gap:13px}.redwood-hero .scroll-cue{max-width:165px;font-size:.75rem}
  .forest-enter{font-size:.8125rem;gap:9px;max-width:142px;flex-shrink:0;line-height:1.4}
  .forest-dialog-top{padding:max(23px,env(safe-area-inset-top)) 6% 60px;gap:12px}
  .forest-dialog-top>div{max-width:180px}.forest-dialog h2{font-size:1.25rem}.forest-dialog-top .eyebrow{font-size:.75rem;margin-bottom:8px}
  .forest-close{font-size:.75rem;padding:9px 11px;gap:9px;min-height:44px;max-width:135px;line-height:1.3}.forest-close>span{font-size:1.4rem}
  .forest-dialog-bottom{padding:60px 6% calc(22px + env(safe-area-inset-bottom))}
}
@media(max-height:500px){.forest-dialog-top{padding-top:16px}.forest-dialog-bottom{padding-top:25px;padding-bottom:14px}}
@media(prefers-reduced-motion:reduce){.redwood-hero .forest-scene,.forest-stage .forest-scene{transform:none!important;will-change:auto}.redwood-hero #forest-canvas,.forest-stage #forest-canvas{transition:none}}
.forest-view-caption{font-size:.875rem;line-height:1.6;color:#f0f2e9;letter-spacing:.035em}

/* Frame the supplied forest landscape consistently across screen sizes. */
.redwood-hero .forest-image{object-position:50% 50%}

/* Desktop hero ends just below its actions; mobile keeps its existing layout. */
@media(min-width:851px){
  .hero.company-hero.redwood-hero{height:auto;min-height:0;max-height:none}
  .redwood-hero .hero-copy{padding-bottom:48px}
  .redwood-hero .forest-image{object-position:50% 40%}
}
