/* V14 — Human-inspired hero: silence, scale and abstract motion. */
.hero--reel{height:100vh!important;min-height:700px!important;padding:0!important;background:#050609!important;display:block!important;isolation:isolate!important;overflow:hidden!important;color:#f5f5f2!important;cursor:auto!important}
.hero--reel:before{content:""!important;position:absolute!important;z-index:4!important;inset:0!important;border:0!important;background:linear-gradient(180deg,rgba(5,6,9,.02),rgba(5,6,9,.08) 55%,rgba(5,6,9,.55));pointer-events:none}.hero--reel:after{content:""!important;display:block!important;position:absolute!important;z-index:5!important;inset:0!important;opacity:.055!important;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
.hero__field{position:absolute;z-index:0;inset:0;width:100%;height:100%}
.hero__depth{position:absolute;z-index:2;inset:0;pointer-events:none;background:radial-gradient(circle at 72% 38%,rgba(102,112,255,.16),transparent 20%),radial-gradient(ellipse at 73% 38%,rgba(66,72,255,.12),transparent 37%),linear-gradient(90deg,rgba(5,6,9,.35),transparent 48%,rgba(5,6,9,.08))}
.hero--reel .cursor{display:none!important}
.hero__content{position:absolute;z-index:7;left:var(--pad);right:var(--pad);bottom:8.2vh;display:block}
.hero--reel h1{position:static!important;margin:0!important;max-width:none!important;font-size:clamp(68px,7.45vw,124px)!important;line-height:.8!important;letter-spacing:-.073em!important;font-weight:300!important;text-shadow:none!important}.hero--reel h1:after{display:none!important}.hero--reel h1 span{display:block!important;width:max-content!important;max-width:100%!important;white-space:nowrap;color:#f5f5f2!important}.hero--reel h1 span:last-child{margin:.12em 0 0 12vw!important;color:#8f98ff!important;text-align:left!important}
.hero__scroll{position:absolute;z-index:7;right:var(--pad);bottom:9.5vh;color:rgba(255,255,255,.68);font:10px/1 var(--mono);letter-spacing:.12em}.hero__scroll:before{content:"";display:inline-block;width:34px;height:1px;margin:0 12px 3px 0;background:rgba(255,255,255,.48);transform-origin:right;animation:scrollPulse 2.4s ease-in-out infinite}
.loaded .hero--reel h1 span{animation:heroLine 1.15s cubic-bezier(.16,1,.3,1) both}.loaded .hero--reel h1 span:first-child{animation-delay:.22s}.loaded .hero--reel h1 span:last-child{animation-delay:.38s}.loaded .hero__scroll{animation:heroMeta .8s cubic-bezier(.16,1,.3,1) .72s both}
@keyframes heroLine{from{opacity:0;transform:translateY(72%);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes heroMeta{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes scrollPulse{0%,100%{transform:scaleX(.3);opacity:.35}50%{transform:scaleX(1);opacity:1}}

/* Subtle, continuous camera drift over the existing service artwork. */
.capability{--pointer-x:0px;--pointer-y:0px;--title-x:0px;--title-y:0px;--spot-x:50%;--spot-y:50%;perspective:1000px}
.capability:after{--cam-x:1.1%;--cam-y:-.7%;--cam-scale:1.095;will-change:transform!important;transform:translate3d(var(--pointer-x),var(--pointer-y),0) scale(1.06)!important;animation:serviceCamera 16s ease-in-out infinite alternate!important;transition:filter .8s ease,transform .8s cubic-bezier(.16,1,.3,1)!important}
.capability:nth-child(2):after{--cam-x:-1%;--cam-y:.8%;--cam-scale:1.09;animation-duration:18s!important;animation-delay:-5s!important}
.capability:nth-child(3):after{--cam-x:.7%;--cam-y:1%;--cam-scale:1.1;animation-duration:17s!important;animation-delay:-9s!important}
.capability:nth-child(4):after{--cam-x:-.8%;--cam-y:-.8%;--cam-scale:1.09;animation-duration:19s!important;animation-delay:-3s!important}
.capability:nth-child(5):after{--cam-x:1%;--cam-y:.5%;--cam-scale:1.095;animation-duration:17.5s!important;animation-delay:-12s!important}
.capability:before{background:radial-gradient(circle at var(--spot-x) var(--spot-y),rgba(255,255,255,.12),transparent 24%),linear-gradient(105deg,rgba(0,0,0,.5),transparent 60%)!important;transition:background .18s linear}.capability h3{transform:translate3d(var(--title-x),calc(-50% + var(--title-y)),0)!important;transition:transform .9s cubic-bezier(.16,1,.3,1)!important}.capability:hover:after,.capability:focus-visible:after{filter:saturate(.98) contrast(1.05)!important}
@keyframes serviceCamera{from{transform:translate3d(var(--pointer-x),var(--pointer-y),0) scale(1.06)}to{transform:translate3d(calc(var(--pointer-x) + var(--cam-x)),calc(var(--pointer-y) + var(--cam-y)),0) scale(var(--cam-scale))}}

/* Menu naming and numbering */
.menu nav a{display:grid!important;grid-template-columns:clamp(44px,5vw,74px) minmax(0,1fr)!important;align-items:start!important}.menu nav small{display:block!important;width:auto!important;margin:clamp(7px,1vw,15px) 0 0!important;font-variant-numeric:tabular-nums!important;font-size:10px!important;line-height:1!important;overflow:visible!important}

@media(max-width:800px){.hero--reel{height:100svh!important;min-height:640px!important}.hero__content{left:20px;right:20px;bottom:11vh}.hero--reel h1{max-width:none!important;font-size:13.8vw!important;line-height:.84!important;letter-spacing:-.068em!important}.hero--reel h1 span{width:auto!important;white-space:normal}.hero--reel h1 span:last-child{margin:.18em 0 0 0!important}.hero__scroll{right:20px;bottom:4.5vh;font-size:8px}.menu nav a{grid-template-columns:38px minmax(0,1fr)!important}.menu nav small{margin-top:6px!important;font-size:8px!important}}
@media(prefers-reduced-motion:reduce){.hero--reel *,.capability:after{animation:none!important}.hero--reel{background:radial-gradient(circle at 70% 35%,#17218f 0,transparent 38%),#050609!important}}
