/* WOOH 11.8.3 — the original WOOH artwork leads; Three.js adds depth behind it. */
.home .wooh-threeui-orbital-hero.wooh-live-section{
  height:clamp(720px,91svh,880px)!important;
}
.home .wooh-threeui-orbital-hero .wooh-threeui-hero-stage{
  background:
    radial-gradient(circle at 50% 34%,rgba(231,255,79,.09),transparent 31%),
    radial-gradient(circle at 62% 28%,rgba(184,76,255,.055),transparent 24%),
    #040504!important;
}
.home .wooh-threeui-orbital-hero .wooh-threeui-hero-stage::before{
  background-image:radial-gradient(circle,rgba(216,240,196,.26) .7px,transparent 1px)!important;
  background-size:23px 23px!important;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.85),rgba(0,0,0,.4) 66%,transparent)!important;
  opacity:.45!important;
}
.home .wooh-threeui-orbital-hero .wooh-threeui-hero-vignette{
  background:
    linear-gradient(180deg,rgba(3,4,3,.36),transparent 28%,rgba(3,4,3,.12) 48%,rgba(3,4,3,.83) 73%,#030403 100%),
    linear-gradient(90deg,rgba(3,4,3,.16),transparent 35%,transparent 65%,rgba(3,4,3,.16))!important;
}
.home .wooh-threeui-orbital-hero .wooh-threeui-hero-layout{
  display:block!important;
  height:100%!important;
  min-height:100%!important;
  padding:0!important;
  pointer-events:none;
}
.home .wooh-threeui-orbital-hero .wooh-hero-content{
  position:absolute!important;
  inset:auto 0 52px 0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);
  column-gap:clamp(28px,6vw,96px);
  align-items:end;
  width:100%!important;
  max-width:none!important;
  pointer-events:none;
}
.home .wooh-threeui-orbital-hero .hero-eyebrow{
  grid-column:1;grid-row:1;
  margin-bottom:15px!important;
  font-size:12px!important;
  pointer-events:none;
}
.home .wooh-threeui-orbital-hero .wooh-hero-title{
  grid-column:1;grid-row:2 / span 2;
  max-width:14ch!important;
  font-size:min(var(--wooh-live-title-size,116px),clamp(54px,4.55vw,76px))!important;
  line-height:.94!important;
  letter-spacing:-.062em!important;
  pointer-events:none;
}
.home .wooh-threeui-orbital-hero .wooh-hero-copy{
  grid-column:2;grid-row:2;
  margin:0 0 16px!important;
  max-width:43ch!important;
  font-size:min(var(--wooh-live-body-size,20px),17px)!important;
  line-height:1.52!important;
  pointer-events:none;
}
.home .wooh-threeui-orbital-hero .wooh-hero-actions{
  grid-column:2;grid-row:3;
  margin:0!important;
  pointer-events:auto;
}
.home .wooh-threeui-orbital-hero .wooh-threeui-hero-index{
  position:absolute!important;
  right:0;top:calc(var(--header) + 30px);
  margin:0!important;
  text-align:right;
}
.home .wooh-threeui-orbital-hero .wooh-hero-service-card{
  top:22%;bottom:auto;
}

.wooh-evolve-grid{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background-image:radial-gradient(circle,rgba(231,255,220,.24) .7px,transparent 1px);
  background-size:22px 22px;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.32) 25%,#000 100%);
  opacity:.38;
}
.services-v907-hero .wooh-section-canvas,
.work-v10-hero .wooh-section-canvas,
.about-v902-hero .wooh-section-canvas{opacity:.32!important}
.wooh-evolve-object{
  position:absolute;inset:0;z-index:3;
  width:100%;height:100%;
  pointer-events:none;
  opacity:.58;
  -webkit-mask-image:radial-gradient(ellipse at center,#000 24%,rgba(0,0,0,.8) 54%,transparent 85%);
  mask-image:radial-gradient(ellipse at center,#000 24%,rgba(0,0,0,.8) 54%,transparent 85%);
}
.wooh-evolve-object canvas{
  display:block;width:100%;height:100%;
  pointer-events:auto;cursor:grab;
  touch-action:pan-y;
  outline:none;
}
.wooh-evolve-object canvas.is-dragging{cursor:grabbing}
.wooh-evolve-object canvas:focus-visible{
  outline:2px solid #e7ff4f;outline-offset:-5px;border-radius:12px;
}
.services-v10-visual .services-v908-symbol-wrap,
.work-v10-visual .work-v10-character,
.about-v902-visual .about-v902-character,
.contact-v903-visual .contact-v903-character{
  pointer-events:none;
}
.has-wooh-three .services-v908-symbol-orbit,
.has-wooh-three .work-v10-orbits,
.has-wooh-three .about-v902-orbit,
.has-wooh-three .contact-v903-orbits{opacity:.34!important}
/* The original transparent PNGs remain foreground assets, even with WebGL active. */
.has-wooh-three .services-v908-symbol-wrap,
.has-wooh-three .work-v10-character,
.has-wooh-three .about-v902-character,
.has-wooh-three .contact-v903-character{
  opacity:1!important;visibility:visible!important;
}

.services-v907-hero .wooh-page-title,
.work-v10-hero .work-v10-title,
.about-v902-hero .wooh-page-title,
.contact-v903-hero .contact-v90-title{
  font-size:min(var(--wooh-section-title-size,90px),clamp(54px,5.15vw,78px))!important;
  line-height:.96!important;
  letter-spacing:-.06em!important;
  max-width:12ch!important;
  text-wrap:balance;
}
.services-v907-hero .wooh-page-lead p,
.work-v10-hero .work-v10-lead,
.about-v902-hero .wooh-page-lead p,
.contact-v903-hero .contact-v90-lead{
  font-size:min(var(--wooh-section-body-size,18px),18px)!important;
  line-height:1.55!important;
  max-width:48ch!important;
}
:is(.services-v907-hero,.work-v10-hero,.about-v902-hero,.contact-v903-hero) :is(.btn,.contact-v903-hero-cta){
  transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease;
}
:is(.services-v907-hero,.work-v10-hero,.about-v902-hero,.contact-v903-hero) :is(.btn,.contact-v903-hero-cta):hover{
  transform:translateY(-3px);
  box-shadow:0 14px 34px rgba(231,255,79,.12);
}
:is(.services-v907-hero,.work-v10-hero,.about-v902-hero,.contact-v903-hero) :is(.btn,.contact-v903-hero-cta):focus-visible{
  outline:2px solid #e7ff4f;outline-offset:4px;
}

@media(max-width:900px){
  .home .wooh-threeui-orbital-hero.wooh-live-section{
    height:auto!important;min-height:100svh!important;
  }
  .home .wooh-threeui-orbital-hero .wooh-threeui-hero-layout{
    display:flex!important;align-items:flex-end!important;
    height:auto!important;min-height:100svh!important;
    padding:calc(var(--header) + 35svh) 0 58px!important;
  }
  .home .wooh-threeui-orbital-hero .wooh-hero-content{
    position:relative!important;inset:auto!important;
    display:block!important;margin-top:auto;
    max-width:640px!important;
    pointer-events:auto;
  }
  .home .wooh-threeui-orbital-hero .wooh-hero-title{
    max-width:14ch!important;
    font-size:min(var(--wooh-live-title-size-mobile,68px),clamp(44px,7.2vw,58px))!important;
  }
  .home .wooh-threeui-orbital-hero .wooh-hero-copy{margin:22px 0 0!important;max-width:40ch!important}
  .home .wooh-threeui-orbital-hero .wooh-hero-actions{margin-top:23px!important}
  .home .wooh-threeui-orbital-hero .wooh-threeui-hero-index{display:none!important}
  .home .wooh-threeui-orbital-hero .wooh-hero-service-card{top:18%;right:18px;max-width:calc(100% - 36px)}
  .wooh-evolve-grid{opacity:.23}
}
@media(max-width:760px){
  .services-v907-hero .wooh-page-title,
  .work-v10-hero .work-v10-title,
  .about-v902-hero .wooh-page-title,
  .contact-v903-hero .contact-v90-title{
    font-size:min(var(--wooh-section-title-size-mobile,58px),clamp(42px,10.5vw,58px))!important;
    line-height:.99!important;max-width:14ch!important;
  }
  .services-v907-hero .wooh-page-lead p,
  .work-v10-hero .work-v10-lead,
  .about-v902-hero .wooh-page-lead p,
  .contact-v903-hero .contact-v90-lead{
    font-size:min(var(--wooh-section-body-size-mobile,17px),17px)!important;
  }
  .services-v10-visual,.work-v10-visual,.about-v902-visual,.contact-v903-visual{
    min-height:390px!important;
  }
}
@media(max-width:560px){
  .home .wooh-threeui-orbital-hero .wooh-threeui-hero-layout{
    padding-top:calc(var(--header) + 33svh)!important;
    padding-bottom:50px!important;
  }
  .home .wooh-threeui-orbital-hero .wooh-hero-title{
    font-size:min(var(--wooh-live-title-size-mobile,68px),clamp(42px,11.3vw,55px))!important;
  }
  .home .wooh-threeui-orbital-hero .wooh-hero-copy{font-size:min(var(--wooh-live-body-size-mobile,18px),16px)!important}
}
@media(prefers-reduced-motion:reduce){
  :is(.services-v907-hero,.work-v10-hero,.about-v902-hero,.contact-v903-hero) :is(.btn,.contact-v903-hero-cta){transition:none!important}
}
