/* VUXORA v5 · brand contrast, immersive light and dark ambience, balanced panels */
html[data-theme="dark"]{--vx5-bg:#010619;--vx5-text:#f6f8ff;--vx5-muted:#b9c9e6;--vx5-line:rgba(190,212,255,.16)}
html[data-theme="light"]{--vx5-bg:#f8fbff;--vx5-text:#11213d;--vx5-muted:#516582;--vx5-line:rgba(24,57,117,.14)}
html[data-theme="light"],html[data-theme="light"] body {color-scheme:light}
html[data-theme="dark"],html[data-theme="dark"] body {color-scheme:dark}
html[data-theme="dark"] body,html[data-theme="light"] body{background:var(--vx5-bg)!important;color:var(--vx5-text)!important;position:relative;min-height:100vh;isolation:isolate}
/* Two independently moving ambient fields: never a fixed flat wallpaper. */
body::before {position:fixed!important;inset:-20vh -22vw!important;width:auto!important;height:auto!important;z-index:-2!important;opacity:1!important;pointer-events:none;transform:translate3d(var(--vx5-ambient-x,0px),var(--vx5-ambient-y,0px),0) scale(1.11)!important;animation:vx5-breathe 26s ease-in-out infinite alternate!important;will-change:transform;}
html[data-theme="dark"] body::before{
 background:radial-gradient(ellipse 39% 48% at 12% 23%,#09265d 0%,transparent 77%),radial-gradient(ellipse 34% 47% at 88% 49%,#071d51 0%,transparent 84%),radial-gradient(ellipse 43% 33% at 40% 90%,#0a2851 0%,transparent 81%),linear-gradient(135deg,#00030f,#010619 49%,#020b24)!important;
}
html[data-theme="light"] body::before{
 background:radial-gradient(ellipse 40% 45% at 11% 22%,#d8e5ff 0%,transparent 78%),radial-gradient(ellipse 34% 44% at 91% 51%,#e2ecff 0%,transparent 82%),radial-gradient(ellipse 46% 32% at 37% 86%,#e3e8ff 0%,transparent 78%),linear-gradient(140deg,#ffffff,#f5f9ff 58%,#fbfdff)!important;
}
body::after{content:"";position:fixed;inset:-22vh -20vw;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 28% 30% at 80% 18%,rgba(24,79,155,.14),transparent 77%),radial-gradient(ellipse 30% 25% at 18% 81%,rgba(26,77,152,.12),transparent 77%);opacity:.7;transform:translate3d(calc(var(--vx5-ambient-x,0px) * -.48),calc(var(--vx5-ambient-y,0px) * -.48),0);animation:vx5-breathe-back 31s ease-in-out infinite alternate}
html[data-theme="light"] body::after{background:radial-gradient(ellipse 34% 30% at 82% 19%,rgba(128,156,236,.24),transparent 78%),radial-gradient(ellipse 28% 34% at 18% 85%,rgba(119,180,249,.19),transparent 82%)}
@keyframes vx5-breathe{from{scale:1;translate:-1.1% 0}to{scale:1.07;translate:1.2% -1.6%}}
@keyframes vx5-breathe-back{from{translate:1.5% -1%}to{translate:-1.5% 1.5%}}
/* Prevent legacy opaque section blocks from severing the continuous background. */
html[data-theme="light"] body main,html[data-theme="dark"] body main,
html[data-theme="light"] body main section,html[data-theme="dark"] body main section{background-color:transparent!important}
html[data-theme="light"] body main section.nx-services,html[data-theme="dark"] body main section.nx-services,
html[data-theme="light"] body main section.nx-process,html[data-theme="dark"] body main section.nx-process{background:transparent!important}
/* Section 02: wider composition but a comfortable mid-height, reference-like proportion. */
body #services{min-height:0!important;padding-block:clamp(70px,8vw,118px)!important}
body #services .nx-service-panel{align-items:stretch!important;gap:12px!important}
body #services .vx-service-copy{height:clamp(490px,37vw,565px)!important;min-height:0!important;max-height:565px!important;padding:clamp(30px,3vw,47px)!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;background:linear-gradient(143deg,#ff811f,#fb6a16 55%,#e4510a)!important;color:#fff!important}
body #services .nx-service-image{height:clamp(490px,37vw,565px)!important;min-height:0!important;max-height:565px!important;overflow:hidden!important}
body #services .nx-service-image img{object-fit:cover!important;object-position:center!important}
body #services .vx-service-copy h3{font-size:clamp(25px,2.1vw,36px)!important;line-height:1.16!important;color:#fff!important;margin:17px 0 19px!important}
body #services .vx-service-copy p{font-size:clamp(15px,1.15vw,18px)!important;line-height:1.65!important;color:#fff!important;margin-bottom:27px!important}
body #services .vx-service-copy li,body #services .vx-service-copy .vx-service-features{color:#fff!important;font-size:13px!important;line-height:1.6!important}
body #services .vx-service-copy .text-link{margin-top:auto!important;min-height:48px!important;padding:12px 23px!important;background:#1b2539!important;border-radius:999px!important;color:#fff!important;box-shadow:0 8px 20px #6c26042c!important}
html[data-theme="light"] body #services .nx-tabs button{color:#142542!important}
html[data-theme="light"] body #services .nx-tabs button[aria-selected="true"]{color:#ea5d0e!important;background:rgba(255,255,255,.88)!important}
html[data-theme="dark"] body #services .nx-tabs button[aria-selected="true"]{color:#ff9b54!important}
html[data-theme="light"] body #services .nx-section-head p{color:#304766!important}
/* Process timeline: correct text contrast regardless of theme; flat cards only. */
html[data-theme="light"] body .vx-timeline article,html[data-theme="dark"] body .vx-timeline article{background:linear-gradient(145deg,#132a52,#0a1a37)!important;border:1px solid rgba(126,171,242,.36)!important;color:#fff!important;box-shadow:0 15px 45px #08142c25!important}
html[data-theme="light"] body .vx-timeline article h3,html[data-theme="dark"] body .vx-timeline article h3,
html[data-theme="light"] body .vx-timeline article p,html[data-theme="dark"] body .vx-timeline article p{color:#fff!important;opacity:1!important;filter:none!important;mix-blend-mode:normal!important}
body .vx-timeline article p{color:#d7e4f7!important;line-height:1.7}
body .vx-timeline article .nx-label,body .vx-timeline article .nx-step-number{color:#ff913c!important}
body .vx-timeline article{backface-visibility:hidden}
/* 04 - stronger editorial hierarchy and filled negative space. */
body .vx-deck-section{padding-block:70px!important}
body .vx-deck-sticky{gap:clamp(35px,5vw,90px)!important;align-items:center!important}
body .vx-deck-copy{position:relative;z-index:1;max-width:625px}
body .vx-deck-copy .nx-heading{margin-bottom:18px!important;line-height:1.12!important}
body .vx-v5-purpose{max-width:490px;font-size:clamp(15px,1.3vw,19px);line-height:1.7;margin:0 0 30px;color:var(--vx5-muted)}
body .vx-deck-copy .nx-counter-row{margin-top:28px!important;gap:12px!important}
body .vx-deck-copy .nx-counter-row>div{padding:22px 12px!important;border-radius:19px!important;border:1px solid var(--vx5-line)!important;background:rgba(98,130,187,.08)!important}
html[data-theme="light"] body .vx-deck-copy .nx-counter-row>div{background:rgba(255,255,255,.65)!important;box-shadow:0 14px 35px #2543720a!important}
body .vx-deck-copy .nx-counter-row strong{font-size:clamp(40px,4vw,62px)!important;color:#fb7825!important}
body .vx-deck-copy .nx-counter-row span{color:var(--vx5-muted)!important;font-size:12px!important;line-height:1.4}
body .vx-v5-work-link{display:inline-flex;align-items:center;gap:8px;color:var(--vx5-text)!important;text-decoration:none;font-weight:700;font-size:13px;border-bottom:1px solid #f47824;padding-bottom:8px;margin-top:30px;transition:color .2s,transform .2s}
body .vx-v5-work-link:hover{color:#f47824!important;transform:translateX(4px)}
html[data-theme="light"] body .vx-deck-copy h2{color:#12233f!important}
html[data-theme="dark"] body .vx-deck-copy h2{color:#fff!important}
/* Whole-site footer matches the ambient white/blue environment; all text readable. */
html[data-theme="light"] body .footer{background:linear-gradient(155deg,rgba(248,251,255,.8),rgba(226,236,255,.48),rgba(249,252,255,.86))!important;color:#152641!important;backdrop-filter:blur(6px)}
html[data-theme="dark"] body .footer{background:linear-gradient(155deg,rgba(1,6,25,.78),rgba(7,22,49,.59),rgba(1,6,25,.78))!important;color:#fff!important}
html[data-theme="light"] body .footer h2,html[data-theme="light"] body .footer h3,html[data-theme="light"] body .footer a,html[data-theme="light"] body .footer .footer-email,html[data-theme="light"] body .footer .footer-grid a{color:#152641!important}
html[data-theme="light"] body .footer p,html[data-theme="light"] body .footer .footer-bottom,html[data-theme="light"] body .footer .tiny{color:#4a6386!important}
html[data-theme="dark"] body .footer h2,html[data-theme="dark"] body .footer h3,html[data-theme="dark"] body .footer a,html[data-theme="dark"] body .footer .footer-email{color:#fff!important}
html[data-theme="dark"] body .footer p,html[data-theme="dark"] body .footer .footer-bottom,html[data-theme="dark"] body .footer .tiny{color:#c4d2ec!important}
html[data-theme="light"] body .footer .footer-top,html[data-theme="light"] body .footer .footer-bottom{border-color:#1c3b6633!important}
html[data-theme="light"] body .footer .btn-orange,html[data-theme="dark"] body .footer .btn-orange{color:#fff!important}
html[data-theme="light"] body .footer .footer-grid a:hover,html[data-theme="dark"] body .footer .footer-grid a:hover{color:#f57220!important}
html[data-theme="light"] body .footer .brand-footer img{filter:drop-shadow(0 4px 12px #15346411)}
/* Branded assistant Vuxor: compact, clean, approachable. */
.vx-assist-dialog{border-radius:22px!important;width:min(390px,calc(100vw - 24px))!important;box-shadow:0 25px 65px #0005!important;border:1px solid rgba(133,154,205,.25)!important}
.vx-assist-head{padding:16px 18px!important;background:linear-gradient(125deg,#102959,#071439)!important}
.vx-v5-brandline{display:flex;align-items:center;gap:12px}
.vx-v5-brandline>div{display:block}
.vx-v5-brandline strong{font-size:17px;font-weight:800;color:#fff}
.vx-v5-brandline small{display:block;margin-top:2px;font-size:11px;color:#d7e4fa}
.vx-v5-robot{width:47px;height:47px;flex-shrink:0;filter:drop-shadow(0 3px 9px #0003)}
.vx-v5-launch-robot{width:46px;height:46px;display:block;object-fit:contain;filter:drop-shadow(0 4px 12px #0004)}
.vx-assist-button.vx-assist-wa{background:transparent!important;border:0!important;box-shadow:none!important;width:57px;height:57px}
.vx-assist-button.vx-assist-wa:hover{filter:brightness(1.08);transform:translateY(-4px) scale(1.04)}
.vx-ai-messages{background:#fff;gap:13px!important;max-height:340px!important;min-height:210px!important;padding:19px!important}
.vx-ai-bubble.bot{background:#edf3fc!important;color:#273b5a!important}
.vx-ai-bubble.user{background:#fb7625!important;color:#fff!important}
.vx-ai-bubble{border-radius:16px!important;padding:12px 14px!important;line-height:1.55!important}
.vx-ai-compose{background:#fff!important;border-top:1px solid #e2e9f3!important;padding:13px!important}
.vx-ai-compose textarea{background:#f6f9fe!important;color:#1e3250!important;border:1px solid #d8e3f2!important}
.vx-ai-compose button{background:#f47420!important;border-radius:12px!important}
.vx-ai-status{background:#fff;color:#6a7b94!important;padding:0 17px 14px!important}
.vx-assist-foot{background:#fff!important;border-top:1px solid #e9edf4!important}
.vx-assist-note{border-radius:15px!important}
@media(max-width:1050px){body #services .vx-service-copy,body #services .nx-service-image{height:515px!important}}
@media(max-width:760px){body #services .nx-service-panel{grid-template-columns:1fr!important}body #services .vx-service-copy{min-height:405px!important;height:auto!important;max-height:none!important}body #services .nx-service-image{height:310px!important;max-height:none!important}body .vx-deck-section{padding-block:55px!important}body .vx-deck-copy{max-width:none}body .vx-deck-copy .nx-counter-row{gap:9px!important}body .vx-deck-copy .nx-counter-row>div{padding:15px 8px!important}}
@media(prefers-reduced-motion:reduce){body::before,body::after{animation:none!important;transform:none!important}}
/* Dark lettering on the original Vuxora symbol for light footers. */
html[data-theme="light"] .footer .brand-footer .official-logo img{content:url('../vuxora-logo-light-mode.png')!important}
