/* DM motion system: full-bleed stage, restrained entrances, readable content. */
:root{--night:#070b16;--ice:#a9bbff;--motion-ease:cubic-bezier(.22,1,.36,1)}
.header{background:rgba(7,11,22,.94);border-bottom:1px solid #ffffff12;color:#f2f4ff;backdrop-filter:blur(20px)}
.header-inner{height:84px}.header nav{font-weight:500}.header nav>a:not(.nav-cta){color:#c9cedb;transition:color .2s}.header nav>a:hover{color:white}.header .nav-cta{background:#ffffff0a;border:1px solid #ffffff30;color:white;transition:background .2s,border-color .2s}.header .nav-cta:hover{background:#ffffff15;border-color:#ffffff66}
.hero-motion{display:block;position:relative;isolation:isolate;overflow:hidden;background:var(--night);color:white;min-height:720px;min-height:clamp(690px,calc(100svh - 84px),920px);padding:0}
.hero-scene{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:#070b16}.scene-sculpture{position:absolute;right:-8%;top:-5%;width:91%;height:110%;max-width:none;object-fit:cover;object-position:60% center;opacity:.82;mix-blend-mode:screen;transform:translate3d(var(--scene-x,0px),var(--scene-y,0px),0) scale(1.04);will-change:transform}.scene-glow{position:absolute;inset:-10%;background:radial-gradient(ellipse at 78% 54%,#2149b74d,transparent 55%),radial-gradient(ellipse at 80% 90%,#1847ff2b,transparent 50%);animation:ambient-shift 15s ease-in-out infinite alternate}.hero-scene canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.8}.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,#070b16 0%,#070b16f5 22%,#070b16cf 39%,#070b1666 55%,#070b1610 80%),linear-gradient(0deg,#070b16 0%,transparent 22%,transparent 80%,#070b1644)}
.hero-layout{position:relative;padding-block:92px 140px;display:flex;align-items:center;min-height:inherit}.hero-copy{width:720px;max-width:65%}.hero-motion .eyebrow{font-size:12px;color:#bec9e6;letter-spacing:.16em;line-height:1.5}.hero-motion .line{background:#758aff;width:34px;box-shadow:0 0 14px #778bff44}.hero-motion h1{font-size:clamp(66px,7.3vw,108px);line-height:1.06;letter-spacing:-.065em;margin:32px 0 28px;font-weight:500}.title-line{display:block;overflow:hidden;padding:0 0 .12em;margin-bottom:-.12em}.title-line>span{display:block}.hero-motion h1 em{color:#a0b3ff}.hero-motion .lead{font-size:23px;line-height:1.5;color:#eef1fa;max-width:520px}.hero-motion .hero-description{color:#a7b0c3;font-size:16px;line-height:1.8;margin-top:16px;max-width:480px}.hero-motion .actions{gap:28px;margin-top:35px}.hero-motion .button{border-radius:6px;min-height:56px;padding:16px 25px;background:#5264ff;box-shadow:0 0 0 1px #a2adff2b inset,0 10px 40px #344fff26;transition:transform .25s,background .25s,box-shadow .25s}.hero-motion .button:hover{background:#6676ff;box-shadow:0 8px 40px #435fff44;transform:translateY(-3px)}.hero-motion .text-link{border-color:#ffffff35;color:#e7ebf8;display:flex;align-items:center;gap:20px;transition:border-color .2s}.hero-motion .text-link:hover{border-color:#a4b5ff}
.hero-bottom{position:absolute;left:0;right:0;bottom:27px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff18;padding-top:20px;gap:20px}.scroll-cue{display:flex;align-items:center;gap:14px;color:#b7c0d3;font-size:12px;min-height:44px}.scroll-track{width:1px;height:28px;background:#ffffff25;position:relative;overflow:hidden}.scroll-track::after{content:'';position:absolute;width:1px;height:12px;background:#a0b3ff;top:-12px;animation:scroll-hint 2.8s ease-in-out infinite}.motion-toggle{color:#b7c0d3;background:#070b1670;display:inline-flex;align-items:center;gap:10px;border:1px solid #ffffff20;border-radius:99px;padding:10px 16px;min-height:44px;font-size:12px;transition:background .2s}.motion-toggle[hidden]{display:none}.motion-toggle:hover{background:#ffffff12;color:white}.motion-symbol{font-size:13px;width:15px;text-align:center}.hero-motion[data-motion=paused] .scene-glow,.hero-motion[data-motion=paused] .scroll-track::after{animation-play-state:paused}.hero-motion[data-motion=paused] .scene-sculpture{will-change:auto}.hero-motion[data-motion=offscreen] .scene-glow,.hero-motion[data-motion=offscreen] .scroll-track::after{animation-play-state:paused}
.motion-ready .title-line>span{animation:title-arrive 1.05s var(--motion-ease) both}.motion-ready .title-line:nth-child(2)>span{animation-delay:.13s}.motion-ready .hero-enter{animation:content-arrive .9s var(--motion-ease) both}.motion-ready .hero .eyebrow{animation-delay:.05s}.motion-ready .hero .lead{animation-delay:.25s}.motion-ready .hero .hero-description{animation-delay:.34s}.motion-ready .hero .actions{animation-delay:.43s}
.capabilities{border-top:0;padding-block:29px;font-size:13px}.capabilities>span{font-weight:500}.capabilities p{color:#636976}.process-section{background:#0c101c;position:relative;overflow:hidden}.process-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 85% 0,#293d9b26,transparent 65%);pointer-events:none}.process-section>.container{position:relative}.demo-visual{border-radius:8px}.demo-visual .launch{transition:transform .35s var(--motion-ease),background .2s,color .2s}.demo-visual:hover .launch{transform:rotate(45deg);background:#4255ff;color:white}.demo-visual:focus-visible{outline-offset:6px}.service-rows article{transition:background .25s}.service-rows article:hover{background:#f6f7fc}.service-rows .number{transition:color .25s}.service-rows article:hover .number{color:#4255ff}.contact{background:linear-gradient(120deg,#263dca,#4255ff 60%,#596cff)}.contact-arrow{transition:transform .3s var(--motion-ease),background .2s}.contact-arrow:hover{transform:translate(3px,-3px)}
.reveal{transition:opacity .85s var(--motion-ease),transform .85s var(--motion-ease);transition-delay:var(--reveal-delay,0ms)}.reveal.is-pending{opacity:0;transform:translateY(32px)}.reveal.is-visible{opacity:1;transform:none}.reveal.is-pending:focus-within{opacity:1;transform:none}.hero-motion a:focus-visible,.header a:focus-visible,.header button:focus-visible,.motion-toggle:focus-visible{outline-color:#bac6ff}
@keyframes title-arrive{from{transform:translateY(110%)}to{transform:translateY(0)}}@keyframes content-arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes ambient-shift{from{opacity:.45;transform:translate(-2%,1%) scale(1)}to{opacity:1;transform:translate(2%,-1%) scale(1.08)}}@keyframes scroll-hint{0%{transform:translateY(0)}75%,100%{transform:translateY(44px)}}
@media(min-width:1650px){.hero-layout{padding-block:125px 160px}.scene-sculpture{right:-2%;width:82%}.hero-copy{max-width:60%}}
@media(max-width:1000px){.hero-motion{min-height:720px}.hero-layout{padding-top:85px;padding-bottom:135px}.hero-copy{max-width:74%}.hero-motion h1{font-size:80px}.scene-sculpture{width:115%;right:-28%;opacity:.7}.hero-motion .lead{font-size:21px}.hero-motion .hero-description{font-size:16px}.scene-shade{background:linear-gradient(90deg,#070b16f7 0%,#070b16c9 40%,#070b1650 76%),linear-gradient(0deg,#070b16,transparent 24%)}.capabilities{font-size:12px;gap:8px}}
@media(max-width:720px){.header-inner{height:72px}.header .brand img{width:132px}.header .menu-toggle{background:#ffffff08;color:#e3e8f5;border-color:#ffffff2b;font-size:14px}.header nav{background:#0b1020;box-shadow:0 20px 45px #03071366}.header nav>a{font-size:15px}.header .nav-cta{background:#4255ff;border:0}.hero-motion{min-height:780px}.hero-layout{padding-block:58px 200px;min-height:780px;align-items:flex-start}.hero-copy{max-width:100%;width:100%}.hero-motion .eyebrow{font-size:11px;letter-spacing:.12em;gap:10px}.hero-motion .line{width:23px}.hero-motion h1{font-size:clamp(52px,13vw,78px);margin:32px 0 27px;letter-spacing:-.065em;line-height:1.09}.hero-motion .lead{font-size:20px;max-width:355px;line-height:1.55}.desktop-break{display:none}.hero-motion .hero-description{font-size:15px;max-width:335px;margin-top:18px}.hero-motion .actions{gap:20px;margin-top:28px;align-items:flex-start}.hero-motion .button{min-height:52px;padding:14px 20px;font-size:14px;gap:20px}.hero-motion .text-link{font-size:14px;gap:12px}.scene-sculpture{right:-51%;top:20%;height:80%;width:151%;opacity:.58;object-position:center}.scene-shade{background:linear-gradient(180deg,#070b16f5 0%,#070b16e8 26%,#070b16b0 46%,#070b1626 76%,#070b16 100%),linear-gradient(90deg,#070b1680,transparent 80%)}.hero-scene canvas{opacity:.62}.hero-bottom{bottom:20px;padding-top:15px;align-items:center;gap:12px}.scroll-cue{font-size:12px;max-width:165px;gap:10px;line-height:1.5}.motion-toggle{font-size:12px;padding:10px 12px;gap:6px}.capabilities{padding-block:22px;font-size:12px}.capabilities p{line-height:1.9}.capabilities i{margin:0 4px}.demo-caption p{font-size:14px}.demo-caption>a{font-size:13px}.demo-pill{font-size:11px}.preview-brand>span{font-size:10px}.service-rows p,.process p,.faq details>p{font-size:16px}.service-tags{font-size:12px}.contact .eyebrow{font-size:11px}.section-top>p{font-size:16px}.demo-disclaimer{font-size:12px}.reveal.is-pending{transform:translateY(20px)}}
@media(max-width:360px){.hero-motion{min-height:830px}.hero-layout{min-height:830px;padding-top:48px}.hero-motion .eyebrow{font-size:10px;letter-spacing:.09em}.hero-motion h1{font-size:50px}.hero-motion .lead{font-size:19px}.hero-motion .actions{gap:10px}.hero-bottom{gap:10px}.scroll-cue{max-width:125px}.motion-toggle{padding:10px;font-size:11px}.motion-label{max-width:88px}.hero-motion .hero-description{font-size:15px}}
.scene-sculpture{animation:sculpture-drift 22s ease-in-out infinite alternate}.hero-motion[data-motion=paused] .scene-sculpture,.hero-motion[data-motion=offscreen] .scene-sculpture{animation-play-state:paused;will-change:auto}
@keyframes sculpture-drift{from{transform:translate3d(var(--scene-x,0px),var(--scene-y,0px),0) scale(1.04) rotate(-.4deg)}to{transform:translate3d(var(--scene-x,0px),var(--scene-y,0px),0) scale(1.11) rotate(.7deg)}}
@media(max-width:720px){.hero-motion .hero-description{font-size:16px}.hero-motion .eyebrow{font-size:12px;letter-spacing:.08em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scene-glow,.scene-sculpture,.scroll-track::after,.title-line>span,.hero-enter{animation:none!important}.scene-sculpture{transform:none!important;will-change:auto}.reveal,.reveal.is-pending,.reveal.is-visible{opacity:1!important;transform:none!important;transition:none!important}.hero-motion .button:hover,.contact-arrow:hover,.demo-visual:hover .launch{transform:none}}
