/*
 * Citrus Connections — approved royal-blue palette.
 * Loaded after the mobile safety layers so this file changes presentation only.
 * Palette: #3D52A0 · #7091E6 · #8697C4 · #ADBBDA · #EDE8F5
 */
:root {
  --midnight: #1a2758;
  --midnight-2: #263775;
  --graphite: #3d52a0;
  --graphite-2: #4d65b2;
  --paper: #1a2758;
  --mist: #263775;
  --mist-2: #3d52a0;
  --ink: #f8f7fc;
  --ink-soft: #d6ddef;
  --ink-faint: #adbbda;
  --line: rgba(237,232,245,.18);
  --line-dark: rgba(237,232,245,.18);
  --gold: #7091e6;
  --gold-deep: #adbbda;
  --gold-pale: #ede8f5;
  --gold-warm: #8697c4;
  --signal: #adbbda;
  --success: #7091e6;
  --danger: #8697c4;
  --canvas: #1a2758;
  --canvas-rgb: 26, 39, 88;
  --surface: rgba(61,82,160,.34);
  --surface-strong: rgba(45,62,130,.92);
  --surface-soft: rgba(237,232,245,.07);
  --surface-hover: rgba(61,82,160,.78);
  --shadow: 0 28px 72px -36px rgba(7,14,45,.88);
  --shadow-gold: 0 16px 42px -16px rgba(112,145,230,.62);
}

html,
body,
.site-fiber-stage {
  background-color: var(--canvas) !important;
}

/* Continuous background and section lighting. */
.site-fiber-ambient {
  background:
    radial-gradient(55% 48% at 82% 18%, rgba(112,145,230,.24), transparent 72%),
    radial-gradient(50% 44% at 18% 74%, rgba(134,151,196,.18), transparent 74%),
    radial-gradient(36% 34% at 54% 52%, rgba(173,187,218,.13), transparent 76%) !important;
}
.site-fiber-vignette {
  background:
    linear-gradient(90deg, rgba(26,39,88,.82), transparent 24%, transparent 76%, rgba(26,39,88,.72)),
    linear-gradient(180deg, rgba(26,39,88,.2), transparent 24%, transparent 76%, rgba(26,39,88,.62)) !important;
}
.site-main > [data-fiber-section]::after,
.site-footer[data-fiber-section]::after {
  background: linear-gradient(180deg, rgba(61,82,160,.08), rgba(26,39,88,.28)) !important;
}
.site-main > [data-fiber-section="2"]::after { background: linear-gradient(180deg, rgba(61,82,160,.15), rgba(26,39,88,.34)) !important; }
.site-main > [data-fiber-section="3"]::after { background: linear-gradient(180deg, rgba(112,145,230,.07), rgba(45,62,130,.28)) !important; }
.site-main > [data-fiber-section="4"]::after { background: linear-gradient(180deg, rgba(61,82,160,.12), rgba(26,39,88,.3)) !important; }
.site-main > [data-fiber-section="5"]::after { background: linear-gradient(180deg, rgba(134,151,196,.08), rgba(26,39,88,.34)) !important; }

.announce {
  background: rgba(20,31,72,.96) !important;
  color: #dbe2f3 !important;
  border-bottom-color: rgba(237,232,245,.12) !important;
}
.site-header,
.site-header.is-scrolled {
  background: rgba(26,39,88,.9) !important;
  border-bottom-color: rgba(237,232,245,.15) !important;
  box-shadow: 0 14px 42px rgba(12,22,61,.22) !important;
}
.nav-list > li > a { color: #e0e5f3 !important; }
.nav-list > li > a:hover,
.nav-list > li.current-menu-item > a,
.nav-list > li.current-menu-ancestor > a { color: #ede8f5 !important; }
.nav-caret-btn { color: #adbbda !important; }

/* Buttons and action links. */
.btn--accent,
.nav-cta,
input[type="submit"] {
  color: #101a3a !important;
  -webkit-text-fill-color: #101a3a !important;
  background: #7091e6 !important;
  border-color: #7091e6 !important;
  box-shadow: 0 14px 34px -16px rgba(112,145,230,.9) !important;
}
.btn--accent:hover,
.nav-cta:hover,
input[type="submit"]:hover {
  color: #101a3a !important;
  background: #adbbda !important;
  border-color: #adbbda !important;
}
.btn--ghost,
.btn--ink,
.btn--ghost-light {
  color: #ede8f5 !important;
  border-color: rgba(173,187,218,.72) !important;
}
.btn--ghost:hover,
.btn--ink:hover,
.btn--ghost-light:hover {
  color: #1a2758 !important;
  background: #ede8f5 !important;
  border-color: #ede8f5 !important;
}
.accent,
.tag--accent,
.tag--light,
.arrow-link,
.practice-index,
.practice-kicker,
.process-number,
.service-step-number,
.footer-label,
.deliverable span {
  color: #adbbda !important;
  -webkit-text-fill-color: #adbbda !important;
}
.arrow-link:hover { color: #ede8f5 !important; }
:focus-visible { outline-color: #7091e6 !important; }

/* Hero and connected visual language. */
.hero {
  background:
    radial-gradient(circle at 72% 35%, rgba(112,145,230,.28), transparent 37%),
    linear-gradient(135deg, #1a2758 0%, #2b3d81 58%, #1a2758 100%) !important;
}
.hero-bottom-line { background: linear-gradient(90deg, transparent, #7091e6, transparent) !important; }
.hero-orbit { border-color: rgba(173,187,218,.22) !important; }
.hero-core span {
  background: #7091e6 !important;
  box-shadow: 0 0 20px #7091e6 !important;
}
.hero-signal--grow { border-color: rgba(112,145,230,.58) !important; }
.hero-network { filter: drop-shadow(0 0 42px rgba(112,145,230,.16)) !important; }

/* Cards and surfaces. */
.practice-card,
.growth-capability-card,
.home-engagement-card,
.why-card,
.spec-item,
.phase-card,
.service-engagement-card,
.service-side-card,
.service-step-flow,
.service-step,
.related-service-card,
.service-directory-group,
.service-brief-card,
.project-panel,
.search-result,
.card,
.wp-block-group.has-background {
  background: linear-gradient(145deg, rgba(61,82,160,.42), rgba(35,51,112,.7)) !important;
  border-color: rgba(173,187,218,.24) !important;
  box-shadow: 0 24px 64px -34px rgba(8,17,55,.9) !important;
}
.practice-card--grow,
.practice-card--build {
  background: linear-gradient(145deg, rgba(61,82,160,.66), rgba(32,47,102,.82)) !important;
}
.growth-capability-card:hover,
.growth-capability-card:focus-visible,
.related-service-card:hover,
.home-engagement-card:hover,
.service-brief-card:hover {
  background: linear-gradient(145deg, rgba(112,145,230,.48), rgba(61,82,160,.8)) !important;
  border-color: rgba(173,187,218,.58) !important;
  box-shadow: 0 28px 78px -36px rgba(8,17,55,.96), 0 0 0 1px rgba(112,145,230,.16) !important;
}
.practice-card::before,
.practice-card::after { border-color: #adbbda !important; }
.capability-list li::before { background: #7091e6 !important; }

/* Menus and directories. */
.mega-menu--services,
.mega-directory,
.mega-menu-head,
.sub-menu,
.service-search--mega,
.service-search--directory,
.mobile-nav-panel {
  color: #f8f7fc !important;
  background: rgba(26,39,88,.985) !important;
  border-color: rgba(173,187,218,.22) !important;
}
.mega-menu-intro { background: rgba(35,51,112,.94) !important; }
.mega-tab { color: #adbbda !important; }
.mega-tab.is-active {
  color: #ede8f5 !important;
  background: rgba(112,145,230,.16) !important;
  border-bottom-color: #7091e6 !important;
}
.mega-service-list a,
.mega-group-title,
.sub-menu a,
.mobile-nav-link { color: #e1e6f4 !important; }
.mega-service-list a:hover,
.sub-menu a:hover,
.mobile-nav-link:hover { color: #fff !important; background: rgba(112,145,230,.13) !important; }
.mobile-nav > summary {
  color: #ede8f5 !important;
  border-color: #7091e6 !important;
  background: #263775 !important;
  box-shadow: 0 8px 24px rgba(13,25,70,.38) !important;
}
.mobile-nav-panel summary::after,
.mobile-nav-group > summary { color: #adbbda !important; }
.mobile-nav-group { background: rgba(112,145,230,.08) !important; border-color: rgba(173,187,218,.16) !important; }
.mobile-nav-services a { color: #d3dbef !important; border-color: rgba(173,187,218,.1) !important; }

/* Forms. */
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
select,
textarea,
.service-search input[type="search"],
.service-search--mega input[type="search"] {
  color: #f8f7fc !important;
  -webkit-text-fill-color: #f8f7fc !important;
  background: rgba(173,187,218,.1) !important;
  border-color: rgba(173,187,218,.32) !important;
}
input::placeholder,
textarea::placeholder { color: #adbbda !important; }
input:focus,
select:focus,
textarea:focus {
  border-color: #7091e6 !important;
  box-shadow: 0 0 0 3px rgba(112,145,230,.22) !important;
}
select option { color: #1a2758 !important; background: #ede8f5 !important; }

/* Footer. */
.footer-links a,
.footer-brand-col p,
.footer-base { color: #cdd6ec !important; }
.footer-links a:hover { color: #ede8f5 !important; }

/* Tablet and mobile keep the proven responsive fail-safe with the new palette. */
@media (max-width:1180px), (hover:none), (pointer:coarse) {
  html,
  body,
  .site-header,
  .site-header.is-scrolled,
  .site-main,
  .site-main > section,
  .site-main > article,
  .site-footer {
    background-color: #1a2758 !important;
  }
  .home-focused > section {
    background-color: #1a2758 !important;
    background-image:
      radial-gradient(circle at 8% 16%, rgba(112,145,230,.2), transparent 31%),
      radial-gradient(circle at 92% 38%, rgba(134,151,196,.16), transparent 29%),
      radial-gradient(circle at 42% 84%, rgba(173,187,218,.11), transparent 35%) !important;
  }
  h1,h2,h3,h4,h5,h6,.display-xl,.display-l,.display-m,.display-s,.entry-title,.hero h1,.service-hero h1,.practice-hero h1,label,legend {
    color: #f8f7fc !important;
    -webkit-text-fill-color: #f8f7fc !important;
  }
  p,li,dd,dt,small,.lede,.section-head p,.entry-content,.page-content,.practice-card p,.process-step p,.footer-base {
    color: #d6ddef !important;
    -webkit-text-fill-color: #d6ddef !important;
  }
  .accent,.tag,.tag--accent,.tag--light,.arrow-link,.practice-kicker,.process-number,.service-step-number,.footer-label {
    color: #adbbda !important;
    -webkit-text-fill-color: #adbbda !important;
  }
  .practice-card,.process-step,.card,.service-directory-group,.project-panel,.mega-menu--services,.sub-menu {
    background: #263775 !important;
    border-color: rgba(173,187,218,.24) !important;
  }
  .btn--accent,.nav-cta,input[type="submit"] {
    color: #101a3a !important;
    -webkit-text-fill-color: #101a3a !important;
    background: #7091e6 !important;
    border-color: #7091e6 !important;
  }
}
