/* ============================================================
   COSMONIQ x MeitY — Central Ministry portal design system
   Reference: https://www.meity.gov.in/ (Noto Sans, Bootstrap 5,
   navy #162f6a chrome, white masthead, dense govt layout,
   red accents, pale-notice strips, navy footer)
   Loads after gov.css. CSS-only — never alters textContent.
   ============================================================ */

:root {
  --navy: #162f6a;
  --navy-2: #1d3f8c;
  --navy-deep: #0e1f47;
  --navy-soft: #eef4ff;
  --ink: #150202;
  --red: #dc3545;
  --orange: #ff5722;
  --blue: #0d6efd;
  --green: #198754;
  --amber: #ffc107;
  --paper: #ffffff;
  --bone: #f8f9fa;
  --line: #dee2e6;
  --line-soft: #e9ecef;
  --txt-soft: #6c757d;
  --shadow: 0 1px 2px rgba(21, 2, 4, 0.08);
  --shadow-md: 0 4px 14px rgba(21, 2, 4, 0.12);
}

/* ---------- 1. BASE ---------- */
html {
  background: #ffffff;
}
body {
  background-color: #ffffff !important;
  color: var(--ink);
  font-family: "Noto Sans", ui-sans-serif, system-ui, sans-serif;
}
body::before {
  content: none !important;
  display: none !important;
}
::selection {
  background: var(--navy) !important;
  color: #fff !important;
}
:focus-visible {
  outline: 3px solid rgba(13, 110, 253, 0.45) !important;
  outline-offset: 2px;
}

/* ---------- 2. GEOMETRY: Bootstrap radius, soft shadows ---------- */
[class*="rounded"] {
  border-radius: 8px !important;
}
[class*="rounded-full"] {
  border-radius: 9999px !important;
}
[class*="shadow-"] {
  box-shadow: var(--shadow) !important;
}
main section,
main .grid > *,
main [class*="border"] {
  border-color: var(--line) !important;
}

/* ---------- 3. TYPOGRAPHY: Noto Sans, mixed case, navy headings ---------- */
.font-headline,
main h1,
main h2,
main h3,
main h4 {
  font-family: "Noto Sans", ui-sans-serif, sans-serif !important;
}
main h1,
main h2,
main h3 {
  text-transform: none;
  letter-spacing: normal;
}
main h1 {
  color: var(--navy) !important;
}
main h1,
main h2 {
  font-weight: 800 !important;
}
/* gov.css remaps [class*="text-blue-*"] to indigo globally — re-claim navy */
main [class*="text-blue-950"],
main [class*="text-blue-900"],
main [class*="text-blue-800"] {
  color: var(--navy) !important;
}
main section h2 {
  font-size: clamp(1.25rem, 2.2vw, 1.75rem) !important;
  line-height: 1.25 !important;
}
main section:first-of-type h1,
main section#hero-3d-section h1 {
  font-size: clamp(2rem, 4.6vw, 3.5rem) !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
}
main h1 span[class*="bg-clip-text"],
main h2 span[class*="bg-clip-text"] {
  background-image: none !important;
  color: var(--orange) !important;
  -webkit-text-fill-color: var(--orange) !important;
}
main label {
  font-family: "Noto Sans", sans-serif !important;
  text-transform: none;
  letter-spacing: 0;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: var(--ink) !important;
}

/* ---------- 4. UTILITY STRIP + NOTICE + HEADER + NAV ---------- */
#gov-utility {
  background: #f1f3f5 !important;
  color: var(--ink) !important;
  border-bottom: 1px solid var(--line) !important;
  border-image: none !important;
}
#gov-utility .gov-uwrap {
  font-family: "Noto Sans", sans-serif;
  font-size: 11.5px !important;
  letter-spacing: 0.02em;
  text-transform: none;
}
#gov-utility .gov-badge {
  background: #fff !important;
  border: 1px solid #ced4da !important;
  color: var(--navy) !important;
}
#gov-utility .gov-uctrl a,
#gov-utility .gov-uctrl button {
  background: #fff !important;
  border-color: #ced4da !important;
  color: var(--ink) !important;
}
#gov-utility .gov-uctrl a:hover,
#gov-utility .gov-uctrl button:hover {
  background: var(--navy-soft) !important;
  color: var(--navy) !important;
}
#gov-utility .gov-uctrl button.gov-on {
  background: var(--navy) !important;
  border-color: var(--navy) !important;
  color: #fff !important;
}
/* pale-yellow GIGW notice: PWA install banner */
div[class*="from-blue-950"][class*="py-2.5"] {
  background: #fff9e6 !important;
  background-image: none !important;
  background-color: #fff9e6 !important;
  color: var(--ink) !important;
  border-bottom: 1px solid #ffe08a !important;
  box-shadow: none !important;
}
div[class*="from-blue-950"][class*="py-2.5"] .text-slate-300 {
  color: var(--txt-soft) !important;
}
div[class*="from-blue-950"][class*="py-2.5"] div[class*="text-xs"],
div[class*="from-blue-950"][class*="py-2.5"] div[class*="text-xs"] * {
  color: var(--ink) !important;
}
div[class*="from-blue-950"][class*="py-2.5"] button[aria-label="Dismiss banner"] {
  color: var(--txt-soft) !important;
}
/* masthead header */
header {
  border-bottom: none !important;
}
header > div {
  background: #ffffff !important;
  backdrop-filter: none !important;
  border-bottom: 1px solid var(--line) !important;
  box-shadow: none !important;
  padding-top: 10px !important;
  padding-bottom: 0 !important;
}
header > div > div {
  flex-wrap: wrap !important;
}
/* logo tile */
header a[href="index.html"] > div:first-of-type {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  box-shadow: var(--shadow) !important;
  border-radius: 8px !important;
}
header a[href="index.html"] .font-black {
  text-transform: none;
  letter-spacing: 0;
  color: var(--navy) !important;
  font-size: 1.3rem !important;
  font-weight: 800 !important;
}
header a[href="index.html"] [class*="rounded-full"] {
  background: #e9ecef !important;
  color: var(--ink) !important;
  border: 1px solid #ced4da !important;
  font-family: "Noto Sans", sans-serif !important;
}
header a[href="index.html"] > div > div > span[class*="text-slate-500"] {
  color: var(--navy) !important;
  opacity: 0.8;
}
/* nav = full-width second row, plain govt menu */
header nav {
  order: 9;
  flex-basis: 100%;
  border: none !important;
  border-top: 1px solid var(--line-soft) !important;
  padding: 3px 4px 4px !important;
  gap: 2px !important;
  box-shadow: none !important;
  justify-content: flex-start !important;
  margin-top: 6px;
}
/* match gov.css nav-field selector (lavender -> white) */
header nav[class*="bg-slate-100"],
header [class*="bg-slate-100/90"] nav {
  background: #ffffff !important;
  border-color: var(--line) !important;
  box-shadow: none !important;
}
header nav > a,
header nav > div {
  border-right: none !important;
}
header nav a,
header nav button {
  font-family: "Noto Sans", sans-serif !important;
  font-size: 13px !important;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 600 !important;
  padding: 9px 16px !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  background: transparent !important;
  color: var(--navy) !important;
}
header nav svg {
  color: #495b8f !important;
}
header nav a:hover,
header nav button:hover {
  background: var(--navy-soft) !important;
  color: var(--navy) !important;
}
/* gov.css fills every [class*="bg-white"] item (hover:bg-white/60 etc.) */
header nav a[class*="bg-white"]:not([class~="bg-white"]),
header nav button[class*="bg-white"]:not([class~="bg-white"]) {
  background: transparent !important;
  color: var(--navy) !important;
  box-shadow: none !important;
}
header nav a[class*="bg-white"]:not([class~="bg-white"]):hover,
header nav button[class*="bg-white"]:not([class~="bg-white"]):hover {
  background: var(--navy-soft) !important;
  color: var(--navy) !important;
}
/* true active item */
header nav a[class~="bg-white"],
header nav button[class~="bg-white"] {
  background: var(--navy) !important;
  color: #fff !important;
  font-weight: 700 !important;
}
header nav a[class~="bg-white"]:hover,
header nav button[class~="bg-white"]:hover {
  background: var(--navy-2) !important;
  color: #fff !important;
}
header nav a[class~="bg-white"] svg {
  color: #fff !important;
}
/* right controls: bootstrap-ish */
header .hidden.lg\:flex.items-center.gap-2 button,
header .flex.items-center.gap-1 button {
  border-radius: 6px !important;
  background: #fff !important;
  border-color: #ced4da !important;
  color: var(--ink) !important;
}
header [class*="bg-slate-100"] {
  border-color: var(--line) !important;
}

/* ---------- 5. TICKER (MeitY announcement bar) ---------- */
.gov-ticker {
  background: var(--navy) !important;
  border-bottom: 1px solid var(--navy-deep) !important;
  color: #e6ecfb;
}
.gov-ticker-label {
  background: var(--navy-deep) !important;
  color: #fff !important;
  font-family: "Noto Sans", sans-serif;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0.04em;
  font-size: 12px !important;
}
.gov-ticker-item {
  font-family: "Noto Sans", sans-serif !important;
  font-size: 12.5px !important;
  text-transform: none;
  letter-spacing: 0;
  color: #e6ecfb !important;
}
.gov-ticker-item:hover {
  color: #fff !important;
  text-decoration: underline;
}
.gov-ticker-item time {
  color: #9db7e8 !important;
}
.gov-new {
  background: var(--red) !important;
  color: #fff !important;
  font-weight: 700 !important;
  border-radius: 4px !important;
}

/* ---------- 6. SECTION RHYTHM ---------- */
main section {
  background-image: none !important;
  position: relative;
  border-color: var(--line-soft) !important;
}
main section::after {
  content: none !important;
}
main section:nth-of-type(4n + 1),
main section:nth-of-type(4n + 3) {
  background-color: #ffffff !important;
}
main section:nth-of-type(4n + 2),
main section:nth-of-type(4n + 4) {
  background-color: var(--bone) !important;
}
main section[class*="from-blue-950"],
main section[class*="bg-slate-900"] {
  background-image: none !important;
}
main h2 {
  padding-bottom: 10px;
  border-bottom: 2px solid var(--navy);
  display: block;
}

/* ---------- 7. HEROES ---------- */
/* -- index + tenders: navy banner (MeitY carousel style) -- */
.pg-index #hero-3d-section .text-center {
  text-align: left !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
.pg-index #hero-3d-section .text-orange-700 {
  color: #ffb18f !important;
}
.pg-index #hero-3d-section h1,
.pg-tenders #hero-3d-section h1 {
  font-size: clamp(2.1rem, 5vw, 4rem) !important;
}
.pg-index #hero-3d-section h1 + div,
.pg-tenders #hero-3d-section h1 + div {
  margin-top: 12px !important;
}
.pg-index #hero-3d-section,
.pg-tenders #hero-3d-section {
  background: linear-gradient(118deg, var(--navy-deep) 0%, var(--navy) 55%, var(--navy-2) 100%) !important;
  color: #dbe4f7;
}
.pg-index #hero-3d-section [class*="bg-radial"],
.pg-tenders #hero-3d-section [class*="bg-radial"] {
  background-image: linear-gradient(180deg, rgba(14, 31, 71, 0.35), rgba(14, 31, 71, 0.88)) !important;
}
.pg-index #hero-3d-section [class*="radial-gradient"][class*="opacity-"],
.pg-tenders #hero-3d-section [class*="radial-gradient"][class*="opacity-"] {
  opacity: 0.18 !important;
}
.pg-index #hero-3d-section h1,
.pg-tenders #hero-3d-section h1 {
  color: #ffffff !important;
  text-align: left;
}
.pg-index #hero-3d-section p,
.pg-tenders #hero-3d-section p {
  color: #c9d5f2 !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
.pg-index #hero-3d-section p strong,
.pg-tenders #hero-3d-section p strong {
  color: #fff !important;
}
.pg-index #hero-3d-section [class*="justify-center"] {
  justify-content: flex-start !important;
}
.pg-index #hero-3d-section > .relative > div:first-of-type,
.pg-tenders #hero-3d-section > .relative > div:first-of-type {
  border-color: rgba(255, 255, 255, 0.22) !important;
}
/* hero data strip */
.pg-index #hero-3d-section [class*="bg-white/95"],
.pg-tenders #hero-3d-section [class*="bg-white/95"] {
  background: rgba(14, 31, 71, 0.92) !important;
  backdrop-filter: none !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
}
.pg-index #hero-3d-section [class*="bg-white/95"] [class*="text-orange-600"],
.pg-tenders #hero-3d-section [class*="bg-white/95"] [class*="text-orange-600"] {
  color: #ff8a65 !important;
}
.pg-index #hero-3d-section [class*="bg-white/95"] [class*="text-blue-9"],
.pg-tenders #hero-3d-section [class*="bg-white/95"] [class*="text-blue-9"] {
  color: #9db7e8 !important;
}
.pg-index #hero-3d-section [class*="bg-white/95"] [class*="text-emerald-"],
.pg-tenders #hero-3d-section [class*="bg-white/95"] [class*="text-emerald-"] {
  color: #75e0a7 !important;
}
.pg-index #hero-3d-section [class*="bg-white/95"] [class*="text-amber-"],
.pg-tenders #hero-3d-section [class*="bg-white/95"] [class*="text-amber-"] {
  color: #ffd8a8 !important;
}
.pg-index #hero-3d-section [class*="bg-white/95"] [class*="text-slate-600"],
.pg-tenders #hero-3d-section [class*="bg-white/95"] [class*="text-slate-600"] {
  color: #b9c6e6 !important;
}
.pg-index #hero-3d-section [class*="bg-white/95"] > div,
.pg-tenders #hero-3d-section [class*="bg-white/95"] > div {
  border-color: rgba(255, 255, 255, 0.16) !important;
}
/* tenders: centered + tricolor underline */
.pg-tenders #hero-3d-section h1,
.pg-tenders #hero-3d-section .text-sm,
.pg-tenders #hero-3d-section p {
  text-align: center;
}
.pg-tenders #hero-3d-section h1 {
  padding-bottom: 14px;
  border-bottom: 5px solid transparent;
  border-image: linear-gradient(90deg, #ff9933 33%, #ffffff 33% 66%, #138808 66%) 1;
  display: block;
  max-width: 720px;
  margin: 0 auto;
}
.pg-tenders #hero-3d-section [class*="justify-center"] {
  justify-content: center !important;
}
.pg-tenders #hero-3d-section p {
  margin-left: auto !important;
  margin-right: auto !important;
}
/* -- pay: white ledger hero, orange masthead band -- */
.pg-pay #hero-3d-section {
  border-top: 8px solid var(--orange) !important;
  background: #ffffff !important;
}
.pg-pay #hero-3d-section h1 {
  text-align: left;
}
/* -- light heroes -- */
.pg-contact main > div > section:first-of-type,
.pg-contact main > div > section:first-child {
  background: var(--bone) !important;
}
.pg-corporate main > div > section:first-of-type,
.pg-corporate main > div > section:first-child {
  background: #ffffff !important;
  border-top: 6px solid var(--navy) !important;
  border-bottom: 4px solid var(--navy) !important;
  text-align: center;
}
.pg-corporate main > div > section:first-of-type h1 {
  text-align: center !important;
}
.pg-corporate main > div > section:first-of-type [class*="justify-between"] {
  justify-content: center !important;
}
.pg-infra main > div > section:first-of-type,
.pg-infra main > div > section:first-child {
  background-color: var(--navy-soft) !important;
  background-image: linear-gradient(rgba(22, 47, 106, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(22, 47, 106, 0.06) 1px, transparent 1px) !important;
  background-size: 26px 26px !important;
}
.pg-infra main [class*="border"] {
  border-style: solid !important;
  border-color: #b9c9e8 !important;
}
.pg-digital main > div > section:first-of-type {
  background: #ffffff !important;
  border-bottom: 3px solid var(--navy) !important;
}
/* -- dark heroes: MeitY navy banners -- */
.pg-careers main > div > section:first-of-type,
.pg-staff main > div > section:first-of-type,
.pg-knowledge-base main > div > section:first-of-type,
.pg-terms main > div > section:first-of-type {
  background: linear-gradient(115deg, var(--navy-deep) 0%, var(--navy) 70%, var(--navy-2) 100%) !important;
  background-image: linear-gradient(115deg, var(--navy-deep) 0%, var(--navy) 70%, var(--navy-2) 100%) !important;
}
.pg-careers main > div > section:first-of-type {
  border-bottom: 5px solid var(--red) !important;
}
.pg-staff main > div > section:first-of-type {
  background: var(--navy-deep) !important;
  background-image: none !important;
  border-bottom: 5px solid transparent !important;
  border-image: linear-gradient(90deg, #ff9933 33%, #ffffff 33% 66%, #138808 66%) 1 !important;
}
.pg-knowledge-base main > div > section:first-of-type {
  border-bottom: none !important;
  border-left: 10px solid var(--red) !important;
}
.pg-terms main > div > section:first-of-type {
  background: var(--navy-deep) !important;
  background-image: none !important;
  border-bottom: 3px double var(--orange) !important;
}
.pg-careers main > div > section:first-of-type h1,
.pg-staff main > div > section:first-of-type h1,
.pg-knowledge-base main > div > section:first-of-type h1,
.pg-terms main > div > section:first-of-type h1 {
  color: #fff !important;
  border-bottom-color: rgba(255, 255, 255, 0.35) !important;
}
.pg-careers main > div > section:first-of-type h2,
.pg-staff main > div > section:first-of-type h2,
.pg-knowledge-base main > div > section:first-of-type h2,
.pg-terms main > div > section:first-of-type h2 {
  color: #fff !important;
}
.pg-careers main > div > section:first-of-type p,
.pg-staff main > div > section:first-of-type p,
.pg-knowledge-base main > div > section:first-of-type p,
.pg-terms main > div > section:first-of-type p {
  color: #c9d5f2 !important;
}
.pg-careers main > div > section:first-of-type strong,
.pg-staff main > div > section:first-of-type strong,
.pg-knowledge-base main > div > section:first-of-type strong,
.pg-terms main > div > section:first-of-type strong {
  color: #fff !important;
}

/* ---------- 8. MID-PAGE BANDS ---------- */
#operations-center-section,
#cross-wing-synergy-section {
  background-color: var(--bone) !important;
  background-image: none !important;
}
#proprietary-production-fleet {
  background: var(--navy) !important;
}
#proprietary-production-fleet h2,
#proprietary-production-fleet h3,
#proprietary-production-fleet [class*="text-slate-800"],
#proprietary-production-fleet [class*="text-slate-700"] {
  color: #ffffff !important;
  border-bottom-color: rgba(255, 255, 255, 0.35) !important;
}
#proprietary-production-fleet p,
#proprietary-production-fleet [class*="text-slate-600"],
#proprietary-production-fleet [class*="text-slate-500"] {
  color: #c9d5f2 !important;
}
#proprietary-production-fleet [class*="bg-white"] {
  color: var(--ink) !important;
}
#proprietary-production-fleet [class*="bg-white"] h2,
#proprietary-production-fleet [class*="bg-white"] h3,
#proprietary-production-fleet [class*="bg-white"] [class*="text-slate-800"],
#proprietary-production-fleet [class*="bg-white"] [class*="text-slate-700"] {
  color: var(--navy) !important;
  border-bottom-color: var(--line) !important;
}
#proprietary-production-fleet [class*="bg-white"] p,
#proprietary-production-fleet [class*="bg-white"] [class*="text-slate-600"],
#proprietary-production-fleet [class*="bg-white"] [class*="text-slate-500"] {
  color: var(--txt-soft) !important;
}
#voices {
  background: var(--navy-soft) !important;
}
#voices h2 {
  color: var(--navy) !important;
}
#voices p {
  color: var(--ink) !important;
}
#voices [class*="text-slate-600"],
#voices [class*="text-slate-500"] {
  color: var(--txt-soft) !important;
}
#dynamic-portfolio-section {
  background: #ffffff !important;
}
#partner-ecosystem-slider {
  background: #ffffff !important;
  border-top: 2px solid var(--navy) !important;
  border-bottom: 2px solid var(--navy) !important;
}

/* ---------- 9. GOV COMPONENTS ---------- */
.gov-glance {
  background: #ffffff !important;
  border-top: 2px solid var(--navy) !important;
  border-bottom: 1px solid var(--line) !important;
}
.gov-eyebrow {
  font-family: "Noto Sans", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 11px;
  font-weight: 700;
  color: var(--red) !important;
}
.gov-bandhead h2::before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  background: var(--red);
  margin-right: 10px;
  vertical-align: baseline;
}
.gov-facts li {
  border-bottom: 1px dotted #ced4da !important;
}
.gov-facts i {
  font-family: "Noto Sans", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--navy) !important;
  font-weight: 700;
}
.gov-stats {
  border: 1px solid var(--line) !important;
  gap: 0 !important;
}
.gov-stat {
  background: #fff !important;
  border: 1px solid var(--line) !important;
}
.gov-stat b {
  font-family: "Noto Sans", sans-serif;
  color: var(--navy) !important;
}
.gov-stat em {
  color: var(--txt-soft) !important;
}
.gov-quick,
.gov-qwrap {
  background: #fff !important;
  border: 1px solid var(--navy) !important;
}
.gov-credit {
  background: var(--navy-deep) !important;
  color: #c5d3f2 !important;
  border-top: 3px solid var(--orange) !important;
}
.gov-credit a {
  color: #fff !important;
}

/* ---------- 10. CHIPS / TABS (Bootstrap badges) ---------- */
main [class*="rounded-full"][class*="border"] {
  font-family: "Noto Sans", sans-serif;
  letter-spacing: 0;
  text-transform: none;
}
main button[class*="rounded-full"][class*="font-"] {
  text-transform: none;
  font-size: 12px !important;
}

/* ---------- 11. CARDS / GRIDS ---------- */
main section div[class*="rounded-2xl"][class*="border"]:not([class*="border-none"]):not([class*="gov-"]),
main section div[class*="rounded-xl"][class*="border"]:not([class*="border-none"]):not([class*="gov-"]) {
  border-color: var(--line) !important;
  background: #ffffff;
}
main section div[class*="rounded-2xl"]:hover {
  box-shadow: var(--shadow-md) !important;
}
main [class*="rounded-3xl"],
main [class*="rounded-2xl"],
main [class*="rounded-xl"] {
  border-width: 1px !important;
}
/* translucent/dark cards inside dark heroes keep their dark fill */
main [class*="from-blue-950"] div[class*="bg-white/"]:not([class*="border-none"]):not([class*="gov-"]),
main [class*="bg-slate-900"] div[class*="bg-white/"]:not([class*="border-none"]):not([class*="gov-"]) {
  background: rgba(255, 255, 255, 0.07) !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
}
main [class*="from-blue-950"] div[class*="bg-slate-900/"]:not([class*="border-none"]):not([class*="gov-"]),
main [class*="from-blue-950"] div[class*="bg-slate-800/"]:not([class*="border-none"]):not([class*="gov-"]),
main [class*="bg-slate-900"] div[class*="bg-slate-900/"]:not([class*="border-none"]):not([class*="gov-"]) {
  background: rgba(15, 23, 42, 0.72) !important;
  border-color: rgba(255, 255, 255, 0.15) !important;
}
/* dark template bands anywhere: white headings, light body */
main [class*="from-blue-950"] h1,
main [class*="from-blue-950"] h2,
main [class*="from-blue-950"] h3,
main [class*="from-blue-900"] h1,
main [class*="from-blue-900"] h2,
main [class*="from-blue-900"] h3,
main [class*="from-slate-950"] h1,
main [class*="from-slate-950"] h2,
main [class*="from-slate-950"] h3,
main [class*="from-slate-900"] h1,
main [class*="from-slate-900"] h2,
main [class*="from-slate-900"] h3,
main [class*="from-indigo-950"] h1,
main [class*="from-indigo-950"] h2,
main [class*="from-indigo-950"] h3 {
  color: #ffffff !important;
  border-bottom-color: rgba(255, 255, 255, 0.35) !important;
}
main [class*="from-blue-950"] [class~="bg-white"] h1,
main [class*="from-blue-950"] [class~="bg-white"] h2,
main [class*="from-blue-950"] [class~="bg-white"] h3,
main [class*="bg-slate-900"] [class~="bg-white"] h2,
main [class*="bg-slate-900"] [class~="bg-white"] h3 {
  color: var(--navy) !important;
  border-bottom-color: var(--line) !important;
}
main [class*="from-blue-950"] p,
main [class*="from-blue-900"] p,
main [class*="from-slate-950"] p,
main [class*="from-slate-900"] p,
main [class*="from-indigo-950"] p {
  color: #c9d5f2 !important;
}
main [class*="from-blue-950"] [class~="bg-white"] p,
main [class*="from-slate-900"] [class~="bg-white"] p {
  color: var(--txt-soft) !important;
}
/* ledger matrix (contact desks, corporate cards) */
.pg-contact main .grid[class*="gap-4"],
.pg-contact main .grid[class*="gap-6"],
.pg-corporate main .grid[class*="gap-6"] {
  gap: 0 !important;
  border: 1px solid var(--line) !important;
}
.pg-contact main .grid[class*="gap-4"] > *,
.pg-contact main .grid[class*="gap-6"] > *,
.pg-corporate main .grid[class*="gap-6"] > * {
  border: 1px solid var(--line-soft) !important;
  background: #fff !important;
}
/* corporate file-tab: small red marker */
.pg-corporate main [class*="rounded-2xl"]::before,
.pg-corporate main [class*="rounded-3xl"]::before {
  content: "";
  display: block;
  width: 40px;
  height: 5px;
  background: var(--red);
  margin: -1px 0 10px -1px;
}

/* ---------- 12. NEWSLETTER + FOOTER ---------- */
footer[class*="bg-slate-100"],
footer {
  background: var(--navy) !important;
  background-color: var(--navy) !important;
  color: #c5d3f2 !important;
  border-top: none !important;
}
#gov-fband {
  background: var(--navy) !important;
  background-color: var(--navy) !important;
  color: #c5d3f2 !important;
}
footer::before {
  content: "";
  display: block;
  height: 4px;
  background: linear-gradient(90deg, #ff9933 33%, #ffffff 33% 66%, #138808 66%);
}
footer a {
  color: #dbe4f7 !important;
}
footer a[class*="text-blue"] {
  color: #dbe4f7 !important;
}
footer a:hover {
  color: #fff !important;
  text-decoration: underline;
}
footer [class*="text-blue-950"] {
  color: #ffffff !important;
}
footer p {
  color: #c5d3f2 !important;
}
body[class*="pg-about"] footer span:not([class*="bg-"]),
body[class*="pg-compliance"] footer span:not([class*="bg-"]),
body[class*="pg-projects"] footer span:not([class*="bg-"]),
body[class*="pg-search"] footer span:not([class*="bg-"]) {
  color: #e7edf9 !important;
}
footer h4,
footer h3,
footer strong,
footer b,
footer [class*="font-black"][class*="text-slate-900"],
footer [class*="text-slate-900"],
footer [class*="text-slate-800"] {
  color: #ffffff !important;
}
footer [class*="text-slate-700"] {
  color: #dbe4f7 !important;
}
footer section .rounded-3xl,
footer section [class*="rounded-3xl"] {
  background: var(--navy-deep) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  box-shadow: var(--shadow-md) !important;
  border-radius: 10px !important;
}
footer section [class*="from-orange-500"] {
  background: var(--orange) !important;
}
footer section [class*="bg-orange-500/20"] {
  background: rgba(255, 87, 34, 0.18) !important;
  border-color: rgba(255, 87, 34, 0.55) !important;
}
footer section h2,
footer section h3 {
  color: #fff !important;
}
footer section p {
  color: #c5d3f2 !important;
}
footer [class*="border-slate-200"],
footer [class*="border-slate-300"] {
  border-color: rgba(255, 255, 255, 0.22) !important;
}
footer input,
footer textarea {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
  color: #fff !important;
}
footer [class*="text-slate-400"],
footer [class*="text-slate-500"],
footer [class*="text-slate-600"] {
  color: #a7b7dd !important;
}
footer a svg[class*="text-"],
footer [class*="text-red-"],
footer [class*="text-rose-"] {
  color: #ff6b6b !important;
}
footer [class*="text-emerald-4"],
footer [class*="text-green-4"] {
  color: #75e0a7 !important;
}

/* ---------- 13. FLOATING WIDGETS ---------- */
aside[class*="fixed"] {
  left: 12px !important;
  right: auto !important;
  top: 86% !important;
}
aside[class*="fixed"] button {
  border-radius: 6px !important;
  border: 1px solid var(--navy) !important;
  background: #fff !important;
  color: var(--navy) !important;
  font-family: "Noto Sans", sans-serif !important;
  text-transform: none;
  letter-spacing: 0;
  box-shadow: var(--shadow) !important;
}
aside[class*="fixed"] button [class*="text-white"] {
  color: var(--navy) !important;
}
#cosmoniq-ai-copilot-trigger {
  border-radius: 8px !important;
  background: var(--navy) !important;
  border: 1px solid var(--navy-deep) !important;
  box-shadow: var(--shadow-md) !important;
}
[class*="fixed"] [class*="rounded-3xl"][class*="border-slate-"] {
  background: #fff !important;
  border: 1px solid var(--navy) !important;
  box-shadow: 0 12px 34px rgba(21, 2, 4, 0.18) !important;
  border-radius: 10px !important;
}
[class*="fixed"] button[class*="bg-blue-950"],
[class*="fixed"] button[class*="bg-slate-900"] {
  background: var(--navy) !important;
}

/* ---------- 14. PER-PAGE IDENTITIES ---------- */
/* pay: light-blue bands, medium-blue fleet, grey voices */
.pg-pay #operations-center-section,
.pg-pay #cross-wing-synergy-section {
  background-color: #ffffff !important;
  background-image: none !important;
}
.pg-pay #proprietary-production-fleet {
  background: var(--navy-2) !important;
}
.pg-pay #voices {
  background: var(--bone) !important;
}
.pg-pay #dynamic-portfolio-section {
  background: #ffffff !important;
}
.pg-pay #partner-ecosystem-slider {
  background: var(--navy-soft) !important;
}
/* tenders: red registry accents, pale-blue bands */
.pg-tenders #operations-center-section,
.pg-tenders #cross-wing-synergy-section {
  background-color: var(--navy-soft) !important;
  background-image: none !important;
}
.pg-tenders #proprietary-production-fleet {
  background: var(--navy-deep) !important;
}
.pg-tenders #voices {
  background: #fff7e6 !important;
}
.pg-tenders #dynamic-portfolio-section {
  background: var(--navy-soft) !important;
}
.pg-tenders #partner-ecosystem-slider {
  background: #ffffff !important;
  border-top-color: var(--red) !important;
  border-bottom-color: var(--red) !important;
}
.pg-tenders main .grid > [class*="rounded"] {
  border-left: 4px solid var(--red) !important;
}
/* digital: navy builder panel */
.pg-digital #ai-builder {
  background: var(--navy) !important;
}
.pg-digital #ai-builder h2,
.pg-digital #ai-builder h3 {
  color: #ffffff !important;
  border-bottom-color: rgba(255, 255, 255, 0.35) !important;
}
.pg-digital #ai-builder p,
.pg-digital #ai-builder [class*="text-slate-600"],
.pg-digital #ai-builder [class*="text-slate-700"] {
  color: #c9d5f2 !important;
}
.pg-digital #pricing,
.pg-digital #security {
  background: var(--bone) !important;
}
/* careers: navy/red job rails */
.pg-careers main [class*="rounded-2xl"],
.pg-careers main [class*="rounded-xl"] {
  border-left: 4px solid var(--navy) !important;
}
.pg-careers main [class*="border-orange-500"] {
  border-left: 4px solid var(--red) !important;
}
/* staff: navy ID-card tops */
.pg-staff main [class*="rounded-2xl"] {
  border-top: 5px solid var(--navy) !important;
}
.pg-staff main [class*="border-orange"] {
  border-top-color: var(--orange) !important;
}
/* knowledge base */
.pg-knowledge-base main [class*="rounded-2xl"] {
  border-top: 4px solid var(--navy) !important;
}
/* portal login */
.pg-portal main [class*="max-w-md"] {
  background: #fff !important;
  border: 1px solid var(--navy) !important;
  box-shadow: var(--shadow-md) !important;
  border-radius: 10px !important;
  text-align: left !important;
}
.pg-portal main [class*="max-w-md"] [class*="rounded-2xl"][class*="bg-orange-100"] {
  background: var(--orange) !important;
  color: #fff !important;
}
/* sitemap directory rails */
.pg-sitemap main a {
  font-family: "Noto Sans", sans-serif;
  font-size: inherit;
}
.pg-sitemap main [class*="bg-white"][class*="border"] {
  border-left: 4px solid var(--navy) !important;
}
/* terms legal measure */
.pg-terms main [class*="max-w-"],
.pg-terms main p {
  max-width: 88ch;
}
/* custom order: navy order-pad headers */
.pg-custom-software-order main [class*="bg-white"][class*="border"] {
  border-top: 4px solid var(--navy) !important;
}
.pg-custom-software-order main [class*="border-orange"] {
  border-top-color: var(--orange) !important;
}

/* ---------- 15. LEGACY PAGES (style.css shell) ---------- */
body[class*="pg-about"] main,
body[class*="pg-compliance"] main,
body[class*="pg-projects"] main,
body[class*="pg-search"] main {
  background: #ffffff;
}
body[class*="pg-about"] section,
body[class*="pg-compliance"] section,
body[class*="pg-projects"] section,
body[class*="pg-search"] section {
  background: var(--bone) !important;
  background-image: none !important;
  border-bottom: 1px solid var(--line) !important;
}
body[class*="pg-about"] .card,
body[class*="pg-compliance"] .card,
body[class*="pg-projects"] .card,
body[class*="pg-search"] .card {
  border-radius: 8px !important;
  border: 1px solid var(--line) !important;
  box-shadow: var(--shadow) !important;
}
body[class*="pg-about"] .btn,
body[class*="pg-compliance"] .btn,
body[class*="pg-projects"] .btn,
body[class*="pg-search"] .btn,
body[class*="pg-about"] .badge {
  border-radius: 6px !important;
  font-family: "Noto Sans", sans-serif !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: inherit;
  font-weight: 600;
}
body[class*="pg-about"] h1,
body[class*="pg-compliance"] h1,
body[class*="pg-projects"] h1,
body[class*="pg-search"] h1,
body[class*="pg-about"] h2,
body[class*="pg-compliance"] h2,
body[class*="pg-projects"] h2,
body[class*="pg-search"] h2 {
  text-transform: none;
  letter-spacing: normal;
  color: var(--navy);
}
body[class*="pg-about"] footer,
body[class*="pg-compliance"] footer,
body[class*="pg-projects"] footer,
body[class*="pg-search"] footer {
  background: var(--navy) !important;
}

/* ---------- 16. RESPONSIVE ---------- */
@media (max-width: 1024px) {
  header nav > a,
  header nav > div > button {
    padding: 9px 10px !important;
    font-size: 12px !important;
  }
}
@media (max-width: 640px) {
  .pg-index #hero-3d-section h1,
  .pg-tenders #hero-3d-section h1 {
    font-size: clamp(1.6rem, 8vw, 2.3rem) !important;
  }
  header a[href="index.html"] .font-black {
    font-size: 1.05rem !important;
  }
}
