/* Artwork and theme surfaces. Kept separate so the existing purple layout remains recognizable. */
html[data-site-theme="blue"]{color-scheme:light;--ink:#092b65;--muted:#4c698b;--line:#c1dff3;--cyan:#0878c9;--blue:#075be0;--electric:#007abe}
html[data-site-theme="blue"] body{background:#eef8ff;color:#123464}
html[data-site-theme="blue"] .site-header{position:fixed;background:transparent;border-bottom:0;box-shadow:none;backdrop-filter:none;color:#123464}
html[data-site-theme="blue"] .site-header.scrolled,html[data-site-theme="blue"] .site-header.subpage-header,html[data-site-theme="blue"] .site-header.menu-is-open{background:linear-gradient(110deg,#063b9af5,#007dc5f5);color:#fff;border-bottom:1px solid #9adaff6b;box-shadow:0 8px 32px #084d7d25;backdrop-filter:blur(20px)}
html[data-site-theme="blue"] .nav-link{color:#163a6e}
html[data-site-theme="blue"] .scrolled .nav-link,html[data-site-theme="blue"] .subpage-header .nav-link,html[data-site-theme="blue"] .menu-is-open .nav-link{color:#f1f8ff}
html[data-site-theme="blue"] .hero{background:#edf8ff url('/images/theme-blue-flow.webp') center/cover no-repeat;color:#123464}
html[data-site-theme="blue"] .hero-grid,html[data-site-theme="blue"] .hero-glow,html[data-site-theme="blue"] .hero:after{background:none}
html[data-site-theme="blue"] .hero h1,html[data-site-theme="blue"] .hero h2{color:#073886;font-size:clamp(50px,5.8vw,84px);line-height:1.13;letter-spacing:-.038em;text-shadow:none}
html[data-site-theme="blue"] .gradient-text{background-image:linear-gradient(110deg,#082c99,#0766d4 65%,#007fb6);text-shadow:none;-webkit-text-stroke:0}
html[data-site-theme="blue"] .hero-copy>p,html[data-site-theme="blue"] .hero-caption,html[data-site-theme="blue"] .hero-topline,html[data-site-theme="blue"] .hero-bottom,html[data-site-theme="blue"] .hero .eyebrow,html[data-site-theme="blue"] .hero .text-link,html[data-site-theme="blue"] .hero .scroll-cue{color:#345c89}
html[data-site-theme="blue"] .hero-caption strong,html[data-site-theme="blue"] .hero-caption .caption-symbol,html[data-site-theme="blue"] .hero .slide-current{color:#0854b5}
html[data-site-theme="blue"] .slider-arrows button,html[data-site-theme="blue"] .play-toggle{border-color:#618cb85c;color:#0b5398;background:#f7fcff80}
html[data-site-theme="blue"] .hero .slide-selector span{background:#6699c1}
html[data-site-theme="blue"] .hero .slide-selector.active span{background:#086dda}
html[data-site-theme="blue"] .hero .pause-icon:before,html[data-site-theme="blue"] .hero .pause-icon:after{background:#0b5398}
html[data-site-theme="blue"] .hero-art:before{background:#cdeaff4d;border-color:#7ab9e466}
html[data-site-theme="blue"] .art-label,html[data-site-theme="blue"] .art-coordinate{border-color:#91c6e77d;background:#f7fcffbf;color:#174c89;box-shadow:0 8px 25px #0860a018}
html[data-site-theme="blue"] .slide.has-video .hero-video-stage:after{background:linear-gradient(90deg,#f2faffec,#eaf6ffad 60%,#e6f6ff80)}
html[data-site-theme="blue"] :is(.section:not(.contact),.field-section,.field-needs,.solutions-story,.people-story,.vira-story,.explore-section,.engineering-section,.editorial-page,.downloads-page,.detail-content,.contact-directory){background-image:linear-gradient(#f0f9ffdf,#e9f6ffeb),url('/images/theme-blue-flow.webp');background-color:#edf8ff;background-size:cover;background-position:center;color:#123464}
html[data-site-theme="blue"] :is(.product-section,.signature-section,.detail-next,.contact-stage){background:linear-gradient(110deg,#f7fcffed,#dcedffd9),url('/images/theme-blue-flow.webp') center/cover;color:#11386c}
html[data-site-theme="blue"] :is(.signature-copy h2,.product-copy h2,.contact-stage h2,.engineering-copy h2,.field-heading h2,.editorial-intro h1,.download-intro h1,.detail-next h2,.detail-hero h1,.person-info h3,.solutions-story-head h2){color:#103b85;text-shadow:none}
html[data-site-theme="blue"] :is(.product-copy h2 span,.signature-copy h2 span,.engineering-copy h2 span,.field-heading h2 em,.detail-next h2 em,.editorial-intro h1 span,.download-intro h1 span){color:#0966bd}
html[data-site-theme="blue"] :is(.product-copy p,.signature-copy p,.signature-note p,.engineering-copy p,.engineering-card p,.field-heading>p,.field-card p,.detail-next p,.contact-stage .contact-copy>p,.editorial-intro p,.download-intro p){color:#4b6788}
html[data-site-theme="blue"] :is(.field-card,.product-visual,.product-flow li,.product-reference,.engineering-card,.signature-note,.explore-card,.editorial-card,.download-card,.person-profile,.contact-directory-emails,.contact-directory-people){background:#ffffffd9;border-color:#bed9ef;color:#123464;box-shadow:0 15px 40px #1764a212;backdrop-filter:blur(12px)}
html[data-site-theme="blue"] :is(.explore-blue,.explore-violet,.explore-mint,.explore-orange){background:linear-gradient(135deg,#ffffffd9,#d9efffe0);color:#123464;border:1px solid #afcfe9}
html[data-site-theme="blue"] :is(.solutions-showcase,.solution-feature-art,.vira-story-visual){background:linear-gradient(125deg,#e2f4ffef,#bfdfffea),url('/images/theme-blue-flow.webp') center/cover;color:#123464}
html[data-site-theme="blue"] :is(.solutions-showcase h3,.solutions-showcase-copy p,.solutions-showcase-copy a,.solutions-showcase-copy>span,.product-flow strong,.engineering-card strong,.product-brand,.product-status,.contact-stage .contact-method>strong){color:#164d93}
html[data-site-theme="blue"] .button-primary,html[data-site-theme="blue"] .contact-primary,html[data-site-theme="blue"] .detail-next a{background:linear-gradient(110deg,#073eaf,#0082d3);border-color:#2589d9;color:#fff;box-shadow:0 5px 0 #073887,0 15px 30px #0c66ae26}
html[data-site-theme="blue"] .detail-page .detail-hero{background:#edf8ff url('/images/theme-blue-flow.webp') center/cover;color:#123464}
html[data-site-theme="blue"] :is(.detail-hero-copy>p,.detail-breadcrumb,.detail-kicker,.detail-down,.contact-secondary,.contact-kicker,.contact-kicker-index,.contact-steps,.contact-stage .contact-method>span){color:#375f91}
html[data-site-theme="blue"] :is(.detail-breadcrumb a,.detail-dot,.story-eyebrow,.detail-next span){color:#075db1}
html[data-site-theme="blue"] .detail-orbit{border-color:#409cd654}
html[data-site-theme="blue"] .contact-stage .contact-details,html[data-site-theme="blue"] .contact-stage .phone-method{border-color:#aacfe4}
html[data-site-theme="blue"] .contact-stage:before,html[data-site-theme="blue"] .contact-stage:after{opacity:.16}
html[data-site-theme="blue"] .mobile-nav,html[data-site-theme="blue"] .subpage-mobile-nav{background:#eaf7fff5;color:#123464}
html[data-site-theme="blue"] .mobile-nav a{color:#123464;border-color:#b7d6ed}
html[data-site-theme="blue"] .menu-toggle span{background:#134e95}
html[data-site-theme="blue"] .scrolled .menu-toggle span,html[data-site-theme="blue"] .menu-is-open .menu-toggle span{background:#fff}
html[data-site-theme="blue"] .site-footer{background:linear-gradient(115deg,#062e78,#07558e);color:#fff}
html[data-site-theme="blue"] .signature-section:before,html[data-site-theme="blue"] .signature-section:after,html[data-site-theme="blue"] .explore-section:before{opacity:.13}
html[data-site-theme="black"] .hero{background:#070809 url('/images/theme-black-flow.webp') center/cover no-repeat}
html[data-site-theme="black"] .hero h1,html[data-site-theme="black"] .hero h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(48px,5.6vw,80px);letter-spacing:-.015em;line-height:1.18;font-weight:750}
html[data-site-theme="black"] :is(.section-heading h2,.field-heading h2,.engineering-copy h2,.resources-head h2,.detail-page .detail-hero h1,.contact-stage h2,.signature-copy h2){letter-spacing:-.018em;line-height:1.2}
html[data-site-theme="black"] .hero .gradient-text{background-image:linear-gradient(110deg,#f5f6f7,#a2a7af 72%,#565b64);text-shadow:none}
html[data-site-theme="black"] .contact-visual-art{filter:grayscale(1) drop-shadow(0 20px 25px #0008)}
html[data-site-theme="black"] :is(.detail-page .detail-hero,.signature-section,.engineering-section,.contact-stage){background:linear-gradient(#090a0cc7,#090a0cdc),url('/images/theme-black-flow.webp') center/cover;color:#eceef2}
html[data-site-theme="black"] :is(.solutions-story,.people-story,.field-section,.explore-section){background:linear-gradient(#101114ed,#101114ed),url('/images/theme-black-flow.webp') center/cover}
html[data-site-theme="purple"] :is(.hero,.signature-section,.contact-stage,.detail-hero){background-image:url('/images/theme-purple-lines.svg'),radial-gradient(ellipse at 80% 30%,#553a894d,transparent 60%);background-size:cover;background-position:center;background-color:#0b1020}
html[data-site-theme="purple"] :is(.field-section,.explore-section,.solutions-story){background-image:linear-gradient(#f6f3ffef,#f6f3ffef),url('/images/theme-purple-lines.svg');background-size:cover}
html[data-site-theme="purple"] .engineering-section{background-image:url('/images/theme-purple-lines.svg');background-size:cover}
@media(max-width:800px){html[data-site-theme="blue"] .hero h1,html[data-site-theme="blue"] .hero h2,html[data-site-theme="black"] .hero h1,html[data-site-theme="black"] .hero h2{font-size:clamp(40px,8vw,63px);letter-spacing:-.025em;line-height:1.15}}
@media(max-width:560px){html[data-site-theme="blue"] .hero h1,html[data-site-theme="blue"] .hero h2,html[data-site-theme="black"] .hero h1,html[data-site-theme="black"] .hero h2{font-size:clamp(38px,10.5vw,56px);line-height:1.16}html[data-site-theme="blue"] .hero{background-position:68% center}}


/* Readable content on all themed secondary surfaces. */
html[data-site-theme="blue"] .service-card.featured{background:linear-gradient(140deg,#f8fdff,#cfebff);border-color:#8ec5e8;color:#163d76}
html[data-site-theme="blue"] .service-card.featured h3,html[data-site-theme="blue"] .service-card.featured p,html[data-site-theme="blue"] .service-card.featured .service-bottom{color:#174778}
html[data-site-theme="blue"] .field-flow{background:linear-gradient(115deg,#d7efff,#f8fcff);border-color:#a6cde8;color:#133d70}
html[data-site-theme="blue"] .field-flow :is(h3,p,li,a){color:#1a5289}
html[data-site-theme="blue"] .field-flow li>span{border-color:#3d89bf;color:#075bb1}
html[data-site-theme="blue"] .product-visual :is(h3,p,strong),html[data-site-theme="blue"] .product-flow li :is(span,strong){color:#2c5986}
html[data-site-theme="blue"] .hero :is(.small-line,.mouse-shape){border-color:#337abb}
html[data-site-theme="blue"] .hero .hero-bottom{border-color:#b0d4ec}
html[data-site-theme="blue"] .detail-hero:before{background-image:none}
html[data-site-theme="black"] :is(.editorial-page,.downloads-page,.detail-content-supplement){background:#0c0e11;color:#e8ebf1}
html[data-site-theme="black"] :is(.editorial-card,.download-card){background:#15181d;border-color:#343840;color:#e8ebf1}
html[data-site-theme="black"] :is(.detail-prose,.detail-prose h2,.editorial-intro h1,.download-intro h1,.editorial-card h2,.download-card h2,.person-info h3){color:#e3e7ee}
html[data-site-theme="black"] :is(.editorial-intro p,.download-intro p,.editorial-card p,.download-card p,.detail-side p){color:#a7aebc}
html[data-site-theme="black"] :is(.person-overline,.story-eyebrow,.detail-prose a,.editorial-intro h1 span,.download-intro h1 span){color:#cbd1dc}
html[data-site-theme="black"] .person-expertise span{border-color:#3c434d;background:#242930;color:#d6dce7}

html[data-site-theme="black"] :is(.contact-visual-ring,.contact-visual-ring-two,.detail-orbit,.art-orbit){border-color:#9299a34d;box-shadow:0 0 20px #c4ccd015}
html[data-site-theme="black"] :is(.contact-stage .contact-method>.icon,.contact-secondary,.contact-kicker,.contact-steps b,.contact-signal-top i){color:#d5dbe4}
html[data-site-theme="black"] .contact-signal-top i{background:#d5dbe4;box-shadow:0 0 13px #d5dbe435}
html[data-site-theme="blue"] .contact-visual-stage{background:linear-gradient(145deg,#eaf7ffde,#b4daffe6);border-color:#6ab5e56b;box-shadow:inset 0 1px #fff,0 28px 55px #0d569e26,15px 20px 0 -7px #79b6dd45}
html[data-site-theme="blue"] .contact-visual-caption{color:#2a5a88}

/* Vira uses a light surface in purple and blue, so its copy needs dark ink. */
html[data-site-theme="purple"] .product-section{color:var(--ink)}
html[data-site-theme="purple"] :is(#vira-title,.product-brand,.product-status strong){color:var(--ink)}
html[data-site-theme="purple"] .product-copy h2 span{color:#125a9f}
html[data-site-theme="purple"] :is(.product-brand small,.product-status small,.product-copy>.eyebrow,.product-copy>p){color:#455c75}
html[data-site-theme="purple"] .product-brand-mark{border-color:#9cbfd7;background:#e7f3fb;color:#095b93}
html[data-site-theme="purple"] .product-status{background:#eaf2fa;border-color:#bfd2e3}
html[data-site-theme="blue"] .product-status{background:#f0f8ffdf;border-color:#a8cce8}
html[data-site-theme="blue"] .product-brand-mark{border-color:#92c4e5;background:#e2f2ff;color:#085d9e}
html[data-site-theme="blue"] .product-status strong{color:#123d73}
html[data-site-theme="blue"] .product-status small{color:#456588}

/* Blue: keep every label paired with its new pale surface. */
html[data-site-theme="blue"] .hero-edition,
html[data-site-theme="blue"] .slide-total,
html[data-site-theme="blue"] .scroll-cue,
html[data-site-theme="blue"] .art-coordinate{color:#365d88}
.hero-topline{justify-content:flex-end}
html[data-site-theme="blue"] .hero:before{background:none}
html[data-site-theme="blue"] .theme-choice:hover{background:#d5eaff}
html[data-site-theme="blue"] :is(.mobile-nav,.subpage-mobile-nav) .theme-picker{border-color:#a8cde9;background:#dceeff}
html[data-site-theme="blue"] :is(.mobile-nav,.subpage-mobile-nav) .theme-picker-label,
html[data-site-theme="blue"] :is(.mobile-nav,.subpage-mobile-nav) .theme-choice{color:#174677}
html[data-site-theme="blue"] :is(.mobile-nav,.subpage-mobile-nav) .theme-choice[aria-pressed=true]{border-color:#6aa9d7;background:#fff;color:#064a9e}
html[data-site-theme="blue"] .subpage-mobile-nav a{border-color:#aed1e9;background:#f8fcff;color:#174677}
html[data-site-theme="blue"] .subpage-mobile-nav a[aria-current=page]{background:#d2ebff;color:#074e9b}
html[data-site-theme="blue"] .signature-overline,
html[data-site-theme="blue"] .signature-notes,
html[data-site-theme="blue"] .signature-art figcaption{color:#315e8f}
html[data-site-theme="blue"] .signature-actions a{border-color:#8bbfdf;background:#f6fbffe8;color:#07539c}
html[data-site-theme="blue"] .signature-actions a:first-child{border-color:#0b64bd;background:#0b64bd;color:#fff}
html[data-site-theme="blue"] .signature-actions a:hover{background:#d6ecff}
html[data-site-theme="blue"] .signature-actions a:first-child:hover{background:#084e9c}
html[data-site-theme="blue"] .explore-heading :is(span,h2,h2 em,p){color:#173f77}
html[data-site-theme="blue"] .explore-card :is(span,strong,small,b){color:#123f7a}
html[data-site-theme="blue"] .explore-card:after{border-color:#207fbe24}
html[data-site-theme="blue"] .engineering-copy :is(.eyebrow,h2,h2 span,p,.text-link){color:#174c86}
html[data-site-theme="blue"] .engineering-card :is(>span,strong,p){color:#1c4d7f}
html[data-site-theme="blue"] .engineering-stack{border-color:#9dc7e6}
html[data-site-theme="blue"] .engineering-stack span{border-color:#9bc7e5;background:#fff9;color:#1c4d7f}
html[data-site-theme="blue"] .resources-head :is(.eyebrow,h2,h2 span,p){color:#153f78}
html[data-site-theme="blue"] .resource-card :is(.resource-category,h3,p,.resource-bottom,.resource-bottom a){color:#194d84}
html[data-site-theme="blue"] .resource-bottom{border-color:#bad9ef}
html[data-site-theme="blue"] .resource-card:hover{background:#eef8ff}
html[data-site-theme="blue"] .solutions-showcase-steps,
html[data-site-theme="blue"] .solution-feature-art>span,
html[data-site-theme="blue"] .vira-story-visual figcaption{color:#225484}
html[data-site-theme="blue"] .solution-feature:nth-child(2n) .solution-feature-art,
html[data-site-theme="blue"] .solution-feature:nth-child(3n) .solution-feature-art{background:linear-gradient(125deg,#e2f4ffef,#bfdfffea),url('/images/theme-blue-flow.webp') center/cover}
html[data-site-theme="blue"] .contact-directory-head h2,
html[data-site-theme="blue"] .people-intro h2,
html[data-site-theme="blue"] .vira-story-head h2,
html[data-site-theme="blue"] .solutions-story-head h2{color:#103b78}
html[data-site-theme="blue"] :is(.people-intro,.vira-story-head,.solutions-story-head,.contact-directory-head) h2 em{color:#075eae}
html[data-site-theme="blue"] .download-card.is-planned{background:#f7fcff;border-color:#a6c9e6;color:#153d76}
html[data-site-theme="blue"] .service-card .service-index,
html[data-site-theme="blue"] .service-card .service-bottom>span{color:#3e6086}
html[data-site-theme="blue"] .service-card .service-icon{color:#0964aa}
html[data-site-theme="blue"] .dialog-close{color:#163f78}

/* Black: content pages retain the same dark palette as the hero. */
html[data-site-theme="black"] .vira-story,
html[data-site-theme="black"] .detail-content-supplement{background:#0e1115;color:#e7ebf1}
html[data-site-theme="black"] .people-intro h2,
html[data-site-theme="black"] .contact-directory-head h2,
html[data-site-theme="black"] .vira-story-head h2,
html[data-site-theme="black"] .solutions-story-head h2{color:#f0f2f5}
html[data-site-theme="black"] :is(.people-intro,.vira-story-head,.solutions-story-head,.contact-directory-head) h2 em{color:#ccd4df}
html[data-site-theme="black"] :is(.people-intro>p,.solutions-story-head>p,.vira-story-head>p,.contact-directory-head>p){color:#b2bdcb}
html[data-site-theme="black"] :is(.solution-feature,.vira-story-copy,.vira-process li,.solutions-flow,.solutions-outro,.vira-stage-note){border-color:#343c46;background:#171b21;color:#e8edf3}
html[data-site-theme="black"] :is(.solution-feature-copy h3,.solution-feature-copy>p,.solution-feature-detail,.solutions-outro h3,.solutions-outro p,.vira-story-copy h3,.vira-story-copy>p,.vira-research strong,.vira-research ul,.vira-stage-note p,.vira-process strong,.vira-process span,.solutions-flow span){color:#dce3ec}
html[data-site-theme="black"] .solution-feature-detail li{border-color:#3a4653;background:#222933;color:#dce3ec}
html[data-site-theme="black"] .solutions-outro>a{background:#dce3ec;color:#11151b}
html[data-site-theme="black"] .solution-feature:nth-child(2n) .solution-feature-art,
html[data-site-theme="black"] .solution-feature:nth-child(3n) .solution-feature-art{background:#111315}
html[data-site-theme="black"] .vira-story-visual figcaption{color:#c3ccd8}
html[data-site-theme="black"] .service-dialog :is(h2,p,li){color:#e6eaf0}
html[data-site-theme="black"] .service-dialog li{border-color:#363e49}
html[data-site-theme="black"] :is(.editorial-pages a,.editorial-empty){border-color:#343c46;background:#171b21;color:#e8edf3}
html[data-site-theme="black"] .subpage-mobile-nav{background:#11151a;box-shadow:0 8px 25px #0007}
html[data-site-theme="black"] .subpage-mobile-nav a{border-color:#3c444e;background:#1d232b;color:#e4e8ef}
html[data-site-theme="black"] .subpage-mobile-nav a[aria-current=page]{background:#303944;color:#fff}
html[data-site-theme="black"] :is(.signature-overline,.signature-copy h2 em,.signature-actions a,.signature-notes,.engineering-copy .eyebrow,.engineering-copy h2 span,.engineering-copy .text-link,.engineering-card>span,.resources-head .eyebrow,.resources-head h2 span,.resource-category,.resource-bottom a){color:#d4dbe4}
html[data-site-theme="black"] .signature-actions a:first-child{background:#dce1e7;border-color:#dce1e7;color:#11151a}

/* A stronger directional tilt and a quiet light that follows the pointer. */
.hero-art .art-parallax{position:relative;z-index:2;transform:perspective(850px) translate3d(var(--art-x,0px),var(--art-y,0px),0) rotateX(var(--art-rotate-x,0deg)) rotateY(var(--art-rotate-y,0deg)) scale(var(--art-scale,1));transform-style:preserve-3d;transition:transform .32s cubic-bezier(.2,.7,.2,1);will-change:transform}
.hero-art:after{content:"";position:absolute;inset:8%;z-index:1;pointer-events:none;border-radius:50%;background:radial-gradient(circle at var(--art-glow-x,50%) var(--art-glow-y,50%),var(--art-glow,#68dbff38),transparent 45%);opacity:0;transition:opacity .3s}
.hero-art.is-tilting:after{opacity:1}
html[data-site-theme="blue"] .hero-art{--art-glow:#1583d24a}
html[data-site-theme="black"] .hero-art{--art-glow:#e2ecff30}
html[data-site-theme="purple"] .hero-art{--art-glow:#a98cff40}
@media(max-width:800px){.hero-art .art-parallax{will-change:auto}.hero-art:after{display:none}}
@media(prefers-reduced-motion:reduce){.hero-art .art-parallax{transform:none!important;transition:none!important;will-change:auto}.hero-art:after{display:none}}

