:root {
  --ab-navy: #15316e;
  --ab-navy-strong: #0f2554;
  --ab-charcoal: #44484f;
  --ab-charcoal-strong: #2f3339;
  --ab-silver: #c9d0da;
  --ab-light: #f5f7fa;
  --ab-light-strong: #e8edf3;
  --ab-border: rgba(21, 49, 110, 0.14);
  --ab-shadow: 0 18px 40px rgba(15, 37, 84, 0.12);
  --ab-text: #2f3339;
}

html {
  background: #fff;
}

body {
  color: var(--ab-text);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(245, 247, 250, 0.92)),
    repeating-linear-gradient(-35deg, rgba(21, 49, 110, 0.035) 0 2px, transparent 2px 40px);
}

body > .w-full.bg-menzies-yellow-300.py-1.px-4.text-center.z-40.relative {
  background: linear-gradient(90deg, #eff3f8, #ffffff) !important;
  border-top: 1px solid var(--ab-border);
  border-bottom: 1px solid var(--ab-border);
}

body > .w-full.bg-menzies-yellow-300.py-1.px-4.text-center.z-40.relative p {
  color: var(--ab-navy) !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em;
}

#js-header {
  box-shadow: var(--ab-shadow);
}

#js-header > .bg-menzies-blue-800,
#js-header .bg-menzies-blue-900,
#js-header .group[open],
#js-header .group.open {
  background: rgba(255, 255, 255, 0.96) !important;
  color: var(--ab-text) !important;
}

#js-header a,
#js-header button,
#js-header .text-white,
#js-header [class*="text-white"],
#js-header [class*="text-menzies-yellow-300"],
#js-header [class*="text-menzies-yellow-500"] {
  color: var(--ab-text) !important;
}

#js-header a:hover,
#js-header a:focus-visible,
#js-header button:hover,
#js-header button:focus-visible {
  color: var(--ab-navy) !important;
}

#js-header .group > div,
#js-header .group ul,
#js-header .group li > div {
  background: #fff !important;
  border-color: var(--ab-border) !important;
}

#js-header img[alt="AB Outsourcing logo"] {
  max-width: 5.5rem !important;
  height: auto !important;
}

footer img[alt="AB Outsourcing logo"] {
  max-width: 5.5rem !important;
  height: auto !important;
}

.btn-yellow {
  background: linear-gradient(135deg, var(--ab-navy), #214892) !important;
  border-color: var(--ab-navy) !important;
  color: #fff !important;
  box-shadow: 0 12px 24px rgba(21, 49, 110, 0.18);
}

.btn-yellow:hover,
.btn-yellow:focus-visible {
  background: linear-gradient(135deg, var(--ab-navy-strong), var(--ab-navy)) !important;
}

.btn-yellow-outline {
  background: rgba(255, 255, 255, 0.92) !important;
  border-color: var(--ab-charcoal) !important;
  color: var(--ab-charcoal) !important;
}

.btn-yellow-outline:hover,
.btn-yellow-outline:focus-visible {
  background: var(--ab-charcoal) !important;
  color: #fff !important;
}

.bg-menzies-yellow-300 {
  background-color: var(--ab-light) !important;
}

.bg-menzies-yellow-200,
.even\:bg-menzies-yellow-200:nth-child(2n) {
  background-color: var(--ab-light-strong) !important;
}

.text-menzies-grey-800,
.text-menzies-offblack {
  color: var(--ab-text) !important;
}

.text-menzies-blue-400 {
  color: #6b7280 !important;
}

.bg-menzies-blue-800 {
  background: linear-gradient(135deg, var(--ab-navy-strong), var(--ab-charcoal-strong)) !important;
}

.bg-menzies-blue-900 {
  background: linear-gradient(135deg, #262a31, var(--ab-charcoal)) !important;
}

.bg-menzies-blue-300 {
  background-color: #d8e0ec !important;
}

.text-menzies-yellow-300,
.text-menzies-yellow-500,
.border-menzies-yellow-300 {
  color: var(--ab-silver) !important;
  border-color: var(--ab-silver) !important;
}

.group-hover\:bg-menzies-yellow-300:hover,
.group-focus\:bg-menzies-yellow-300:focus,
.lg\:motion-safe\:group-hover\:bg-menzies-yellow-300:hover {
  background-color: var(--ab-silver) !important;
}

.group-hover\:text-menzies-offblack:hover,
.group-focus\:text-menzies-offblack:focus,
.lg\:motion-safe\:group-hover\:text-menzies-blue-900:hover,
.lg\:motion-safe\:group-hover\:text-menzies-blue-900:hover svg {
  color: var(--ab-charcoal-strong) !important;
}

.outline-menzies-blue-300 {
  outline-color: #93a5c3 !important;
}

a.anchor,
.rich-text a {
  color: var(--ab-navy) !important;
}

.shadow-right-xxl,
.shadow-lg {
  box-shadow: var(--ab-shadow) !important;
}
