:root{--bg: #050510;--ink: #ffffff;--ink-muted: #b0b0c0;--ink-faint: #777788;--primary: #007bff;--cyan: #00d2ff;--em: #9be9ff;--accent: #00d2ff;--soft: #b0b0c0;--edge: rgba(255, 255, 255, .08);--edge-strong: rgba(255, 255, 255, .24);--edge-hover: rgba(0, 210, 255, .3);--card: rgba(10, 15, 30, .6);--edge-light: linear-gradient(150deg, rgba(255, 255, 255, .18), rgba(255, 255, 255, .06) 30%, rgba(255, 255, 255, .03) 62%, rgba(0, 210, 255, .16)) border-box;--highlight: inset 0 1px 0 rgba(255, 255, 255, .06);--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", ui-sans-serif, system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--pad: clamp(18px, 2.4vw, 36px);--nav-h: 84px;color-scheme:dark}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden;background:var(--bg);color:var(--ink)}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}#gl{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none}.top{position:fixed;z-index:20;top:1.5rem;left:0;right:0;display:flex;justify-content:center;padding:0 1rem;pointer-events:none}.navbar{pointer-events:auto;width:-moz-max-content;width:max-content;max-width:95vw;display:flex;align-items:center;gap:clamp(2rem,calc(100vw - 52rem),12rem);padding:.6rem .8rem .6rem 2rem;border-radius:999px;border:1px solid transparent;background:linear-gradient(#ffffff0a,#ffffff0a) padding-box,linear-gradient(115deg,#fff3,#ffffff0d 38%,#ffffff08 64%,#00d2ff3d) border-box;box-shadow:var(--highlight),0 18px 50px -26px #000000e6;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.logo{display:flex;align-items:center;gap:.6rem;font-weight:600;font-size:1.02rem;letter-spacing:-.01em;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:2rem}.nav-links a{position:relative;font-size:.95rem;color:var(--ink-muted);transition:color .2s ease;white-space:nowrap}.nav-links a:not(.nav-btn-outline):after{content:"";position:absolute;left:50%;bottom:-10px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);opacity:0;translate:0 3px;transition:opacity .3s ease,translate .3s ease}.nav-links a[aria-current]:after{opacity:1;translate:0 0}.nav-links a:hover,.nav-links a[aria-current]{color:var(--ink)}.nav-links .nav-btn-outline{color:var(--ink);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:.55rem 1.2rem;font-weight:500;transition:border-color .25s ease,background .25s ease}.nav-links .nav-btn-outline:hover{border-color:var(--cyan);background:#00d2ff14}.hamburger{display:none;background:none;border:0;color:var(--ink);cursor:pointer;padding:.4rem}.intro{position:fixed;z-index:10;left:calc(var(--pad) + .75rem);bottom:calc(var(--pad) + 92px);max-width:min(560px,44vw);pointer-events:none;visibility:hidden}.intro>*{pointer-events:auto}.eyebrow{display:flex;align-items:center;gap:10px;font-size:.78rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--cyan)}.intro h1{margin-top:1.1rem;font-family:var(--font-display);font-weight:500;font-size:clamp(2.6rem,5.2vw,4.9rem);line-height:1.06;letter-spacing:-.015em}.line{display:block;overflow:hidden;padding-bottom:.08em}.line>span{display:inline-block;will-change:transform}.intro h1 em{font-style:italic;color:var(--em)}.lede{margin-top:1.2rem;max-width:30rem;color:var(--ink-muted);font-size:1.05rem;line-height:1.65;text-shadow:0 2px 18px rgba(5,5,16,.85)}.intro-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:2.9rem;padding:0 1.4rem;border-radius:999px;font:600 .92rem var(--font-body);white-space:nowrap;transition:translate .3s var(--ease),box-shadow .3s ease,border-color .25s ease,background .25s ease}.btn-primary{color:#fff;background:linear-gradient(90deg,var(--primary),var(--cyan));box-shadow:inset 0 1px #ffffff47,0 8px 28px #007bff59}.btn-primary:hover{translate:0 -1px;box-shadow:inset 0 1px #ffffff52,0 12px 36px #00d2ff73}.btn:active{translate:0 0}.btn-ghost{color:var(--ink);font-weight:500;border:1px solid var(--edge-strong);background:#ffffff08;box-shadow:var(--highlight);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-ghost:hover{border-color:var(--cyan);background:#00d2ff14}.labels{position:fixed;inset:0;z-index:5;pointer-events:none}.orb-label{position:absolute;left:0;top:0;display:flex;align-items:baseline;gap:8px;padding:7px 13px 7px 11px;border-radius:999px;white-space:nowrap;background:#0a0f1e8c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--edge);box-shadow:var(--highlight);opacity:0;translate:-50% -100%;transition:opacity .45s ease,background .3s ease,border-color .3s ease;pointer-events:none;cursor:pointer}.orb-label--home{translate:-50% 0}.orb-label.is-on{opacity:.95;pointer-events:auto}.orb-label.is-on.is-hover{opacity:1;background:#0a0f1ec7;border-color:var(--edge-hover)}.orb-n{font-size:10.5px;font-weight:600;letter-spacing:.08em;color:var(--cyan);font-variant-numeric:tabular-nums}.orb-name{font-size:13px;font-weight:600;letter-spacing:-.005em}.orb-body{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);display:none}.orb-label.is-hover .orb-body,.orb-label--home .orb-body{display:inline}.dock{position:fixed;z-index:15;left:50%;bottom:var(--pad);translate:-50% 0;display:flex;gap:4px;padding:6px;max-width:calc(100vw - 2 * var(--pad));border-radius:999px;overflow-x:auto;scrollbar-width:none;border:1px solid transparent;background:linear-gradient(#0a0f1e9e,#0a0f1e9e) padding-box,var(--edge-light);box-shadow:var(--highlight),0 24px 60px -30px #000000e6;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);transition:opacity .6s ease,translate .8s var(--ease)}.dock::-webkit-scrollbar{display:none}.dock-item{display:flex;align-items:center;gap:8px;flex:none;padding:9px 15px 9px 11px;border-radius:999px;border:1px solid transparent;font-size:.85rem;font-weight:500;color:var(--ink-muted);white-space:nowrap;transition:color .25s ease,background .25s ease,border-color .25s ease}.dock-item:hover{color:var(--ink);background:#ffffff0d}.dock-item[aria-current]{color:var(--ink);border-color:#00d2ff73;background:#00d2ff14}.dock-dot{width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--dot2),var(--dot));box-shadow:0 0 10px -1px var(--dot)}.dock-dot--home{background:radial-gradient(circle at 35% 30%,#cfeeff,#0b5fb0 72%);box-shadow:0 0 10px #00d2ff99}.dock-n{font-size:10.5px;font-weight:600;color:var(--ink-faint);font-variant-numeric:tabular-nums}.hint{position:fixed;z-index:9;right:calc(var(--pad) + .5rem);bottom:calc(var(--pad) + 18px);font-size:.68rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:#ffffff8c;text-align:right;line-height:1.9}.panel{position:fixed;z-index:12;top:calc(var(--nav-h) + 16px);right:var(--pad);bottom:var(--pad);width:min(468px,40vw);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent;border-radius:20px;border:1px solid transparent;background:linear-gradient(180deg,#0e1428b3,#080c1a9e) padding-box,var(--edge-light);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--highlight),0 40px 90px -40px #000000d9}.pnl-inner{padding:clamp(22px,2.2vw,34px);display:flex;flex-direction:column;gap:14px;min-height:100%}.pnl-icon{--tile: 2.5rem}.eyebrow-n{color:var(--cyan);font-variant-numeric:tabular-nums}.eyebrow-n+span{color:var(--ink-muted)}.panel .eyebrow-n:after{content:"";display:inline-block;width:22px;height:1px;margin-left:10px;vertical-align:middle;background:currentColor;opacity:.5}.pnl-title{margin-top:6px;font-family:var(--font-display);font-weight:500;font-size:clamp(2.3rem,3.4vw,3.4rem);line-height:1.06;letter-spacing:-.01em;outline:none}.pnl-title .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.06em}.pnl-title .w>span{display:inline-block}.pnl-tag{font-family:var(--font-display);font-style:italic;font-size:clamp(1.25rem,1.5vw,1.5rem);line-height:1.25;color:var(--em)}.pnl-summary{color:var(--ink-muted);font-size:.97rem;line-height:1.65}.svc,.steps{list-style:none;display:grid;gap:.6rem}.svc li,.steps li{display:grid;grid-template-columns:auto 1fr;-moz-column-gap:1rem;column-gap:1rem;row-gap:2px;align-items:start;padding:.85rem 1.1rem;border-radius:14px;border:1px solid transparent;background:linear-gradient(180deg,#ffffff0d,#ffffff05) padding-box,var(--edge-light);box-shadow:inset 0 1px #ffffff0d;transition:border-color .3s ease,translate .4s var(--ease)}.svc li:hover,.steps li:hover{border-color:var(--edge-hover);translate:4px 0}.svc-ico{grid-row:span 2;--tile: 2.6rem;position:relative}.step-n{position:absolute;right:-6px;bottom:-6px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;font-size:.64rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:#031424;background:linear-gradient(160deg,#7fe8ff,#00b8f0);box-shadow:0 0 0 2px #0a1020,0 0 10px #00d2ff73}.svc-name{font-weight:600;font-size:.98rem;color:var(--ink)}.svc-detail{color:var(--ink-muted);font-size:.88rem;line-height:1.5}.pnl-cta{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:6px}.pnl-cta .btn{flex:1 1 auto}.pnl-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--edge)}.pnl-nav button{font-size:.86rem;font-weight:500;color:var(--ink-muted);padding:9px 12px;border-radius:999px;transition:color .25s ease,background .25s ease}.pnl-nav button:hover{color:var(--ink);background:#ffffff0f}.pnl-step{display:flex;gap:2px}.pnl-next{max-width:170px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.agency-block h3{font-family:var(--font-body);font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--cyan);margin-bottom:.7rem}.markets{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.9rem}.markets span{padding:.35rem .9rem;border-radius:999px;border:1px solid rgba(0,210,255,.35);color:var(--cyan);font-size:.82rem;font-weight:500;letter-spacing:.08em}.offices{list-style:none;display:grid;gap:.5rem}.offices li{display:grid;grid-template-columns:1fr auto;-moz-column-gap:1rem;column-gap:1rem;padding:.75rem 1rem;border-radius:12px;border:1px solid transparent;background:linear-gradient(180deg,#ffffff0d,#ffffff05) padding-box,var(--edge-light)}.office-city{font-weight:600}.office-note{grid-row:2;font-size:.8rem;color:var(--ink-muted)}.offices a{grid-row:span 2;align-self:center;font-size:.86rem;font-variant-numeric:tabular-nums;border-bottom:1px solid rgba(255,255,255,.22)}.offices a:hover{border-color:var(--cyan)}.engage{color:var(--ink-muted);font-size:.95rem;line-height:1.6}.engage strong{font-family:var(--font-display);font-weight:500;font-size:1.5rem;color:var(--ink)}.engage-note{margin-top:.4rem;font-size:.86rem;color:var(--ink-faint);line-height:1.55}.socials{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;font-size:.86rem}.socials a{color:var(--ink-muted)}.socials a:hover{color:var(--ink)}.worldmark{position:fixed;z-index:8;left:calc(var(--pad) + .5rem);bottom:calc(var(--pad) - 4px);pointer-events:none;display:flex;flex-direction:column;gap:8px;visibility:hidden;max-width:56vw}.wm-n{font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--cyan)}.wm-name{display:block;overflow:hidden;padding-bottom:.1em;font-family:var(--font-display);font-style:italic;font-weight:400;font-size:clamp(3.4rem,6.4vw,7rem);line-height:.95;letter-spacing:-.02em;white-space:nowrap;color:color-mix(in srgb,var(--accent) 28%,transparent)}.wm-name span{display:inline-block}.is-world .dock{translate:-50% calc(100% + var(--pad) + 10px);opacity:0;pointer-events:none}.is-world #gl{cursor:grab}.is-spinning #gl{cursor:grabbing!important}.is-spinning{-webkit-user-select:none;-moz-user-select:none;user-select:none}.spin-hint{position:fixed;z-index:9;left:0;top:0;translate:-50% 0;pointer-events:none;display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:.68rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:#ffffffa8;text-shadow:0 1px 14px rgba(5,5,16,.9);opacity:0;transition:opacity .35s ease}.spin-hint span{margin-right:-.32em}.spin-hint.is-on{opacity:1;transition:opacity .8s ease .45s}.spin-hint svg{flex:none;color:var(--cyan);filter:drop-shadow(0 0 6px rgba(0,210,255,.55));animation:spin-nudge 2.6s var(--ease) infinite}@keyframes spin-nudge{0%,to{translate:-3px 0}50%{translate:3px 0}}.cursor{display:none}.has-cursor .cursor{display:block;position:fixed;inset:0;z-index:60;pointer-events:none;opacity:0;transition:opacity .4s ease}.has-cursor .cursor.is-live{opacity:1}.cursor-dot,.cursor-ring{position:fixed;left:0;top:0;border-radius:50%}.cursor-dot{width:6px;height:6px;margin:-3px 0 0 -3px;background:var(--ink)}.cursor-ring{width:38px;height:38px;margin:-19px 0 0 -19px;border:1px solid rgba(255,255,255,.4);transition:width .3s var(--ease-out),height .3s var(--ease-out),margin .3s var(--ease-out),border-color .3s ease,opacity .2s ease}.cursor[data-state=world] .cursor-ring{opacity:0}.cursor[data-state=link] .cursor-ring{width:64px;height:64px;margin:-32px 0 0 -32px;border-color:var(--cyan)}.reticle{position:fixed;inset:0;z-index:55;pointer-events:none;--rc: var(--cyan)}.rt-ring{position:absolute;left:0;top:0;width:38px;height:38px;opacity:0;transition:opacity .2s ease}.reticle.is-on .rt-ring{opacity:1}.rt-main{position:absolute;inset:0;border-radius:50%;border:1.5px solid var(--rc);box-shadow:0 0 0 4px color-mix(in srgb,var(--rc) 12%,transparent),0 0 28px -8px var(--rc)}.rt-track{position:absolute;inset:-9px;border-radius:50%;border:1px dashed color-mix(in srgb,var(--rc) 60%,transparent);animation:rt-spin 24s linear infinite}.rt-tick{position:absolute;background:var(--rc);border-radius:1px}.rt-n,.rt-s{left:50%;width:1.5px;height:7px;margin-left:-.75px}.rt-e,.rt-w{top:50%;height:1.5px;width:7px;margin-top:-.75px}.rt-n{top:-17px}.rt-s{bottom:-17px}.rt-e{right:-17px}.rt-w{left:-17px}.reticle.is-lock .rt-main{animation:rt-lock .5s var(--ease-out) forwards}.reticle.is-lock .rt-track,.reticle.is-lock .rt-tick{opacity:0;transition:opacity .2s ease}.rt-label{position:absolute;left:0;top:0;display:grid;gap:3px;padding:11px 15px 12px;border-radius:14px;background:#0a0f1ec7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--edge);box-shadow:var(--highlight),0 16px 36px -18px #000000d9;white-space:nowrap;opacity:0;transition:opacity .2s ease}.reticle.is-on .rt-label{opacity:1;transition:opacity .25s ease .08s}.rt-label:before{content:"";position:absolute;top:50%;left:-18px;width:14px;height:1px;background:var(--rc)}.rt-label.is-left:before{left:auto;right:-18px}.rt-name{font-family:var(--font-display);font-weight:500;font-size:1.45rem;line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.rt-body{font-size:.78rem;color:var(--ink-muted)}.rt-act{font-size:.78rem;font-weight:600;color:var(--rc)}@keyframes rt-spin{to{rotate:360deg}}@keyframes rt-lock{0%{scale:1;opacity:1}35%{scale:.88;border-width:2.5px;opacity:1}to{scale:1.25;opacity:0}}.loader{position:fixed;inset:0;z-index:80;display:grid;place-content:center;justify-items:center;gap:18px;background:radial-gradient(120% 90% at 50% 40%,#0b1030,#050510 70%);clip-path:inset(0% 0% 0% 0%)}.loader-orbit{width:120px;height:120px;transform:rotate(-90deg);overflow:visible}.loader-track{fill:none;stroke:#00d2ff29;stroke-width:1}.loader-arc{fill:none;stroke:var(--cyan);stroke-width:1.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 6px rgba(0,210,255,.6))}.loader-core{fill:#0a6fd8;filter:drop-shadow(0 0 10px rgba(0,210,255,.55))}.loader-name{display:flex;align-items:center;gap:.6rem;font-weight:600;font-size:1.1rem;letter-spacing:-.01em;color:var(--ink)}.loader-count{font-size:.72rem;font-weight:600;letter-spacing:.32em;color:var(--ink-faint);font-variant-numeric:tabular-nums}.noscript{position:fixed;inset:auto 20px 20px;font-size:14px}.no-webgl #gl{display:none}@media(max-width:1100px){.intro{max-width:min(520px,58vw)}.hint{display:none}}@media(max-width:860px){.navbar{flex-wrap:wrap;justify-content:space-between;gap:0;width:calc(100vw - 2rem);max-height:56px;overflow:hidden;padding:.6rem .8rem .6rem 1.3rem;border-radius:28px;transition:max-height .5s var(--ease)}.navbar.nav-active{max-height:400px;background:#080a19d1}.hamburger{display:grid;place-items:center}.nav-links{flex-basis:100%;flex-direction:column;align-items:flex-start;gap:1.1rem;padding:1.4rem .4rem .8rem}.nav-links a{font-size:1.05rem}.nav-links .nav-btn-outline{display:none}.nav-links a:after{display:none}.intro{left:var(--pad);right:var(--pad);max-width:none;bottom:calc(var(--pad) + 70px)}.intro h1{font-size:clamp(2.3rem,10vw,3.4rem)}.lede{font-size:.95rem}.dock{left:12px;right:12px;translate:0 0;max-width:none}.is-world .dock{translate:0 calc(100% + 30px)}}@media(max-aspect-ratio:17/20){.panel{inset:auto 10px 10px;width:auto;height:min(60svh,640px);border-radius:22px}.pnl-inner{padding:22px 18px 18px;gap:12px}.pnl-title{font-size:clamp(2rem,9vw,2.6rem)}.worldmark{display:none}}@media(max-height:520px)and (min-aspect-ratio:17/20){.top{top:.6rem}.panel{top:74px;right:10px;bottom:10px;width:min(420px,50vw);border-radius:18px}.pnl-inner{padding:16px 16px 12px;gap:10px}.pnl-title{font-size:1.9rem}.pnl-tag{font-size:1.1rem}.intro{bottom:calc(var(--pad) + 58px);max-width:62vw}.intro h1{font-size:clamp(1.9rem,6vw,2.8rem)}.lede,.worldmark{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.icon-tile{flex:none;display:grid;place-items:center;width:var(--tile, 2.6rem);height:var(--tile, 2.6rem);border-radius:12px;color:#00d2ff;border:1px solid transparent;background:radial-gradient(110% 110% at 18% 0%,#00d2ff57,#00d2ff00 60%) padding-box,linear-gradient(165deg,#142242f2,#060a1af2) padding-box,linear-gradient(150deg,#00d2ffa6,#ffffff1a 36%,#ffffff0a 66%,#00d2ff4d) border-box;box-shadow:inset 0 1px #ffffff29,inset 0 -12px 18px -14px #00d2ff73,0 10px 22px -14px #0096ff99}.icon-tile>svg{filter:drop-shadow(0 0 5px rgba(0,210,255,.5))}.hvr-icon-float .hvr-icon,.hvr-icon-grow .hvr-icon{transform:translateZ(0);transition:transform .3s ease-out}.hvr-icon-back .hvr-icon,.hvr-icon-forward .hvr-icon{display:inline-block;transform:translateZ(0);transition:transform .1s ease-in}@media(hover:hover){.hvr-icon-float:hover .hvr-icon{transform:translateY(-4px)}.hvr-icon-grow:hover .hvr-icon{transform:scale(1.3) translateZ(0)}.hvr-icon-back:hover .hvr-icon{transform:translate(-4px)}.hvr-icon-forward:hover .hvr-icon{transform:translate(4px)}}.hvr-icon-float:focus-visible .hvr-icon,.hvr-icon-float:active .hvr-icon{transform:translateY(-4px)}.hvr-icon-grow:focus-visible .hvr-icon,.hvr-icon-grow:active .hvr-icon{transform:scale(1.3) translateZ(0)}.hvr-icon-back:focus-visible .hvr-icon,.hvr-icon-back:active .hvr-icon{transform:translate(-4px)}.hvr-icon-forward:focus-visible .hvr-icon,.hvr-icon-forward:active .hvr-icon{transform:translate(4px)}
