/* Digital Kinetics — kinetic visual layer v1. No content or branding assets changed. */
:root{--dk-electric:#32bcff;--dk-glow:#008cff;--dk-ice:#bcf4ff}
body{background:radial-gradient(ellipse 85% 30% at 50% 10%,#0b1b30 0%,transparent 80%),#030711}
.nav-wrap{position:sticky;top:0;z-index:50;background:#030914d9;box-shadow:0 14px 42px #01040b45;transition:background .35s,border-color .35s,box-shadow .35s}
.nav-wrap.dk-scrolled{background:#040c19f5;border-color:#286083;box-shadow:0 10px 38px #020614d9,0 1px 12px #008cff2a}
.topline{background:linear-gradient(90deg,transparent 0%,#0874df 28%,#8ff2ff 50%,#0874df 72%,transparent);background-size:200% 100%;animation:dk-slide-shine 9s ease-in-out infinite}
@keyframes dk-slide-shine{0%,100%{background-position:100% 50%}50%{background-position:0% 50%}}
.desktop-nav a::before{content:"";position:absolute;bottom:-13px;left:50%;width:0;height:2px;background:#79eaff;transform:translateX(-50%);box-shadow:0 0 14px #22baff;transition:width .3s}
.desktop-nav a:hover::before{width:100%}
.nav-cta,.action-button,.round-link{position:relative;overflow:hidden;isolation:isolate;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s,background .35s}
.nav-cta::before,.action-button::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 26%,#ffffff38 48%,transparent 65%);transform:translateX(-140%);transition:transform .65s;pointer-events:none}
.nav-cta:hover::before,.action-button:hover::before{transform:translateX(140%)}
.nav-cta:hover,.action-button:hover,.round-link:hover{transform:translateY(-3px);box-shadow:0 8px 36px #008cff43,0 0 0 1px #54d7ff40}
.home-image{transform:scale(1.035);animation:dk-hero-drift 21s ease-in-out infinite alternate}
@keyframes dk-hero-drift{to{transform:scale(1.11) translate3d(-1%,1%,0)}}
.home-hero::before,.page-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(#58d5ff0a 1px,transparent 1px),linear-gradient(90deg,#58d5ff0a 1px,transparent 1px);background-size:88px 88px;mask-image:linear-gradient(90deg,transparent,#000 80%);opacity:.5}
.home-hero::after{content:"";position:absolute;z-index:1;inset:-15%;pointer-events:none;background:radial-gradient(ellipse 30% 46% at var(--dk-x,70%) var(--dk-y,40%),#198efe25,transparent 75%);transition:background-position .2s}
.home-intro .eyebrow,.hero-copy .eyebrow{animation:dk-rise .75s both .1s}
.home-intro h1,.hero-copy h1{animation:dk-rise 1s cubic-bezier(.16,1,.3,1) both .2s}
.home-intro p,.hero-intro{animation:dk-rise 1s both .38s}
.home-intro .hero-actions{animation:dk-rise 1s both .52s}
@keyframes dk-rise{from{opacity:0;transform:translateY(24px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.home-intro h1 em,.page-hero h1 em{background-image:linear-gradient(105deg,#e8feff 0%,#87edff 25%,#29afff 50%,#82ebff 78%,#e8feff);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:dk-type-shimmer 11s ease-in-out infinite}
@keyframes dk-type-shimmer{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.home-caption::before{content:"";position:absolute;left:0;bottom:-12px;height:1px;width:100%;background:linear-gradient(90deg,transparent,#38bfff66,transparent)}
.statement,.editorial-split,.pricing-editorial,.rent-intro,.timeline-step,.portfolio-full,.contact-editorial,.after-rental,.choice-band .wrap,.footer-cta{position:relative}
.dk-reveal{opacity:0;transform:translate3d(0,25px,0);filter:blur(5px);transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1),filter .8s ease}
.dk-reveal.dk-visible{opacity:1;transform:none;filter:none}
.showcase-stage,.project-image{transition:box-shadow .55s ease,filter .55s ease,transform .65s cubic-bezier(.16,1,.3,1);will-change:transform}
.showcase-stage:hover{box-shadow:0 0 75px #0079ef35,inset 0 0 60px #2ba7ff24;filter:saturate(1.14)}
.showcase-stage::before{content:"";position:absolute;z-index:1;inset:0;border:1px solid #51cfff30;box-shadow:inset 0 0 60px #2caaff16;pointer-events:none}
.service-line,.rental-row,.timeline-step,.sitemap-list a,.locations-rail a{transition:background .35s,box-shadow .35s,transform .35s,border-color .35s}
.service-line:hover,.rental-row:hover,.locations-rail a:hover,.sitemap-list a:hover{transform:translateX(5px);background:linear-gradient(90deg,#08569231,transparent 78%);box-shadow:inset 3px 0 #40caff70}
.service-line .arrow,.rental-arrow{transition:transform .3s,text-shadow .3s}
.service-line:hover .arrow,.rental-row:hover .rental-arrow{transform:translate(4px,-4px);text-shadow:0 0 15px #41cbff}
.choices a{position:relative;transition:background .4s,border-color .4s,transform .4s}
.choices a::after{content:"";position:absolute;bottom:-1px;left:0;height:2px;width:0;background:linear-gradient(90deg,#218bff,#8feeff);box-shadow:0 0 20px #37b9ff;transition:width .45s}
.choices a:hover::after{width:100%}
.choices a:hover{background:linear-gradient(180deg,#13406b20,transparent);transform:translateY(-4px)}
.site-footer{background:radial-gradient(ellipse at 82% 12%,#07366475,transparent 55%),#02060e}
.round-link{box-shadow:inset 0 0 20px #008cff12}
.round-link:hover{transform:rotate(45deg) scale(1.06)}
.dk-pointer-glow{position:fixed;width:460px;height:460px;left:0;top:0;border-radius:50%;pointer-events:none;z-index:5;background:radial-gradient(circle,#179bff0c,transparent 68%);transform:translate3d(-50%,-50%,0);opacity:0;transition:opacity .5s;will-change:transform}
@media(hover:hover) and (pointer:fine){body:hover .dk-pointer-glow{opacity:1}}
@media(max-width:820px){.nav-wrap{position:sticky}.dk-pointer-glow{display:none}.home-image{animation-duration:25s}.dk-reveal{filter:none}.mobile-nav{box-shadow:0 22px 40px #000a}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.dk-reveal{opacity:1!important;transform:none!important;filter:none!important}.home-image{transform:none}.dk-pointer-glow{display:none}}

/* Exact user-approved network image, displayed unmodified */
.approved-network{padding-top:65px;padding-bottom:25px}.approved-network-heading{max-width:720px;margin-bottom:30px}.approved-network-heading h2{font-size:clamp(30px,4.5vw,60px);line-height:1.05;margin:13px 0;color:#f1f7ff}.approved-network-heading p{color:#b5c7d8;line-height:1.7}.approved-network img{display:block;width:100%;height:auto;object-fit:contain;border:1px solid rgba(0,183,255,.25);box-shadow:0 0 65px rgba(0,153,255,.13);border-radius:12px}.page-locations .locations-rail{padding-top:35px}
