/* ==========================================================================
   Fortified360 colour treatments
   dark   : default (no attribute). Navy throughout, gold accents.
   hybrid : dark header #0B3650 and footer #071A29; light steel sections
            #F2F5F7 / #E7EEF3; logo blue #345F8E and gold #BC972D as accents.
   light  : as hybrid, with a light header, a light hero and a light footer.
   Selected by <html data-treatment="...">.
   ========================================================================== */

html[data-treatment="hybrid"], html[data-treatment="light"] {
  --t-header: #0b3650;
  --t-footer: #071a29;
  --t-bg: #f2f5f7;
  --t-alt: #e7eef3;
  --t-blue: #345f8e;
  --t-gold: #bc972d;
  --t-ink: #102638;
  --t-body: #3b4d5e;
  --t-line: #d3dde6;
  --line: var(--t-line);
  --ink: var(--t-ink);
  --body: var(--t-body);
  --blue-100: var(--t-alt);
  --blue-200: #d6e2eb;
  --navy-900: #0b3650;
  --navy-800: #124463;
}

/* ---- Shared by hybrid and light: every content section is light ---- */
:is([data-treatment="hybrid"], [data-treatment="light"]) body { background: var(--t-bg); color: var(--t-ink); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .eyebrow,
:is([data-treatment="hybrid"], [data-treatment="light"]) .page-hero .eyebrow,
:is([data-treatment="hybrid"], [data-treatment="light"]) .contact-intro > .eyebrow { color: var(--t-blue); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .button-primary { background: var(--t-header); border-color: var(--t-header); color: #fff; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .button-primary:hover { background: var(--t-blue); border-color: var(--t-blue); box-shadow: none; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .text-link { color: var(--t-header); text-decoration-color: var(--t-gold); }

/* Section rhythm: main #F2F5F7, alternating #E7EEF3 */
:is([data-treatment="hybrid"], [data-treatment="light"]) :is(.technology-ecosystem, .home-services-v2, .ai-practice, .section, .section-compact, .contact-entry) { background: var(--t-bg); }
:is([data-treatment="hybrid"], [data-treatment="light"]) :is(.workspace-flagship, .expertise-proof-section, .surface-soft, .surface-blue, .contact-map-section, .connected-platform, .surface-dark) { background: var(--t-alt); }
:is([data-treatment="hybrid"], [data-treatment="light"]) body[data-page^="services/"] .surface-soft { background: var(--t-alt); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .technology-ecosystem { border-color: var(--t-line); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .vendor-marquee::before { background: linear-gradient(90deg, var(--t-bg), transparent); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .vendor-marquee::after { background: linear-gradient(-90deg, var(--t-bg), transparent); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .page-hero { background: linear-gradient(125deg, var(--t-bg) 38%, var(--t-alt)); }

/* Former dark bands, now light: text and cards */
:is([data-treatment="hybrid"], [data-treatment="light"]) :is(.surface-dark, .connected-platform) { color: var(--t-ink); }
:is([data-treatment="hybrid"], [data-treatment="light"]) :is(.surface-dark, .connected-platform) :is(p, .muted) { color: var(--t-body); }
:is([data-treatment="hybrid"], [data-treatment="light"]) :is(.eyebrow-light, .surface-dark .eyebrow, .connected-platform .eyebrow) { color: var(--t-blue); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .outcome-grid-dark .outcome { background: #fff; border-color: var(--t-line); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .outcome-grid-dark .outcome span { color: var(--muted); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .surface-dark .tech-method-list span, :is([data-treatment="hybrid"], [data-treatment="light"]) .surface-dark .bullet-list li { color: var(--t-body); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .platform-map { border-color: var(--t-line); background: #fff; border-radius: 14px; overflow: hidden; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .platform-map a { border-color: var(--t-line) !important; color: var(--t-ink); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .platform-map a:hover { background: var(--t-bg); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .platform-map span { color: var(--t-gold); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .platform-map small { color: var(--muted); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .solution-stack { border-color: var(--t-line); background: #fff; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .solution-layer { background: #fff; border-color: var(--t-line) !important; color: var(--t-ink); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .solution-layer > span { color: var(--t-gold); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .solution-layer img { filter: none; opacity: 1; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .solution-layer small { color: var(--muted); }

/* Closing call-to-action band: logo blue, the one saturated band on the page */
:is([data-treatment="hybrid"], [data-treatment="light"]) .closing-link { background: linear-gradient(120deg, var(--t-header), var(--t-blue)); color: #fff; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .closing-link .eyebrow { color: #e9d49a; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .closing-link p { color: #dbe6ef; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .closing-link .button { background: var(--t-gold); border-color: var(--t-gold); color: #071a29; box-shadow: none; }

/* Cards and accents */
:is([data-treatment="hybrid"], [data-treatment="light"]) :is(.flagship-outcomes > div, .detail-card, .capability-row, .group-block, .related-link, .principle, .snapshot-stat, .proof-cards article, .person:not(.person-founder), .contact-details, .contact-booking) { background: #fff; }
:is([data-treatment="hybrid"], [data-treatment="light"]) :is(.flagship-outcomes span, .decision-item span, .principle-number) { color: var(--t-blue); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .person-founder { background: var(--t-header); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .contact-booking { border-top-color: var(--t-gold); }

/* ---- Hybrid: dark header, hero toned to the header blue, dark footer ---- */
[data-treatment="hybrid"] .site-header { background: rgba(11, 54, 80, .97); border-bottom-color: rgba(255, 255, 255, .08); }
[data-treatment="hybrid"] .site-header.scrolled { background: rgba(11, 54, 80, .99); }
[data-treatment="hybrid"] .cinema-hero { background: var(--t-header); }
[data-treatment="hybrid"] .cinema-grade { background: linear-gradient(90deg, rgba(11,54,80,.95) 0%, rgba(11,54,80,.78) 38%, rgba(11,54,80,.25) 76%), linear-gradient(0deg, rgba(11,54,80,.9), transparent 38%); }
[data-treatment="hybrid"] .site-footer { background: var(--t-footer); }

/* ---- Light: light header, light hero, light footer ---- */
[data-treatment="light"] .site-header { background: rgba(242, 245, 247, .96); border-bottom: 1px solid var(--t-line); }
[data-treatment="light"] .site-header.scrolled { background: rgba(242, 245, 247, .99); box-shadow: 0 8px 24px rgba(11, 54, 80, .08); }
[data-treatment="light"] :is(.desktop-nav > a, .mega > summary) { color: #2c3e50; }
[data-treatment="light"] :is(.desktop-nav > a:hover, .mega > summary:hover, .desktop-nav > a[aria-current], .mega > summary.current-section) { color: var(--t-header); }
[data-treatment="light"] :is(.header-cta, .site-header .button-primary) { background: var(--t-header); border-color: var(--t-header); color: #fff; }
[data-treatment="light"] :is(.header-cta, .site-header .button-primary):hover { background: var(--t-blue); border-color: var(--t-blue); color: #fff; }
[data-treatment="light"] .mobile-menu > summary { border-color: var(--t-line); }
[data-treatment="light"] .mobile-menu > summary::before { border-color: var(--t-header); }
[data-treatment="light"] .mobile-menu > summary::after { background: var(--t-header); }
[data-treatment="light"] .mobile-panel .mobile-contact { background: var(--t-header); color: #fff; }

[data-treatment="light"] .cinema-hero { background: var(--t-bg); color: var(--t-ink); }
[data-treatment="light"] .cinema-grade { background: linear-gradient(90deg, rgba(242,245,247,.98) 0%, rgba(242,245,247,.92) 40%, rgba(242,245,247,.35) 78%), linear-gradient(0deg, rgba(242,245,247,.95), transparent 32%); }
[data-treatment="light"] .cinema-paths { display: none; }
[data-treatment="light"] .cinema-copy .hero-kicker { color: #8a6b17; }
[data-treatment="light"] .cinema-copy h1 { color: var(--t-ink); }
[data-treatment="light"] .cinema-copy h1 em { color: var(--t-blue); }
[data-treatment="light"] .cinema-copy > p { color: var(--t-body); }
[data-treatment="light"] .cinema-copy .button-accent { background: var(--t-header); border-color: var(--t-header); color: #fff; box-shadow: 0 14px 30px -16px rgba(11, 54, 80, .6); }
[data-treatment="light"] .cinema-copy .button-accent:hover { background: var(--t-blue); border-color: var(--t-blue); }
[data-treatment="light"] .cinema-copy .button-on-dark { background: #fff; border-color: var(--t-line); color: var(--t-header); }
[data-treatment="light"] .cinema-copy .button-on-dark:hover { border-color: var(--t-blue); background: #fff; }
[data-treatment="light"] .cinema-chapters a { color: var(--t-ink); border-top-color: var(--t-line); }
[data-treatment="light"] .cinema-chapters a:hover { border-top-color: var(--t-gold); }
[data-treatment="light"] .cinema-chapters span { color: var(--t-blue); }
[data-treatment="light"] .cinema-toggle { background: #fff; color: var(--t-header); border-color: var(--t-line); }
[data-treatment="light"] .hero-console .workspace-console { background: linear-gradient(150deg, #1f4d78, #0b3650); border-color: rgba(52, 95, 142, .4); box-shadow: 0 34px 70px -30px rgba(11, 54, 80, .55); }

[data-treatment="light"] .site-footer { background: var(--t-alt); color: var(--t-ink); border-top: 1px solid var(--t-line); }
[data-treatment="light"] .footer-grid :is(p, a) { color: var(--t-body); }
[data-treatment="light"] .footer-grid a:hover { color: var(--t-header); }
[data-treatment="light"] .footer-grid .footer-phones span { color: var(--muted); }
[data-treatment="light"] .footer-grid .footer-contact-cta { color: var(--t-header); }
[data-treatment="light"] .footer-bottom { color: var(--muted); border-top-color: var(--t-line); }
[data-treatment="light"] .cookie-settings { color: var(--t-body); }

/* Hybrid header keeps the gold call to action against #0B3650 */
[data-treatment="hybrid"] :is(.header-cta, .site-header .button-primary) { background: var(--t-gold); border-color: var(--t-gold); color: #071a29; }
[data-treatment="hybrid"] :is(.header-cta, .site-header .button-primary):hover { background: #d0ad4a; border-color: #d0ad4a; color: #071a29; }
[data-treatment="hybrid"] .mobile-panel .mobile-contact { background: var(--t-gold); color: #071a29; }
:is([data-treatment="hybrid"], [data-treatment="light"]) body[data-page^="services/"] :is(.surface-blue, .surface-soft) { background: var(--t-alt); }

/* v1.3: contrast elements stay dark in the light and hybrid treatments */
:is([data-treatment="hybrid"], [data-treatment="light"]) .hero-console .workspace-console { background: linear-gradient(160deg, #0b3650 0%, #082a41 55%, #071a29 100%); border-color: rgba(7, 26, 41, .6); box-shadow: 0 34px 70px -28px rgba(7, 26, 41, .65); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .hero-console .workspace-console::before { background: none; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .hero-console .console-header, :is([data-treatment="hybrid"], [data-treatment="light"]) .hero-console .console-status { color: #fff; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .hero-console .console-foundation { color: #e3eaf0; border-top-color: rgba(255, 255, 255, .14); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .hero-workspace::before { background: radial-gradient(60% 60% at 50% 50%, rgba(11, 54, 80, .22), transparent 72%); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .closing-link { background: linear-gradient(120deg, #071a29, #0b3650); }
:is([data-treatment="hybrid"], [data-treatment="light"]) .button-try { background: #fff; border-color: #0b3650; color: #0b3650; }
:is([data-treatment="hybrid"], [data-treatment="light"]) .button-try:hover { background: #0b3650; color: #fff; }
