/* =========================================================
   CUBEON TECHNOLOGIES
   ABU DHABI LANDING PAGE
========================================================= */

.abu-page {
  --abu-navy: #07164f;
  --abu-navy-2: #0a2763;
  --abu-dark: #020a24;

  --abu-blue: #246bfe;
  --abu-gold: #c7a35c;
  --abu-cyan: #3cc2d8;

  --abu-text: #101828;
  --abu-muted: #667085;

  --abu-bg: #f5f8fc;
  --abu-bg-blue: #eef4fb;

  --abu-border: #e1e7ef;

  --abu-shadow: 0 22px 60px rgba(4, 20, 68, 0.1);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;

  color: var(--abu-text);
}

/* =========================================================
   RESET + STICKY SUPPORT
========================================================= */

html,
body {
  margin: 0;

  overflow-x: clip !important;
}

.abu-page {
  overflow: visible !important;
}

.abu-page *,
.abu-page *::before,
.abu-page *::after {
  box-sizing: border-box;
}

.abu-page .container {
  width: min(1200px, calc(100% - 48px));

  max-width: 1200px;

  margin: 0 auto;
}

/* =========================================================
   HEADER
========================================================= */

.abu-page .abu-header {
  position: sticky !important;
  position: -webkit-sticky !important;

  top: 0 !important;

  left: 0 !important;
  right: 0 !important;

  z-index: 999999 !important;

  width: 100% !important;

  background: rgba(255, 255, 255, 0.97) !important;

  border-bottom: 1px solid rgba(225, 231, 239, 0.9);

  -webkit-backdrop-filter: blur(18px);

  backdrop-filter: blur(18px);

  box-shadow: 0 4px 24px rgba(4, 20, 68, 0.06);
}

.abu-header-inner {
  min-height: 76px;

  display: flex;

  align-items: center;

  gap: 28px;
}

.abu-logo img {
  display: block;

  width: auto;

  height: 60px;
}

.abu-nav {
  margin-left: auto;

  display: flex;

  align-items: center;

  gap: 27px;
}

.abu-nav a {
  position: relative;

  color: #344054 !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px !important;

  font-weight: 600 !important;

  text-decoration: none !important;

  transition: 0.25s;
}

.abu-nav a::after {
  content: "";

  position: absolute;

  left: 0;

  bottom: -9px;

  width: 0;

  height: 2px;

  background: var(--abu-gold);

  transition: 0.25s;
}

.abu-nav a:hover {
  color: var(--abu-navy) !important;
}

.abu-nav a:hover::after {
  width: 100%;
}

.abu-header-cta {
  min-height: 42px;

  padding: 0 18px;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  flex-shrink: 0;

  border-radius: 7px;

  color: white !important;

  background: linear-gradient(135deg, var(--abu-navy), #0b3979) !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 12px !important;

  font-weight: 600 !important;

  text-decoration: none !important;

  box-shadow: 0 8px 22px rgba(7, 22, 79, 0.18);
}

/* =========================================================
   MOBILE HEADER
========================================================= */

.abu-mobile-toggle {
  display: none;

  width: 42px;
  height: 42px;

  margin-left: auto;

  align-items: center;

  justify-content: center;

  flex-direction: column;

  gap: 5px;

  border: 1px solid var(--abu-border);

  border-radius: 8px;

  background: white;
}

.abu-mobile-toggle span {
  width: 18px;
  height: 2px;

  background: var(--abu-navy);
}

.abu-mobile-nav {
  display: none;

  position: fixed;

  left: 0;

  top: 76px;

  width: 100%;

  z-index: 999998;

  background: white;

  box-shadow: 0 18px 40px rgba(7, 22, 79, 0.12);
}

.abu-mobile-nav.active {
  display: flex;

  flex-direction: column;
}

.abu-mobile-nav a {
  padding: 15px 24px;

  border-bottom: 1px solid #eef1f5;

  color: var(--abu-navy) !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px !important;

  font-weight: 600 !important;

  text-decoration: none !important;
}

/* =========================================================
   COMMON
========================================================= */

.abu-section {
  padding: 105px 0;
}

.abu-eyebrow {
  display: inline-flex;

  align-items: center;

  gap: 10px;

  margin-bottom: 17px;

  color: var(--abu-blue) !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 10px !important;

  font-weight: 650 !important;

  letter-spacing: 2px;

  text-transform: uppercase;
}

.abu-eyebrow::before {
  content: "";

  width: 26px;

  height: 2px;

  background: var(--abu-gold);
}

.abu-eyebrow.light {
  color: #9bcaff !important;
}

.abu-section-header {
  max-width: 760px;

  margin-bottom: 55px;
}

.abu-section-header.center {
  margin-left: auto;

  margin-right: auto;

  text-align: center;
}

.abu-section-header h2 {
  margin: 0 0 17px;

  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: clamp(35px, 4vw, 49px);

  line-height: 1.12;

  font-weight: 650;

  letter-spacing: -1.7px;
}

.abu-section-header h2 span {
  color: var(--abu-blue);
}

.abu-section-header p {
  max-width: 660px;

  color: var(--abu-muted);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;

  line-height: 1.75;
}

/* =========================================================
   HERO
========================================================= */

.abu-hero {
  position: relative;

  min-height: 790px;

  display: flex;

  align-items: center;

  overflow: hidden;

  color: white;

  background-image:
    linear-gradient(
      90deg,
      rgba(2, 10, 36, 0.94) 0%,
      rgba(5, 25, 69, 0.87) 44%,
      rgba(4, 20, 58, 0.56) 100%
    ),
    url("../img/abu-dhabi-hero.jpg");

  background-position: center;

  background-size: cover;

  background-repeat: no-repeat;
}

.abu-hero::before {
  content: "";

  position: absolute;

  inset: 0;

  background: radial-gradient(
    circle at 75% 45%,
    rgba(48, 110, 255, 0.18),
    transparent 28%
  );

  pointer-events: none;
}

.abu-hero::after {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  height: 130px;

  background: linear-gradient(180deg, transparent, rgba(2, 10, 36, 0.55));
}

.abu-hero-layout {
  position: relative;

  z-index: 5;

  display: grid;

  grid-template-columns: 1.12fr 0.88fr;

  gap: 80px;

  align-items: center;
}

.abu-hero-content {
  max-width: 700px;
}

.abu-hero-location {
  display: inline-flex;

  align-items: center;

  gap: 9px;

  margin-bottom: 24px;

  color: #efcf92;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;

  font-weight: 650;

  letter-spacing: 1.8px;
}

.abu-hero h1 {
  margin: 0 0 26px;

  color: white !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: clamp(50px, 5.5vw, 76px) !important;

  line-height: 1.03 !important;

  font-weight: 650 !important;

  letter-spacing: -3.2px;
}

.abu-hero h1 span {
  color: #d8e9ff !important;
}

.abu-hero-content > p {
  max-width: 640px;

  margin: 0 0 34px;

  color: rgba(255, 255, 255, 0.72);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 17px;

  line-height: 1.75;
}

.abu-hero-actions {
  display: flex;

  flex-wrap: wrap;

  gap: 12px;

  margin-bottom: 30px;
}

.abu-btn {
  min-height: 52px;

  padding: 0 22px;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 10px;

  border-radius: 8px;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px !important;

  font-weight: 600 !important;

  text-decoration: none !important;

  transition: 0.25s;
}

.abu-btn-light {
  color: var(--abu-navy) !important;

  background: white !important;

  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
}

.abu-btn-light:hover {
  transform: translateY(-2px);
}

.abu-btn-glass {
  color: white !important;

  border: 1px solid rgba(255, 255, 255, 0.28);

  background: rgba(255, 255, 255, 0.08);

  -webkit-backdrop-filter: blur(8px);

  backdrop-filter: blur(8px);
}

.abu-btn-glass:hover {
  background: rgba(255, 255, 255, 0.14);
}

.abu-hero-trust {
  display: flex;

  flex-wrap: wrap;

  gap: 15px 22px;
}

.abu-hero-trust span {
  display: inline-flex;

  align-items: center;

  gap: 7px;

  color: rgba(255, 255, 255, 0.65);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;
}

.abu-hero-trust i {
  color: #efcf92;
}

/* Hero panel */

.abu-hero-panel {
  position: relative;

  padding: 30px;

  border: 1px solid rgba(255, 255, 255, 0.16);

  border-radius: 22px;

  background: rgba(4, 18, 56, 0.64);

  -webkit-backdrop-filter: blur(18px);

  backdrop-filter: blur(18px);

  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.28);
}

.abu-panel-label {
  margin-bottom: 25px;

  color: rgba(255, 255, 255, 0.42);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;

  font-weight: 650;

  letter-spacing: 1.5px;
}

.abu-panel-core {
  padding: 22px;

  margin-bottom: 18px;

  border-radius: 14px;

  background: linear-gradient(
    135deg,
    rgba(37, 107, 254, 0.3),
    rgba(199, 163, 92, 0.12)
  );
}

.abu-panel-core span {
  display: block;

  margin-bottom: 5px;

  color: #efcf92;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;

  letter-spacing: 1.4px;

  font-weight: 650;
}

.abu-panel-core strong {
  color: white;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 22px;
}

.abu-panel-grid {
  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 12px;
}

.abu-panel-grid > div {
  min-height: 118px;

  padding: 17px;

  border: 1px solid rgba(255, 255, 255, 0.09);

  border-radius: 12px;

  background: rgba(255, 255, 255, 0.045);
}

.abu-panel-grid i {
  display: block;

  margin-bottom: 15px;

  color: #8fc6ff;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 18px;
}

.abu-panel-grid strong {
  display: block;

  color: white;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;
}

.abu-panel-grid small {
  display: block;

  margin-top: 4px;

  color: rgba(255, 255, 255, 0.43);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;
}

.abu-panel-status {
  display: flex;

  align-items: center;

  gap: 9px;

  margin-top: 18px;

  color: rgba(255, 255, 255, 0.57);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;
}

.abu-panel-status > span {
  width: 8px;

  height: 8px;

  border-radius: 50%;

  background: #41d18a;

  box-shadow: 0 0 0 5px rgba(65, 209, 138, 0.1);
}

.abu-scroll-indicator {
  position: absolute;

  left: 50%;

  bottom: 25px;

  z-index: 8;

  transform: translateX(-50%);

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 7px;

  color: rgba(255, 255, 255, 0.55) !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;

  letter-spacing: 1px;

  text-decoration: none !important;
}

/* =========================================================
   INTRO BAND
========================================================= */

.abu-intro-band {
  padding: 0;

  background: white;

  border-bottom: 1px solid var(--abu-border);
}

.abu-intro-items {
  display: grid;

  grid-template-columns: repeat(4, 1fr);
}

.abu-intro-items > div {
  position: relative;

  min-height: 120px;

  padding: 26px 30px;

  display: flex;

  flex-direction: column;

  justify-content: center;

  border-right: 1px solid var(--abu-border);
}

.abu-intro-items > div:last-child {
  border-right: 0;
}

.abu-intro-items span {
  position: absolute;

  right: 18px;

  top: 16px;

  color: #e8edf5;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 26px;

  font-weight: 650;
}

.abu-intro-items strong {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 16px;
}

.abu-intro-items small {
  margin-top: 5px;

  color: var(--abu-muted);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;
}

/* =========================================================
   SOLUTIONS
========================================================= */

.abu-solutions {
  background: var(--abu-bg-blue);
}

.abu-solutions-layout {
  display: grid;

  grid-template-columns: 1.25fr 0.75fr 0.75fr;

  gap: 18px;
}

.abu-solution-feature {
  grid-row: span 2;

  min-height: 560px;

  padding: 38px;

  display: grid;

  grid-template-rows: auto 1fr;

  overflow: hidden;

  border-radius: 18px;

  color: white;

  background: linear-gradient(145deg, #061650, #0c3578);

  box-shadow: 0 22px 55px rgba(7, 22, 79, 0.16);
}

.abu-index {
  display: block;

  margin-bottom: 22px;

  color: rgba(255, 255, 255, 0.3);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;

  font-weight: 650;
}

.abu-feature-icon {
  width: 56px;
  height: 56px;

  display: flex;

  align-items: center;
  justify-content: center;

  margin-bottom: 22px;

  border-radius: 14px;

  color: white;

  background: var(--abu-blue);
}

.abu-solution-feature h3 {
  color: white;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 28px;
}

.abu-solution-feature p {
  max-width: 420px;

  color: rgba(255, 255, 255, 0.62);

  line-height: 1.7;
}

.abu-solution-feature a {
  display: inline-flex;

  gap: 8px;

  color: #9bcaff !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
  font-size: 15px;

  font-weight: 600;

  text-decoration: none !important;
}

.abu-agent-preview {
  position: relative;

  min-height: 220px;
}

.abu-agent-orbit {
  position: absolute;

  left: 50%;
  top: 50%;

  width: 220px;
  height: 220px;

  transform: translate(-50%, -50%);

  border: 1px dashed rgba(255, 255, 255, 0.18);

  border-radius: 50%;
}

.abu-agent-core {
  position: absolute;

  left: 50%;
  top: 50%;

  width: 120px;
  height: 120px;

  transform: translate(-50%, -50%);

  display: flex;

  flex-direction: column;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: linear-gradient(145deg, #246bfe, #0d3fa5);

  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.25);
}

.abu-agent-core i {
  margin-bottom: 8px;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 24px;
}

.abu-agent-core span {
  color: rgba(255, 255, 255, 0.72);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;

  letter-spacing: 1px;
}

.abu-solution-card {
  position: relative;

  min-height: 270px;

  padding: 27px;

  border: 1px solid var(--abu-border);

  border-radius: 16px;

  background: white;

  transition: 0.3s;
}

.abu-solution-card:hover {
  transform: translateY(-5px);

  box-shadow: var(--abu-shadow);
}

.abu-solution-card.dark {
  color: white;

  border-color: transparent;

  background: var(--abu-navy);
}

.abu-solution-card > span {
  position: absolute;

  right: 18px;

  top: 15px;

  color: #e6ebf3;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 22px;

  font-weight: 650;
}

.abu-solution-card.dark > span {
  color: rgba(255, 255, 255, 0.15);
}

.abu-solution-card > i {
  margin-bottom: 22px;

  color: var(--abu-blue);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 22px;
}

.abu-solution-card.dark > i {
  color: #9bcaff;
}

.abu-solution-card h3 {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 17px;
}

.abu-solution-card.dark h3 {
  color: white;
}

.abu-solution-card p {
  color: var(--abu-muted);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;

  line-height: 1.65;
}

.abu-solution-card.dark p {
  color: rgba(255, 255, 255, 0.58);
}

.abu-solution-card a {
  display: inline-flex;

  gap: 7px;

  margin-top: 10px;

  color: var(--abu-blue) !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;

  font-weight: 600;

  text-decoration: none !important;
}

.abu-solution-card.dark a {
  color: #9bcaff !important;
}

/* =========================================================
   TRANSFORMATION
========================================================= */

.abu-transformation {
  color: white;

  background: linear-gradient(135deg, #020a24, #071e55);
}

.abu-transformation-grid {
  display: grid;

  grid-template-columns: 0.9fr 1.1fr;

  gap: 80px;

  align-items: center;
}

.abu-transformation-content h2 {
  color: white;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: clamp(36px, 4vw, 50px);

  line-height: 1.1;

  font-weight: 650;
}

.abu-transformation-content h2 span {
  color: #9bcaff;
}

.abu-transformation-content p {
  color: rgba(255, 255, 255, 0.62);

  line-height: 1.75;
}

.abu-inline-link {
  display: inline-flex;

  gap: 8px;

  margin-top: 15px;

  color: #efcf92 !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;

  font-weight: 600;

  text-decoration: none !important;
}

.abu-transformation-flow {
  padding: 28px;

  border: 1px solid rgba(255, 255, 255, 0.09);

  border-radius: 18px;

  background: rgba(255, 255, 255, 0.035);
}

.abu-flow-item {
  display: flex;

  align-items: center;

  gap: 15px;

  padding: 15px;

  border: 1px solid rgba(255, 255, 255, 0.07);

  border-radius: 10px;

  background: rgba(255, 255, 255, 0.03);
}

.abu-flow-item.active {
  background: linear-gradient(
    90deg,
    rgba(36, 107, 254, 0.28),
    rgba(199, 163, 92, 0.1)
  );
}

.abu-flow-item > span {
  width: 40px;
  height: 40px;

  flex-shrink: 0;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 9px;

  background: rgba(255, 255, 255, 0.08);

  color: #9bcaff;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;

  font-weight: 650;
}

.abu-flow-item strong {
  color: white;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;
}

.abu-flow-item small {
  display: block;

  margin-top: 4px;

  color: rgba(255, 255, 255, 0.42);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;
}

.abu-flow-arrow {
  height: 28px;

  display: flex;

  align-items: center;
  justify-content: center;

  color: rgba(255, 255, 255, 0.18);
}

/* =========================================================
   INDUSTRIES
========================================================= */

.abu-industries {
  background: white;
}

.abu-industry-layout {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 16px;
}

.abu-industry-card {
  min-height: 205px;

  padding: 25px;

  border: 1px solid var(--abu-border);

  border-radius: 14px;

  background: #fbfcfe;

  transition: 0.3s;
}

.abu-industry-card:hover {
  transform: translateY(-4px);

  box-shadow: var(--abu-shadow);
}

.abu-industry-card.large {
  grid-column: span 2;

  min-height: 260px;

  color: white;

  background: linear-gradient(135deg, #07164f, #0d377b);
}

.abu-industry-card.large.secondary {
  background: linear-gradient(135deg, #5f4b21, #9b7838);
}

.abu-industry-card.accent {
  background: #edf4ff;

  border-color: #d7e5fb;
}

.abu-industry-card.dark {
  color: white;

  border-color: transparent;

  background: #091a45;
}

.abu-industry-card > i,
.abu-industry-icon {
  width: 46px;
  height: 46px;

  margin-bottom: 18px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 10px;

  color: var(--abu-blue);

  background: #edf3ff;
}

.abu-industry-card.large .abu-industry-icon,
.abu-industry-card.dark > i {
  color: #efcf92;

  background: rgba(255, 255, 255, 0.08);
}

.abu-industry-card h3 {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 17px;
}

.abu-industry-card.large h3,
.abu-industry-card.dark h3 {
  color: white;
}

.abu-industry-card p {
  color: var(--abu-muted);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;

  line-height: 1.65;
}

.abu-industry-card.large p,
.abu-industry-card.dark p {
  color: rgba(255, 255, 255, 0.58);
}

.abu-industry-link {
  margin-top: 30px;

  text-align: center;
}

.abu-industry-link a {
  display: inline-flex;

  gap: 8px;

  color: var(--abu-blue) !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;

  font-weight: 600;

  text-decoration: none !important;
}

/* =========================================================
   PLATFORM
========================================================= */

.abu-platform {
  background: var(--abu-bg-blue);
}

.abu-platform-layout {
  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 75px;

  align-items: center;
}

.abu-platform-content h2 {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: clamp(35px, 4vw, 49px);

  line-height: 1.12;

  font-weight: 650;
}

.abu-platform-content h2 span {
  color: var(--abu-blue);
}

.abu-platform-content > p {
  color: var(--abu-muted);

  line-height: 1.75;
}

.abu-platform-list {
  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 10px;

  margin-top: 25px;
}

.abu-platform-list > div {
  display: flex;

  align-items: center;

  gap: 9px;

  padding: 11px 12px;

  border: 1px solid var(--abu-border);

  border-radius: 8px;

  background: white;

  color: #455168;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;
}

.abu-platform-list i {
  color: var(--abu-blue);
}

/* Platform visual */

.abu-platform-visual {
  position: relative;

  min-height: 470px;
}

.abu-platform-visual::before {
  content: "";

  position: absolute;

  left: 50%;
  top: 50%;

  width: 360px;
  height: 360px;

  transform: translate(-50%, -50%);

  border: 1px dashed #bdc9da;

  border-radius: 50%;
}

.abu-platform-center {
  position: absolute;

  left: 50%;
  top: 50%;

  z-index: 5;

  width: 160px;
  height: 160px;

  transform: translate(-50%, -50%);

  display: flex;

  flex-direction: column;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  color: white;

  background: linear-gradient(145deg, var(--abu-navy), #164187);

  box-shadow: 0 20px 50px rgba(7, 22, 79, 0.22);
}

.abu-platform-center i {
  margin-bottom: 9px;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 24px;
}

.abu-platform-center span {
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;

  font-weight: 650;

  letter-spacing: 1px;
}

.abu-platform-node {
  position: absolute;

  z-index: 6;

  width: 90px;
  height: 75px;

  display: flex;

  flex-direction: column;

  align-items: center;
  justify-content: center;

  gap: 7px;

  border: 1px solid var(--abu-border);

  border-radius: 12px;

  background: white;

  box-shadow: 0 14px 35px rgba(7, 22, 79, 0.08);
}

.abu-platform-node i {
  color: var(--abu-blue);
}

.abu-platform-node span {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;

  font-weight: 600;
}

.node-crm {
  left: 50%;
  top: 10px;

  transform: translateX(-50%);
}

.node-data {
  left: 10px;
  top: 150px;
}

.node-ai {
  right: 10px;
  top: 150px;
}

.node-app {
  left: 80px;
  bottom: 5px;
}

.node-api {
  right: 80px;
  bottom: 5px;
}

/* =========================================================
   WHY
========================================================= */

.abu-why {
  background: white;
}

.abu-why-layout {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  border-top: 1px solid var(--abu-border);

  border-bottom: 1px solid var(--abu-border);
}

.abu-why-column {
  position: relative;

  min-height: 280px;

  padding: 35px 28px;

  border-right: 1px solid var(--abu-border);
}

.abu-why-column:last-child {
  border-right: 0;
}

.abu-why-column.featured {
  color: white;

  background: var(--abu-navy);
}

.abu-why-number {
  position: absolute;

  right: 18px;
  top: 16px;

  color: #e7ebf1;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 27px;

  font-weight: 650;
}

.abu-why-column.featured .abu-why-number {
  color: rgba(255, 255, 255, 0.12);
}

.abu-why-column > i {
  margin-bottom: 28px;

  color: var(--abu-blue);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 24px;
}

.abu-why-column.featured > i {
  color: #efcf92;
}

.abu-why-column h3 {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 17px;
}

.abu-why-column.featured h3 {
  color: white;
}

.abu-why-column p {
  color: var(--abu-muted);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;

  line-height: 1.7;
}

.abu-why-column.featured p {
  color: rgba(255, 255, 255, 0.55);
}

/* =========================================================
   PROCESS
========================================================= */

.abu-process {
  background: var(--abu-bg);
}

.abu-process-layout {
  display: grid;

  grid-template-columns: 0.75fr 1.25fr;

  gap: 70px;
}

.abu-process-heading h2 {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: clamp(35px, 4vw, 48px);

  line-height: 1.12;

  font-weight: 650;
}

.abu-process-heading h2 span {
  color: var(--abu-blue);
}

.abu-process-heading p {
  color: var(--abu-muted);

  line-height: 1.7;
}

.abu-process-list {
  border-left: 1px solid #cad4e2;
}

.abu-process-item {
  display: grid;

  grid-template-columns: 42px 42px 1fr;

  gap: 14px;

  align-items: start;

  padding: 20px 0 20px 25px;

  border-bottom: 1px solid var(--abu-border);
}

.abu-process-item > span {
  color: #a0aec0;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;

  font-weight: 650;
}

.abu-process-item > i {
  width: 38px;
  height: 38px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 9px;

  color: var(--abu-blue);

  background: #e9f1ff;
}

.abu-process-item strong {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;
}

.abu-process-item p {
  margin: 4px 0 0;

  color: var(--abu-muted);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;

  line-height: 1.6;
}

/* =========================================================
   LOCATIONS
========================================================= */

.abu-locations {
  background: white;
}

.abu-location-grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 18px;
}

.abu-location-card {
  min-height: 240px;

  padding: 28px;

  border: 1px solid var(--abu-border);

  border-radius: 14px;

  background: #fbfcfe;

  color: inherit !important;

  text-decoration: none !important;

  transition: 0.3s;
}

.abu-location-card:hover {
  transform: translateY(-4px);

  box-shadow: var(--abu-shadow);
}

.abu-location-card.current {
  color: white !important;

  border-color: transparent;

  background: linear-gradient(135deg, var(--abu-navy), #123e85);
}

.abu-location-card > span {
  color: #98a2b3;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;

  font-weight: 650;

  letter-spacing: 1px;
}

.abu-location-card.current > span {
  color: #efcf92;
}

.abu-location-card i {
  display: block;

  margin: 20px 0;

  color: var(--abu-blue);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 22px;
}

.abu-location-card.current i {
  color: #efcf92;
}

.abu-location-card h3 {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 20px;
}

.abu-location-card.current h3 {
  color: white;
}

.abu-location-card p {
  color: var(--abu-muted);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;

  line-height: 1.65;
}

.abu-location-card.current p {
  color: rgba(255, 255, 255, 0.58);
}

/* =========================================================
   CTA
========================================================= */

.abu-cta {
  padding: 80px 0;

  background: #020a24;
}

.abu-cta-box {
  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 50px;

  padding: 48px 55px;

  border: 1px solid rgba(255, 255, 255, 0.08);

  border-radius: 18px;

  background: radial-gradient(
    circle at 80% 50%,
    rgba(36, 107, 254, 0.2),
    transparent 28%
  );
}

.abu-cta h2 {
  margin: 0 0 12px;

  color: white;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: clamp(34px, 4vw, 47px);

  font-weight: 650;
}

.abu-cta h2 span {
  color: #9bcaff;
}

.abu-cta p {
  margin: 0;

  color: rgba(255, 255, 255, 0.6);
}

/* =========================================================
   CONTACT
========================================================= */

.abu-contact {
  background: #f3f6fa;
}

.abu-contact-layout {
  display: grid;

  grid-template-columns: 0.8fr 1.2fr;

  gap: 65px;
}

.abu-contact-panel {
  padding: 12px 0;
}

.abu-contact-panel h2 {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: clamp(35px, 4vw, 49px);

  line-height: 1.12;

  font-weight: 650;
}

.abu-contact-panel h2 span {
  color: var(--abu-blue);
}

.abu-contact-panel > p {
  color: var(--abu-muted);

  line-height: 1.75;
}

.abu-contact-info {
  display: flex;

  flex-direction: column;

  gap: 12px;

  margin-top: 30px;
}

.abu-contact-info a {
  display: flex;

  align-items: center;

  gap: 13px;

  padding: 14px;

  border: 1px solid var(--abu-border);

  border-radius: 10px;

  background: white;

  color: inherit !important;

  text-decoration: none !important;
}

.abu-contact-info i {
  width: 40px;
  height: 40px;

  display: flex;

  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  border-radius: 9px;

  color: var(--abu-blue);

  background: #ebf2ff;
}

.abu-contact-info small {
  display: block;

  margin-bottom: 2px;

  color: #98a2b3;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 13px;

  letter-spacing: 1px;
}

.abu-contact-info strong {
  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;
}

/* Form */

.abu-form-panel {
  padding: 36px;

  border: 1px solid var(--abu-border);

  border-radius: 18px;

  background: white;

  box-shadow: var(--abu-shadow);
}

.abu-form-row {
  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 18px;
}

.abu-form-group {
  margin-bottom: 18px;
}

.abu-form-group label {
  display: block;

  margin-bottom: 7px;

  color: var(--abu-navy);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;

  font-weight: 600;
}

.abu-form-group input,
.abu-form-group select,
.abu-form-group textarea {
  width: 100%;

  padding: 13px 14px;

  border: 1px solid #d8e0ea;

  border-radius: 7px;

  outline: none;

  background: #fcfdff;

  color: var(--abu-text);

  font-family: inherit;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;
}

.abu-form-group input:focus,
.abu-form-group select:focus,
.abu-form-group textarea:focus {
  border-color: var(--abu-blue);

  box-shadow: 0 0 0 3px rgba(36, 107, 254, 0.08);
}

.abu-submit {
  min-height: 52px;

  padding: 0 22px;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 10px;

  border: 0;

  border-radius: 8px;

  color: white;

  background: linear-gradient(135deg, var(--abu-navy), #16458f);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;

  font-weight: 600;

  cursor: pointer;
}

.abu-form-message {
  margin-top: 12px;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;
}

/* =========================================================
   FOOTER
========================================================= */

.abu-footer {
  padding: 65px 0 24px;

  color: white;

  background: var(--abu-dark);
}

.abu-footer-grid {
  display: grid;

  grid-template-columns: 1.5fr 1fr 1fr 1fr;

  gap: 45px;

  padding-bottom: 45px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
}

.abu-footer-logo img {
  width: auto;

  height: 58px;

  margin-bottom: 18px;

  filter: brightness(0) invert(1);
}

.abu-footer p {
  max-width: 280px;

  color: rgba(255, 255, 255, 0.52);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;

  line-height: 1.7;
}

.abu-footer h4 {
  color: white !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px !important;
}

.abu-footer a {
  display: block;

  margin-bottom: 10px;

  color: rgba(255, 255, 255, 0.56) !important;

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 12px !important;

  text-decoration: none !important;
}

.abu-footer a:hover {
  color: white !important;
}

.abu-footer-bottom {
  padding-top: 20px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  color: rgba(255, 255, 255, 0.4);

  font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 14px;
}

/* =========================================================
   SCROLL TOP
========================================================= */

.abu-scroll-top {
  position: fixed;

  right: 24px;
  bottom: 24px;

  z-index: 99999;

  width: 44px;
  height: 44px;

  display: flex;

  align-items: center;
  justify-content: center;

  border: 0;

  border-radius: 50%;

  color: white;

  background: var(--abu-navy);

  box-shadow: 0 10px 25px rgba(7, 22, 79, 0.3);

  cursor: pointer;

  opacity: 0;

  visibility: hidden;

  transform: translateY(10px);

  transition: 0.25s;
}

.abu-scroll-top.visible {
  opacity: 1;

  visibility: visible;

  transform: translateY(0);
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {
  .abu-nav {
    gap: 16px;
  }

  .abu-solutions-layout {
    grid-template-columns: 1fr 1fr;
  }

  .abu-solution-feature {
    grid-column: 1 / -1;

    grid-row: auto;
  }

  .abu-industry-layout {
    grid-template-columns: repeat(3, 1fr);
  }

  .abu-industry-card.large {
    grid-column: span 1;
  }
}

@media (max-width: 900px) {
  .abu-nav,
  .abu-header-cta {
    display: none !important;
  }

  .abu-mobile-toggle {
    display: flex;
  }

  .abu-hero-layout,
  .abu-transformation-grid,
  .abu-platform-layout,
  .abu-process-layout,
  .abu-contact-layout {
    grid-template-columns: 1fr;
  }

  .abu-hero {
    min-height: auto;

    padding: 90px 0 100px;
  }

  .abu-intro-items {
    grid-template-columns: 1fr 1fr;
  }

  .abu-solutions-layout,
  .abu-industry-layout {
    grid-template-columns: repeat(2, 1fr);
  }

  .abu-why-layout {
    grid-template-columns: 1fr 1fr;
  }

  .abu-why-column:nth-child(2) {
    border-right: 0;
  }

  .abu-location-grid {
    grid-template-columns: 1fr;
  }

  .abu-cta-box {
    flex-direction: column;

    align-items: flex-start;
  }

  .abu-footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .abu-page .container {
    width: calc(100% - 32px);
  }

  .abu-section {
    padding: 70px 0;
  }

  .abu-hero {
    padding: 65px 0 90px;

    background-position: 62% center;
  }

  .abu-hero-layout {
    gap: 45px;
  }

  .abu-hero h1 {
    font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 40px !important;

    letter-spacing: -1.8px;
  }

  .abu-hero-content > p {
    font-family: "Inter", "Segoe UI", Arial, sans-serif;
font-size: 15px;
  }

  .abu-hero-actions {
    flex-direction: column;
  }

  .abu-hero-actions .abu-btn {
    width: 100%;
  }

  .abu-hero-trust {
    flex-direction: column;

    gap: 10px;
  }

  .abu-hero-panel {
    padding: 22px;
  }

  .abu-panel-grid {
    grid-template-columns: 1fr 1fr;
  }

  .abu-intro-items {
    grid-template-columns: 1fr;
  }

  .abu-intro-items > div {
    border-right: 0;

    border-bottom: 1px solid var(--abu-border);
  }

  .abu-solutions-layout,
  .abu-industry-layout {
    grid-template-columns: 1fr;
  }

  .abu-solution-feature {
    min-height: auto;

    padding: 28px;
  }

  .abu-agent-preview {
    min-height: 220px;
  }

  .abu-platform-list {
    grid-template-columns: 1fr;
  }

  .abu-platform-visual {
    min-height: 430px;

    transform: scale(0.82);

    margin: -25px -45px;
  }

  .abu-why-layout {
    grid-template-columns: 1fr;
  }

  .abu-why-column {
    border-right: 0;

    border-bottom: 1px solid var(--abu-border);
  }

  .abu-process-list {
    border-left: 0;
  }

  .abu-process-item {
    padding-left: 0;
  }

  .abu-cta-box {
    padding: 32px 24px;
  }

  .abu-form-row {
    grid-template-columns: 1fr;
  }

  .abu-form-panel {
    padding: 24px;
  }

  .abu-submit {
    width: 100%;
  }

  .abu-footer-grid {
    grid-template-columns: 1fr 1fr;

    gap: 35px 25px;
  }

  .abu-footer-grid > div:first-child {
    grid-column: 1 / -1;
  }

  .abu-footer-bottom {
    flex-direction: column;

    align-items: flex-start;

    gap: 10px;
  }
}
/* =========================================================
   FONT AWESOME FIX
   Prevent page CSS from overriding Font Awesome font family
========================================================= */

.fa-solid,
.fas {
  font-family: "Font Awesome 6 Free" !important;
  font-style: normal !important;
  font-weight: 900 !important;
}

.fa-regular,
.far {
  font-family: "Font Awesome 6 Free" !important;
  font-style: normal !important;
  font-weight: 400 !important;
}

.fa-brands,
.fab {
  font-family: "Font Awesome 6 Brands" !important;
  font-style: normal !important;
  font-weight: 400 !important;
}
