/* Ascend Intro V10 — 3D emblem + interactive Los Angeles service introduction. */
.ascend-welcome-v8{--intro-px:0;--intro-py:0;position:fixed;z-index:10090;inset:0;overflow:hidden;isolation:isolate;background:#02070b;color:#f7fbfc;opacity:1;visibility:visible;transition:opacity .82s cubic-bezier(.2,.65,.2,1),visibility .82s ease}
.ascend-welcome-v8.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
.welcome-v8-scenes{position:absolute;z-index:0;inset:0;background:#02070b;overflow:hidden}
.welcome-v8-scene{position:absolute;inset:-3%;width:106%;height:106%;object-fit:cover;opacity:0;transform:translate3d(calc(var(--intro-px)*-5px),calc(var(--intro-py)*-3px),0) scale(1.055);filter:saturate(.85) contrast(1.06) brightness(.62);transition:opacity 1.35s ease,transform 6.5s cubic-bezier(.16,.72,.18,1),filter 1.4s ease;will-change:opacity,transform,filter}
.welcome-v8-scene.is-active{opacity:1;transform:translate3d(calc(var(--intro-px)*-8px),calc(var(--intro-py)*-5px),0) scale(1.015);filter:saturate(1.03) contrast(1.035) brightness(.88)}
.welcome-v10.is-film-open .welcome-v8-scene.is-active{filter:saturate(1.03) contrast(1.02) brightness(.96)}
.welcome-v10-grade{position:absolute;z-index:2;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 44%,rgba(4,14,20,.03) 0 32%,rgba(1,7,11,.26) 72%,rgba(0,3,5,.56) 100%),linear-gradient(180deg,rgba(0,5,9,.28),transparent 30%,transparent 65%,rgba(0,4,8,.32));transition:opacity 1.5s ease}
.welcome-v10:not(.is-film-open) .welcome-v10-grade{background:radial-gradient(circle at 50% 47%,rgba(10,28,40,.4),rgba(0,4,8,.9) 66%,#010406 100%)}
.welcome-v10-grid{position:absolute;z-index:3;inset:0;pointer-events:none;opacity:.18;background-image:linear-gradient(rgba(188,235,241,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(188,235,241,.035) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.78) 24%,rgba(0,0,0,.48) 70%,transparent 100%);transform:perspective(900px) rotateX(68deg) translateY(33%);transform-origin:50% 100%;transition:opacity 1.3s ease}
.welcome-v10.is-services .welcome-v10-grid{opacity:.08}

/* 3D emblem object */
.welcome-v10-brand{position:absolute;z-index:10;left:50%;top:48%;width:min(660px,82vw);transform:translate(-50%,-50%) scale(.66);transform-origin:50% 50%;opacity:0;display:grid;grid-template-columns:minmax(120px,180px) 1fr;align-items:center;gap:28px;perspective:1200px;transition:left 1.15s cubic-bezier(.2,.76,.2,1),top 1.15s cubic-bezier(.2,.76,.2,1),transform 1.15s cubic-bezier(.2,.76,.2,1),opacity .75s ease,filter .9s ease;filter:blur(8px) brightness(.8);will-change:left,top,transform,opacity}
.welcome-v10.is-brand .welcome-v10-brand{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0) brightness(1)}
.welcome-v10.is-services .welcome-v10-brand{left:clamp(26px,5vw,74px);top:clamp(26px,6vh,62px);width:min(410px,43vw);grid-template-columns:minmax(64px,92px) 1fr;gap:16px;transform:translate(0,0) scale(.78);transform-origin:0 0;filter:brightness(1.03)}
.welcome-v10-emblem-scene{position:relative;aspect-ratio:1;display:grid;place-items:center;transform-style:preserve-3d;perspective:1000px}
.welcome-v10-emblem-stack{position:relative;width:100%;aspect-ratio:1;transform-style:preserve-3d;transform:rotateX(-17deg) rotateY(48deg) rotateZ(-6deg) scale(.84);transition:transform 2.1s cubic-bezier(.12,.84,.16,1);filter:drop-shadow(0 28px 36px rgba(0,0,0,.36))}
.welcome-v10.is-brand .welcome-v10-emblem-stack{transform:rotateX(-5deg) rotateY(11deg) rotateZ(-1deg) scale(1)}
.welcome-v10.is-wordmark .welcome-v10-emblem-stack{animation:v10Float 4.8s ease-in-out infinite alternate}
.emblem-depth,.emblem-face{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform-style:preserve-3d;pointer-events:none}
.depth-4{transform:translate3d(-8px,7px,-40px);filter:brightness(.24) saturate(1.5) hue-rotate(9deg);opacity:.5}
.depth-3{transform:translate3d(-6px,5px,-30px);filter:brightness(.34) saturate(1.45) hue-rotate(6deg);opacity:.56}
.depth-2{transform:translate3d(-4px,4px,-20px);filter:brightness(.46) saturate(1.35);opacity:.62}
.depth-1{transform:translate3d(-2px,2px,-10px);filter:brightness(.62) saturate(1.25);opacity:.72}
.emblem-face{transform:translateZ(2px);filter:drop-shadow(0 4px 8px rgba(0,23,43,.35)) brightness(1.12)}
.welcome-v10-emblem-shine{position:absolute;z-index:5;inset:7%;border-radius:28%;overflow:hidden;transform:translateZ(8px);pointer-events:none;mix-blend-mode:screen}
.welcome-v10-emblem-shine:before{content:"";position:absolute;left:-80%;top:-20%;width:42%;height:145%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.9),rgba(111,218,241,.35),transparent);filter:blur(5px);transform:skewX(-12deg)}
.welcome-v10.is-wordmark .welcome-v10-emblem-shine:before{animation:v10Shine 2.2s cubic-bezier(.2,.75,.2,1) .25s 1 both}
.welcome-v10-orbit{position:absolute;border:1px solid rgba(165,228,236,.18);border-radius:50%;pointer-events:none;transform-style:preserve-3d;opacity:.45}
.orbit-a{inset:-12%;transform:rotateX(72deg) rotateZ(18deg)}
.orbit-b{inset:-22%;border-color:rgba(111,185,229,.11);transform:rotateY(72deg) rotateZ(-28deg)}
.welcome-v10.is-brand .orbit-a{animation:v10OrbitA 8s linear infinite}.welcome-v10.is-brand .orbit-b{animation:v10OrbitB 11s linear infinite reverse}

.welcome-v10-wordmark{min-width:0;opacity:0;transform:translate3d(30px,0,-35px);transition:opacity .8s ease,transform 1.15s cubic-bezier(.16,.78,.2,1)}
.welcome-v10.is-wordmark .welcome-v10-wordmark{opacity:1;transform:translate3d(0,0,0)}
.welcome-v10-wordmark strong{display:block;font-family:"Exo 2","Manrope",sans-serif;font-size:clamp(2.7rem,5.2vw,5.6rem);line-height:.86;letter-spacing:.16em;font-weight:700;color:#f7fbfc;text-shadow:0 8px 24px rgba(0,0,0,.32),0 0 26px rgba(99,197,226,.08)}
.welcome-v10-wordmark span{display:block;margin-top:10px;font:700 clamp(.72rem,1.1vw,1rem)/1 "Manrope",sans-serif;letter-spacing:.28em;color:#8fc9d8;text-transform:uppercase}
.welcome-v10-wordmark small{display:block;margin-top:12px;font:600 clamp(.55rem,.72vw,.7rem)/1.4 "Manrope",sans-serif;letter-spacing:.08em;color:rgba(238,248,249,.62)}

/* City service layer */
.welcome-v10-city-caption{position:absolute;z-index:8;left:clamp(22px,5vw,74px);bottom:clamp(26px,6vh,62px);max-width:540px;opacity:0;transform:translateY(14px);transition:opacity .8s ease,transform .9s ease;text-shadow:0 4px 24px rgba(0,0,0,.52);pointer-events:none}
.welcome-v10.is-services .welcome-v10-city-caption{opacity:1;transform:none}
.welcome-v10-city-caption small{display:block;font:800 .52rem/1 "Manrope",sans-serif;letter-spacing:.21em;color:rgba(238,250,251,.64)}
.welcome-v10-city-caption strong{display:block;margin-top:8px;font:600 clamp(1rem,1.5vw,1.35rem)/1.2 "Manrope",sans-serif;letter-spacing:-.025em;color:rgba(248,252,253,.92)}

.welcome-v10-services{position:absolute;z-index:12;inset:0;pointer-events:none}
.welcome-v10-service{position:absolute;pointer-events:auto;color:#f5fbfc;text-decoration:none!important;display:flex;align-items:flex-start;gap:10px;opacity:0;transform:translate3d(0,12px,0) scale(.96);transition:opacity .72s ease var(--delay),transform .82s cubic-bezier(.18,.76,.2,1) var(--delay),filter .3s ease;filter:drop-shadow(0 4px 12px rgba(0,0,0,.4))}
.welcome-v10.is-services .welcome-v10-service{opacity:1;transform:none}
.welcome-v10-service>i{position:relative;flex:0 0 12px;width:12px;height:12px;margin-top:3px;border:1px solid rgba(225,249,251,.82);border-radius:50%;background:rgba(8,31,42,.42);box-shadow:0 0 0 6px rgba(174,229,236,.06),0 0 20px rgba(112,210,225,.12)}
.welcome-v10-service>i:after{content:"";position:absolute;left:11px;top:5px;width:42px;height:1px;background:linear-gradient(90deg,rgba(218,247,249,.45),transparent)}
.welcome-v10-service span{min-width:190px;padding:9px 11px 10px 14px;border-left:1px solid rgba(222,247,249,.16);border-radius:0 10px 10px 0;background:linear-gradient(90deg,rgba(2,13,19,.28),rgba(2,13,19,.06));backdrop-filter:blur(3px)}
.welcome-v10-service small{display:block;font:800 .47rem/1 "Manrope",sans-serif;letter-spacing:.18em;color:#93d5e4;text-transform:uppercase}
.welcome-v10-service strong{display:block;margin-top:5px;font:650 .68rem/1.2 "Manrope",sans-serif;letter-spacing:-.01em;color:#f7fbfc;white-space:nowrap}
.welcome-v10-service:hover,.welcome-v10-service:focus-visible{transform:translate3d(0,-3px,0) scale(1.035);filter:drop-shadow(0 8px 18px rgba(0,0,0,.38))}
.welcome-v10-service:hover>i,.welcome-v10-service:focus-visible>i{background:#e7fbfc;box-shadow:0 0 0 7px rgba(174,229,236,.08),0 0 28px rgba(112,210,225,.36)}
.welcome-v10-service:focus-visible{outline:1px solid rgba(235,253,255,.78);outline-offset:7px;border-radius:8px}
.service-tech{left:13%;top:43%}.service-web{right:13%;top:34%}.service-business{right:19%;top:67%}
.welcome-v10[data-hover-service="technology"] .welcome-v8-scene.is-active{transform:translate3d(-5px,-1px,0) scale(1.025);filter:saturate(1.04) contrast(1.03) brightness(.92)}
.welcome-v10[data-hover-service="web"] .welcome-v8-scene.is-active{transform:translate3d(4px,-2px,0) scale(1.025);filter:saturate(1.06) contrast(1.02) brightness(.95)}
.welcome-v10[data-hover-service="business"] .welcome-v8-scene.is-active{transform:translate3d(2px,3px,0) scale(1.025);filter:saturate(.98) contrast(1.04) brightness(.9)}

.welcome-v10-prompt{position:absolute;z-index:13;left:50%;bottom:18px;transform:translateX(-50%) translateY(8px);opacity:0;font:650 .54rem/1 "Manrope",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(239,250,251,.52);transition:opacity .7s ease .45s,transform .7s ease .45s;pointer-events:none}
.welcome-v10.is-services .welcome-v10-prompt{opacity:1;transform:translateX(-50%) translateY(0)}

.welcome-v8-skip{position:absolute;z-index:20;right:18px;top:18px;min-height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(4,16,24,.18);color:rgba(242,251,252,.82);font-family:"Manrope","Segoe UI",sans-serif;font-size:.66rem;font-weight:700;letter-spacing:.065em;backdrop-filter:blur(8px);cursor:pointer;transition:background .3s ease,color .3s ease,border-color .3s ease}.welcome-v8-skip:hover{background:rgba(10,31,43,.34);border-color:rgba(238,252,253,.42);color:#fff}.welcome-v8-skip:focus-visible{outline:2px solid rgba(255,255,255,.85);outline-offset:3px}

@keyframes v10Shine{0%{opacity:0;transform:skewX(-12deg) translateX(0)}18%{opacity:.95}76%{opacity:.55}100%{opacity:0;transform:skewX(-12deg) translateX(520%)}}
@keyframes v10Float{from{transform:rotateX(-5deg) rotateY(9deg) rotateZ(-1deg) translateY(-2px) scale(1)}to{transform:rotateX(-3deg) rotateY(13deg) rotateZ(.5deg) translateY(3px) scale(1.01)}}
@keyframes v10OrbitA{to{transform:rotateX(72deg) rotateZ(378deg)}}
@keyframes v10OrbitB{to{transform:rotateY(72deg) rotateZ(332deg)}}

@media(max-width:760px){
 .welcome-v10-brand{top:43%;width:min(390px,88vw);grid-template-columns:90px 1fr;gap:16px}
 .welcome-v10-wordmark strong{font-size:clamp(2.2rem,10vw,3.4rem);letter-spacing:.1em}.welcome-v10-wordmark span{font-size:.58rem;letter-spacing:.2em}.welcome-v10-wordmark small{display:none}
 .welcome-v10.is-services .welcome-v10-brand{left:18px;top:22px;width:245px;grid-template-columns:56px 1fr;gap:10px;transform:none}.welcome-v10.is-services .welcome-v10-wordmark strong{font-size:1.55rem}.welcome-v10.is-services .welcome-v10-wordmark span{font-size:.42rem;margin-top:4px}
 .welcome-v10-grid{background-size:46px 46px}.welcome-v10-city-caption{left:18px;bottom:20px;max-width:75vw}.welcome-v10-city-caption strong{font-size:.82rem}
 .welcome-v10-service span{min-width:0;width:min(188px,52vw);padding:8px 9px 9px 12px}.welcome-v10-service strong{font-size:.58rem;white-space:normal}.welcome-v10-service small{font-size:.4rem}.service-tech{left:9%;top:39%}.service-web{right:5%;top:53%}.service-business{left:19%;right:auto;top:68%}
 .welcome-v10-prompt{display:none}.welcome-v8-skip{right:10px;top:10px}
}
@media(prefers-reduced-motion:reduce){.ascend-welcome-v8{display:none!important}}
