/* NEXO DIGITAL V2 — Brand application; source logo PNG files remain byte-identical. */
:root { --nexo-blue:#0DA3FF; --nexo-blue-alt:#1BA3F7; --nexo-black:#000000; --nexo-white:#FFFFFF; --bg:#05080d; --surface:#0b1119; --surface-2:#101923; --text:#FFFFFF; --line:rgba(255,255,255,.12); --blue:#0DA3FF; --cyan:#0DA3FF; }
body { background:#05080d; }
::selection {background:#0DA3FF;color:#000}
.progress {background:#0DA3FF;box-shadow:0 0 18px rgba(13,163,255,.55)}
.hero {background:#05080d}
.hero-vignette { background:radial-gradient(ellipse at 71% 48%,rgba(13,163,255,.10),transparent 53%),linear-gradient(to bottom,rgba(5,8,13,.78),transparent 24%,transparent 72%,#05080d); }
.hero-art:after { background:linear-gradient(to right,#05080d 0%,transparent 23%,transparent 90%,#05080d 100%); }
.art-aura {background:radial-gradient(circle,rgba(13,163,255,.22),rgba(13,163,255,.09) 42%,transparent 68%)}
.orb-orbit {border-color:rgba(13,163,255,.34);box-shadow:0 0 25px rgba(13,163,255,.08)}
.hero h1 .punct, .tiny-plus {color:#0DA3FF}
.hero h1 .hero-last{color:#c7d6e1}
.eyebrow{color:#6ac7ff}
.live-dot{background:#0DA3FF;box-shadow:0 0 0 5px rgba(13,163,255,.13),0 0 18px rgba(13,163,255,.55)}
.header-wrap .nav{background:rgba(5,9,14,.82);border-color:rgba(74,171,230,.22)}
.brand {display:flex;align-items:center;justify-content:flex-start;width:168px;min-width:168px;}
.brand-logo{width:168px;height:auto;object-fit:contain;display:block;}
.nav-cta,.button-primary {background:#0DA3FF;color:#00111b;box-shadow:0 0 0 1px rgba(13,163,255,.12),0 6px 32px rgba(13,163,255,.13)}
.nav-cta:hover,.button-primary:hover{background:#54c1ff;color:#00111b;box-shadow:0 10px 40px rgba(13,163,255,.25)}
.button-quiet:hover{color:#0DA3FF}
.service-card:hover{border-color:rgba(13,163,255,.55)}
.service-ico,.service-bottom span,.work-number,.method-arrow{color:#0DA3FF}
.hero-copy {isolation:isolate}
.hero-copy::before {content:"";position:absolute;left:-27px;top:0;width:2px;height:0;background:linear-gradient(to bottom,#0DA3FF,transparent);box-shadow:0 0 22px rgba(13,163,255,.36);animation:hero-rule 1.3s cubic-bezier(.2,.7,.2,1) .25s forwards}
@keyframes hero-rule {to{height:78%}}
/* Narrow focus ring; visual geometry remains separate from brand mark. */
.hero-art::before{content:"";position:absolute;inset:9% 11%;border:1px solid rgba(13,163,255,.06);border-radius:50%;box-shadow:inset 0 0 38px rgba(13,163,255,.06),0 0 100px rgba(13,163,255,.05);animation:orb-shell 9s ease-in-out infinite alternate}
@keyframes orb-shell {to {transform:scale(1.06);opacity:.5}}
.work-visual:after {content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 25%,rgba(13,163,255,.06) 48%,transparent 62%);transform:translateX(-115%);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.work-card:hover .work-visual:after{transform:translateX(120%)}
/* Original dark PNG gets its own genuinely light background so the black letters remain visible. */
.brand-light-section {padding:100px 0;background:#FFFFFF;color:#000000;position:relative;overflow:hidden}
.brand-light-section:before{content:"";pointer-events:none;position:absolute;top:-170px;right:-120px;width:650px;height:650px;border-radius:50%;border:1px solid rgba(13,163,255,.11);box-shadow:0 0 0 95px rgba(13,163,255,.028),0 0 0 205px rgba(13,163,255,.018)}
.brand-light-grid {display:grid;grid-template-columns:1.13fr 1fr;align-items:center;gap:8%;position:relative}
.brand-light-logo-wrap{min-height:355px;display:flex;flex-direction:column;justify-content:space-between;padding:24px 0;border-top:1px solid rgba(0,0,0,.14);border-bottom:1px solid rgba(0,0,0,.14)}
.brand-light-line{display:flex;justify-content:space-between;gap:20px;font:600 10px var(--display);letter-spacing:.16em;color:#4d555f}
.brand-light-logo{display:block;width:min(100%,530px);height:auto;object-fit:contain;filter:none;opacity:1}
.brand-light-text .eyebrow{color:#0769a5}
.brand-light-text h2 {font-size:clamp(43px,4.9vw,76px);line-height:1.08;letter-spacing:-.07em;margin:26px 0}
.brand-light-text h2 em{color:#0A87D4}
.brand-light-text p{font-size:16px;color:#414b55;max-width:460px;line-height:1.8;margin-bottom:33px}
.brand-light-link{display:inline-flex;align-items:center;justify-content:space-between;gap:60px;padding-bottom:14px;border-bottom:1px solid #0DA3FF;color:#000;font:700 11px var(--display);letter-spacing:.1em}
.brand-light-link span{color:#0DA3FF;font-size:18px}
.footer-logo{display:block;width:min(100%,270px);height:auto;object-fit:contain;}
.footer-brand{display:inline-flex;align-items:center;max-width:270px}
.contact-section{background:#07121a}
.contact-glow{background:radial-gradient(ellipse at 13% 90%,rgba(13,163,255,.13),transparent 55%),linear-gradient(90deg,#07121a,#080d12)}
.contact-form{border-color:rgba(13,163,255,.20);background:rgba(8,17,25,.82)}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#0DA3FF}
/* keep SVG shapes/layers original and logo completely unaffected */
@media (max-width:850px){.brand-light-section{padding:75px 0}.brand-light-grid{grid-template-columns:1fr;gap:42px}.brand-light-logo-wrap{min-height:230px}.brand-light-logo{width:min(100%,430px)}.brand-light-text h2{max-width:650px}.brand{width:155px;min-width:155px}.brand-logo{width:155px}}
@media (max-width:600px){.brand-light-section{padding:55px 0 75px}.brand-light-logo-wrap{min-height:190px;padding:18px 0}.brand-light-line{font-size:8px}.brand-light-logo{width:100%}.brand-light-text h2{font-size:clamp(38px,10vw,57px)}.brand-light-text p{font-size:14px}.brand{width:140px;min-width:140px}.brand-logo{width:140px}.hero-copy::before{left:-12px}.hero-art::before{inset:10% 9%}.footer-logo{width:235px}}
@media (prefers-reduced-motion:reduce){.hero-copy::before{height:78%;animation:none}.hero-art::before{animation:none}.work-visual:after{display:none}}

.about-visual .about-core{width:28%;height:28%;border-radius:50%;display:block;background:radial-gradient(circle at 33% 32%,rgba(155,218,255,.94),#0DA3FF 31%,rgba(13,163,255,.14) 72%,transparent 75%);box-shadow:0 0 30px rgba(13,163,255,.29),0 0 100px rgba(13,163,255,.09)}
