@import url('https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@400;500;600;700&family=Montserrat:wght@400;500;600;700&family=Rajdhani:wght@500;600;700&display=swap');

@font-face {
  font-family: "Clesmont";
  src: url("assets/fonts/Clesmont.ttf") format("truetype");
  font-style: normal;
  font-weight: normal;
  font-display: swap;
}

@font-face {
  font-family: "Cormorant Garamond";
  src: url("assets/fonts/CormorantGaramond-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Cormorant Garamond";
  src: url("assets/fonts/CormorantGaramond-Medium.ttf") format("truetype");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "Cormorant Garamond";
  src: url("assets/fonts/CormorantGaramond-SemiBold.ttf") format("truetype");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "Cormorant Garamond";
  src: url("assets/fonts/CormorantGaramond-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --navy: #020817;
  --blue: #e3b562;
  --white: #f5f7fb;
  --muted: #b9bdd0;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  padding-top: 92px;
  background: var(--navy);
  color: var(--white);
  font-family: "Rajdhani", Arial, sans-serif;
}
a { color: inherit; text-decoration: none; }

.cyber-hero {
  position: relative;
  min-height: 650px;
  height: 650px;
  overflow: hidden;
  isolation: isolate;
 
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #020817;
}

.hero-overlay {
  position: absolute;
 height:500px;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(3, 8, 27, .4) 45%, rgba(1, 6, 20, .01) 100%);
   
}

.hero-content {
  position: relative;
  width: 100%;
  height: 700px;
  min-height: 700px;
  padding: clamp(36px, 5.2vh, 64px) 3vw 42px;
}

.copy-column {
  position: relative;
  z-index: 2;
  width: min(610px, 45vw);
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  margin-bottom: -20px;
  border-radius: 999px;
 
 
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  color:#ffffff
}

h1 {
  margin: 0;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(54px, 4vw, 72px);
  line-height: 1.06;
  font-weight: 500;
  letter-spacing: -1.8px;
}

.copy-column p {
  max-width: 580px;
  margin: 26px 0 30px;
  color: #ffffff;
  font-family: Arial, sans-serif;
  font-size: 15.5px;
  line-height: 1.65;
}

.hero-actions {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 22px;
  border-radius: 999px;
  font-family: Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 1.1px;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.btn:hover { transform: translateY(-3px); }
.btn-light {
  color: #141a29;
  background: #fff;
  box-shadow: inset 0 -4px 10px rgba(0,0,0,.13), 0 8px 20px rgba(0,0,0,.2);
}
.btn-outline {
  min-width: 127px;
  border: 1px solid rgba(255,255,255,.85);
  background: rgba(4,8,30,.18);
}

.cyber-title {
  position: absolute;
  top: 3.6%;
  left: 54.8%;
  transform: translateX(-50%);
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: rgba(17, 45, 135, .86);
  text-align: center;
  line-height: .95;
  pointer-events: none;
}
.cyber-title strong {
  font-size: clamp(64px, 6.2vw, 98px);
  font-weight: 700;
}
.cyber-title span {
  margin-top: 8px;
  font-size: clamp(34px, 3.2vw, 54px);
  font-weight: 500;
}

.hero-stats {
  position: absolute;
  left: 3vw;
  bottom: 7.5vh;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  gap: clamp(28px, 3.6vw, 64px);
  margin-bottom:60px;
}

.stat-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.stat-number {
  white-space: nowrap;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(31px, 2.3vw, 38px);
  line-height: 1;
  font-weight: 500;
}
.stat-number span {
  margin-left: 5px;
  color: var(--blue);
  font-weight: 700;
}
.stat-label {
  padding-top: 11px;
  color: #adb2c5;
  font-family: Arial, sans-serif;
  font-size: 12.5px;
  line-height: 1.7;
}

@media (max-width: 1000px) {
  .cyber-hero {
    min-height: 760px;
    height: auto;
    background-position: 62% center;
  }
  .hero-content {
    min-height: 760px;
    padding: 48px 30px 180px;
  }
  .copy-column { width: min(650px, 75vw); }
  .cyber-title {
    top: 28px;
    left: 76%;
    opacity: .75;
  }
  .hero-stats {
    left: 30px;
    right: 30px;
    bottom: 54px;
    flex-wrap: wrap;
  }
}

@media (max-width: 650px) {
  .cyber-hero {
    min-height: 860px;
    background-position: 69% center;
  }
  .hero-content {
    min-height: 860px;
    padding: 34px 18px 240px;
  }
  .copy-column { width: 100%; }
  h1 {
    font-size: clamp(42px, 12vw, 58px);
    letter-spacing: -1px;
  }
  .copy-column p { font-size: 15px; }
  .cyber-title {
    top: auto;
    bottom: 285px;
    left: 66%;
    opacity: .55;
  }
  .cyber-title strong { font-size: 50px; }
  .cyber-title span { font-size: 28px; }
  .hero-actions { gap: 12px; }
  .btn { width: 100%; }
  .hero-stats {
    left: 18px;
    bottom: 38px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px 28px;
  }
  .stat-number { font-size: 27px; }
}

/* Exact about section added directly after the hero */
.about-security {
  background: #1b2632;
  padding: 114px 1.5vw 82px;
  overflow: hidden;
  padding-bottom:120px;
  Padding-top: 80px;
}

.about-security__inner {
  width: min(1690px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(520px, 702px) minmax(620px, 1fr);
  gap: clamp(58px, 4.4vw, 82px);
  align-items: center;
}

.about-security__media {
  position: relative;
  min-height: 627px;
  border-radius: 28px;
  overflow: hidden;
  background: #0a1730;
}

.about-security__media img {
  width: 100%;
  height: 100%;
  min-height: 727px;
  display: block;
  object-fit: cover;
  object-position: center;
}

.about-security__play {
  position: absolute;
  left: 50%;
  top: 49.7%;
  width: 112px;
  height: 112px;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 10px 26px rgba(0,0,0,.18);
  cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease;
}

.about-security__play:hover {
  transform: translate(-50%, -50%) scale(1.05);
  box-shadow: 0 0 0 10px rgba(30,169,255,.12), 0 12px 30px rgba(0,0,0,.22);
}

.about-security__play-icon {
  position: relative;
  width: 39px;
  height: 39px;
  border: 2px solid #e3b562;
  border-radius: 50%;
}

.about-security__play-icon::after {
  content: "";
  position: absolute;
  left: 14px;
  top: 10px;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 12px solid #e3b562;
}

.about-security__content {
  align-self: center;
  padding-bottom: 3px;
}

.about-security__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 0 20px;
  margin-bottom: 35px;
  border-radius: 999px;
  
  color: #e3b562;
  font-family: "Chakra Petch", sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: .03em;
}

.about-security h2 {
  margin: 0;
  color: #f8f9fb;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(43px, 2.55vw, 72px);
  line-height: 1.02;
  font-weight: 500;
  letter-spacing: -.025em;
}

.about-security__intro {
  max-width: 870px;
  margin: 36px 0 37px;
  color: #afb5ca;
  font-family: "Rajdhani", sans-serif;
  font-size: 23px;
  line-height: 1.48;
  font-weight: 500;
}

.about-security__details {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px;
  max-width: 900px;
  padding-top:20px;
}

.about-security__detail h3 {
  position: relative;
  margin: 0 0 27px;
  padding-left: 21px;
  color: #fff;
  font-family: "Chakra Petch", sans-serif;
  font-size: 25px;
  line-height: 1.25;
  font-weight: 500;
  letter-spacing: .015em;
}

.about-security__detail h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: -4px;
  width: 2px;
  height: 38px;
  background: #b57e1b;
}

.about-security__detail p,
.about-security__detail li {
  color: #aeb5ca;
  font-family: "Rajdhani", sans-serif;
  font-size: 15px;
  line-height: 1.52;
  font-weight: 500;
}

.about-security__detail p { margin: 0; }

.about-security__detail ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.about-security__detail li {
  position: relative;
  padding-left: 18px;
  margin: 0 0 9px;
}

.about-security__detail li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .72em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #e3b562;
}

.about-security__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 201px;
  min-height: 58px;
  margin-top: 37px;
  padding: 0 28px;
  border-radius: 999px;
  background: #fff;
  color: #121929;
  box-shadow: inset 0 -4px 9px rgba(0,0,0,.13);
  font-family: "Chakra Petch", sans-serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .09em;
  transition: transform .25s ease, box-shadow .25s ease;
}

.about-security__button:hover {
  transform: translateY(-3px);
  box-shadow: inset 0 -4px 9px rgba(0,0,0,.13), 0 12px 25px rgba(0,0,0,.25);
}

@media (max-width: 1280px) {
  .about-security {
    padding-inline: 34px;
  }
  .about-security__inner {
    grid-template-columns: minmax(420px, .92fr) minmax(520px, 1.08fr);
    gap: 48px;
  }
  .about-security__media,
  .about-security__media img {
    min-height: 540px;
  }
  .about-security__intro { font-size: 20px; }
  .about-security__detail p,
  .about-security__detail li { font-size: 18px; }
}

@media (max-width: 980px) {
  .about-security {
    padding: 84px 30px;
  }
  .about-security__inner {
    grid-template-columns: 1fr;
    gap: 54px;
  }
  .about-security__media {
    min-height: 0;
    aspect-ratio: 1.12 / 1;
  }
  .about-security__media img {
    min-height: 0;
  }
  .about-security__content { padding: 0; }
}

@media (max-width: 650px) {
  .about-security {
    padding: 68px 18px;
  }
  .about-security__inner { gap: 38px; }
  .about-security__media { border-radius: 18px; }
  .about-security__play {
    width: 82px;
    height: 82px;
  }
  .about-security__badge {
    height: 38px;
    margin-bottom: 24px;
    font-size: 15px;
  }
  .about-security h2 {
    font-size: clamp(37px, 11vw, 52px);
  }
  .about-security__intro {
    margin: 25px 0 31px;
    font-size: 18px;
  }
  .about-security__details {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .about-security__detail h3 {
    margin-bottom: 20px;
    font-size: 23px;
  }
  .about-security__detail p,
  .about-security__detail li { font-size: 17px; }
  .about-security__button { margin-top: 32px; }
}

/* Fully editable 10-card partner grid below the About section */
.about-partners {
  width: min(1204px, 100%);
  margin: 72px auto 0;
}

.about-partners__label {
  display: table;
  margin: 0 auto 46px;
  padding: 9px 18px;
  border-radius: 999px;
  background: #111b2a;
  color: #fff;
  font-family: "Chakra Petch", sans-serif;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: .07em;
  text-align: center;
}

.about-partners__grid {
  display: grid;
  grid-template-columns: repeat(3, 380px);
  grid-auto-rows: 120px;
  justify-content: center;
  gap: 25px 32px;
}

.about-partner-card:nth-child(n + 7) {
  display: none;
}

.about-partner-card {
  min-height: 0;
  height: 100%;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  border: 1px solid rgba(133, 159, 187, .22);
  border-radius: 7px;
  overflow: hidden;
  background: #fff;
  color: #7e8794;
  text-decoration: none;
  transition: color .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.about-partner-card__logo {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: none;
  object-fit: contain;
  object-position: center;
}

.about-partner-card__icon {
  flex: 0 0 auto;
  font-family: Arial, sans-serif;
  font-size: 27px;
  line-height: 1;
  opacity: .95;
}

.about-partner-card__name {
  font-family: "Rajdhani", sans-serif;
  font-size: clamp(20px, 1.45vw, 28px);
  line-height: 1;
  font-weight: 700;
  white-space: nowrap;
}

.about-partner-card:hover {
  color: #dce8f2;
  border-color: rgba(37, 168, 255, .48);
  box-shadow: 0 0 22px rgba(37, 168, 255, .1);
  transform: translateY(-3px);
}

@media (max-width: 1180px) {
  .about-partners__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .about-partners { margin-top: 56px; }
  .about-partners__label { margin-bottom: 32px; font-size: 13px; }
  .about-partners__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 105px; gap: 16px; }
  .about-partner-card { min-height: 0; padding: 0; gap: 9px; }
  .about-partner-card__name { font-size: 18px; }
  .about-partner-card__icon { font-size: 22px; }
}

@media (max-width: 440px) {
  .about-partners__grid { grid-template-columns: 1fr; }
}


/* Services section added directly after About Us */
.services-security {
  background: #ffffff;
  padding: 114px 1.5vw 112px;
  overflow: hidden;
}

.services-security__inner {
  width: min(1500px, 100%);
  margin: 0 auto;
  text-align: center;
  margin-top: -60px;
}

.services-security__badge {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  padding: 0 17px;
  margin-bottom: 55px;
  border-radius: 999px;
 
  color: #1B2632;
  font-family: "Chakra Petch", sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .07em;
}

.services-security__badge::after {
  content: "";
  position: absolute;
  top: calc(50% + 8px);
  left: 50%;
  width: 240px;
  height: 28px;
  background: url("assets/images/border text.webp") top center / 100% auto no-repeat;
  transform: translateX(-50%);
  pointer-events: none;
}

.services-security h2 {
  margin: 0;
  color: #1b2632;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(43px, 2.55vw, 63px);
  line-height: 1.06;
  font-weight: 800;
  letter-spacing: -.026em;
}

.services-security__intro {
  margin: 28px auto 42px;
  color: #1b2632;
  font-family: "Rajdhani", sans-serif;
  font-size: 20px;
  line-height: 1.55;
  font-weight: 500;
}

.services-security__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  text-align: left;
}

.service-security-card {
  position: relative;
  min-height: 214px;
  padding: 28px 27px 27px;
  overflow: hidden;
  border: 1px solid rgba(151, 170, 190, .28);
  border-radius: 13px;
  background: #1b2632;
  transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
}

.service-security-card:hover {
  transform: translateY(-5px);
  border-color: rgba(34, 169, 255, .5);
  box-shadow: 0 0 24px rgba(34, 169, 255, .08);
}

.service-security-card__number {
  display: block;
  margin-bottom: 43px;
  padding-left: 11px;
  border-left: 1px solid rgba(151, 170, 190, .2);
  color: #FDD954;
  font-family: "Chakra Petch", sans-serif;
  font-size: 18px;
  line-height: 25px;
  font-weight: 600;
}

.service-security-card__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 72px;
  gap: 16px;
  align-items: end;
}

.service-security-card__copy h3 {
  margin: 0 0 12px;
  color: #e3b562;
  font-family: "Chakra Petch", sans-serif;
  font-size: 19px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: .005em;
}

.service-security-card__copy p {
  max-width: 345px;
  margin: 0;
  color: #aeb4c3;
  font-family: "Rajdhani", sans-serif;
  font-size: 15px;
  line-height: 1.52;
  font-weight: 500;
}

.service-security-card__icon {
  position: absolute;
  right: 27px;
  bottom: 27px;
  width: 66px;
  height: 66px;
  color: #dce3e9;
}

.service-security-card__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

@media (max-width: 1100px) {
  .services-security { padding-inline: 34px; }
  .services-security__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .services-security { padding: 76px 18px 82px; }
  .services-security h2 { font-size: clamp(34px, 10vw, 48px); margin-left:-10px;}
  .services-security h2 br { display: none; }
  .services-security__intro { margin-bottom: 32px; font-size: 16px; }
  .services-security__grid { grid-template-columns: 1fr; gap: 18px; }
  .service-security-card { min-height: 205px; }
}

@media (max-width: 430px) {
  .service-security-card { padding: 24px 20px; }
  .service-security-card__body { grid-template-columns: minmax(0, 1fr) 58px; gap: 10px; }
  .service-security-card__icon { right: 20px; bottom: 24px; width: 58px; height: 58px; }
  .service-security-card__copy h3 { font-size: 18px; }
}

/* ================= CASE STUDIES ================= */
.case-studies-security {
  background: #1b2632;
  padding: 86px 42px 92px;
  color: #fff;
}

.case-studies-security__inner {
  width: min(1114px, 100%);
  margin: 0 auto;
}

.case-studies-security__header {
  display: block;
  margin-bottom: 48px;
  text-align: center;
}

.case-studies-security__badge {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  margin-bottom: 20px;
  padding: 0 14px;
  border-radius: 999px;
  background: #172331;
  color: #fff;
  font-family: "Rajdhani", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
}

.case-studies-security h2 {
  margin: 0;
  color: #f6f7f9;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(36px, 4.05vw, 58px);
  line-height: 1.06;
  font-weight: 500;
  letter-spacing: -.025em;
}

.case-studies-security__intro {
  max-width: 680px;
  margin: 20px auto 0;
  color: #aeb8c7;
  font-family: "Rajdhani", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
}

.case-studies-security__all {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 39px;
  margin-bottom: 9px;
  padding: 0 21px;
  border-radius: 999px;
  background: #fff;
  color: #07101b;
  font-family: "Rajdhani", sans-serif;
  font-size: 11px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: .08em;
  text-decoration: none;
  box-shadow: inset 0 -2px 5px rgba(0, 0, 0, .2);
  transition: transform .25s ease, box-shadow .25s ease;
}

.case-studies-security__all:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(255,255,255,.12); }

.case-studies-security__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 38px;
}

.key-capabilities__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px 36px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.key-capability-card {
  min-height: 0;
  padding: 0 0 0 22px;
  position: relative;
  display: flex;
  align-items: center;
  color: #fff;
  font-family: "Chakra Petch", sans-serif;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 600;
  letter-spacing: .01em;
  transition: color .25s ease, transform .25s ease;
}

.key-capability-card::before {
  content: "";
  position: absolute;
  top: .55em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #e3b562;
  box-shadow: 0 0 10px rgba(250, 208, 67, .4);
}

.key-capability-card:hover {
  color: #e3b562;
  transform: translateX(3px);
}

.case-study-card {
  overflow: hidden;
  border: 1px solid rgba(180, 198, 214, .25);
  border-radius: 18px;
  background: #1c2835;
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.case-study-card:hover {
  transform: translateY(-5px);
  border-color: rgba(34, 169, 255, .45);
  box-shadow: 0 16px 34px rgba(0,0,0,.22), 0 0 22px rgba(34,169,255,.08);
}

.case-study-card__content {
  min-height: 275px;
  padding: 38px 38px 30px;
}

.case-study-card__tag {
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  margin-bottom: 24px;
  padding: 0 14px;
  border: 1px solid rgba(160, 178, 194, .2);
  border-radius: 999px;
  color: #fff;
  font-family: "Rajdhani", sans-serif;
  font-size: 12px;
  font-weight: 600;
}

.case-study-card h3 {
  margin: 0 0 10px;
  color: #fff;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(24px, 2.05vw, 31px);
  line-height: 1.13;
  font-weight: 500;
  letter-spacing: -.015em;
}

.case-study-card__content > p {
  max-width: 470px;
  margin: 0;
  color: #aeb8c7;
  font-family: "Rajdhani", sans-serif;
  font-size: 13px;
  line-height: 1.52;
  font-weight: 500;
}

.case-study-card__metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 38px;
  margin-top: 22px;
}

.case-study-card__metrics > div {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.case-study-card__metrics strong {
  color: #fff;
  font-family: "Chakra Petch", sans-serif;
  font-size: 19px;
  line-height: 1;
  font-weight: 600;
}

.case-study-card__metrics strong span { color: #21a9ff; }
.case-study-card__metrics small {
  color: #aeb8c7;
  font-family: "Rajdhani", sans-serif;
  font-size: 12px;
  font-weight: 500;
}

.case-study-card__media {
  position: relative;
  height: 290px;
  overflow: hidden;
  background: #071525;
}

.case-study-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(3, 10, 18, .48), transparent 45%);
  pointer-events: none;
}

.case-study-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .45s ease;
}
.case-study-card:hover .case-study-card__media img { transform: scale(1.035); }

body .case-study-card__button {
  position: absolute;
  z-index: 2;
  left: 38px;
  bottom: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 111px;
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid rgba(255,255,255,.95) !important;
  border-radius: 999px;
  background: rgba(10, 17, 25, .45) !important;
  color: #fff !important;
  font-family: "Rajdhani", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-decoration: none;
  backdrop-filter: blur(5px);
  transition: background .25s ease, color .25s ease;
}
body .case-study-card__button:hover { background: #fff !important; color: #07101b !important; }

@media (max-width: 900px) {
  .case-studies-security { padding-inline: 28px; }
  .case-studies-security__grid { grid-template-columns: 1fr; }
  .key-capabilities__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-study-card__media { height: 360px; }
}

@media (max-width: 640px) {
  .case-studies-security { padding: 70px 18px 76px; }
  .case-studies-security__header { align-items: flex-start; flex-direction: column; margin-bottom: 34px; }
  .case-studies-security h2 br, .case-study-card h3 br { display: none; }
  .case-study-card__content { min-height: auto; padding: 28px 24px 26px; }
  .case-study-card__media { height: 280px; }
  .case-study-card__button { left: 24px; bottom: 24px; }
  .case-study-card__metrics { gap: 16px 24px; }
  .key-capabilities__grid { grid-template-columns: 1fr; }
  .key-capability-card { min-height: 0; }
}

/* ================= CLIENT TESTIMONIALS ================= */
.client-testimonials {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  padding: 114px 8px 74px;
  color: #fff;
  
}
.client-testimonials__inner {
  width: min(1194px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 38px;
  align-items: start;
}
.client-testimonials__label-wrap { padding-top: 2px; }
.client-testimonials__badge {
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  padding: 0 14px;
  border-radius: 999px;
  background: #172331;
  color: #fff;
  font-family: "Rajdhani", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
}
.client-testimonials__slider { position: relative; min-width: 0; padding-right: 90px; padding-bottom: 200px; }
.client-testimonials__viewport { overflow: hidden; }
.client-testimonials__track {
  display: flex;
  transition: transform .62s cubic-bezier(.22,.61,.36,1);
  will-change: transform;
}
.client-testimonial {
  flex: 0 0 100%;
  min-width: 0;
  padding-right: 10px;
}
.client-testimonial__stars {
  margin-bottom: 22px;
  color: #ff8a2a;
  font-size: 23px;
  line-height: 1;
  letter-spacing: 5px;
}
.client-testimonial blockquote {
  position: relative;
  z-index: 2;
  max-width: 850px;
  margin: 0;
  color: #000000;
  font-family: "Rajdhani", sans-serif;
  font-size: clamp(22px, 1.12vw, 30px);
  line-height: 1.33;
  font-weight: 500;
  letter-spacing: -.012em;
}
.client-testimonial__author {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 37px;
}
.client-testimonial__avatar {
  width: 64px;
  height: 64px;
  flex: 0 0 64px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,.18);
  background: radial-gradient(circle at 35% 30%, #e7edf5 0 30%, #9ca7b2 31% 48%, #2b3641 49% 100%);
  color: #07101b;
  font-family: "Chakra Petch", sans-serif;
  font-size: 14px;
  font-weight: 700;
}
.client-testimonial__author h3 {
  margin: 0 0 4px;
  color: #000000;
  font-family: "Rajdhani", sans-serif;
  font-size: 19px;
  font-weight: 700;
  letter-spacing: .035em;
}
.client-testimonial__author p {
  margin: 0;
  color: #aeb8c7;
  font-family: "Rajdhani", sans-serif;
  font-size: 15px;
  font-weight: 500;
}
.client-testimonial__author p span { color: #e3b562; }
.client-testimonials__quote {
  position: absolute;
  z-index: 1;
  right: 15px;
  bottom: 17px;
  color: #1f140275;
  font-family: Georgia, serif;
  font-size: 245px;
  line-height: .62;
  font-weight: 700;
  pointer-events: none;
  user-select: none;
}
.client-testimonials__controls {
  position: absolute;
  z-index: 4;
  left: 50%;
  bottom: 200px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.client-testimonials__arrow {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 50%;
  background: rgba(16,28,40,.78);
  color: #fff;
  font-size: 19px;
  cursor: pointer;
  transition: background .25s ease, border-color .25s ease, transform .25s ease;
}
.client-testimonials__arrow:hover {
  transform: translateY(-2px);
  border-color: #e3b562;
  background: #e3b562;
}
.client-testimonials__dots { display: flex; gap: 7px; }
.client-testimonials__dots button {
  width: 8px;
  height: 8px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: #3b4652;
  cursor: pointer;
  transition: width .25s ease, background .25s ease;
}
.client-testimonials__dots button.is-active { width: 23px; background: #e3b562; }

@media (max-width: 900px) {
  .client-testimonials { padding-inline: 28px; }
  .client-testimonials__inner { grid-template-columns: 1fr; gap: 25px; }
  .client-testimonials__slider { padding-right: 0; padding-top: 0; padding-bottom: 20px; }
  .client-testimonials__controls { left: 50%; bottom: 20px; transform: translateX(-50%); }
  .client-testimonials__quote { right: 0; bottom: 10px; font-size: 190px; }
}
@media (max-width: 640px) {
  .client-testimonials { padding: 12px 18px 64px; }
  .client-testimonials__slider { padding-top: 0; padding-bottom: 18px; }
  .client-testimonial blockquote { font-size: 21px; line-height: 1.42; }
  .client-testimonial__author { margin-top: 28px; }
  .client-testimonial__avatar { width: 56px; height: 56px; flex-basis: 56px; }
  .client-testimonials__quote { opacity: .62; font-size: 145px; }
}

/* Cyber CTA section */
.cyber-cta {
  background: #03101c;
  padding: 114px 0px 58px;
}

.cyber-cta__card {
  width: 100%;
  min-height: 567px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 54% 46%;
  overflow: hidden;
  
  background: #100052;
}

.cyber-cta__visual {
  position: relative;
  min-height: 567px;
  background: #07115c;
}

.cyber-cta__visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.cyber-cta__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 58px 56px 58px 18px;
  background: linear-gradient(135deg, #170064 0%, #0d0045 100%);
}

.cyber-cta__badge {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  margin-bottom: 24px;
  padding: 7px 15px;
  border-radius: 999px;
  background: rgba(76, 61, 174, 0.33);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
}

.cyber-cta__content h2 {
  margin: 0;
  color: #fff;
  font-family: var(--heading-font, "Space Grotesk", sans-serif);
  font-size: clamp(38px, 3.3vw, 48px);
  font-weight: 500;
  line-height: 1.04;
  letter-spacing: .015em;
}

.cyber-cta__content p {
  max-width: 500px;
  margin: 24px 0 26px;
  color: #d0cbe4;
  font-size: 14px;
  line-height: 1.7;
}

.cyber-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
}

.cyber-cta__button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 21px;
  border-radius: 999px;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .06em;
  text-decoration: none;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.cyber-cta__button:hover {
  transform: translateY(-2px);
}

.cyber-cta__button--primary {
  background: #fff;
  color: #07111f;
  box-shadow: inset 0 -3px 8px rgba(0,0,0,.18);
}

.cyber-cta__button--secondary {
  border: 1px solid #fff;
  background: transparent;
  color: #fff;
}

@media (max-width: 900px) {
  .cyber-cta__card {
    grid-template-columns: 1fr;
  }
  .cyber-cta__visual {
    min-height: 430px;
  }
  .cyber-cta__content {
    padding: 54px 42px 58px;
  }
}

/* Services page — Related Services layout.
   Keep the centred introduction above the three full-width cards. */
body.services-page .other-services__top {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 42px;
  text-align: center;
}

body.services-page .other-services__intro {
  width: min(820px, 100%);
  max-width: none;
  margin-inline: auto;
  text-align: center;
}

body.services-page .related-services-gold-eyebrow {
  margin-inline: auto;
  align-items: center;
  text-align: center;
}

body.services-page .other-services__intro :is(h2, p) {
  margin-inline: auto;
  text-align: center;
}

body.services-page .other-services__grid {
  width: 100%;
  margin: 0;
}

body.services-page .other-services__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

body.services-page .other-services__number {
  width: 100%;
  padding-left: 0;
  border-left: 0;
  text-align: center;
}

body.services-page .other-services__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  text-align: center;
}

body.services-page .other-services__body > div:first-child {
  width: 100%;
}

body.services-page .other-services__body :is(h3, p) {
  max-width: 360px;
  margin-inline: auto;
  text-align: center;
}

body.services-page .other-services__icon {
  flex: 0 0 auto;
  align-self: center;
  margin-inline: auto;
}

@media (max-width: 700px) {
  body.services-page .other-services__top {
    gap: 32px;
  }
}

/* Gold eyebrow treatment shared with the Proven Skills label. */
body .customers-served__badge,
body .client-testimonials__badge,
body .case-studies-security__badge {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #e3b562;
  font-family: "Chakra Petch", sans-serif;
  font-size: 24px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .03em;
  white-space: nowrap;
}

body .customers-served__badge::after,
body .client-testimonials__badge::after,
body .case-studies-security__badge::after {
  content: "";
  display: block;
  width: 240px;
  height: 28px;
  margin-top: 5px;
  background: url("assets/images/border text.webp") top center / 100% auto no-repeat;
  pointer-events: none;
}

body .customers-served__badge,
body .case-studies-security__badge {
  font-size: 15px;
}

body .customers-served__badge::after,
body .case-studies-security__badge::after {
  width: 160px;
  height: 20px;
}

@media (max-width: 640px) {
  body .customers-served__badge,
  body .client-testimonials__badge,
  body .case-studies-security__badge {
    font-size: 15px;
    margin-left: 50px;
    
  }

  body .customers-served__badge::after,
  body .client-testimonials__badge::after,
  body .case-studies-security__badge::after {
    width: 210px;
  }
}

/* Reusable neon CTA hover. Adjust these variables per button if needed. */
body .neon-hover-button {
  --neon-purple: 	#e3b562;
  --neon-purple-soft: rgba(255, 240, 31, .38);
  --neon-duration: 600ms;
  --neon-ring-size: 30px;
  position: relative;
  isolation: isolate;
  overflow: visible !important;
  border: 1px solid #e3b562 !important;
  border-radius: 999px !important;
  background-color: var(--x3-button-bg) !important; 
  color: #000 !important;
  box-shadow:
    inset 0 0 10px rgba(246, 234, 196, .48),
    0 0 10px rgba(246, 234, 196, .58);
  transition:
    border-color var(--neon-duration) ease,
    box-shadow var(--neon-duration) ease,
    filter var(--neon-duration) ease !important;
}

body .neon-hover-button::before,
body .neon-hover-button::after {
  content: "";
  position: absolute;
  z-index: -1;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  transition:
    opacity var(--neon-duration) cubic-bezier(.16, 1, .3, 1),
    transform var(--neon-duration) cubic-bezier(.16, 1, .3, 1),
    box-shadow var(--neon-duration) cubic-bezier(.16, 1, .3, 1);
}

body .neon-hover-button::before {
  inset: -5px;
  border: 1px solid rgba(225, 187, 60, .72);
  box-shadow:
    0 0 0 calc(var(--neon-ring-size) * .34) color-mix(in srgb, var(--neon-purple) 18%, transparent),
    0 0 0 calc(var(--neon-ring-size) * .68) color-mix(in srgb, var(--neon-purple) 11%, transparent),
    0 0 0 var(--neon-ring-size) color-mix(in srgb, var(--neon-purple) 5%, transparent);
  transform: scale(.82);
}

body .neon-hover-button::after {
  inset: -45%;
  background: radial-gradient(ellipse at center, var(--neon-purple-soft) 0%, transparent 68%);
  filter: blur(14px);
  transform: scale(.58);
}

body .neon-hover-button:hover,
body .neon-hover-button:focus-visible {
  border-color: #e3b562 !important;
  box-shadow:
    inset 0 0 18px rgba(255, 249, 220, .92),
    0 0 12px rgba(246, 234, 196, .95),
    0 0 25px rgba(225, 187, 60, .58);
  filter: brightness(1.08);
  transform: none !important;
}

body .neon-hover-button:hover::before,
body .neon-hover-button:focus-visible::before {
  opacity: 1;
  transform: scale(1.12);
}

body .neon-hover-button:hover::after,
body .neon-hover-button:focus-visible::after {
  opacity: .9;
  transform: scale(1);
}

body .neon-hover-button:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 5px;
}

@media (prefers-reduced-motion: reduce) {
  body .neon-hover-button,
  body .neon-hover-button::before,
  body .neon-hover-button::after {
    transition: none !important;
  }

  body .neon-hover-button::before,
  body .neon-hover-button::after {
    display: none;
  }
}

/* =========================================================
   HERO HEADING — MATRIX DIGITAL RAIN REVEAL
   Duration: 2.4s | Initial zoom: .82 | Accent: #e3b562
   ========================================================= */
.hero-matrix-heading {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: visible;
  isolation: isolate;
  
 
}

.hero-matrix-text {
  position: relative;
  z-index: 1;
  opacity: 1;
  transform: scale(1);
  filter: blur(0);
}

.hero-matrix-line {
  display: block;
}

.hero-matrix-canvas {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 250%;
  max-width: 100%;
  display: block;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  max-width: 100%;
  display: block;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;

  /* Move matrix effect independently */
  transform: translateY(-100px);
}

.matrix-js .hero-matrix-text:not(.is-matrix-active):not(.is-matrix-complete) {
  opacity: 0;
  transform: none;
  filter: none;
}

.matrix-js .hero-matrix-text.is-matrix-active {
  opacity: 1;
  transform-origin: center center;
  will-change: auto;
}

.matrix-js .hero-matrix-text.is-matrix-active .hero-matrix-line--first {
  animation: hero-matrix-first-line-reveal 1.35s cubic-bezier(.22, 1, .36, 1) .5s both;
}

.matrix-js .hero-matrix-text.is-matrix-active .hero-matrix-line--second {
  animation: hero-matrix-text-reveal 4.8s cubic-bezier(.22, 1, .36, 1) both;
}

.matrix-js .hero-matrix-heading.is-matrix-active .hero-matrix-canvas {
  animation: hero-matrix-canvas-fade 4.8s ease-out forwards;
}

.hero-matrix-text.is-matrix-complete {
  opacity: 1;
  transform: scale(1);
  filter: blur(1);
  will-change: auto;
}

.hero-matrix-heading.is-matrix-complete .hero-matrix-canvas {
  display: none;
}

@keyframes hero-matrix-text-reveal {
  0%, 20% { opacity: 0; transform: translateY(16px); }
  100% { opacity: 1; transform: translateY(0); }
}

@keyframes hero-matrix-first-line-reveal {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes hero-matrix-canvas-fade {
  0% { opacity: 0; }
  14% { opacity: .92; }
  68% { opacity: .78; }
  100% { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .matrix-js .hero-matrix-text,
  .matrix-js .hero-matrix-text.is-matrix-active {
    animation: none !important;
    opacity: 1;
    transform: none;
    filter: none;
    will-change: auto;
  }

  .hero-matrix-canvas { display: none !important; }
}

@media (max-width: 560px) {
  .cyber-cta {
    padding-inline: 14px;
  }
  .cyber-cta__card {
    border-radius: 14px;
  }
  .cyber-cta__visual {
    min-height: 330px;
  }
  .cyber-cta__content {
    padding: 42px 24px 46px;
  }
  .cyber-cta__content h2 {
    font-size: 32px;
  }
  .cyber-cta__actions {
    width: 100%;
  }
  .cyber-cta__button {
    flex: 1 1 100%;
  }
}

/* About page: lock the Experience & Capabilities section to the reference layout.
   These more specific rules prevent older global __inner rules from flattening it. */
body.about-page .experience-capabilities > .experience-capabilities__inner {
  display: grid !important;
  grid-template-columns: minmax(340px, .9fr) minmax(420px, 1.1fr) !important;
  align-items: center !important;
  gap: clamp(42px, 5vw, 80px) !important;
  width: min(calc(100% - 72px), 1440px) !important;
  max-width: 1440px !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}

/* Centre the About Us hero heading and breadcrumb. */
body.about-page .about-page-hero__inner {
  text-align: center;
}

body.about-page .about-page-hero {
  border-bottom: 0px solid #e3b562;
}

body.about-page .about-page-hero__breadcrumb {
  justify-content: center;
}

body.about-page .experience-capabilities {
  --light-section-overlay: rgba(255, 255, 255, .58);
  position: relative;
  background-color: #ffffff;
  background-image:
    linear-gradient(var(--light-section-overlay), var(--light-section-overlay)),
    url("assets/images/background.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  color: #101b29;
  margin-top:-60px;
  paddi
}

body.about-page .experience-capabilities::before {
  content: "";
  position: absolute;
  top: 0;
  left: 80px;
  right: 80px;
  height: 1px;
  background: #06111D;
  pointer-events: none;
}

body.about-page .experience-capabilities__media {
  grid-column: 1;
  width: 100%;
  height: clamp(560px, 48vw, 700px);
  aspect-ratio: 4 / 5;
}

body.about-page .experience-capabilities__content {
  grid-column: 2;
  width: 100%;
  align-self: center;
}

body.about-page .experience-capabilities__header h2 {
  font-size: clamp(42px, 3.0vw, 68px);
  color: #101b29;
}

body.about-page .experience-capabilities__header p {
  color: #33465a;
}

body.about-page .experience-capabilities__list li {
  color: #101b29;
}

/* About page: centred Core Values composition with two editable images. */
body.about-page .core-values__inner {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  width: min(calc(100% - 72px), 1800px) !important;
  max-width: 1800px !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}

body.about-page .core-values {
  --values-bg: #ffffff;
  --values-text: #101b29;
  --values-muted: #33465a;
  --light-section-overlay: rgba(255, 255, 255, .58);
  background-color: #ffffff;
  background-image:
    linear-gradient(var(--light-section-overlay), var(--light-section-overlay)),
    url("assets/images/background.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  padding-bottom:120px;
}

body.about-page .core-values__intro {
  position: static;
  width: 100%;
  text-align: center;
}

body.about-page .core-values__intro .global-security-badge,
body.about-page .core-values__intro .global-security-badge-divider {
  margin-left: auto !important;
  margin-right: auto !important;
}

body.about-page .core-values__title,
body.about-page .core-values__copy {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

body.about-page .core-values__copy {
  margin-bottom: 0;
}

body.about-page .core-values__gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  gap: clamp(22px, 2.5vw, 40px);
  margin: clamp(38px, 5vw, 68px) 0;
  margin-top:-40px;
}

body.about-page .core-values__gallery img {
  display: block;
  width: 100%;
  height: clamp(260px, 25vw, 430px);
  object-fit: cover;
  border: 0;
  border-radius: 22px;
  background: #1f140275;
}

body.about-page .core-values__list {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  width: 100%;
  gap: clamp(12px, 1.2vw, 20px);
  border: 0;
  margin-top:-80px;
  
}

body.about-page .core-values__item {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  margin: 0;
  padding: 22px 14px;
  border: 1px solid rgba(159, 177, 198, .24);
  border-radius: 18px;
  background: #1b2734;
  text-align: center;
}

body.about-page .core-values__item h3 {
  color: #f5f7fb;
}

body.about-page .core-values__item p {
  color: #aeb9c8;
}

body.about-page .core-values__item h3,
body.about-page .core-values__item p {
  text-align: center;
}

body.about-page .core-values__item h3::before {
  display: none;
}

body.about-page .core-values__button {
  box-sizing: border-box;
  width: 220px;
  max-width: 100%;
  min-width: 220px;
  min-height: 58px;
  margin: 38px auto 0;
  padding: 0 28px;
  background: #e3b562;
  color: #121929;
  box-shadow: inset 0 -4px 9px rgba(0, 0, 0, .13);
  font-family: "Chakra Petch", sans-serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .09em;
  margin-top:-60px;
}

body.about-page .core-values__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  margin-top: -30px;
}

body.about-page .core-values__actions .core-values__button {
  margin: 0;
}

/* About page: three static testimonial blocks replacing the team portraits. */
body.about-page .team-section__inner {
  width: min(calc(100% - 72px), 1700px) !important;
  max-width: 1700px !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}

/* About page direction cards: use the content height instead of a tall minimum. */
body.about-page .mvp-section__grid {
  align-items: stretch;
}

body.about-page .mvp-card {
  min-height: 0;
  height: 100%;
  padding-top: 30px;
  padding-bottom: 30px;
}

/* About page trusted-company logo section background. */
body.about-page .about-partners {
   background-color: #1b2632;
}

body.about-page .team-section__grid.team-testimonials {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(22px, 1.2vw, 36px);
  align-items: stretch;
}

body.about-page .team-testimonial-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: clamp(28px, 2.4vw, 42px);
  border: 1px solid rgba(250, 208, 67, .42);
  border-radius: 22px;
  background: #1f140275;
  text-align: left;
}

body.about-page .team-testimonial-card blockquote {
  max-width: none;
  margin: 0;
  color: #f5f7fb;
  font-size: clamp(10px, 1.15vw, 21px);
  line-height: 1.55;
}

body.about-page .team-testimonial-card .client-testimonial__author {
  margin-top: auto;
  padding-top: 32px;
}

body.about-page .team-testimonial-card .client-testimonial__author h3 {
  color: #f5f7fb;
}

@media (max-width: 1050px) {
  body.about-page .team-section__grid.team-testimonials {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.about-page .team-testimonial-card:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  body.about-page .team-section__inner {
    width: calc(100% - 28px) !important;
  }

  body.about-page .team-section__grid.team-testimonials {
    grid-template-columns: 1fr;
  }

  body.about-page .team-testimonial-card:last-child {
    grid-column: auto;
  }
}

@media (max-width: 1100px) {
  body.about-page .core-values__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.about-page .core-values__item:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 650px) {
  body.about-page .core-values__inner {
    width: calc(100% - 28px) !important;
  }

  body.about-page .core-values__gallery,
  body.about-page .core-values__list {
    grid-template-columns: 1fr;
  }

  body.about-page .core-values__item:last-child {
    grid-column: auto;
  }

  body.about-page .core-values__gallery img {
    height: 280px;
  }

  body.about-page .core-values__actions {
    flex-wrap: wrap;
  }
}

@media (max-width: 760px) {
  body.about-page .experience-capabilities > .experience-capabilities__inner {
    grid-template-columns: minmax(0, 1fr) !important;
    width: min(calc(100% - 32px), 620px) !important;
    gap: 38px !important;
  }

  body.about-page .experience-capabilities__media,
  body.about-page .experience-capabilities__content {
    grid-column: 1;
  }

  body.about-page .experience-capabilities__media {
    height: 200px;
    min-height: 230px;
    aspect-ratio: 4 / 5;
  }

  body.about-page .experience-capabilities__header h2 {
    font-size: clamp(36px, 10vw, 52px);
  }
}

/* Why Us section */
.why-security {
  background: #ffffff;
  padding: 32px 18px 114px;
  color: #000;
}

.why-security__inner {
  max-width: 1168px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 524px) minmax(0, 1fr);
  gap: 50px;
  align-items: stretch;
  padding-top:114px;
}

.why-security__visual {
  min-height: 660px;
  overflow: hidden;
  border-radius: 18px;
}

.why-security__visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.why-security__content {
  padding-top: 1px;
}

.why-security__badge {
  display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 44px;
    padding: 0 20px;
    margin-bottom: 35px;
    border-radius: 999px;
    color: #020D1A;
    font-family: "Chakra Petch", sans-serif;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: .03em;
}

.why-security__content h2 {
  margin: 24px 0 18px;
  color: #020D1A;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(42px, 2.55vw, 72px);
  line-height: 1.15;
  font-weight: 600;
  letter-spacing: .025em;
}

.why-security__intro {
  max-width: 680px;
  margin: 0 0 32px;
  color: #1b2632;
  font-family: "Rajdhani", sans-serif;
  font-size: 23px;
  line-height: 1.48;
  font-weight: 500;
}

.why-security__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 18px 19px;
}

.why-security-card {
  min-height: 0;
  height: 100%;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  border-radius: 12px;
  border: 1px solid rgba(202, 217, 231, .16);
  background: #1b2733;
  transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.why-security-card:hover,
.why-security-card--active {
  border-color: #e3b562;
  box-shadow: 0 0 0 1px rgba(33,170,255,.05), 0 12px 30px rgba(0,0,0,.12);
}

.why-security-card:hover {
  transform: translateY(-3px);
}

/* Reusable restrained blue ripple for cards and content containers. */
.blue-hover-block {
  --blue-hover-primary: #1f140275;
  --blue-hover-ring-one: #4597ef;
  --blue-hover-ring-two: #3C5268;
  --blue-hover-ring-three: #5693d1;
  --blue-hover-duration: .5s;
  position: relative;
  isolation: isolate;
  overflow: visible;
}

.blue-hover-block::before,
.blue-hover-block::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  border: 1px solid transparent;
  border-radius: inherit;
  opacity: 0;
  pointer-events: none;
  transition:
    inset var(--blue-hover-duration) cubic-bezier(.22, 1, .36, 1),
    border-color var(--blue-hover-duration) ease,
    box-shadow var(--blue-hover-duration) ease,
    opacity var(--blue-hover-duration) ease;
}

.blue-hover-block:hover,
.blue-hover-block:focus-visible {
  transform: none;
}

.blue-hover-block:hover::before,
.blue-hover-block:focus-visible::before {
  inset: -6px;
  border-color: rgba(60, 82, 104, .65);
  opacity: 1;
  box-shadow: 0 0 12px rgba(42, 59, 77, .16);
}

.blue-hover-block:hover::after,
.blue-hover-block:focus-visible::after {
  inset: -12px;
  border-color: rgba(88, 113, 138, .45);
  opacity: 1;
  box-shadow:
    0 0 18px rgba(60, 82, 104, .12),
    0 0 0 6px rgba(27, 39, 52, .07);
}

.blue-hover-block:focus-visible {
  outline: 1px solid rgba(88, 113, 138, .7);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  .blue-hover-block::before,
  .blue-hover-block::after {
    transition: opacity .15s ease;
  }

  .blue-hover-block:hover::before,
  .blue-hover-block:focus-visible::before,
  .blue-hover-block:hover::after,
  .blue-hover-block:focus-visible::after {
    inset: -6px;
    box-shadow: none;
  }
}

.why-security-card__icon {
  display: none;
}

.why-security-card__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.why-security-card h3 {
  margin: 0 0 12px;
  color: #e3b562;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: .015em;
}

.why-security-card p {
  margin: 0;
  color: #aab0ba;
  font-size: 13px;
  line-height: 1.62;
}

@media (max-width: 980px) {
  .why-security__inner {
    grid-template-columns: 1fr;
    gap: 38px;
  }
  .why-security__visual {
    min-height: 560px;
  }
}

@media (max-width: 640px) {
  .why-security {
    padding-inline: 14px;
  }
  .why-security__visual {
    min-height: 430px;
    border-radius: 14px;
  }
  .why-security__content h2 {
    margin-bottom: 28px;
    font-size: 32px;
  }
  .why-security__grid {
    grid-template-columns: 1fr;
  }
  .why-security-card {
    min-height: 0;
  }
}

/* =========================
   Editable Secure footer
   ========================= */
.secure-footer {
  background: #06111d;
  color: #f3f5f7;
  padding: 16px 24px 58px;
  border-top: 1px solid rgba(255,255,255,.025);
}
.secure-footer__inner { width: min(1138px, 100%); margin: 0 auto; }
.secure-footer__top {
  display: grid;
  grid-template-columns: minmax(240px, 1.15fr) minmax(270px, 1.25fr) repeat(3, minmax(120px, .75fr));
  gap: 36px;
  align-items: start;
}
.secure-footer__brand { padding-top: 2px; }
.secure-footer__logo { display: inline-flex; align-items: center; gap: 8px; color: #f5f7f8; font-size: 27px; font-weight: 600; text-decoration: none; letter-spacing: -.02em; }
.secure-footer__brand-image { display: block; width: auto; height: 150px; object-fit: contain; }
.secure-footer__logo-icon { width: 29px; color: #e3b562; display: inline-flex; }
.secure-footer__logo-icon svg { width: 100%; height: auto; display: block; }
.secure-footer__brand > p { max-width: 300px; margin: 8px 0 21px; color: #c1cad4; font-size: 12px; line-height: 1.68; }
.secure-footer__follow { display: block; margin-bottom: 13px; color: #cfd5dc; font-size: 15px; letter-spacing: .08em; }
.secure-footer__socials { display: flex; gap: 8px; }
.secure-footer__socials a,
.secure-footer__socials span { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(255,255,255,.12); color: #f3f5f7; text-decoration: none; font-size: 12px; font-weight: 700; transition: .25s ease; }
.secure-footer__socials a:hover { color: #06111d; background: #e3b562; border-color: #e3b562; transform: translateY(-2px); }
.secure-footer__newsletter { min-height: 204px; display: grid; grid-template-columns: 227px 1fr; gap: 20px; padding: 19px; border: 1px solid rgba(255,255,255,.09); border-radius: 20px; background: #1b2733; }
.secure-footer__newsletter img { width: 227px; height: 164px; object-fit: cover; border-radius: 8px; display: block; }
.secure-footer__newsletter-content { padding: 11px 10px 4px 0; }
.secure-footer__newsletter h2 { margin: 0 0 27px; color: #fff; font-size: 25px; line-height: 1.3; font-weight: 500; letter-spacing: .015em; }
.secure-footer__form { height: 51px; display: flex; align-items: center; padding: 4px 5px 4px 11px; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; }
.secure-footer__form input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; color: #fff; font: inherit; font-size: 11px; }
.secure-footer__form input::placeholder { color: #b8c0c8; }
.secure-footer__form button { width: 39px; height: 39px; border: 0; border-radius: 50%; background: #e3b562; color: #fff; font-size: 24px; line-height: 1; cursor: pointer; transition: .2s ease; }
.secure-footer__form button:hover { transform: scale(1.06); filter: brightness(1.1); }
.secure-footer__bottom { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 52px; margin-top: 62px; }
.secure-footer__contact-column {
  min-width: 520px;
  padding-top: 58px;
}
.secure-footer__contacts { display: grid; gap: 18px;margin-top:0px; }
.secure-footer__contact {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 18px;
  color: #f5f7fa;
  text-decoration: none;
  transition: color .25s ease, transform .25s ease;
}
.secure-footer__contact-icon {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #e3b562;
  color: #171205;
  font-size: 24px;
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.secure-footer__contact span:last-child {
  width: 430px;
  display: grid;
  gap: 5px;
  transition: color .25s ease;
}
.secure-footer__contact:hover,
.secure-footer__contact:focus-visible {
  color: #e3b562;
  transform: translateX(5px);
}
.secure-footer__contact:hover .secure-footer__contact-icon,
.secure-footer__contact:focus-visible .secure-footer__contact-icon {
  transform: scale(1.08);
  filter: brightness(1.08);
  box-shadow: 0 0 0 5px rgba(250, 208, 67, .16), 0 0 24px rgba(250, 208, 67, .4);
}
.secure-footer__contact:focus-visible {
  outline: 2px solid #e3b562;
  outline-offset: 5px;
  border-radius: 8px;
}
.secure-footer__contact small { font-weight: 800; font-family: "Cormorant Garamond", serif !important; color: #b57e1b; font-size: 20px; letter-spacing: .1em; }
.secure-footer__contact strong { color: #f5f7fa; font-size: 18px; line-height: 1.22; letter-spacing: .02em;width:400px; }
.secure-footer__links { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding-top: 58px; }
.secure-footer__links h3 { margin: 0 0 9px; color: #b57e1b; font-size: 20px; font-weight: 600; letter-spacing: .11em; }
.secure-footer__links a { color: #e4e8ec; font-size: 15px; line-height: 1.35; text-decoration: none; transition: color .2s ease;  }
.secure-footer__links a:hover { color: #e3b562; }
.secure-footer__mini-badge { display: inline-block; margin-left: 6px; padding: 3px 8px; border-radius: 999px; background: #e3b562; color: #fff; font-size: 10px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (min-width: 981px) {
  .secure-footer__top > .secure-footer__links:nth-of-type(1) { width: 180px; justify-self: end; }
  .secure-footer__top > .secure-footer__links:nth-of-type(2) { transform: translateX(-12px); }
}
@media (max-width: 980px) {
  .secure-footer__top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .secure-footer__brand > p { max-width: 520px; }
  .secure-footer__bottom { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .secure-footer__contact-column { min-width: 0; }
  .secure-footer__contact span:last-child { width: auto; }
}
@media (max-width: 720px) {
  .secure-footer { padding-inline: 16px; }
  .secure-footer__top { grid-template-columns: 1fr; gap: 38px; }
  .secure-footer__newsletter { grid-template-columns: 1fr; }
  .secure-footer__newsletter img { width: 100%; height: 220px; }
  .secure-footer__newsletter-content { padding: 5px 0 0; }
  .secure-footer__bottom { grid-template-columns: 1fr 1fr; gap: 42px 28px; }
  .secure-footer__contacts { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .secure-footer__newsletter h2 { font-size: 21px; }
  .secure-footer__bottom { grid-template-columns: 1fr; }
  .secure-footer__links { border-top: 1px solid rgba(255,255,255,.08); padding-top: 24px; align-items: center;}
}

/* =========================
   Secure header / navigation
   ========================= */
.secure-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  width: 100%;
  background: #1b2734;
  border-bottom: 1px solid rgba(255,255,255,.025);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.secure-header__inner {
  width: min(1240px, calc(100% - 48px));
  min-height: 92px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 44px;
}
.secure-header__logo {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #f3f5f7;
  text-decoration: none;
  font-size: 28px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -.03em;
  white-space: nowrap;
}
.secure-header__brand-image { display: block; width: auto; height: 84px; object-fit: contain; }
.secure-header__logo-icon {
  width: 25px;
  color: #e3b562;
  display: inline-flex;
}
.secure-header__logo-icon svg { width: 100%; height: auto; display: block; }
.secure-header__nav {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 0;
  padding: 0 4px;
  min-height: 42px;
  border-radius: 999px;
  background: #1a2430;
}
.secure-header__nav a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 42px;
  padding: 0 17px;
  color: #d0d4da;
  text-decoration: none;
  font-size: 18px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .055em;
  white-space: nowrap;
  transition: color .2s ease;
}
.secure-header__nav a:hover,
.secure-header__nav a.is-active { color: #e3b562; }
.secure-header__nav .has-chevron::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  opacity: .9;
}
.secure-header__cta {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 118px;
  min-height: 39px;
  padding: 0 22px;
  border-radius: 999px;
  color: #15202b;
  background: #fff;
  box-shadow: inset 0 -3px 6px rgba(0,0,0,.18), 0 0 0 1px rgba(255,255,255,.65);
  text-decoration: none;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .095em;
  transition: transform .2s ease, filter .2s ease;
}
.secure-header__cta:hover { transform: translateY(-1px); filter: brightness(1.05); }
.menu-toggle {
  display: none;
  width: 42px;
  height: 42px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  background: #17212d;
  cursor: pointer;
}
.menu-toggle span {
  display: block;
  width: 100%;
  height: 2px;
  margin: 5px 0;
  background: #fff;
  border-radius: 99px;
}
@media (max-width: 1040px) {
  .secure-header__inner { gap: 22px; }
  .secure-header__nav a { padding-inline: 11px; font-size: 10px; }
}
@media (max-width: 860px) {
  .secure-header__inner {
    min-height: 76px;
    grid-template-columns: auto auto auto;
    width: min(100% - 28px, 1240px);
  }
  .menu-toggle { display: block; justify-self: end; order: 2; }
  .secure-header__cta { order: 3; min-width: 108px; min-height: 38px; }
  .secure-header__nav {
    position: absolute;
    top: calc(100% + 8px);
    left: 14px;
    right: 14px;
    display: none;
    padding: 10px;
    border-radius: 14px;
    flex-direction: column;
    align-items: stretch;
    background: #17212d;
    box-shadow: 0 18px 38px rgba(0,0,0,.4);
  }
  .secure-header__nav.open { display: flex; }
  .secure-header__nav a { min-height: 44px; padding: 0 14px; }
}
@media (max-width: 520px) {
  .secure-header__inner { grid-template-columns: auto auto; }
  .secure-header__logo { font-size: 24px; }
  .secure-header__cta { display: none; }
  .menu-toggle { order: initial; }
}

/* =========================================================
   ABOUT US PAGE HERO — fully customizable
   Edit text in about-us.html and edit layout/colors below.
   Replace assets/images/cta-network-globe.webp to change image.
   ========================================================= */
.about-page {
  min-height: 100vh;
  background: #050a1d;
}

.about-page-hero {
  --about-hero-height: 390px;
  --about-hero-bg: url("assets/images/aboutus.webp");
  --about-hero-bg-position: 72% 50%;
  --about-hero-title-size: clamp(54px, 5.4vw, 78px);
  position: relative;
  min-height: var(--about-hero-height);
  overflow: hidden;
  isolation: isolate;
  display: flex;
  align-items: center;
  background-color: #ffffff;
  background-image: var(--about-hero-bg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: var(--about-hero-bg-position);
}

.about-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    
    linear-gradient(180deg, rgba(0, 0, 0, 0.611), rgba(3, 8, 25, .26));
}

.matrix-rain {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: .12;
  mix-blend-mode: screen;
}

.about-page-hero__inner {
  position: relative;
  z-index: 2;
  width: min(1220px, calc(100% - 112px));
  margin: 0 auto;
  padding-top: 54px;
}

.about-page-hero__title {
  margin: 0 0 28px;
  font-family: "Chakra Petch", sans-serif;
  font-size: var(--about-hero-title-size);
  line-height: 1;
  font-weight: 500;
  letter-spacing: -2px;
  color: #f5f7fb;
}

.about-page-hero__breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: "Rajdhani", Arial, sans-serif;
  font-size: 14px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .7px;
  color: #f5f7fb;
}

.about-page-hero__breadcrumb a {
  transition: color .25s ease;
}
.about-page-hero__breadcrumb a:hover { color: #e3b562; }

.about-page-hero__separator {
  width: 10px;
  height: 10px;
  border-top: 2px solid #e3b562;
  border-right: 2px solid #e3b562;
  transform: rotate(45deg);
}

@media (max-width: 900px) {
  .about-page-hero {
    --about-hero-height: 340px;
    --about-hero-bg-position: 66% 50%;
  }
  .about-page-hero__inner {
    width: min(100% - 56px, 1220px);
    padding-top: 48px;
  }
}

@media (max-width: 650px) {
  .about-page-hero {
    --about-hero-height: 310px;
    --about-hero-bg-position: 63% 50%;
    margin-top: -30px;
  }
  .about-page-hero__inner {
    width: calc(100% - 36px);
    padding-top: 74px;
  }
  .about-page-hero__title {
    margin-bottom: 22px;
    letter-spacing: -1px;
  }
}

/* =========================================================
   ABOUT COMPANY SECTION — fully customizable
   Edit all text in about-us.html.
   Replace assets/images/about-security-team.webp for the image.
   Edit the variables below to control size, spacing and colors.
   ========================================================= */
.about-company-section {
  --about-section-bg: #04111f;
  --about-card-bg: #182431;
  --about-accent: #28aaff;
  --about-text: #f4f6f8;
  --about-muted: #aeb6c3;
  --about-image-radius: 17px;
  --about-section-padding-y: 34px;
  background-color: #1b2632;

  padding: var(--about-section-padding-y) 0 40px;
  padding-top:100px;
}

.about-company-section__inner {
  width: min(1128px, calc(100% - 72px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .91fr) minmax(0, 1.09fr);
  gap: 56px;
  align-items: center;
}

.about-company-section__media {
  position: relative;
  height:630px;
  min-height: 630px;
  overflow: hidden;
  border-radius: var(--about-image-radius);
}

.about-company-section__image {
  width: 100%;
  height: 630px;
  min-height: 630px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.about-company-section__play {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 76px;
  height: 76px;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  color: var(--about-accent);
  background: #fff;
  box-shadow: 0 0 0 18px rgba(255,255,255,.15);
  cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease;
}

.about-company-section__play:hover {
  transform: translate(-50%, -50%) scale(1.04);
  box-shadow: 0 0 0 21px rgba(255,255,255,.17);
}

.about-company-section__play svg {
  width: 30px;
  height: 30px;
}

.about-company-section__badge {
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  padding: 0 16px;
  margin-bottom: 22px;
  border-radius: 999px;
  color: #f4f7fa;
  background: #172331;
  font-family: "Rajdhani", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
}

.about-company-section__title {
  margin: 0 0 25px;
  color: var(--about-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(34px, 3.25vw, 48px);
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -.035em;
}

.about-company-section__intro {
  max-width: 610px;
  margin: 0 0 28px;
  color: #bcc3ce;
  font-size: 18px;
  line-height: 1.65;
}

.about-company-section__details {
  display: grid;
  grid-template-columns: 1fr;
  
  margin-bottom: 28px;
}

.about-company-section__detail h3 {
  position: relative;
  margin: 0 0 20px;
  padding-left: 16px;
  color: var(--about-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: .01em;
}

.about-company-section__detail h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  height: 28px;
  background: var(--about-accent);
}

.about-company-section__detail p,
.about-company-section__detail li {
  color: var(--about-muted);
  font-size: 13px;
  line-height: 1.7;
}

.about-company-section__detail p { margin: 0; }
.about-company-section__detail ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.about-company-section__detail li {
  position: relative;
  padding-left: 15px;
  margin-bottom: 5px;
}
.about-company-section__detail li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .68em;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--about-accent);
}

.about-company-section__button {
  display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 360px;
    max-width: 100%;
    min-width: 0;
    min-height: 58px;
    align-self: flex-start;
    justify-self: start;
    margin-top: 37px;
    padding: 0 28px;
    border-radius: 999px;
    background: #fff;
    color: #121929;
    box-shadow: inset 0 -4px 9px rgba(0, 0, 0, .13);
    font-family: "Chakra Petch", sans-serif;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .09em;
    transition: transform .25s ease, box-shadow .25s ease;
}
.about-company-section__button:hover {
  transform: translateY(-2px);
  filter: brightness(1.04);
}

@media (max-width: 960px) {
  .about-company-section__inner {
    width: min(100% - 44px, 1128px);
    grid-template-columns: 1fr;
    gap: 42px;
  }
  .about-company-section__media,
  .about-company-section__image { min-height: 500px; }
}

@media (max-width: 680px) {
  .about-company-section { padding-top: 24px; }
  .about-company-section__inner { width: calc(100% - 28px); gap: 32px; }
  .about-company-section__media,
  .about-company-section__image { min-height: 380px; height:200px; }
  .about-company-section__details { grid-template-columns: 1fr; gap: 26px; }
  .about-company-section__title br { display: none; }
}

/* =========================================================
   ABOUT PAGE: FULLY EDITABLE TRUSTED COMPANY BLOCKS
   Edit the labels, symbols and links directly in about-us.html.
   ========================================================= */
.about-trust {
  width: min(100% - 72px, 1128px);
  margin: 52px auto 0;
  padding-bottom: 36px;
}

.about-trust__label {
  display: table;
  margin: 0 auto 36px;
  padding: 8px 16px;
  border-radius: 999px;
  background: #151e2b;
  color: #fff;
  font-family: "Rajdhani", Arial, sans-serif;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: .09em;
}

.about-trust__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 24px 26px;
}

.about-trust__card {
  min-height: 88px;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  border: 1px solid rgba(154, 169, 188, .18);
  border-radius: 5px;
  background: rgba(8, 19, 31, .42);
  color: #7f8996;
  text-decoration: none;
  overflow: hidden;
  transition: border-color .25s ease, color .25s ease, transform .25s ease, background .25s ease;
}

.about-trust__card:hover {
  color: #c4cfdb;
  border-color: rgba(47, 172, 255, .48);
  background: rgba(15, 31, 49, .7);
  transform: translateY(-3px);
}

.about-trust__mark {
  flex: 0 0 auto;
  font-size: 24px;
  line-height: 1;
  opacity: .95;
}

.about-trust__name {
  min-width: 0;
  white-space: nowrap;
  font-family: "Rajdhani", Arial, sans-serif;
  font-size: clamp(18px, 1.75vw, 25px);
  line-height: 1;
  font-weight: 700;
  letter-spacing: -.035em;
}

.about-trust__name--script {
  font-family: Georgia, serif;
  font-style: italic;
  text-transform: none;
}

.about-trust__name--serif {
  font-family: Georgia, serif;
  font-weight: 500;
}

@media (max-width: 980px) {
  .about-trust__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .about-trust { width: calc(100% - 28px); margin-top: 38px; }
  .about-trust__label { margin-bottom: 24px; text-align: center; }
  .about-trust__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  .about-trust__card { min-height: 76px; padding: 14px 12px; }
  .about-trust__name { font-size: 17px; }
}

@media (max-width: 410px) {
  .about-trust__grid { grid-template-columns: 1fr; }
}


/* =========================================================
   ABOUT PAGE: CORE VALUES / PRINCIPLES
   Fully editable: content in about-us.html, styling below.
   ========================================================= */
.core-values {
  
  --values-text: #f5f7fb;
  --values-muted: #aeb9c8;
  --values-accent: #22adff;
  --values-divider: rgba(159, 177, 198, .24);

  padding: 72px 0 42px;
}

.core-values__inner {
  width: min(100% - 40px, 1150px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 92px;
  align-items: start;
}

.core-values__intro {
  position: sticky;
  top: 112px;
}

.core-values__badge {
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  padding: 0 14px;
  border-radius: 999px;
  background: #15202e;
  color: #1B2632;
  font-family: "Rajdhani", Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .09em;
}

.core-values__title {
  max-width: 520px;
  margin: 24px 0 22px;
  color: var(--values-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(38px, 3.25vw, 48px);
  line-height: 1.05;
  font-weight: 500;
  letter-spacing: -.035em;
}

.core-values__copy {
  max-width: 680px;
    margin: 0 0 32px;
    color: #1b2632;
    font-family: "Rajdhani", sans-serif;
    font-size: 23px;
    line-height: 1.48;
    font-weight: 500;
}


.core-values__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 116px;
  min-height: 38px;
  padding: 0 18px;
  border-radius: 999px;
  background: #fff;
  color: #17202b;
  box-shadow: inset 0 -3px 6px rgba(0,0,0,.15), 0 0 0 1px rgba(255,255,255,.5);
  text-decoration: none;
  font-family: "Rajdhani", Arial, sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  transition: transform .2s ease, filter .2s ease;
 
}

.core-values__button:hover {
  transform: translateY(-2px);
  filter: brightness(1.04);
}

.core-values__list {
  border-top: 0;
}

.core-values__item {
  position: relative;
  padding: 0 0 25px 14px;
  margin-bottom: 25px;
  border-bottom: 1px solid var(--values-divider);
}

.core-values__item h3 {
  position: relative;
  margin: 0 0 9px;
  color: var(--values-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: .01em;
}

.core-values__item h3::before {
  content: "";
  position: absolute;
  left: -14px;
  top: -1px;
  width: 1px;
  height: 26px;
  background: var(--values-accent);
}

.core-values__item p {
  margin: 0;
  color: var(--values-muted);
  font-size: 13px;
  line-height: 1.65;
}

@media (max-width: 900px) {
  .core-values { padding-top: 56px; }
  .core-values__inner { grid-template-columns: 1fr; gap: 46px; }
  .core-values__intro { position: static; }
  .core-values__title br { display: none; }
}

@media (max-width: 600px) {
  .core-values { padding: 44px 0 28px; }
  .core-values__inner { width: calc(100% - 28px); gap: 36px; }
  .core-values__title { font-size: 34px; }
  .core-values__item { padding-bottom: 21px; margin-bottom: 21px; }
}

/* =========================================================
   ABOUT PAGE: TRUSTED EXPERTS / TEAM
   Edit names, roles, images and social links in about-us.html.
   ========================================================= */
.team-section {
  background-color: #1b2632;
  --team-text: #f7f9fc;
  --team-muted: #aeb9c8;
  --team-accent: #23adff;
  
  padding: 78px 0 64px;
}

.team-section__inner {
  width: min(100% - 72px, 1132px);
  margin: 0 auto;
  text-align: center;
}

.team-section__badge {
  display: flex ! important;
  width:fit-content;
  margin: 0 auto;
  align-items: center;
  min-height: 31px;
  padding: 0 14px;
  border-radius: 999px;
  background: #15202e;
  color: var(--team-text);
  font-family: "Rajdhani", Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .09em;
}

.team-section__title {
  margin: 24px auto 20px;
  color: var(--team-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(38px, 4.1vw, 48px);
  line-height: 1.03;
  font-weight: 500;
  letter-spacing: -.035em;
}

.team-section__intro {
  margin: 0 auto 40px;
  color: var(--team-muted);
  font-size: 18px;
  
  line-height: 1.65;
}

.team-section__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  align-items: start;
}

.team-card {
  text-align: center;
}

.team-card--offset {
  margin-top: 19px;
}

.team-card__image {
  display: block;
  width: 100%;
  aspect-ratio: 264 / 320;
  object-fit: cover;
  border-radius: 8px;
}

.team-card h3 {
  margin: 21px 0 4px;
  color: var(--team-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: .01em;
}

.team-card p {
  margin: 0;
  color: var(--team-accent);
  font-size: 13px;
  line-height: 1.45;
}

.team-card__socials {
  display: flex;
  justify-content: center;
  gap: 9px;
  margin-top: 16px;
}

.team-card__socials a {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(155, 174, 196, .18);
  border-radius: 50%;
  color: #fff;
  background: rgba(7, 20, 34, .55);
  text-decoration: none;
  font-family: Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  transition: transform .2s ease, border-color .2s ease, color .2s ease;
}

.team-card__socials a:hover {
  transform: translateY(-2px);
  border-color: var(--team-accent);
  color: var(--team-accent);
}

@media (max-width: 980px) {
  .team-section__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 24px; }
  .team-card--offset { margin-top: 0; }
}

@media (max-width: 620px) {
  .team-section { padding: 56px 0 46px; }
  .team-section__inner { width: calc(100% - 28px); }
  .team-section__title { font-size: 34px; }
  .team-section__title br { display: none; }
  .team-section__grid { grid-template-columns: 1fr; gap: 34px; }
  .team-card__image { max-height: 430px; }
}


/* =========================================================
   ABOUT PAGE: MISSION, VISION & PROMISE
   Edit all text in about-us.html. Edit colours and spacing here.
   ========================================================= */
.mvp-section {
  --mvp-bg: #061421;
  --mvp-card: #111d2a;
  --mvp-card-featured: #142434;
  --mvp-text: #f7f9fc;
  --mvp-muted: #aab6c6;
  --mvp-accent: #b57e1b;
  --mvp-border: rgba(118, 151, 180, .18);
  background: #050A1D;
  padding: 88px 0 0px;
   background-color: #1b2632;
}

.mvp-section__inner {
  width: min(100% - 72px, 1132px);
  margin: 0 auto;
}

.mvp-section__header {
  max-width: 760px;
  margin: 0 auto 42px;
  text-align: center;
}

.mvp-section__badge {
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  padding: 0 14px;
  border-radius: 999px;
  background: #152231;
  color: var(--mvp-text);
  font-family: "Rajdhani", Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .09em;
}

.mvp-section__title {
  margin: 24px 0 14px;
  color: var(--mvp-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(38px, 3.25vw, 52px);
  line-height: 1.05;
  font-weight: 500;
  letter-spacing: -.035em;
}

.mvp-section__intro {
  margin: 0;
  color: var(--mvp-muted);
  font-size: 14px;
  line-height: 1.7;
}

.mvp-section__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.mvp-card {
  position: relative;
  min-height: 330px;
  padding: 34px 30px 30px;
  overflow: hidden;
 border: 1px solid var(--mvp-accent);
  border-radius: 12px;
  background: var(--mvp-card);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.mvp-card--featured {
  background: linear-gradient(145deg, rgba(34,179,255,.12), transparent 55%), var(--mvp-card-featured);
  border-color: rgba(34,179,255,.45);
  box-shadow: 0 0 28px rgba(34,179,255,.08);
}

.mvp-card:hover {
  transform: translateY(-5px);
  border-color: rgba(34,179,255,.48);
  box-shadow: 0 16px 40px rgba(0,0,0,.2);
}

.mvp-card__number {
  position: absolute;
  top: 20px;
  right: 24px;
  color: rgba(255,255,255,.08);
  font-family: "Chakra Petch", sans-serif;
  font-size: 52px;
  font-weight: 700;
  line-height: 1;
}

.mvp-card__icon {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 54px;
  border: 1px solid rgba(34,179,255,.35);
  border-radius: 10px;
  background: rgba(34,179,255,.09);
  color: var(--mvp-accent);
  font-family: "Chakra Petch", sans-serif;
  font-size: 20px;
  font-weight: 700;
}

.mvp-card h3 {
  position: relative;
  margin: 0 0 16px;
  padding-left: 15px;
  color: var(--mvp-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: 21px;
  line-height: 1.2;
  font-weight: 600;
}

.mvp-card h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 2px;
  height: 100%;
  background: var(--mvp-accent);
}

.mvp-card p {
  margin: 0;
  color: var(--mvp-muted);
  font-size: 13px;
  line-height: 1.75;
}

@media (max-width: 900px) {
  .mvp-section__grid { grid-template-columns: 1fr; }
  .mvp-card { min-height: 0; }
  .mvp-card__icon { margin-bottom: 38px; }
}

@media (max-width: 600px) {
  .mvp-section { padding: 58px 0 62px; }
  .mvp-section__inner { width: calc(100% - 28px); }
  .mvp-section__header { margin-bottom: 30px; }
  .mvp-section__title { font-size: 34px; }
  .mvp-card { padding: 28px 24px 26px; }
}

/* =========================================================
   SERVICES PAGE HERO — fully customizable
   Edit text in services.html. Edit the variables below to
   change height, background, position, title size and colors.
   ========================================================= */
.services-page {
  min-height: 100vh;
  background: #050a1d;
}

.services-page-hero {
  --services-hero-height: 420px;
  --services-hero-bg: url("assets/images/serviceshero.webp");
  --services-hero-bg-position: 73% 49%;
  --services-hero-title-size: clamp(54px, 5vw, 76px);
  --services-hero-title-color: #f5f7fb;
  --services-hero-accent: #e3b562;
  position: relative;
  min-height: var(--services-hero-height);
  overflow: hidden;
  isolation: isolate;
  display: flex;
  align-items: center;
  background-color: #070b2b;
  background-image: var(--services-hero-bg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: var(--services-hero-bg-position);
  border-bottom: 1px solid #e3b562;
}

.services-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
     linear-gradient(180deg, rgba(0, 0, 0, 0.611), rgba(3, 8, 25, .26));

}

.services-page-hero__inner {
  width: min(1130px, calc(100% - 96px));
  margin: 0 auto;
  padding-top: 32px;
  text-align: center;
}

.services-page-hero__title {
  margin: 0 0 30px;
  font-family: "Chakra Petch", sans-serif;
  font-size: var(--services-hero-title-size);
  line-height: 1;
  font-weight: 500;
  letter-spacing: -2px;
  color: var(--services-hero-title-color);
}

.services-page-hero__breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: "Rajdhani", Arial, sans-serif;
  font-size: 14px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .7px;
  color: #f5f7fb;
}

.services-page-hero__breadcrumb a {
  transition: color .25s ease;
}
.services-page-hero__breadcrumb a:hover { color: var(--services-hero-accent); }

.services-page-hero__separator {
  width: 10px;
  height: 10px;
  border-top: 2px solid var(--services-hero-accent);
  border-right: 2px solid var(--services-hero-accent);
  transform: rotate(45deg);
}

@media (max-width: 900px) {
  .services-page-hero {
    --services-hero-height: 350px;
    --services-hero-bg-position: 66% 50%;
  }
  .services-page-hero__inner {
    width: min(100% - 56px, 1130px);
    padding-top: 38px;
  }
}

@media (max-width: 650px) {
  .services-page-hero {
    --services-hero-height: 310px;
    --services-hero-bg-position: 63% 50%;
  }
  .services-page-hero__inner {
    width: calc(100% - 36px);
    padding-top: 54px;
  }
  .services-page-hero__title {
    margin-bottom: 22px;
    letter-spacing: -1px;
  }
}


/* =========================================================
   SERVICES CATALOG SECTION — fully customizable
   Change these variables to restyle the section globally.
   ========================================================= */
.services-catalog {
  --catalog-bg: #ffffff;
  /* Edit the final value (.78) to change background transparency:
     lower = stronger image, higher = lighter/whiter background. */
  --catalog-background-overlay: rgba(255, 255, 255, .58);
  --catalog-card-bg: #1a2531;
  --catalog-card-border: rgba(176, 194, 210, .18);
  --catalog-accent: #31b6ff;
  --catalog-heading: #020F1B;
  --catalog-copy: #aeb7c4;
  --catalog-radius: 14px;
  --catalog-card-min-height: 214px;
  padding: 100px 0 70px;
  background-color: var(--catalog-bg);
  background-image:
    linear-gradient(var(--catalog-background-overlay), var(--catalog-background-overlay)),
    url("assets/images/background.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  color: var(--catalog-heading);
}

.services-catalog__inner {
  width: min(1120px, calc(100% - 72px));
  margin: 0 auto;
}

.services-catalog__intro {
  max-width: 1500px;
  margin: 0 auto 38px;
  text-align: center;
}

.services-catalog__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  padding: 7px 16px;
  border-radius: 999px;
  background: #172330;
  color: #fff;
  font: 600 13px/1 "Rajdhani", Arial, sans-serif;
  letter-spacing: 1px;
}

/* Services page OUR SERVICES eyebrow — text and divider are editable separately. */
.services-catalog__eyebrow {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0 auto 28px;
  text-align: center;
}

.services-catalog__eyebrow .global-security-badge {
  color: #020F1B;
}

.services-catalog__eyebrow .services-catalog__badge {
  position: relative;
  left: 0;
  top: 0;
  width: 240px;
  margin: 0 auto;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #020F1B;
  font-family: "Chakra Petch", sans-serif;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: .03em;
  text-align: center;
}

.services-catalog__badge-divider {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  width: 240px;
  height: 28px;
  margin: 2px auto 0;
  object-fit: fill;
  pointer-events: none;
}

.services-catalog__intro h2 {
  margin: 0 0 22px;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(34px, 3.25vw, 54px);
  line-height: 1.04;
  font-weight: 500;
  letter-spacing: -1.8px;
}

.services-catalog__intro p {
  margin: 0;
  color: #31465a;
  font-size: 18px;
  line-height: 1.7;
  padding-bottom: 40px;
}

.services-capabilities {
  width: 100%;
  margin: 0 0 42px;
}

.network-overview__intro + .services-capabilities {
  margin-top: 28px;
}

.services-capabilities__label {
  margin: 0 0 22px;
  color: var(--catalog-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: 20px;
  font-weight: 600;
}

.services-capabilities__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px 34px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.services-capabilities__grid li {
  position: relative;
  padding-left: 22px;
  color: var(--catalog-copy);
  font-size: 16px;
  line-height: 1.5;
}

.services-capabilities__grid li::before {
  content: "";
  position: absolute;
  top: .55em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #e3b562;
  box-shadow: 0 0 0 5px rgba(250, 208, 67, .12);
}

@media (max-width: 900px) {
  .services-capabilities__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
  .services-capabilities__grid { grid-template-columns: 1fr; }
}

.services-catalog__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 24px;
}

.services-catalog__card { grid-column: span 2; }
.services-catalog__card:nth-child(4) { grid-column: 2 / span 2; }
.services-catalog__card:nth-child(5) { grid-column: 4 / span 2; }

.services-catalog__card {
  min-height: var(--catalog-card-min-height);
  padding: 25px 26px 24px;
  overflow: hidden;
  border: 1px solid var(--catalog-accent);
  border-radius: var(--catalog-radius);
  background: var(--catalog-card-bg);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

.services-catalog__card.is-featured,
.services-catalog__card:hover {
  border-color: var(--catalog-accent);
  box-shadow: 0 0 0 1px rgba(49,182,255,.06), 0 14px 38px rgba(0,0,0,.18);
}

.services-catalog__card:hover,
.services-catalog__card:focus-visible {
  transform: translateY(-7px);
  border-color: #e3b562;
  box-shadow: 0 18px 38px rgba(6, 17, 29, .22), 0 0 22px rgba(250, 208, 67, .24);
}
.services-catalog__card:focus-visible { outline: 3px solid #e3b562; outline-offset: 4px; }

.services-catalog__number {
  display: block;
  min-height: 48px;
  padding-left: 13px;
  border-left: 0;
  color: #FDD954;
  font: 600 19px/1.1 "Chakra Petch", sans-serif;
}

.services-catalog__card-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-items: end;
}

.services-catalog__card-content .services-catalog__icon {
  display: none;
}

.services-catalog__card h3 {
  margin: 0 0 13px;
  font-family: "Chakra Petch", sans-serif;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: .3px;
  Color: #e3b562;
}

.services-catalog__card p {
  margin: 0;
  color: var(--catalog-copy);
  font-size: 16px;
  line-height: 1.6;
}

.services-catalog__icon {
  width: 58px;
  height: 58px;
  align-self: end;
}

.services-catalog__icon svg {
  width: 100%;
  height: 100%;
  overflow: visible;
  fill: none;
  stroke: #d7dde3;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.services-catalog__icon svg rect:last-child,
.services-catalog__icon svg circle:last-child {
  stroke: var(--catalog-accent);
}

@media (max-width: 980px) {
  .services-catalog__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .services-catalog__card,
  .services-catalog__card:nth-child(4),
  .services-catalog__card:nth-child(5) { grid-column: auto; }
}

@media (max-width: 650px) {
  .services-catalog { padding-bottom: 48px; }
  .services-catalog__inner { width: calc(100% - 32px); }
  .services-catalog__intro { margin-bottom: 28px; }
  .services-catalog__intro h2 br { display: none; }
  .services-catalog__grid { grid-template-columns: 1fr; gap: 16px; }
  .services-catalog__card { min-height: 196px; }
}


/* =========================================================
   NETWORK SECURITY OVERVIEW SECTION
   Edit these variables to customise colours, spacing and radius.
   ========================================================= */
.network-overview {
  --overview-bg: #020f1b;
  --overview-card: #1b2835;
  --overview-text: #f7f9fc;
  --overview-copy: #aeb9c9;
  --overview-accent: #e3b562;
  --overview-border: rgba(41, 184, 255, .95);
  --overview-radius: 18px;
  padding: 64px 0 88px;
  background-color: #1b2734;
  color: var(--overview-text);
}

.network-overview__inner {
  width: min(1120px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.72fr) minmax(300px, .92fr);
  gap: 50px;
  align-items: start;
}

.network-overview__main { min-width: 0; padding-bottom:60px; }

.network-overview__intro h2,
.network-overview__reasons h3,
.network-overview__card h3 {
  margin: 0;
  font-family: "Chakra Petch", sans-serif;
  font-weight: 500;
  letter-spacing: .2px;
}

.network-overview__intro h2 {
  margin-bottom: 13px;
  font-size: clamp(25px, 3.25vw, 42px);
  line-height: 1.12;
}

.network-overview__intro p,
.network-overview__reasons p,
.network-overview__card p {
  margin: 0;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.62;
}

.network-overview__gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin: 28px 0 34px;
}

.network-overview__gallery img {
  width: 100%;
  height: 222px;
  display: block;
  object-fit: cover;
  border-radius: 13px;
}

.network-overview__gallery img:nth-child(2) { object-position: center; }

.network-overview__reasons h3 {
  margin-bottom: 12px;
  font-size: clamp(24px, 3.25vw, 42px);
  line-height: 1.15;
}

.network-overview__reasons {
  /* Heading sizes: edit these independently. */
  --why-first-line-size: 40px;

  --why-second-third-line-size: clamp(15px, 2.25vw,30px);
  grid-column: 1 / -1;
  width: 100%;
  padding-top: 80px;
  text-align: center;
}

.network-overview__inner > .network-overview__gallery {
  grid-column: 1 / -1;
  width: 100%;
}

.network-overview__reasons ul {
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 24px 20px;
  align-items: start;
  justify-content: center;
}

.network-overview__reasons li {
  position: relative;
  grid-column: auto;
  padding: 25px 4px 0;
  color: var(--overview-copy);
  font-size: 16px;
  line-height: 1.55;
  text-align: center;
}

.network-overview__reasons li:nth-child(4),
.network-overview__reasons li:nth-child(5) { grid-column: auto; }

.network-overview__reasons li strong,
.network-overview__reasons li span {
  display: block;
}

.network-overview__reasons li strong {
  margin-bottom: 7px;
  color: var(--overview-text);
  font-family: "Chakra Petch", sans-serif;
  font-size: 20px;
  line-height: 1.25;
}

.network-overview__reasons li::before {
  content: "✓";
  position: absolute;
  left: 50%;
  top: 0;
  width: 14px;
  height: 14px;
  border: 1px solid var(--overview-accent);
  border-radius: 50%;
  color: var(--overview-accent);
  font-size: 9px;
  font-weight: 800;
  line-height: 12px;
  text-align: center;
  transform: translateX(-50%);
}

@media (max-width: 900px) {
  .network-overview__reasons ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
  .network-overview__reasons ul { grid-template-columns: 1fr; }
  .network-overview__reasons li,
  .network-overview__reasons li:nth-child(4),
  .network-overview__reasons li:nth-child(5) { grid-column: auto; }
}

.network-overview__card {
  margin-top: 1px;
  padding: 24px 25px 27px;
  border: 1px solid #e3b562;
  border-radius: var(--overview-radius);
 background: rgba(10, 19, 29, .74);
}

.network-overview__card img {
  width: 100%;
  height: 140px;
  display: block;
  object-fit: cover;
  object-position: center;
  margin-bottom: 28px;
  border-radius: 16px;
}

.network-overview__card h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 1.25vw, 34px);
  line-height: 1.18;
}

.network-overview__card p { margin-bottom: 27px; }

.network-overview__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 24px;
  border-radius: 999px;
  background: #fff;
  color: #06101b;
  box-shadow: inset 0 -2px 4px rgba(0,0,0,.18);
  font: 600 12px/1 "Rajdhani", Arial, sans-serif;
  letter-spacing: .65px;
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease;
}

.network-overview__button:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,.25);
}

@media (max-width: 980px) {
  .network-overview__inner {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .network-overview__card {
    margin-top: 0;
    display: grid;
    grid-template-columns: minmax(230px, .8fr) 1fr;
    gap: 24px;
    align-items: center;
  }
  .network-overview__card img {
    height: 100%;
    min-height: 260px;
    margin: 0;
    grid-row: 1 / span 4;
  }
}

@media (max-width: 700px) {
  .network-overview { padding: 48px 0 64px; }
  .network-overview__inner { width: calc(100% - 32px); }
  .network-overview__gallery { grid-template-columns: 1fr; gap: 16px; }
  .network-overview__gallery img { height: 210px; }
  .network-overview__card { display: block; }
  .network-overview__card img { height: 230px; min-height: 0; margin-bottom: 24px; }
}


/* =========================================================
   SERVICE OFFER + CLIENT REVIEW SECTION
   Edit the variables below to customise colours, spacing and radius.
   ========================================================= */
.service-offer-review {
  --offer-bg: #ffffff;
  --offer-card: #1b2835;
  --offer-text: #06111D;
  --offer-copy: #33465a;
  --offer-accent: #e3b562;
  --offer-star: #ff8a2d;
  --offer-border: rgba(41, 184, 255, .95);
  --offer-divider: rgba(177, 194, 210, .28);
  --offer-radius: 18px;
  padding: 0 0 92px;
  background-color: var(--offer-bg);
  background-image:
    linear-gradient(rgba(255, 255, 255, .62), rgba(255, 255, 255, .62)),
    url("assets/images/background.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  color: var(--offer-text);
}

.service-offer-review__inner {
  width: min(1120px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(300px, .92fr) minmax(0, 1.72fr);
  gap: 50px;
  align-items: start;
  padding-top:100px;
}

.service-offer-review__content {
  min-width: 0;
  order: 2;
}

.service-offer-review h2,
.service-offer-review h3 {
  margin: 0;
  font-family: "Chakra Petch", sans-serif;
  font-weight: 500;
  letter-spacing: .2px;
}

.service-offer-review__offer h2,
.service-offer-review__testimonial h3 {
  font-size: clamp(25px, 2.2vw, 31px);
  line-height: 1.15;
  margin-top:-20px;
}

.service-offer-review__offer > p {
  margin: 12px 0 12px;
  color: var(--offer-copy);
  font-size: 16px;
  line-height: 1.62;
  max-width: 760px;
}

.service-offer-review__features {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 9px 28px;
}

.service-offer-review__features li {
  position: relative;
  padding-left: 12px;
  color: var(--offer-copy);
  font-size: 13px;
  line-height: 1.45;
}

.service-offer-review__features li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .58em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--offer-accent);
}

.service-offer-review__testimonial { margin-top: 31px; }

.service-offer-review__divider {
  height: 1px;
  margin: 20px 0 16px;
  background: var(--offer-divider);
}

.service-offer-review__stars {
  margin-bottom: 16px;
  color: var(--offer-star);
  font-size: 19px;
  letter-spacing: 4px;
  line-height: 1;
}

.service-offer-review blockquote {
  margin: 0;
  color: #33465a;
  font-size: 16px;
  line-height: 1.65;
  font-weight: 600;
}

.service-offer-review__author {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 20px;
}

.service-offer-review__author img {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  object-fit: cover;
  object-position: center top;
}

.service-offer-review__author strong,
.service-offer-review__author span {
  display: block;
}

.service-offer-review__author strong {
  margin-bottom: 6px;
  font: 600 18px/1.15 "Chakra Petch", sans-serif;
  letter-spacing: .45px;
}

.service-offer-review__author span {
  color: var(--offer-accent);
  font-size: 14px;
}

.service-offer-review__card {
  order: 1;
  padding: 24px 25px 27px;
  border: 1px solid var(--offer-border);
  border-radius: var(--offer-radius);
  background: var(--offer-card);
  color: #f7f9fc;
}

.service-offer-review__card img {
  width: 100%;
  height: 240px;
  display: block;
  object-fit: cover;
  object-position: center;
  margin-bottom: 28px;
  border-radius: 16px;
}

.service-offer-review__card h3 {
  margin-bottom: 12px;
  font-size: clamp(27px, 2.25vw, 24px);
  line-height: 1.18;
}

.service-offer-review__card p {
  margin: 0 0 27px;
  color: #b5c0cf;
  font-size: 16px;
  line-height: 1.62;
}

.service-offer-review__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 24px;
  border-radius: 999px;
  background: #fff;
  color: #06101b;
  box-shadow: inset 0 -2px 4px rgba(0,0,0,.18);
  font: 600 12px/1 "Rajdhani", Arial, sans-serif;
  letter-spacing: .65px;
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease;
}

.service-offer-review__button:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,.25);
}

@media (max-width: 980px) {
  .service-offer-review__inner {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .service-offer-review__card {
    display: grid;
    grid-template-columns: minmax(230px, .8fr) 1fr;
    gap: 24px;
    align-items: center;
  }
  .service-offer-review__card img {
    height: 100%;
    min-height: 260px;
    margin: 0;
    grid-row: 1 / span 4;
  }
}

@media (max-width: 700px) {
  .service-offer-review { padding-bottom: 64px; }
  .service-offer-review__inner { width: calc(100% - 32px); }
  .service-offer-review__features { display: grid; gap: 10px; }
  .service-offer-review__card { display: block; }
  .service-offer-review__card img { height: 230px; min-height: 0; margin-bottom: 24px; }
  .service-offer-review blockquote { font-size: 16px; }
}


/* =========================================================
   OTHER SERVICES SECTION
   Edit the variables below to customise this section.
   ========================================================= */
.other-services {
  --other-bg: #020f1b;
  --other-card: #1b2835;
  --other-text: #f7f9fc;
  --other-copy: #b5c0cf;
  --other-accent: #e3b562;
  --other-border: rgba(180, 197, 213, .18);
  --other-radius: 13px;
  padding: 30px 0 92px;
   background-color: #1b2734;
  color: var(--other-text);
}
.other-services__inner { width: min(1120px, calc(100% - 48px)); margin: 0 auto; }
.other-services__top { padding-top: 80px; padding-bottom: 80px;display: flex; align-items: flex-end; justify-content: space-between; gap: 38px; margin-bottom: 38px; }
.other-services__intro { max-width: 780px; }
.other-services__badge { display: inline-flex; align-items: center; min-height: 29px; padding: 0 14px; margin-bottom: 22px; border-radius: 999px; background: #142230; color: #fff; font: 600 12px/1 "Rajdhani", Arial, sans-serif; letter-spacing: .8px; }
.other-services h2,.other-services h3 { margin: 0; font-family: "Chakra Petch", sans-serif; font-weight: 500; }
.other-services h2 { font-size: clamp(34px, 4vw, 54px); line-height: 1.05; letter-spacing: .2px; }
.other-services__intro p { margin: 23px 0 0; color: var(--other-copy); font-size: 16px; line-height: 1.6; }
.other-services__button { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 23px; margin-bottom: 3px; border-radius: 999px; background: #fff; color: #07111c; text-decoration: none; box-shadow: inset 0 -2px 4px rgba(0,0,0,.18); font: 600 12px/1 "Rajdhani", Arial, sans-serif; letter-spacing: .65px; transition: transform .2s ease, box-shadow .2s ease; }
.other-services__button:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(0,0,0,.25); }

/* Services page content buttons only — excludes the header CTA. */
body.services-page main :is(
  .network-overview__button,
  .service-offer-review__button,
  .other-services__button,
  .cyber-cta__button,
  .services-ad-cta
) {
  font-family: "Chakra Petch", sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  letter-spacing: .09em !important;
}

/* Services-page conversion buttons for paid-search and social visitors. */
body.services-page .services-ad-cta {
  width: auto !important;
  min-width: 250px;
  min-height: 58px;
  margin-top: 30px;
  padding-inline: 28px;
  align-self: auto !important;
  justify-self: auto !important;
  text-decoration: none;
}

body.services-page .services-ad-cta--hero,
body.services-page .services-ad-cta--catalog {
  margin-inline: auto;
}

body.services-page .services-ad-cta--process {
  margin-top: 24px;
}

@media (max-width: 600px) {
  body.services-page .services-ad-cta {
    width: min(100%, 320px) !important;
    min-width: 0;
    
  }
}

.other-services__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.other-services__card {   min-height: 214px; padding: 26px 25px 24px; border: 1px solid var(--other-border); border-radius: var(--other-radius);  transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease; background: rgba(10, 19, 29, .74);}
.other-services__card:hover { transform: translateY(-4px); border-color: rgba(41,184,255,.55); box-shadow: 0 14px 30px rgba(0,0,0,.2); }
.other-services__number { display: block; margin-bottom: 36px; padding-left: 12px; border-left: 1px solid rgba(164,187,205,.15); color: #e3b562; font: 600 18px/1.35 "Chakra Petch", sans-serif; }
.other-services__body { display: grid; grid-template-columns: minmax(0,1fr) 58px; gap: 18px; align-items: end; }
.other-services__body h3 { margin-bottom: 12px; font-size: 20px; line-height: 1.25; }
.other-services__body p { margin: 0; color: var(--other-copy); font-size: 16px; line-height: 1.6; }
.other-services__icon { width: 58px; height: 58px; align-self: end; }
.other-services__icon svg { width: 100%; height: 100%; fill: none; stroke: #d8e0e8; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.other-services__icon svg rect:last-of-type,.other-services__icon svg circle:last-of-type { stroke: var(--other-accent); }
@media (max-width: 960px) { .other-services__top { align-items: flex-start; } .other-services__grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .other-services__card:last-child { grid-column: 1 / -1; } }
@media (max-width: 700px) { .other-services { padding: 20px 0 64px; } .other-services__inner { width: calc(100% - 32px); } .other-services__top { display: block; margin-bottom: 28px; } .other-services__button { margin-top: 22px; } .other-services__grid { grid-template-columns: 1fr; } .other-services__card:last-child { grid-column: auto; } .other-services h2 br { display: none; } }

/* ================= EXPERTISE / PROVEN SKILLS ================= */
.expertise-security {
  --expertise-bg: #03101c;
  --expertise-accent: #25aaff;
  --expertise-muted: #aeb8c7;
  --expertise-track: #1a2a39;
  background: var(--expertise-bg);
  color: #fff;
  padding: 114px 26px 44px;
}

.expertise-security__inner {
  width: min(1128px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 48px;
  align-items: center;
}

.expertise-security__badge {
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  margin-bottom: 20px;
  padding: 0 14px;
  border-radius: 999px;
  background: #172331;
  color: #fff;
  font-family: "Rajdhani", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
}

.expertise-security h2 {
  margin: 0;
  color: #f7f8fa;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(42px,2.55vw, 72px);
  line-height: 1.03;
  font-weight: 500;
  letter-spacing: -.025em;
}

.expertise-security__intro {
  max-width: 475px;
  margin: 24px 0 22px;
  color: var(--expertise-muted);
  font-family: "Rajdhani", sans-serif;
  font-size: 15px;
  line-height: 1.55;
  font-weight: 500;
}

.expertise-security__certifications {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  margin-bottom: 43px;
  color: #fff;
  font-family: "Rajdhani", sans-serif;
  font-size: 13px;
  font-weight: 600;
}

.expertise-security__certifications span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

.expertise-security__certifications b {
  color: var(--expertise-accent);
  font-size: 16px;
  line-height: 1;
}

.expertise-security__skills {
  display: grid;
  gap: 24px;
  max-width: 482px;
}

.expertise-skill__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 46px;
  align-items: end;
  gap: 16px;
  margin-bottom: 10px;
  color: #fff;
  font-family: "Rajdhani", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .07em;
}

.expertise-skill__head strong {
  color: #fff;
  font-size: 12px;
  text-align: right;
}

.expertise-skill__bar {
  position: relative;
  width: calc(100% - 44px);
  height: 3px;
  background: var(--expertise-track);
}

.expertise-skill__bar i {
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--skill-value);
  background: var(--expertise-accent);
}

.expertise-skill__bar i::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 20px;
  height: 20px;
  border: 6px solid #fff;
  border-radius: 50%;
  background: var(--expertise-accent);
  box-shadow: 0 0 0 1px rgba(255,255,255,.15);
  transform: translate(50%, -50%);
}

.expertise-security__media {
  overflow: hidden;
  min-height: 540px;
  border-radius: 19px;
  background: #0b1a28;
}

.expertise-security__media img {
  width: 100%;
  height: 100%;
  min-height: 540px;
  display: block;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 900px) {
  .expertise-security { padding: 70px 28px; }
  .expertise-security__inner { grid-template-columns: 1fr; gap: 40px; }
  .expertise-security__content { max-width: 680px; }
  .expertise-security__skills, .expertise-security__intro { max-width: 100%; }
  .expertise-security__media, .expertise-security__media img { min-height: 430px; }
}

@media (max-width: 600px) {
  .expertise-security { padding: 62px 18px 68px; }
  .expertise-security h2 br { display: none; }
  .expertise-security__certifications { align-items: flex-start; flex-direction: column; margin-bottom: 34px; }
  .expertise-security__skills { gap: 23px; }
  .expertise-security__media, .expertise-security__media img { min-height: 330px; }
}

/* =========================================================
   SERVICE ONE PAGE HERO
   Edit these variables to customize the complete hero.
   ========================================================= */
.service-one-hero {
  --service-one-height: 400px;
  --service-one-background: url("assets/images/cta-network-globe.webp");
  --service-one-background-position: 73% 50%;
  --service-one-overlay-left: rgba(7, 11, 43, 0.97);
  --service-one-overlay-middle: rgba(7, 11, 43, 0.86);
  --service-one-overlay-right: rgba(7, 11, 43, 0.22);
  --service-one-title-color: #f7f7fb;
  --service-one-accent: #e3b562;
  --service-one-title-size: clamp(56px, 5.4vw, 78px);
  --service-one-content-width: 1240px;

  position: relative;
  min-height: var(--service-one-height);
  overflow: hidden;
  display: flex;
  align-items: center;
  background-color: #070b2b;
  background-image: var(--service-one-background);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: var(--service-one-background-position);
}

.service-one-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.611), rgba(3, 8, 25, .26));
}

.service-one-hero__inner {
  position: relative;
  z-index: 1;
  width: min(var(--service-one-content-width), calc(100% - 80px));
  margin: 0 auto;
  padding-top: 42px;
}

.service-one-hero__title {
  margin: 0 0 28px;
  color: var(--service-one-title-color);
  font-size: var(--service-one-title-size);
  line-height: 1;
  font-weight: 500;
  letter-spacing: -0.035em;
}

.service-one-hero__breadcrumb {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
}

.service-one-hero__breadcrumb a,
.service-one-hero__current {
  color: inherit;
  text-decoration: none;
}

.service-one-hero__breadcrumb a:hover {
  color: var(--service-one-accent);
}

.service-one-hero__separator {
  width: 9px;
  height: 9px;
  border-top: 2px solid var(--service-one-accent);
  border-right: 2px solid var(--service-one-accent);
  transform: rotate(45deg);
}

@media (max-width: 980px) {
  .service-one-hero {
    --service-one-height: 350px;
    --service-one-background-position: 66% 50%;
  }

  .service-one-hero__inner {
    width: min(var(--service-one-content-width), calc(100% - 48px));
  }
}

@media (max-width: 640px) {
  .service-one-hero {
    --service-one-height: 310px;
    --service-one-background-position: 61% 50%;
  }

  .service-one-hero__inner {
    width: calc(100% - 36px);
    padding-top: 30px;
  }

  .service-one-hero__title {
    margin-bottom: 22px;
    font-size: clamp(42px, 14vw, 58px);
  }
}


/* =========================================================
   SERVICE ONE CLIENT REVIEWS VIDEO SECTION
   Edit the variables below to customize this entire section.
   ========================================================= */
.service-one-reviews {
  --reviews-bg: #020f1b;
  --reviews-text: #f8f8fb;
  --reviews-muted: #aeb8c8;
  --reviews-accent: #28aefe;
  --reviews-badge-bg: #142130;
  --reviews-radius: 18px;
  --reviews-max-width: 1115px;
  --reviews-section-padding: 82px 24px 48px;

  background: var(--reviews-bg);
  padding: var(--reviews-section-padding);
}

.service-one-reviews__inner {
  width: min(var(--reviews-max-width), 100%);
  margin: 0 auto;
}

.service-one-reviews__header {
  max-width: 760px;
  margin: 0 auto 40px;
  text-align: center;
}

.service-one-reviews__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 7px 15px;
  border-radius: 999px;
  background: var(--reviews-badge-bg);
  color: var(--reviews-text);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
}

.service-one-reviews h2 {
  margin: 22px 0 18px;
  color: var(--reviews-text);
  font-size: clamp(38px, 4.1vw, 58px);
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -0.025em;
}

.service-one-reviews__header p {
  margin: 0;
  color: var(--reviews-muted);
  font-size: 14px;
  line-height: 1.7;
}

.service-one-reviews__media {
  position: relative;
  overflow: hidden;
  min-height: 560px;
  border-radius: var(--reviews-radius);
  background: #0a1723;
}

.service-one-reviews__media img {
  width: 100%;
  height: 100%;
  min-height: 560px;
  display: block;
  object-fit: cover;
  object-position: center;
}

.service-one-reviews__play {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 78px;
  height: 78px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: var(--reviews-accent);
  text-decoration: none;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 0 20px rgba(255,255,255,.10);
  transition: transform .25s ease, box-shadow .25s ease;
}

.service-one-reviews__play:hover {
  transform: translate(-50%, -50%) scale(1.05);
  box-shadow: 0 0 0 24px rgba(255,255,255,.12);
}

.service-one-reviews__play svg {
  width: 32px;
  height: 32px;
}

.service-one-reviews__play-ring {
  position: absolute;
  inset: 26px;
  border: 2px solid currentColor;
  border-radius: 50%;
}

@media (max-width: 900px) {
  .service-one-reviews {
    --reviews-section-padding: 70px 24px 42px;
  }

  .service-one-reviews__media,
  .service-one-reviews__media img {
    min-height: 470px;
  }
}

@media (max-width: 640px) {
  .service-one-reviews {
    --reviews-section-padding: 58px 18px 34px;
  }

  .service-one-reviews__header {
    margin-bottom: 30px;
  }

  .service-one-reviews h2 br {
    display: none;
  }

  .service-one-reviews__media,
  .service-one-reviews__media img {
    min-height: 360px;
  }

  .service-one-reviews__play {
    width: 68px;
    height: 68px;
    box-shadow: 0 0 0 15px rgba(255,255,255,.10);
  }
}


/* SERVICE ONE - FULLY EDITABLE OPPORTUNITY CARDS */
.service-jobs{
  --jobs-bg:#020f1d;
  --jobs-card:#1c2733;
  --jobs-border:rgba(151,170,188,.24);
  --jobs-text:#f6f8fb;
  --jobs-muted:#b4bfd0;
  --jobs-accent:#e3b562;
  background:var(--jobs-bg);
  padding:22px 22px 38px;
}
.service-jobs__grid{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 38px}
.service-job-card{min-height:261px;background:var(--jobs-card);border:1px solid var(--jobs-border);border-radius:14px;padding:26px 26px 24px;display:flex;flex-direction:column;color:var(--jobs-text)}
.service-job-card h2,.service-job-card h3{margin:0 0 12px;font-family:var(--font-heading);font-size:17px;letter-spacing:.04em;line-height:1.3;color:var(--jobs-text)}
.service-job-card>p{margin:0;max-width:500px;color:var(--jobs-muted);font-size:13px;line-height:1.65}
.service-job-card__meta{display:flex;flex-wrap:wrap;gap:10px 15px;margin-top:20px;color:var(--jobs-muted);font-size:12px}
.service-job-card__meta span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.service-job-card__meta svg{width:15px;height:15px;fill:none;stroke:var(--jobs-accent);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.service-job-card__footer{margin-top:auto;padding-top:25px;border-top:1px solid rgba(255,255,255,.10);display:flex;align-items:center;justify-content:space-between;gap:20px}
.service-job-card__footer a{display:inline-flex;align-items:center;justify-content:center;min-width:110px;padding:12px 20px;border:1px solid #fff;border-radius:999px;color:#fff;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.03em;transition:.25s ease}
.service-job-card__footer a:hover{background:#fff;color:#07121f;transform:translateY(-2px)}
.service-job-card__footer time{font-size:10px;font-weight:700;color:#fff}
@media(max-width:850px){.service-jobs__grid{grid-template-columns:1fr;gap:22px}.service-job-card{min-height:245px}}
@media(max-width:560px){.service-jobs{padding:18px 16px 30px}.service-job-card{padding:22px 20px}.service-job-card__meta{flex-direction:column;align-items:flex-start}.service-job-card__footer{align-items:flex-end}.service-job-card__footer time{text-align:right}}

/* =========================================================
   SERVICE ONE - GROW TOGETHER SECTION
   Edit these variables to customize the section globally.
   ========================================================= */
.grow-together {
  --grow-bg: #020f1d;
  --grow-card: #1c2733;
  --grow-border: rgba(151, 170, 188, 0.24);
  --grow-text: #f7f9fc;
  --grow-muted: #b6c0d0;
  --grow-accent: #2daeff;
  --grow-badge-bg: #142130;
  --grow-radius: 15px;
  --grow-max-width: 1120px;
  background: var(--grow-bg);
  padding: 50px 24px 34px;
}

.grow-together__inner {
  width: min(var(--grow-max-width), 100%);
  margin: 0 auto;
}

.grow-together__top {
  display: grid;
  grid-template-columns: 44% 56%;
  gap: 56px;
  align-items: stretch;
}

.grow-together__image-wrap {
  overflow: hidden;
  min-height: 445px;
  border-radius: var(--grow-radius);
  background: #0c1925;
}

.grow-together__image-wrap img {
  width: 100%;
  height: 100%;
  min-height: 445px;
  display: block;
  object-fit: cover;
  object-position: center;
}

.grow-together__content {
  display: flex;
  min-height: 445px;
  flex-direction: column;
  align-items: flex-start;
}

.grow-together__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  padding: 7px 15px;
  border-radius: 999px;
  background: var(--grow-badge-bg);
  color: var(--grow-text);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
}

.grow-together__copy {
  margin-top: auto;
  padding-bottom: 2px;
}

.grow-together__copy h2 {
  margin: 0 0 24px;
  color: var(--grow-text);
  font-family: var(--font-heading);
  font-size: clamp(36px, 4vw, 54px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.02em;
}

.grow-together__copy p {
  max-width: 620px;
  margin: 0 0 28px;
  color: var(--grow-muted);
  font-size: 14px;
  line-height: 1.65;
}

.grow-together__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 108px;
  padding: 12px 20px;
  border-radius: 999px;
  background: #fff;
  color: #07121f;
  text-decoration: none;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .05em;
  box-shadow: inset 0 -3px 6px rgba(0,0,0,.14);
  transition: transform .25s ease, box-shadow .25s ease;
}

.grow-together__button:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,.2), inset 0 -3px 6px rgba(0,0,0,.14);
}

.grow-together__benefits {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 56px;
}

.grow-benefit-card {
  min-height: 140px;
  padding: 20px 20px 18px;
  border: 1px solid var(--grow-border);
  border-radius: 10px;
  background: var(--grow-card);
}

.grow-benefit-card h3 {
  position: relative;
  margin: 0 0 12px;
  padding-left: 14px;
  color: var(--grow-text);
  font-family: var(--font-heading);
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .035em;
}

.grow-benefit-card h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: -3px;
  width: 1px;
  height: 26px;
  background: var(--grow-accent);
}

.grow-benefit-card p {
  margin: 0;
  color: var(--grow-muted);
  font-size: 12px;
  line-height: 1.7;
}

@media (max-width: 980px) {
  .grow-together__top {
    grid-template-columns: 1fr 1fr;
    gap: 32px;
  }

  .grow-together__benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .grow-together {
    padding: 42px 18px 28px;
  }

  .grow-together__top {
    grid-template-columns: 1fr;
  }

  .grow-together__image-wrap,
  .grow-together__image-wrap img,
  .grow-together__content {
    min-height: 380px;
  }

  .grow-together__copy {
    margin-top: 80px;
  }

  .grow-together__copy h2 br {
    display: none;
  }
}

@media (max-width: 520px) {
  .grow-together__benefits {
    grid-template-columns: 1fr;
    margin-top: 36px;
  }

  .grow-together__image-wrap,
  .grow-together__image-wrap img,
  .grow-together__content {
    min-height: 330px;
  }
}


/* =========================================================
   FAQ PAGE HERO — customize with the variables below
   ========================================================= */
.faq-page-hero {
  --faq-hero-height: 400px;
  --faq-hero-background: url("assets/images/FAQhero.webp");
  --faq-hero-background-position: 73% 50%;
  --faq-hero-overlay-left: rgba(7, 11, 43, 0.97);
  --faq-hero-overlay-middle: rgba(7, 11, 43, 0.86);
  --faq-hero-overlay-right: rgba(7, 11, 43, 0.22);
  --faq-hero-title-color: #f7f7fb;
  --faq-hero-accent: #e3b562;
  --faq-hero-title-size: clamp(56px, 5.4vw, 78px);
  --faq-hero-content-width: 1240px;
  position: relative;
  min-height: var(--faq-hero-height);
  display: flex;
  align-items: center;
  overflow: hidden;
  background-color: #080c2c;
  background-image: var(--faq-hero-background);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: var(--faq-hero-background-position);
}
.faq-page-hero__overlay {
  position: absolute;
  inset: 0;
  background:linear-gradient(180deg, rgba(0, 0, 0, 0.611), rgba(3, 8, 25, .26));
}
.faq-page-hero__inner {
  position: relative;
  z-index: 1;
  width: min(var(--faq-hero-content-width), calc(100% - 80px));
  margin: 0 auto;
  padding-top: 36px;
}
.faq-page-hero__title {
  margin: 0 0 28px;
  color: var(--faq-hero-title-color);
  font-size: var(--faq-hero-title-size);
  font-family: var(--heading-font, "Space Grotesk", sans-serif);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.035em;
}
.faq-page-hero__breadcrumb {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.03em;
}
.faq-page-hero__breadcrumb a,
.faq-page-hero__current { color: #fff; text-decoration: none; }
.faq-page-hero__breadcrumb a:hover { color: var(--faq-hero-accent); }
.faq-page-hero__separator {
  width: 9px;
  height: 9px;
  border-top: 2px solid var(--faq-hero-accent);
  border-right: 2px solid var(--faq-hero-accent);
  transform: rotate(45deg);
}
@media (max-width: 1024px) {
  .faq-page-hero { --faq-hero-height: 350px; --faq-hero-background-position: 66% 50%; }
  .faq-page-hero__inner { width: min(var(--faq-hero-content-width), calc(100% - 48px)); }
}
@media (max-width: 767px) {
  .faq-page-hero { --faq-hero-height: 310px; --faq-hero-background-position: 61% 50%; }
  .faq-page-hero__inner { width: calc(100% - 32px); padding-top: 48px; }
  .faq-page-hero__title { font-size: clamp(44px, 15vw, 62px); }
}


/* =========================================================
   FAQ ACCORDION SECTION — fully customizable
   ========================================================= */
.faq-answers {
  --faq-section-bg: #06111d;
  --faq-section-text: #f7f8fb;
  --faq-section-muted: #aeb8c9;
  --faq-section-accent: #20a9ff;
  --faq-section-line: rgba(255,255,255,.17);
  background: var(--faq-section-bg);
  color: var(--faq-section-text);
  padding: 96px 0 110px;
}
.faq-answers__inner { width: min(1134px, calc(100% - 72px)); margin: 0 auto; }
.faq-answers__intro { text-align: center; margin: 0 auto 50px; }
.faq-answers__badge { display: inline-flex; padding: 8px 16px; border-radius: 999px; background: #162230; font-size: 12px; font-weight: 600; letter-spacing: .06em; }
.faq-answers__intro h2 { margin: 22px 0 18px; font-family: var(--heading-font, "Space Grotesk", sans-serif); font-size: clamp(38px, 4.4vw, 58px); line-height: 1.08; font-weight: 500; letter-spacing: -.025em; }
.faq-answers__intro p { margin: 0; color: var(--faq-section-muted); font-size: 14px; }
.faq-answers__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 38px; }
.faq-item { border-bottom: 1px solid var(--faq-section-line); transition: background-color .25s ease; }
.faq-item:hover { background-color: #06111C; }
.faq-item__question { width: 100%; min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 0; border: 0; background: transparent; color: var(--faq-section-text); text-align: left; font: inherit; cursor: pointer; transition: color .25s ease; }
.faq-item__question span:first-child { font-family: var(--heading-font, "Space Grotesk", sans-serif); font-size: clamp(16px, 1.45vw, 20px); font-weight: 600; letter-spacing: .02em; line-height: 1.25; }
.faq-item__icon { position: relative; width: 18px; height: 18px; flex: 0 0 18px; }
.faq-item__icon::before, .faq-item__icon::after { content: ""; position: absolute; left: 50%; top: 50%; width: 16px; height: 2px; background: var(--faq-section-text); transform: translate(-50%, -50%); transition: transform .25s ease, background .25s ease; }
.faq-item__icon::after { transform: translate(-50%, -50%) rotate(90deg); }
.faq-item.is-open .faq-item__question { color: var(--faq-section-accent); }
.faq-item__question:hover { color: var(--faq-section-accent); }
.faq-item__question:hover .faq-item__icon::before,
.faq-item__question:hover .faq-item__icon::after { background: var(--faq-section-accent); }
.faq-item.is-open .faq-item__icon::after { transform: translate(-50%, -50%) rotate(0deg); }
.faq-item.is-open .faq-item__icon::before, .faq-item.is-open .faq-item__icon::after { background: var(--faq-section-accent); }
.faq-item__answer { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .34s ease; }
.faq-item__answer > p { overflow: hidden; margin: 0; color: var(--faq-section-muted); font-size: 14px; line-height: 1.75; }
.faq-item.is-open .faq-item__answer { grid-template-rows: 1fr; }
.faq-item.is-open .faq-item__answer > p { padding: 4px 0 20px; }
@media (max-width: 900px) { .faq-answers__grid { grid-template-columns: 1fr; gap: 0; } .faq-answers { padding: 78px 0 90px; } }
@media (max-width: 640px) { .faq-answers__inner { width: calc(100% - 32px); } .faq-answers__intro { margin-bottom: 32px; } .faq-item__question { min-height: 72px; } }

/* =========================================================
   CONTACT PAGE HERO — fully customizable
   Change the variables below to edit size, image, overlay and colours.
   ========================================================= */
.contact-page-hero {
  --contact-hero-height: 400px;
  --contact-hero-background: url("assets/images/cta-network-globe.webp");
  --contact-hero-background-position: 73% 50%;
  --contact-hero-overlay-left: rgba(7, 11, 43, 0.97);
  --contact-hero-overlay-middle: rgba(7, 11, 43, 0.86);
  --contact-hero-overlay-right: rgba(7, 11, 43, 0.22);
  --contact-hero-title-color: #f7f7fb;
  --contact-hero-accent: #e3b562;
  --contact-hero-title-size: clamp(56px, 5.4vw, 78px);
  --contact-hero-content-width: 1240px;
  position: relative;
  min-height: var(--contact-hero-height);
  display: flex;
  align-items: center;
  overflow: hidden;
  background-color: #080c2c;
  background-image: var(--contact-hero-background);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: var(--contact-hero-background-position);
}
.contact-page-hero__overlay {
  position: absolute;
  inset: 0;
  background:linear-gradient(180deg, rgba(0, 0, 0, 0.611), rgba(3, 8, 25, .26));
}
.contact-page-hero__inner {
  position: relative;
  z-index: 1;
  width: min(var(--contact-hero-content-width), calc(100% - 80px));
  margin: 0 auto;
  padding-top: 36px;
}
.contact-page-hero__title {
  margin: 0 0 28px;
  color: var(--contact-hero-title-color);
  font-size: var(--contact-hero-title-size);
  font-family: var(--heading-font, "Space Grotesk", sans-serif);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.035em;
}
.contact-page-hero__breadcrumb {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.03em;
}
.contact-page-hero__breadcrumb a,
.contact-page-hero__current { color: #fff; text-decoration: none; }
.contact-page-hero__breadcrumb a:hover { color: var(--contact-hero-accent); }
.contact-page-hero__separator {
  width: 9px;
  height: 9px;
  border-top: 2px solid var(--contact-hero-accent);
  border-right: 2px solid var(--contact-hero-accent);
  transform: rotate(45deg);
}
@media (max-width: 1024px) {
  .contact-page-hero { --contact-hero-height: 350px; --contact-hero-background-position: 66% 50%; }
  .contact-page-hero__inner { width: min(var(--contact-hero-content-width), calc(100% - 48px)); }
}
@media (max-width: 767px) {
  .contact-page-hero { --contact-hero-height: 310px; --contact-hero-background-position: 61% 50%; }
  .contact-page-hero__inner { width: calc(100% - 32px); padding-top: 48px; }
  .contact-page-hero__title { font-size: clamp(44px, 15vw, 62px); }
}
\n\n/* =========================\n   CONTACT CONNECT SECTION\n   Edit these CSS variables to customize the section.\n   ========================= */\n.contact-connect {\n  --contact-connect-bg: #06111e;\n  --contact-connect-card: #1d2834;\n  --contact-connect-border: rgba(255,255,255,.12);\n  --contact-connect-text: #f6f7fb;\n  --contact-connect-muted: #aeb8ca;\n  --contact-connect-accent: #e3b562;\n  --contact-connect-radius: 20px;\n  background: var(--contact-connect-bg);\n  padding: 86px 0 96px;\n  color: var(--contact-connect-text);\n}\n.contact-connect__inner {\n  width: min(1110px, calc(100% - 48px));\n  margin: 0 auto;\n}\n.contact-connect__heading {\n  text-align: center;\n  margin-bottom: 42px;\n}\n.contact-connect__badge {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 8px 16px;\n  border-radius: 999px;\n  background: #172331;\n  font-family: 'Chakra Petch', sans-serif;\n  font-size: 13px;\n  font-weight: 600;\n  letter-spacing: .08em;\n}\n.contact-connect__heading h2 {\n  margin: 24px 0 18px;\n  font-family: 'Chakra Petch', sans-serif;\n  font-size: clamp(42px, 5vw, 64px);\n  line-height: 1.03;\n  font-weight: 500;\n  letter-spacing: -.025em;\n}\n.contact-connect__heading p {\n  margin: 0;\n  color: var(--contact-connect-muted);\n  font-family: 'Rajdhani', sans-serif;\n  font-size: 17px;\n}\n.contact-connect__grid {\n  display: grid;\n  grid-template-columns: .92fr 1.13fr;\n  gap: 38px;\n  align-items: stretch;\n}\n.contact-connect__image-wrap {\n  min-height: 515px;\n  border-radius: var(--contact-connect-radius);\n  overflow: hidden;\n  background: #0e1925;\n}\n.contact-connect__image-wrap img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  object-position: 56% center;\n  display: block;\n  transform: scale(1.03);\n}\n.contact-connect__form {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 22px 18px;\n  align-content: start;\n  padding: 40px;\n  border: 1px solid var(--contact-connect-border);\n  border-radius: var(--contact-connect-radius);\n  background: var(--contact-connect-card);\n}\n.contact-connect__field { display: grid; gap: 12px; }\n.contact-connect__field--full { grid-column: 1 / -1; }\n.contact-connect__field label {\n  font-family: 'Rajdhani', sans-serif;\n  font-size: 15px;\n  font-weight: 600;\n  color: #fff;\n}\n.contact-connect__field input,\n.contact-connect__field textarea {\n  width: 100%;\n  border: 1px solid rgba(255,255,255,.12);\n  background: transparent;\n  color: #fff;\n  border-radius: 28px;\n  padding: 0 18px;\n  min-height: 48px;\n  font: 500 14px/1.4 'Rajdhani', sans-serif;\n  outline: none;\n  transition: border-color .25s ease, box-shadow .25s ease;\n}\n.contact-connect__field textarea {\n  min-height: 144px;\n  padding-top: 16px;\n  border-radius: 16px;\n  resize: vertical;\n}\n.contact-connect__field input:focus,\n.contact-connect__field textarea:focus {\n  border-color: var(--contact-connect-accent);\n  box-shadow: 0 0 0 3px rgba(250,208,67,.12);\n}\n.contact-connect__field input::placeholder,\n.contact-connect__field textarea::placeholder { color: #aab4c5; opacity: 1; }\n.contact-connect__actions { grid-column: 1 / -1; padding-top: 2px; }\n.contact-connect__actions button {\n  min-height: 42px;\n  padding: 0 24px;\n  border: 0;\n  border-radius: 999px;\n  background: #fff;\n  color: #08111f;\n  font-family: 'Chakra Petch', sans-serif;\n  font-size: 12px;\n  font-weight: 600;\n  letter-spacing: .08em;\n  cursor: pointer;\n  box-shadow: inset 0 -3px 6px rgba(0,0,0,.16);\n  transition: transform .25s ease, box-shadow .25s ease;\n}\n.contact-connect__actions button:hover {\n  transform: translateY(-2px);\n  box-shadow: 0 10px 24px rgba(0,0,0,.25), inset 0 -3px 6px rgba(0,0,0,.14);\n}\n@media (max-width: 900px) {\n  .contact-connect__grid { grid-template-columns: 1fr; }\n  .contact-connect__image-wrap { min-height: 460px; }\n}\n@media (max-width: 640px) {\n  .contact-connect { padding: 64px 0 72px; }\n  .contact-connect__inner { width: calc(100% - 30px); }\n  .contact-connect__heading h2 { font-size: clamp(36px, 11vw, 50px); }\n  .contact-connect__form { grid-template-columns: 1fr; padding: 24px; }\n  .contact-connect__field--full, .contact-connect__actions { grid-column: auto; }\n  .contact-connect__image-wrap { min-height: 390px; }\n}\n

/* =========================
   LIVE GOOGLE MAP SECTION
   Change the iframe q= value in contact-u.html / Contact U.html to update the address.
   ========================= */
.contact-map {
  --contact-map-bg: #06111e;
  --contact-map-radius: 20px;
  --contact-map-height: 400px;
  background: var(--contact-map-bg);
  padding: 0 0 96px;
  border: 2px; color:#b57e1b;
  
}
.contact-map__inner {
  width: min(1120px, calc(100% - 56px));
  margin: 0 auto;
  border: 2px; color:#b57e1b;
  overflow: hidden;
  
 
}
.contact-map__frame {
  display: block;
  width: 100%;
  height: 600px;
  border: 2px; color:#b57e1b;
 
}
@media (max-width: 760px) {
  .contact-map { padding-bottom: 72px; }
  .contact-map__inner { width: calc(100% - 30px); }
  .contact-map__frame { height: 340px; }
}


/* CONTACT QUICK FAQ SECTION */
.contact-quick-faq{background:#020f1b;padding:88px 28px 96px;color:#fff}
.contact-quick-faq__inner{max-width:1168px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.93fr);gap:64px;align-items:stretch}
.contact-quick-faq__badge{display:inline-flex;padding:8px 14px;border-radius:999px;background:#172330;font:600 13px/1 'Rajdhani',sans-serif;letter-spacing:.08em}
.contact-quick-faq h2{margin:26px 0 30px;font-family:'Chakra Petch',sans-serif;font-size:clamp(38px,4vw,58px);line-height:1.02;font-weight:500;letter-spacing:.01em}
.contact-quick-faq__list{border-top:1px solid transparent}
.contact-quick-faq__item{border-bottom:1px solid rgba(156,163,175,.28);transition:background-color .25s ease}
.contact-quick-faq__item:hover{background-color:#06111C}
.contact-quick-faq__question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;background:none;border:0;color:#eef2f7;text-align:left;font-family:'Chakra Petch',sans-serif;font-size:18px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:color .25s ease}
.contact-quick-faq__item.is-open .contact-quick-faq__question{color:#e3b562}
.contact-quick-faq__icon{font:400 30px/1 'Rajdhani',sans-serif;color:#e6edf5;flex:0 0 auto;transition:color .25s ease}
.contact-quick-faq__question:hover,
.contact-quick-faq__question:hover .contact-quick-faq__icon{color:#e3b562}
.contact-quick-faq__item.is-open .contact-quick-faq__icon{color:#e3b562}
.contact-quick-faq__answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
.contact-quick-faq__answer>p{overflow:hidden;margin:0;color:#aab4c3;font-family:'Rajdhani',sans-serif;font-size:15px;line-height:1.65}
.contact-quick-faq__item.is-open .contact-quick-faq__answer{grid-template-rows:1fr}
.contact-quick-faq__item.is-open .contact-quick-faq__answer>p{padding:0 0 20px}
.contact-quick-faq__visual{position:relative;min-height:680px;border-radius:18px;overflow:hidden;background:#111827}
.contact-quick-faq__visual>img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.contact-quick-faq__cta{position:absolute;left:26px;right:26px;bottom:26px;min-height:78px;padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#1c2835;border:1px solid rgba(255,255,255,.08);border-radius:13px}
.contact-quick-faq__cta strong{font-family:'Chakra Petch',sans-serif;font-size:18px;letter-spacing:.02em}
.contact-quick-faq__cta a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 24px;border-radius:999px;background:#fff;color:#07111d;font:600 12px/1 'Rajdhani',sans-serif;letter-spacing:.09em;box-shadow:inset 0 -3px 7px rgba(0,0,0,.18);text-decoration:none;white-space:nowrap}
@media(max-width:900px){.contact-quick-faq__inner{grid-template-columns:1fr}.contact-quick-faq__visual{min-height:560px}.contact-quick-faq{padding:70px 22px}}
@media(max-width:600px){.contact-quick-faq h2{font-size:36px}.contact-quick-faq__question{font-size:16px}.contact-quick-faq__visual{min-height:470px}.contact-quick-faq__cta{left:14px;right:14px;bottom:14px;align-items:flex-start;flex-direction:column}.contact-quick-faq__cta a{width:100%}}


/* X3WEB linked navigation dropdown */
.nav-dropdown { position: relative; display: flex; align-items: stretch; }
.nav-dropdown__toggle {
  border: 0; background: transparent; color: inherit; font: inherit; font-weight: 600;
  letter-spacing: .04em; padding: 0 14px; cursor: pointer; min-height: 100%;
}
.nav-dropdown__toggle.has-chevron::after { content: ""; display: inline-block; width: 7px; height: 7px; margin-left: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .2s ease; }
.nav-dropdown.is-open .nav-dropdown__toggle.has-chevron::after { transform: rotate(225deg) translate(-1px,-1px); }
.nav-dropdown__toggle:hover, .nav-dropdown.is-active > .nav-dropdown__toggle { color: #e3b562; }
.nav-dropdown__menu {
  position: absolute; top: calc(100% + 10px); left: 0; z-index: 1000; width: min(323px, calc(100vw - 32px));
  padding: 10px; border: 1px solid rgba(250,208,67,.22); border-radius: 12px;
  background: rgba(13,20,36,.98); box-shadow: 0 18px 42px rgba(0,0,0,.38);
  opacity: 0; visibility: hidden; transform: translateY(-8px); transition: .2s ease;
}
.nav-dropdown.is-open .nav-dropdown__menu, .nav-dropdown:hover .nav-dropdown__menu { opacity: 1; visibility: visible; transform: translateY(0); }
.nav-dropdown__menu a { display: flex !important; min-height: 46px !important; align-items: center; border-radius: 8px; padding: 8px 17px !important; white-space: nowrap; font-size: 18px !important; font-weight: 700; letter-spacing: .04em; }
.nav-dropdown__menu a:hover { background: rgba(250,208,67,.10); }
@media (max-width: 820px) {
  .nav-dropdown { display: block; width: 100%; }
  .nav-dropdown__toggle { width: 100%; min-height: 44px; text-align: left; padding: 0 14px; }
  .nav-dropdown__menu { position: static; display: none; min-width: 0; margin: 0 10px 8px; opacity: 1; visibility: visible; transform: none; box-shadow: none; }
  .nav-dropdown.is-open .nav-dropdown__menu { display: block; }
  .nav-dropdown:hover .nav-dropdown__menu:not(:focus-within) { display: none; }
  .nav-dropdown.is-open:hover .nav-dropdown__menu { display: block; }
}

/* =========================================================
   GLOBAL CENTERED + STICKY HEADER
   Applied to every page through the shared stylesheet.
   ========================================================= */
.secure-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  isolation: isolate;
  transition: background-color .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.secure-header.is-scrolled {
  background: #1b2734;
  border-bottom-color: rgba(40, 169, 255, .16);
  box-shadow: 0 12px 34px rgba(0, 0, 0, .32);
}
@media (min-width: 861px) {
  .secure-header__inner {
    position: relative;
    grid-template-columns: auto 1fr auto;
  }
  .secure-header__nav {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    justify-self: auto;
    margin: 0;
  }
}
@media (max-width: 860px) {
  .secure-header__nav {
    transform: none;
  }
}

/* =========================================================
   GLOBAL SECTION WIDTH
   Uses the same 1120px content width as the Services page,
   with 40px left/right screen gutters on desktop.
   ========================================================= */
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

/* Accessibility and contextual SEO links; these do not alter the page layout. */
.skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 20000;
  padding: 10px 16px;
  border-radius: 6px;
  background: #e3b562;
  color: #07111f;
  font-weight: 700;
  text-decoration: none;
  transform: translateY(-160%);
  transition: transform .2s ease;
}

.skip-link:focus {
  transform: translateY(0);
}

.seo-context-link {
  color: inherit;
  text-decoration-color: rgba(250, 208, 67, .65);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.seo-context-link:hover,
.seo-context-link:focus-visible {
  color: inherit;
  text-decoration-color: #e3b562;
  outline-color: #e3b562;
}

:where(a, button, input, textarea, select):focus-visible {
  outline: 2px solid #e3b562;
  outline-offset: 3px;
}

[class$="__inner"],
.about-partners,
.about-trust,
.cyber-cta__card,
.service-jobs__grid {
  width: 100%;
  
  margin-left: 100px !important;
  margin-right: 100px !important;
  padding-left: 0px !important;
  padding-right: 0px !important;
  box-sizing: border-box;
}

@media (max-width: 700px) {
  [class$="__inner"],
  .about-partners,
  .about-trust,
  .cyber-cta__card,
  .service-jobs__grid {
    width: calc(100% - 32px) !important;
  }
}

/* Keep media and form elements inside their containers. */
img,
video,
iframe,
canvas,
svg {
  max-width: 100%;
}

/* =========================================================
   CONTACT PAGE FORM — REFERENCE-MATCHED LAYOUT
   Edit the variables below to customize this section.
   ========================================================= */
.contact-connect {
  --contact-connect-section-padding-top: 64px;
  --contact-connect-section-padding-bottom: 24px;
  --contact-connect-side-padding: 60px;
  --contact-connect-max-width: 1110px;
  --contact-connect-grid-gap: 28px;
  --contact-connect-image-column: 45%;
  --contact-connect-form-column: 55%;
  --contact-connect-panel-height: 390px;
  --contact-connect-form-padding: 30px;
  --contact-connect-field-height: 34px;
  --contact-connect-textarea-height: 108px;
  --contact-connect-heading-size: clamp(30px, 3.2vw, 42px);
  padding: var(--contact-connect-section-padding-top) 0 var(--contact-connect-section-padding-bottom);
}

.contact-connect .contact-connect__inner {
  width: min(var(--contact-connect-max-width), calc(100% - (var(--contact-connect-side-padding) * 2))) !important;
  max-width: var(--contact-connect-max-width) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.contact-connect__heading {
  max-width: 660px;
  margin: 0 auto 30px;
}

.contact-connect__badge {
  padding: 6px 12px;
  font-size: 11px;
  line-height: 1;
}

.contact-connect__heading h2 {
  margin: 18px 0 14px;
  font-size: 60px;
  line-height: 1.12;
  letter-spacing: -.018em;
}

.contact-connect__heading p {
  font-size: 13px;
  line-height: 1.5;
}

.contact-connect__grid {
  grid-template-columns: minmax(0, var(--contact-connect-image-column)) minmax(0, var(--contact-connect-form-column));
  gap: var(--contact-connect-grid-gap);
  align-items: stretch;
}

.contact-connect__image-wrap,
.contact-connect__form {
  height: var(--contact-connect-panel-height);
  min-height: 0;
}

.contact-connect__image-wrap img {
  object-position: 50% center;
  transform: none;
}

.contact-connect__form {
  padding: var(--contact-connect-form-padding);
  gap: 14px 14px;
  align-content: start;
}

.contact-connect__field {
  gap: 7px;
}

.contact-connect__field label {
  font-size: 11px;
  line-height: 1.2;
}

.contact-connect__field input,
.contact-connect__field textarea {
  min-height: var(--contact-connect-field-height);
  padding: 0 12px;
  font-size: 10px;
}

.contact-connect__field textarea {
  min-height: var(--contact-connect-textarea-height);
  height: var(--contact-connect-textarea-height);
  padding-top: 12px;
  border-radius: 12px;
}

.contact-connect__actions {
  padding-top: 2px;
}

.contact-connect__actions button {
  min-height: 30px;
  padding: 0 18px;
  font-size: 9px;
}

@media (max-width: 900px) {
  .contact-connect {
    --contact-connect-side-padding: 32px;
    --contact-connect-panel-height: auto;
  }
  .contact-connect__grid {
    grid-template-columns: 1fr;
  }
  .contact-connect__image-wrap {
    height: 480px;
  }
  .contact-connect__form {
    height: auto;
  }
}

@media (max-width: 640px) {
  .contact-connect {
    --contact-connect-side-padding: 18px;
    --contact-connect-section-padding-top: 52px;
    --contact-connect-heading-size: clamp(28px, 9vw, 38px);
  }
  .contact-connect__heading {
    margin-bottom: 24px;
  }
  .contact-connect__image-wrap {
    height: 390px;
  }
  .contact-connect__form {
    padding: 22px;
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   FINAL GLOBAL WIDTH OVERRIDE
   Full-width page sections with 20px left/right padding.
   ========================================================= */
html,
body {
  width: 100%;
  max-width: 100%;
  margin: 0;
  overflow-x: hidden;
}

body [class$="__inner"],
body .about-partners,
body .about-trust,
body .cyber-cta__card,
body .service-jobs__grid,
body .contact-connect .contact-connect__inner {
  width:100% ;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 5px !important;
  padding-right: 5px !important;
  box-sizing: border-box !important;
}

/* Keep full-width sections and media within the viewport. */
body section,
body header,
body footer,
body main {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

body img,
body video,
body iframe,
body canvas,
body svg {
  max-width: 100%;
}

/* Site-wide Botle Feela gold accent for buttons and icons. */
:root {
  --site-accent: #e3b562;
  --site-border-hover: #e3b562;
}

body *,
body *::before,
body *::after {
  border-color: var(--site-border-hover);
}

hr {
  border-color: var(--site-border-hover);
}

.secure-header__nav a:hover,
.secure-header__nav .nav-dropdown__toggle:hover,
.secure-footer__links a:hover,
.nav-dropdown__menu a:hover,
.contact-quick-faq__question:hover {
  color: var(--site-border-hover) !important;
}

/* =========================================================
   CONTACT PAGE — REFERENCE-MATCHED FORM PANEL
   Scoped to .contact-connect so no other page layout changes.
   ========================================================= */
body .contact-connect {
  --contact-panel-bg: #1f140275;
  --contact-field-border: rgba(166, 184, 202, .26);
  --contact-field-focus: #e3b562;
  --contact-radius: 18px;
  padding: 78px 24px 96px;
  background: #06111e;
  color: #fff;
}

body .contact-connect .contact-connect__inner {
  width: min(1240px, calc(100% - 48px)) !important;
  max-width: 1240px !important;
  margin-inline: auto !important;
  padding: 0 !important;
}

body .contact-connect .contact-connect__heading {
  max-width: 820px;
  margin: 0 auto 42px;
  text-align: center;
}

body .contact-connect .contact-connect__heading h2 {
  margin: 20px 0 16px;
  color: #fff;
}

body .contact-connect .contact-connect__heading p {
  color: #aeb8ca;
}

body .contact-connect .contact-connect__grid {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1fr);
  gap: 28px;
  align-items: stretch;
}

body .contact-connect .contact-connect__image-wrap,
body .contact-connect .contact-connect__form {
  width: 100%;
  height: 520px;
  min-height: 520px;
  box-sizing: border-box;
  border-radius: var(--contact-radius);
}

body .contact-connect .contact-connect__image-wrap {
  overflow: hidden;
  border: 1px solid rgba(250, 208, 67, .18);
  background: var(--contact-panel-bg);
}

body .contact-connect .contact-connect__image-wrap img {
  width: 100%;
  height: 100%;
  max-width: none;
  display: block;
  object-fit: cover;
  object-position: center;
  transform: none;
}

body .contact-connect .contact-connect__form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 18px;
  align-content: start;
  padding: 34px;
  border: 1px solid rgba(166, 184, 202, .2);
  background: var(--contact-panel-bg);
  box-shadow: 0 18px 42px rgba(0, 0, 0, .16);
}

body .contact-connect .contact-connect__honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

body .contact-connect .contact-connect__field {
  display: grid;
  gap: 9px;
  min-width: 0;
}

body .contact-connect .contact-connect__field--full,
body .contact-connect .contact-connect__actions,
body .contact-connect .contact-connect__status {
  grid-column: 1 / -1;
}

body .contact-connect .contact-connect__field label {
  color: #fff;
  font-family: "Chakra Petch", sans-serif;
  font-size: 12px;
  font-weight: 600;
}

body .contact-connect .contact-connect__field input,
body .contact-connect .contact-connect__field textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid var(--contact-field-border);
  background: rgba(6, 17, 30, .14);
  color: #fff;
  font-family: "Chakra Petch", sans-serif;
  font-size: 12px;
  outline: none;
  transition: border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

body .contact-connect .contact-connect__field input {
  height: 44px;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 999px;
}

body .contact-connect .contact-connect__field textarea {
  height: 150px;
  min-height: 150px;
  padding: 15px 16px;
  border-radius: 12px;
  resize: vertical;
}

body .contact-connect .contact-connect__field input::placeholder,
body .contact-connect .contact-connect__field textarea::placeholder {
  color: #9da9b8;
  opacity: 1;
}

body .contact-connect .contact-connect__field input:focus,
body .contact-connect .contact-connect__field textarea:focus {
  border-color: var(--contact-field-focus);
  background: rgba(6, 17, 30, .28);
  box-shadow: 0 0 0 3px rgba(250, 208, 67, .12);
}

body .contact-connect .contact-connect__field input:user-invalid,
body .contact-connect .contact-connect__field textarea:user-invalid {
  border-color: #e76f6f;
}

body .contact-connect .contact-connect__actions {
  padding-top: 0;
}

body .contact-connect .contact-connect__actions button {
  min-width: 160px;
  min-height: 42px;
  padding: 0 24px;
  border: 1px solid #e3b562 !important;
  border-radius: 999px;
  background: #e3b562 !important;
  color: #171205 !important;
  font-family: "Chakra Petch", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  cursor: pointer;
}

body .contact-connect .contact-connect__actions button:disabled {
  cursor: wait;
  opacity: .72;
}

body .contact-connect .contact-connect__status {
  min-height: 20px;
  margin: -5px 0 0;
  color: #e3b562;
  font-size: 13px;
}

@media (max-width: 900px) {
  body .contact-connect .contact-connect__grid {
    grid-template-columns: 1fr;
  }

  body .contact-connect .contact-connect__image-wrap {
    height: 480px;
    min-height: 480px;
  }

  body .contact-connect .contact-connect__form {
    height: auto;
    min-height: 0;
  }
}

@media (max-width: 640px) {
  body .contact-connect {
    padding: 62px 16px 76px;
  }

  body .contact-connect .contact-connect__inner {
    width: 100% !important;
  }

  body .contact-connect .contact-connect__image-wrap {
    height: 390px;
    min-height: 390px;
  }

  body .contact-connect .contact-connect__form {
    grid-template-columns: 1fr;
    padding: 24px;
  }

  body .contact-connect .contact-connect__field--full,
  body .contact-connect .contact-connect__actions,
  body .contact-connect .contact-connect__status {
    grid-column: auto;
  }

  body .contact-connect .contact-connect__actions button {
    width: 100%;
  }
}

a:hover,
button:hover,
[class*="card"]:hover,
[class*="button"]:hover {
  border-color: var(--site-border-hover) !important;
}

.secure-footer__socials a:hover,
.client-testimonials__arrow:hover {
  background: var(--site-border-hover) !important;
}

h1 { font-family: "Chakra Petch", sans-serif !important; }

/* Index CTA design shared by every standard CTA section. */
.cyber-cta { padding-inline: 0 !important; 
 margin-top: -20px;
}

body .cyber-cta__card {
  width: 100% !important;
  max-width: none !important;
  min-height: 300px;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
  border-radius: 0 !important;
}

.cyber-cta__visual {
  min-height: 300px;
  overflow: hidden;
  border-radius: 0 !important;
}

.cyber-cta__content {
  padding: 28px 48px 28px 24px;
  border-radius: 0 !important;
}

.cyber-cta__badge { margin-bottom: 14px; border-radius: 0 !important; }
.cyber-cta__content h2 { font-size: clamp(28px, 2.6vw, 38px); }
.cyber-cta__content p { margin-block: 14px 18px; }
.cyber-cta__button { border-radius: 0 !important; }

.cyber-cta__visual img {
  position: absolute;
  inset: -32px;
  width: calc(100% + 64px);
  height: calc(100% + 64px);
  max-width: none;
  border-radius: 0 !important;
}

.btn,
.secure-header__cta,
[class*="button"],
.service-job-card__footer a,
.contact-quick-faq__cta a,
.contact-connect__actions button {
  border-color: var(--site-accent) !important;
  background: var(--site-accent) !important;
  color: #171205 !important;
}

:where([class$="__icon"]:not(.secure-footer__contact-icon)) {
  color: var(--site-accent);
}

.secure-footer__contact-icon,
.secure-footer__form button,
.client-testimonials__arrow,
.client-testimonials__dots button.is-active {
  border-color: var(--site-accent);
  background: var(--site-accent);
  color: #171205;
}

/* =========================================================
   GLOBAL WIDE SECTION LAYOUT
   Makes all page sections, cards and layout containers use the
   wide visual proportions shown in the supplied reference.
   Edit --site-wide-gutter to change the left/right page spacing.
   ========================================================= */
:root {
  --site-wide-gutter: 48px;
  --site-wide-gutter-tablet: 28px;
  --site-wide-gutter-mobile: 18px;
}

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

/* Full-width section backgrounds */
main,
section,
header,
footer,
.secure-header,
.secure-footer,
[class*="section"] {
  width: 100%;
  max-width: none;
}

/* Main layout wrappers used throughout all pages */
.container,
.secure-header__inner,
.secure-footer__inner,
.hero__inner,
.about-hero__inner,
.services-hero__inner,
.faq-hero__inner,
.contact-hero__inner,
.service-one-hero__inner,
[class$="__inner"] {
  width: calc(100% - (var(--site-wide-gutter) * 2)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box;
}

/* Allow major grids, rows, cards and media blocks to fill their wrapper */
[class$="__grid"],
[class$="__row"],
[class$="__content"],
[class$="__cards"],
[class$="__list"],
.service-jobs__grid,
.contact-quick-faq__inner {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box;
}

/* Keep every card/container responsive within the wider grid */
[class*="card"],
[class*="block"],
[class*="panel"],
img,
video,
iframe,
form {
  max-width: 100%;
  box-sizing: border-box;
}

@media (max-width: 1024px) {
  .container,
  .secure-header__inner,
  .secure-footer__inner,
  [class$="__inner"] {
    width: calc(100% - (var(--site-wide-gutter-tablet) * 2)) !important;
  }
}

@media (max-width: 640px) {
  .container,
  .secure-header__inner,
  .secure-footer__inner,
  [class$="__inner"] {
    width: calc(100% - (var(--site-wide-gutter-mobile) * 2)) !important;
  }
}

/* =========================================================
   SHARED FIXED-BACKGROUND CTA
   Change --cyber-cta-background-image to replace the image.
   ========================================================= */
body .cyber-cta {
  --cyber-cta-background-image: url("assets/images/cta-network-globe.webp");
  --cyber-cta-panel: rgba(27, 38, 50, .78);
  position: relative;
  min-height: 650px;
  padding: 90px clamp(20px, 8vw, 170px) !important;
  display: grid;
  place-items: center;
  overflow: hidden;
  background-color: #090628;
  background-image:
    linear-gradient(rgba(24, 5, 74, .22), rgba(24, 5, 74, .38)),
    var(--cyber-cta-background-image);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Video-backed CTA used on the Home and About pages.
   Adjust the final rgba alpha to edit the video darkness. */
body .cyber-cta:has(> .cyber-cta__background-video) {
  background-image: none !important;
}

body .cyber-cta > .cyber-cta__background-video {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}

body .cyber-cta:has(> .cyber-cta__background-video)::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: rgba(3, 16, 28, .58);
  pointer-events: none;
}

body .cyber-cta:has(> .cyber-cta__background-video) .cyber-cta__card {
  z-index: 2;
}

/* About page CTA: video and editable overlay are contained by the card. */
body.about-page .cyber-cta,
body.services-page .cyber-cta,
body.service-one-page .cyber-cta {
  background-color: #ffffff;
  background-image: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.about-page .cyber-cta .cyber-cta__card,
body.services-page .cyber-cta .cyber-cta__card,
body.service-one-page .cyber-cta .cyber-cta__card {
  --about-cta-video-overlay: rgba(3, 16, 28, .84);
  width: min(calc(100% - 72px), 1700px) !important;
  max-width: 1700px !important;
  margin-inline: auto !important;
  overflow: hidden;
  isolation: isolate;
}

@media (max-width: 680px) {
  body.about-page .cyber-cta .cyber-cta__card,
  body.services-page .cyber-cta .cyber-cta__card,
  body.service-one-page .cyber-cta .cyber-cta__card {
    width: calc(100% - 28px) !important;
  }
}

body.about-page .cyber-cta .cyber-cta__card > .cyber-cta__background-video,
body.services-page .cyber-cta .cyber-cta__card > .cyber-cta__background-video,
body.service-one-page .cyber-cta .cyber-cta__card > .cyber-cta__background-video {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}

body.about-page .cyber-cta .cyber-cta__card::before,
body.services-page .cyber-cta .cyber-cta__card::before,
body.service-one-page .cyber-cta .cyber-cta__card::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: var(--about-cta-video-overlay);
  pointer-events: none;
}

body.about-page .cyber-cta .cyber-cta__content,
body.services-page .cyber-cta .cyber-cta__content,
body.service-one-page .cyber-cta .cyber-cta__content {
  position: relative;
  z-index: 1;
}

body .case-studies-security::after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 100px;
  right: 100px;
  height: 1px;
  background: #e3b562;
  pointer-events: none;
}

body .case-studies-security {
  position: relative;
}

body .cyber-cta .cyber-cta__card {
  position: relative;
  z-index: 1;
  width: min(calc(100% - 72px), 1700px) !important;
  max-width: 1700px !important;
  min-height: 450px;
  margin: 0 auto !important;
  padding: clamp(46px, 6vw, 90px) clamp(28px, 7vw, 110px) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 24px !important;
  background: rgba(27, 38, 50, 0.78);
  box-shadow: 0 28px 70px rgba(0, 0, 0, .28);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

body .cyber-cta .cyber-cta__visual {
  display: none;
}

body .cyber-cta .cyber-cta__content {
  width: min(1100px, 100%);
  padding: 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: transparent;
}

body .cyber-cta .cyber-cta__badge {
  margin: 0 0 20px;
  border-radius: 999px !important;
}

body .cyber-cta .cyber-cta__content h2 {
  max-width: 1000px;
  margin-inline: auto;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(38px, 3.2vw, 68px);
  line-height: 1.08;
  text-align: center;
}

body .cyber-cta .cyber-cta__content p {
  max-width: 920px;
  margin: 28px auto 34px;
  color: rgba(255, 255, 255, .84);
  font-size: clamp(15px, 1.35vw, 19px);
  line-height: 1.65;
  text-align: center;
}

body .cyber-cta .cyber-cta__actions {
  justify-content: center;
}

body .cyber-cta .cyber-cta__actions .cyber-cta__button {
  width: 265px;
  max-width: 100%;
  box-sizing: border-box;
}

@media (max-width: 900px) {
  body .cyber-cta {
    min-height: 560px;
    padding: 64px 0 !important;
    background-attachment: scroll;
  }

  body .cyber-cta .cyber-cta__card {
    width: calc(100% - 40px) !important;
    min-height: 420px;
    border-radius: 20px !important;
  }
}

@media (max-width: 680px) {
  body .cyber-cta .cyber-cta__card {
    width: calc(100% - 28px) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body .cyber-cta {
    background-attachment: scroll;
  }
}

.about-security__badge {
    display: inline-block;
}

.about-security__border-image {
    display: block;
    width: 160px;
    height: auto;
    margin-top: -60px;
    margin-left:-23px;
}
.why-security__border-image {
    display: block;
    width: 160px;
    height: auto;
    margin-top: -47px;
    margin-left:-27px;
}
.expertise-security__badge {
    height: 44px;
    min-height: 44px;
    padding: 0 10px;
    margin-bottom: 35px;
    background: transparent;
    color: #e3b562;
    font-family: "Chakra Petch", sans-serif;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: .03em;
}
.expertise-security__border-image {
    display: block;
    width: 160px;
    height: auto;
    margin-top: -47px;
    margin-left: -12px;
}
.services-security__border-image {
    display: block;
    width: 160px;
    height: auto;
   align-self: center;
  
}
.client-testimonials__badge {
  color: #1B2632 ! important;
}

/* Editable image carousel replacing the former industry cards. */
.industry-carousel {
  --industry-carousel-gap: 22px;
  position: relative;
  width: min(1500px, 100%);
  margin: 0 auto;
  padding: 0;
}

/* About page: editable National Distributors section. */
.national-distributors {
  overflow: hidden;
   background-color: #1b2632;
  color: #f5f7fb;
  padding: clamp(50px, 5vw, 60px) 0 clamp(60px, 7vw, 96px);
}

.national-distributors__inner {
  width: min(1320px, calc(100% - 48px));
  margin: 0 auto;
  text-align: center;
}

.national-distributors__title {
  margin: 10px, 0 clamp(28px, 4vw, 12px);
  color: #f5f7fb;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(24px, 1.2vw, 46px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: .015em;
  margin
}

.national-distributors__logos {
  width: min(1180px, 100%);
  height: clamp(150px, 18vw, 140px);
  margin: 0 auto;
  overflow: hidden;
}

.national-distributors__logos img {
  display: block;
  width: 100%;
  height: 100px;
  object-fit: cover;
  object-position: center 50%;
}

@media (max-width: 640px) {
  .national-distributors__inner {
    width: calc(100% - 28px);
  }

  .national-distributors__title {
    font-size: clamp(28px, 9vw, 40px);
  }

  .national-distributors__logos {
    height: 180px;
  }
}

/* Editable distributor banner beneath the Technology Partners carousel. */
.customers-served__distribution-heading {
  width: 100%;
  margin: 0 auto clamp(24px, 3vw, 42px);
  text-align: center;
}

.customers-served__distribution-heading h2 {
  margin: 0;
}

.customers-served__distribution-banner {
  width: min(900px, calc(100% - 40px));
  height: clamp(180px, 18vw, 260px);
  margin: clamp(38px, 5vw, 68px) auto 0;
  overflow: hidden;
  border: 0;
  border-radius: 20px;
  background: transparent;
  box-shadow: none;
  margin-bottom: -180px;
}

.customers-served__distribution-banner img {
  display: block;
  width: 100%;
  height: 50%;
  object-fit: cover;
  object-position: center 48%;
  margin-top: -60px;
}

@media (max-width: 640px) {
  .customers-served__distribution-banner {
    width: calc(100% - 24px);
    height: 170px;
    border-radius: 15px;
  }
}

.industry-carousel__viewport {
  overflow: hidden;
  border-radius: 16px;
}

.industry-carousel__track {
  display: flex;
  gap: var(--industry-carousel-gap);
  animation: industry-carousel-loop var(--industry-loop-duration, 45s) linear infinite;
  will-change: transform;
}

.industry-carousel:hover .industry-carousel__track,
.industry-carousel:focus-within .industry-carousel__track {
  animation-play-state: paused;
}

@keyframes industry-carousel-loop {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-1 * var(--industry-loop-distance, 1500px))); }
}

.industry-carousel__slide {
  position: relative;
  flex: 0 0 calc((100% - (var(--industry-carousel-gap) * 4)) / 5);
  height: 165px;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(250, 208, 67, .45);
  border-radius: 14px;
  background: #fff;
}

.industry-carousel__slide::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 44px;
  background: #1b2835;
  pointer-events: none;
}

.industry-carousel__slide img {
  width: 100%;
  height: 100%;
  display: block;
  padding: 18px 24px 57px;
  object-fit: contain;
  transition: transform .55s ease;
}

.industry-carousel__slide:hover img {
  transform: scale(1.025);
}

.industry-carousel__slide figcaption {
  position: absolute;
  z-index: 2;
  left: 24px;
  right: 24px;
  bottom: 14px;
  color: #fff;
  font-family: "Chakra Petch", sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .025em;
}

@media (max-width: 1000px) {
  .industry-carousel__slide {
    flex-basis: calc((100% - var(--industry-carousel-gap)) / 2);
  }
}

@media (max-width: 640px) {
  .industry-carousel {
    padding-inline: 0;
  }

  .industry-carousel__slide {
    flex-basis: 100%;
    height: 175px;
  }

}

@media (prefers-reduced-motion: reduce) {
  .industry-carousel__track {
    animation: none;
  }

  .industry-carousel__slide img {
    transition: none;
  }
}

/* Fixed light overlay shared by every white-background section. */
body .services-security,
body .why-security,
body .industries-served,
body .client-testimonials {
  --light-section-overlay: rgba(255, 255, 255, .38);
  background-color: #F9F9F9;
  
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
}

/* Industries Served */
.industries-served {
  padding: 90px 48px 105px;
  
  color: #07111f;
}

.industries-served__inner {
  width: 100%;
  max-width: none;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(520px, 1.05fr);
  gap: clamp(38px, 4vw, 72px);
  align-items: stretch;
}

.industries-served__visual {
  min-height: 400px;
  overflow: hidden;
  border: 1px solid rgba(250, 208, 67, .45);
  border-radius: 24px;
  background: #1f140275;
}

.industries-served__visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  
}

.industries-served__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.industries-served__header {
  max-width: 760px;
  margin: 0 0 34px;
  text-align: left;
}

.industries-served__eyebrow {
  width: 240px;
  margin-left:-50px;
}

.industries-served__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 240px;
  height: 44px;
  padding: 0;
  margin-bottom: 35px;
  background: transparent;
  color: #07111f;
  font-family: "Chakra Petch", sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .06em;
}

.industries-served__border-image {
  display: block;
  width: 160px;
  height: auto;
  margin: -47px auto 0;
}

.industries-served__header h2 {
  margin: 28px 0 18px;
  color: #07111f;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(42px, 3.4vw, 66px);
  font-weight: 500;
  line-height: 1.05;
}

.industries-served__header p {
  max-width: 720px;
  margin: 0;
  color: #000000;
  font-size: 17px;
  line-height: 1.7;
}

.industries-served__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 30px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.industries-served__grid li {
  min-height: 48px;
  padding: 0 0 14px;
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid rgba(88, 113, 138, .3);
  color: #07111f;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(16px, 1.15vw, 20px);
  font-weight: 700;
  line-height: 1.25;
  transition: color .25s ease, border-color .25s ease;
}

.industries-served__grid li::before {
  content: none;
}

.industries-served__icon {
  flex: 0 0 34px;
  width: 34px;
  display: inline-grid;
  place-items: center;
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  font-size: 25px;
  line-height: 1;
}

.industries-served__grid li:hover {
  color: #e3b562;
  border-color: rgba(250, 208, 67, .55);
}

@media (max-width: 1050px) {
  .industries-served__inner { grid-template-columns: 1fr; }
  .industries-served__visual { min-height: 560px; }
  .industries-served__header { max-width: 850px; }
}

@media (max-width: 640px) {
  .industries-served { padding: 72px 18px 80px; }
  .industries-served__visual { min-height: 390px; border-radius: 18px;margin-top: -80px;}
  .industries-served__grid { grid-template-columns: 1fr; }
}

/* Major-section journey actions reuse the existing site button treatment. */
.journey-cta {
  display: flex;
  align-items: center;
  margin-top: 32px;
}

.journey-cta--center {
  justify-content: center;
}

.journey-cta .btn {
  min-width: 220px;
}

@media (max-width: 640px) {
  .journey-cta,
  .journey-cta--center {
    justify-content: center;
  }

  .journey-cta .btn {
    width: min(100%, 340px);
  }
}

/* Hero statistics panel styled to match the dark gold-edged cards. */
body .cyber-hero .hero-stats {
  left: 50%;
  right: auto;
  bottom: 40px;
  width: min(800px, calc(100% - 48px));
  margin-bottom: 60px;
  padding: 22px 25px;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid rgba(250, 208, 67, .9);
  border-radius: 20px;
 
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .16), 0 18px 42px rgba(0, 0, 0, .28);
  backdrop-filter: blur(8px) saturate(155%);
  -webkit-backdrop-filter: blur(18px) saturate(135%);
  transform: translateX(-50%);
}

body .cyber-hero .stat-item {
  flex: 1 1 0;
  justify-content: center;
}

body .cyber-hero .stat-number {
  color: #fff;
}

body .cyber-hero .stat-label {
  color: #000000;
}

@media (max-width: 650px) {
  body .cyber-hero .hero-stats {
    bottom: 28px;
    width: calc(100% - 28px);
    padding: 20px 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 14px;
  }

  body .cyber-hero .stat-item {
    justify-content: flex-start;
  }

body .cyber-hero .stat-item:nth-child(3) {
    grid-column: 1 / -1;
    justify-content: center;
  }
}

/* Global gold-shield cursor. The second value is the native fallback. */
:root,
body {
  cursor: url("assets/icon/cursor-32.webp") 16 30, auto;
}

/* Preserve the browser's familiar hand over every interactive component. */
:where(
  a, button, select, label, summary, [role="button"], [onclick],
  [tabindex]:not([tabindex="-1"]), input[type="button"],
  input[type="submit"], input[type="reset"], input[type="checkbox"],
  input[type="radio"], input[type="range"], input[type="color"],
  input[type="file"]
),
:where(
  a, button, select, label, summary, [role="button"], [onclick],
  [tabindex]:not([tabindex="-1"])
) * {
  cursor: pointer;
}

/* Editable and selectable copy keeps the native I-beam cursor. */
:where(
  input:not([type]), input[type="text"], input[type="email"],
  input[type="password"], input[type="search"], input[type="tel"],
  input[type="url"], input[type="number"], textarea,
  [contenteditable="true"], p, h1, h2, h3, h4, h5, h6, li,
  blockquote, pre, code
) {
  cursor: text;
}

/* Do not mask native dragging and loading feedback. */
[draggable="true"] { cursor: grab; }
[draggable="true"]:active { cursor: grabbing; }
[aria-busy="true"] { cursor: progress; }

/* Keep the About page Contact Us CTA compact instead of grid-stretched. */
body .about-company-section__button {
  box-sizing: border-box;
  width: 220px !important;
  max-width: 100%;
  flex: 0 0 auto;
  align-self: flex-start !important;
  justify-self: start !important;
}

/* Centre the shared footer copy directly beneath the Botle Feela logo. */
body .secure-footer__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

body .secure-footer__logo {
  width: 100%;
  justify-content: center;
}

body .secure-footer__brand > p {
  width: 100%;
  max-width: 540px;
  margin-inline: auto;
  text-align: center;
}

body .secure-footer__follow {
  align-self: center;
}

body .secure-footer__socials {
  justify-content: center;
}

/* Index-style gold ornamental eyebrow badges used on inner pages. */
body .global-security-badge {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
 
  min-width: 0 !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 0 35px !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #e3b562 !important;
  font-family: "Chakra Petch", sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: .03em !important;
  text-align: center !important;
}

body .global-security-badge-divider {
  display: block !important;
  width: 160px !important;
  height: auto !important;
  max-width: 100% !important;
  margin: -47px 0 30px !important;
  object-fit: contain !important;
  pointer-events: none !important;
}

/* Only the Mission, Vision & Promise badge is centred above its heading. */
body .mvp-section__header .global-security-badge {
  margin-inline: auto !important;
}

body .mvp-section__header .global-security-badge-divider {
  margin-inline: auto !important;
}

/* Centre the ornamental divider beneath the About Us badge text. */
body .about-company-section__content > .global-security-badge-divider {
  margin-left: -23px !important;
}

/* ================================================================
   ABOUT PAGE EYEBROWS — EDIT EACH TEXT AND DIVIDER INDEPENDENTLY

   Change `left` to move horizontally and `top` to move vertically.
   Change divider `width` without changing the eyebrow text.
   The actual words are editable in About us.html.
   ================================================================ */

/* ABOUT US */
body .about-page-eyebrow--about {
  position: relative;
  width:fit-content;
 
  top: 0;
}
body .about-page-divider--about {
  position: relative;
  left: -10px;
  top: 0;
  width: 160px !important;
}

/* OUR DIRECTION */
body .about-page-eyebrow--direction {
  position: relative;
  left: 0;
  top: 0;
}
body .about-page-divider--direction {
  position: relative;
  left: 0;
  top: 0;
  width: 160px !important;
}

/* CORE PRINCIPLES */
body .about-page-eyebrow--principles {
  position: relative;
  left: 0;
  top: 0;
  color: #1f140275 !important;
}

/* Overrides the shared badge colour injected by script.js for Core Values only. */
body.about-page .core-values__intro .about-page-eyebrow--principles {
  color: #1B2632 !important;
}
body .about-page-divider--principles {
  position: relative;
  left: 0;
  top: 0;
  width: 160px !important;
}

/* EXPERIENCE & CAPABILITIES EYEBROW — edit independently. */
body.about-page .experience-capabilities__eyebrow {
  display: flex;
  width: fit-content;
  flex-direction: column;
  align-items: center;
  margin-left:-12px;
}

body.about-page .experience-capabilities__header .experience-capabilities__badge {
  position: relative !important;
  left: 0px;
  top: 0;
  color: #050A1D !important;
}

body.about-page .experience-capabilities__header .experience-capabilities__divider {
  position: relative !important;
  left:0px;
  top: 0;
  width: 160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* TRUSTED EXPERTS */
body .about-page-divider--experts {
  position: relative;
  left: 0;
  top: 0;
  center: 0;
  width: 160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body .about-page-divider--experts {
  position: relative;
  left: 0;
  top: 0;
  width: 160px !important;
}

/* GET STARTED */
body .about-page-eyebrow--cta {
  position: relative;
  left: 0;
  top: 0;
}
body .about-page-divider--cta {
  position: relative;
  left: 0;
  top: 0;
  width: 160px !important;
}

/* ABOUT PAGE — editable Experience and Capabilities split section. */
.experience-capabilities {
  padding: clamp(72px, 7vw, 110px) 0;
  background: #ffffff00;
  color: #f5f7fb;
}

.experience-capabilities__inner {
  display: grid;
  width: min(100% - 72px, 1500px);
  margin-inline: auto;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(42px, 5vw, 82px);
  align-items: center;
}

.experience-capabilities__media {
  min-width: 0;
  height: clamp(500px, 55vw, 720px);
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(250, 208, 67, .72);
  border-radius: 24px;
  background: #1f140275;
  box-shadow: 0 24px 55px rgba(0, 0, 0, .28);
}

.experience-capabilities__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.experience-capabilities__content {
  min-width: 0;
}

.experience-capabilities__header {
  text-align: left;
}

body .experience-capabilities__header .global-security-badge,
body .experience-capabilities__header .global-security-badge-divider {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.experience-capabilities__header h2 {
  max-width: 720px;
  margin: 0 0 22px;
  color: #f5f7fb;
  font-family: "Chakra Petch", sans-serif;
  font-size: clamp(38px, 3.25vw, 64px);
  line-height: 1.08;
  font-weight: 500;
}

.experience-capabilities__header p {
  max-width: 720px;
  margin: 0;
  color: #aeb8c7;
  font-size: clamp(16px, 1.2vw, 19px);
  line-height: 1.7;
}

.experience-capabilities__list {
  display: grid;
  gap: 18px;
  margin: 34px 0 38px;
  padding: 0;
  list-style: none;
}

.experience-capabilities__list li {
  display: flex;
  align-items: center;
  gap: 15px;
  color: #f5f7fb;
  font-size: clamp(16px, 1.15vw, 19px);
  font-weight: 600;
}

.experience-capabilities__list li > span {
  display: grid;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  place-items: center;
  border: 1px solid rgba(250, 208, 67, .72);
  border-radius: 50%;
  color: #e3b562;
  font-size: 13px;
}

.experience-capabilities__actions {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
}

.experience-capabilities__actions .btn {
  width: 230px;
  min-height: 58px;
  margin-top: 20px;
}

@media (max-width: 900px) {
  .experience-capabilities__inner {
    width: min(100% - 40px, 1500px);
    grid-template-columns: 1fr;
  }

  .experience-capabilities__media {
    height: min(72vw, 620px);
  }
}

@media (max-width: 560px) {
  .experience-capabilities__inner {
    width: calc(100% - 28px);
    gap: 34px;
  }

  .experience-capabilities__media {
    height: 420px;
    border-radius: 18px;
  }

  .experience-capabilities__actions {
    display: grid;
  }

  .experience-capabilities__actions .btn {
    width: min(100%, 340px);
  }
}

/* Use the local Cormorant Garamond typeface for every primary heading. */
h1,
h2 {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 700 !important;
}

h3 {
  font-family: "Cormorant Garamond", serif !important;
}

/* Services page: editable Why Choose Us section */
.network-overview__reasons {
  position: relative;
  grid-column: 1 / -1;
  width: 100%;
  padding-top: 82px;
  text-align: center;
}

/* Gold inset divider between Experience & Capabilities and Why Choose Us. */
.network-overview__reasons::before {
  content: "";
  position: absolute;
  top: 0;
  right: clamp(18px, 4vw, 80px);
  left: clamp(18px, 4vw, 80px);
  height: 2px;
  background: #b57e1b;
  pointer-events: none;
}

.network-overview__reasons .network-overview__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin: 0;
  color: var(--overview-accent);
  font-size: var(--why-first-line-size) !important;
  font-weight: 700;
  letter-spacing: .18em;
}

.network-overview__eyebrow::before,
.network-overview__eyebrow::after {
  content: none;
}

.network-overview__reasons h2 {
  margin: 14px 0 13px;
  color: var(--overview-text);
  font-size: var(--why-second-third-line-size);
  font-weight: 500;
  line-height: 1.04;
}

.network-overview__reasons h2 span { color: var(--overview-accent); }

/* Only the first “WHY CHOOSE US” line. */
.network-overview__reasons h2.network-overview__why-title {
  color: #ffffff;
  font-size: var(--why-first-line-size) !important;
}

.network-overview__reasons .network-overview__lead {
  margin: 0;
  color: #c1c7d0;
  font-size: 20px;
  line-height: 1.45;
  
}

.network-overview__reasons ul {
  margin: 30px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 18px 28px;
  list-style: none;
}

.network-overview__reasons li,
.network-overview__reasons li:nth-child(4),
.network-overview__reasons li:nth-child(5) {
  grid-column: span 2;
  min-height: 240px;
  padding: 18px 28px 22px;
  border: 1px solid rgba(250, 208, 67, .23);
  border-radius: 12px;
  background: rgba(10, 19, 29, .74);
  color: var(--overview-copy);
  font-size: 16px;
  line-height: 1.55;
  text-align: center;
}

.network-overview__reasons li:nth-child(4) { grid-column: 2 / span 2; }

.network-overview__reasons li svg {
  width: 54px;
  height: 54px;
  margin-bottom: 9px;
  padding: 10px;
  border: 1.5px solid var(--overview-accent);
  border-radius: 50%;
  fill: none;
  stroke: var(--overview-accent);
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.network-overview__reasons li strong,
.network-overview__reasons li span { display: block; }

.network-overview__reasons li strong {
  margin-bottom: 13px;
  color: var(--overview-text);
  font-size: 20px;
  line-height: 1.25;
}

.network-overview__reasons li::before { content: none; }

.network-overview__inner > .network-overview__gallery {
  grid-column: 1 / -1;
  width: 100%;
  display: block;
  margin: 18px 0 34px;
}

.network-overview__gallery img {
  width: 100%;
  height: 242px;
  display: block;
  object-fit: cover;
  object-position: center 49%;
  border: 1px solid rgba(250, 208, 67, .28);
  border-radius: 12px;
}

@media (max-width: 900px) {
  .network-overview__reasons ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .network-overview__reasons li,
  .network-overview__reasons li:nth-child(4),
  .network-overview__reasons li:nth-child(5) { grid-column: auto; }
  .network-overview__reasons li:last-child {
    grid-column: 1 / -1;
    width: calc(50% - 12px);
    justify-self: center;
  }
}

@media (max-width: 600px) {
  .network-overview__reasons { padding-top: 54px; }
  .network-overview__reasons ul { grid-template-columns: 1fr; }
  .network-overview__reasons li,
  .network-overview__reasons li:nth-child(4),
  .network-overview__reasons li:nth-child(5),
  .network-overview__reasons li:last-child { grid-column: auto; width: auto; }
  .network-overview__reasons h2 br,
  .network-overview__lead br { display: none; }
  .network-overview__gallery img { height: 190px; }
}

/* Keep the eyebrow layout centred; move only the OUR SERVICES text. */
body.services-page .services-catalog__eyebrow {
  margin-left: 0 !important;
}

body.services-page .services-catalog__eyebrow .global-security-badge {
  color: #020F1B !important;
  transform: translateX(-10px);
}

@media (max-width: 600px) {
  body.services-page .services-catalog__eyebrow .global-security-badge {
    transform: translateX(-10px);
  }
}

/* WHAT WE OFFER eyebrow: edit the text and ornament independently. */
.service-offer-review__eyebrow {
  --offer-eyebrow-text-color: #020F1B;
  --offer-eyebrow-text-x: 0px;
  --offer-eyebrow-text-y: 0px;
  --offer-eyebrow-divider-x: -1px;
  --offer-eyebrow-divider-y: 0px;
  --offer-eyebrow-divider-width: 160px;
  display: flex;
  width: fit-content;
  flex-direction: column;
  align-items: center;
}

/* WHAT WE OFFER and WHAT OUR CLIENT SAY heading controls. */
.service-offer-review {
  --offer-heading-size: clamp(30px, 3.2vw, 41px);
  --client-heading-size: clamp(25px, 2.2vw, 21px);
  --offer-heading-color: #06111D;
  --client-heading-color: #06111D;
}

body.services-page .service-offer-review__offer-title {
  color: var(--offer-heading-color);
  font-size: var(--offer-heading-size) !important;
}

body.services-page .service-offer-review__client-title {
  color: var(--client-heading-color);
  font-size: var(--client-heading-size) !important;
}

body.services-page .service-offer-review__eyebrow .service-offer-review__eyebrow-text {
  color: var(--offer-eyebrow-text-color) !important;
  transform: translate(
    var(--offer-eyebrow-text-x),
    var(--offer-eyebrow-text-y)
  );
}

body.services-page .service-offer-review__eyebrow-divider {
  width: var(--offer-eyebrow-divider-width) !important;
  transform: translate(
    var(--offer-eyebrow-divider-x),
    var(--offer-eyebrow-divider-y)
  );
}

/* Services page: shared gold hover effect for every bordered content block. */
body.services-page :is(
  .services-catalog__card,
  .network-overview__card,
  .network-overview__reasons li,
  .network-overview__gallery img,
  .other-services__card
) {
  transition:
    transform .28s ease,
    border-color .28s ease,
    box-shadow .28s ease,
    filter .28s ease;
}

body.services-page :is(
  .services-catalog__card,
  .network-overview__card,
  .network-overview__reasons li,
  .network-overview__gallery img,
  .other-services__card
):is(:hover, :focus-within) {
  border-color: #e3b562 !important;
  box-shadow:
    0 0 0 1px rgba(250, 208, 67, .2),
    0 0 18px rgba(250, 208, 67, .28),
    0 16px 34px rgba(0, 0, 0, .24) !important;
  filter: brightness(1.035);
  transform: translateY(-4px);
}

@media (prefers-reduced-motion: reduce) {
  body.services-page :is(
    .services-catalog__card,
    .network-overview__card,
    .network-overview__reasons li,
    .network-overview__gallery img,
    .other-services__card
  ) {
    transition-duration: .01ms;
  }
}

/* Shared Matrix layer order for every inner-page hero. */
.about-page-hero,
.services-page-hero,
.faq-page-hero,
.contact-page-hero,
.service-one-hero {
  isolation: isolate;
  margin-top: -30px;
}

.about-page-hero__overlay,
.services-page-hero__overlay,
.faq-page-hero__overlay,
.contact-page-hero__overlay,
.service-one-hero__overlay {
  z-index: 0;
}

.about-page-hero__inner,
.services-page-hero__inner,
.faq-page-hero__inner,
.contact-page-hero__inner,
.service-one-hero__inner {
  position: relative;
  z-index: 2;
}

/* ================================================================
   SERVICE ONE — ENTERPRISE HARDWARE
   Body content only. The hero and future CTA are intentionally separate.
   ================================================================ */
.hardware-service,
.hardware-included,
.hardware-process,
.hardware-industries,
.hardware-faq,
.hardware-related {
  --hardware-bg: #020f1b;
  --hardware-card: #1b2936;
  --hardware-card-deep: #111f2c;
  --hardware-text: #f5f7fb;
  --hardware-copy: #b8c5d3;
  --hardware-accent: #e3b562;
  --hardware-border: rgba(250, 208, 67, .28);
  color: var(--hardware-text);
}

.hardware-service__inner,
.hardware-included__inner,
.hardware-process__inner,
.hardware-industries__inner,
.hardware-faq__inner,
.hardware-related__inner {
  width: min(1240px, calc(100% - 72px));
  margin: 0 auto;
}

.hardware-service {
  padding: 104px 0 0;
  background-color: #fff;
  background-image:
    linear-gradient(rgba(255,255,255,.58), rgba(255,255,255,.58)),
    url("assets/images/background.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  color: #06111d;
}
.hardware-service__intro { display: grid; grid-template-columns: 1.08fr .92fr; gap: 64px; align-items: center; }
.hardware-service__eyebrow,
.hardware-section-heading > span,
.hardware-industries__content > span { display: block; margin-bottom: 18px; color: var(--hardware-accent); font-size: 13px; font-weight: 700; letter-spacing: .13em; }
.hardware-service h2,
.hardware-section-heading h2,
.hardware-industries h2 { margin: 0; font-size: clamp(34px, 3.6vw, 54px); font-weight: 500; line-height: 1.05; }
.hardware-service h2 span { color: var(--hardware-accent); }
.hardware-service__intro-copy > p { margin: 24px 0 0; color: #000000; font-size: 16px; font-weight: 500; line-height: 1.72; }
.hardware-service__highlights { display: grid; margin: 30px 0 0; padding: 0; grid-template-columns: 1fr 1fr; gap: 16px 24px; list-style: none; }
.hardware-service__highlights li {
  position: relative;
  min-height: 92px;
  padding: 20px 20px 18px 28px;
  border: 1px solid rgba(250,208,67,.48);
  border-radius: 13px;
  background: #111F2C;
  box-shadow: 0 10px 24px rgba(6,17,29,.08);
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
  color: #fff;
}
body.service-four-page .hardware-service__highlights li { width: 712px; }
body.service-four-page .hardware-included { padding-top: 10px; }

/* Service Four hero image override. */
body.service-four-page .service-one-hero {
  --service-one-background: url("assets/images/storage-hero.webp");
  --service-one-background-position: center 50%;
}
.hardware-service__highlights li::before { content: ""; position: absolute; left: 20px; top: 25px; width: 9px; height: 9px;  border-radius: 50%; box-shadow: 0 0 8px rgba(250,208,67,.25); }
.hardware-service__highlights li:hover { border-color: var(--hardware-accent); box-shadow: 0 13px 28px rgba(6,17,29,.12), 0 0 15px rgba(250,208,67,.14); transform: translateY(-3px); }
.hardware-service__highlights strong,
.hardware-service__highlights span { display: block; }
.hardware-service__highlights strong { margin-bottom: 5px; color: var(--hardware-accent); font-size: 13px; letter-spacing: .07em; }
.hardware-service__highlights span { color: #d5dde6; font-size: 13px; line-height: 1.45; }
.hardware-service__intro-media { height: 820px; margin: 0; overflow: hidden; border: 1px solid var(--hardware-border); border-radius: 22px; }
.hardware-service__intro-media img { width: 100%; height: 100%; display: block; object-fit: cover; }

/* Network Infrastructure only: match the intro image to the full copy height. */
@media (min-width: 981px) {
  body.network-infrastructure-page .hardware-service__intro {
    align-items: stretch;
  }

  body.network-infrastructure-page .hardware-service__intro-media {
    height: auto;
    align-self: stretch;
  }

  /* SAN Storage only: align the intro image with the eyebrow and blue box. */
  body.service-four-page .hardware-service__intro {
    align-items: stretch;
  }

  body.service-four-page .hardware-service__intro-media {
    height: auto;
    align-self: stretch;
  }

  /* Cybersecurity only: align the intro image with the eyebrow and copy. */
  body.service-three-page .hardware-service__intro {
    align-items: stretch;
  }

  body.service-three-page .hardware-service__intro-media {
    position: relative;
    height: auto;
    min-height: 0;
    align-self: stretch;
  }

  body.service-three-page .hardware-service__intro-media img {
    position: absolute;
    inset: 0;
  }

  /* Access Control & CCTV only: align the intro image with the full copy. */
  body.access-control-page .hardware-service__intro {
    align-items: stretch;
  }

  body.access-control-page .hardware-service__intro-media {
    position: relative;
    height: auto;
    min-height: 0;
    align-self: stretch;
  }

  body.access-control-page .hardware-service__intro-media img {
    position: absolute;
    inset: 0;
  }
}

/* Service One copy of the Index technology-partner carousel. */
.service-one-page .customers-served--service-one {
  width: 100vw;
  margin: 72px 0 0 calc(50% - 50vw);
  padding: 88px 48px 96px;
  overflow: hidden;
  margin-top: 90px;
  color: #06111d;
      margin-bottom: -5px;
  background-color: #fff;
  background-image:
    linear-gradient(rgba(255,255,255,.58), rgba(255,255,255,.58)),
    url("assets/images/background.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  background: #1B2632 ! important;
}
.service-one-page .customers-served--service-one .customers-served__inner { width: 100%; max-width: none; margin: 0 auto; }
.service-one-page .customers-served--service-one .customers-served__heading { max-width: 1280px; margin: 0 auto 48px; text-align: center; }
.service-one-page .customers-served--service-one .customers-served__badge { display: inline-flex; min-height: 44px; align-items: center; padding: 0 10px; color: #e3b562; background: transparent; font-size: 15px; font-weight: 700; letter-spacing: .06em; }
body.service-one-page .customers-served--service-one .service-one-partners__badge {
  /* Service One-only text controls. */
  position: relative;
  left: 0;
  color: #e3b562 !important;
  font-size: 15px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.service-one-page .customers-served--service-one .service-one-partners__divider {
  /* Service One-only ornament controls. */
  position: relative;
  left: 0;
  width: 160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.service-one-page .customers-served--service-one .customers-served__heading h2 { margin: 22px 0 16px; color: #06111d; font-size: clamp(30px, 3vw, 52px); font-weight: 500; line-height: 1.08; }
.service-one-page .customers-served--service-one .customers-served__heading p { margin: 0; color: #536474; font-size: 15px; font-weight: 500; line-height: 1.65; }

/* Service Two only: keep the dark navy background for this section. */
body.service-two-page:not(.service-three-page) .customers-served--service-one {
  background-color: #020F1B;
  background-image: none;
  color: #fff;
}
body.service-two-page:not(.service-three-page) .customers-served--service-one .customers-served__heading h2 { color: #f5f7fb; }
body.service-two-page:not(.service-three-page) .customers-served--service-one .customers-served__heading p { color: #d5dde6; }

/* Service Three only: dark navy background for this section. */
body.service-three-page .customers-served--service-one {
  background-color: #020F1B;
  background-image: none;
  color: #fff;
}
body.service-three-page .customers-served--service-one .customers-served__heading h2 { color: #f5f7fb; }
body.service-three-page .customers-served--service-one .customers-served__heading p { color: #d5dde6; }
.service-three-page .customers-served--service-one .customers-served__heading { margin-bottom: 0; }
.service-three-page .partner-logos-row { display: flex; align-items: center; justify-content: center; gap: 16px; margin: 40px auto 0; flex-wrap: nowrap; }
.service-three-page .partner-logos-row__block { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; padding: 10px 16px; background: #fff; border-radius: 10px; }
.service-three-page .partner-logos-row__block img { height: 58px; width: auto; object-fit: contain; }
.service-one-page .customers-served--service-one .customers-served__distribution-banner { width: min(1000px, 100%); height: auto; margin: 68px auto 0; overflow: visible; border-radius: 0; }
.service-one-page .customers-served--service-one .customers-served__distribution-heading { margin: 0 auto 18px; }
.service-one-page .customers-served--service-one .customers-served__distribution-heading h2,
.service-one-page .customers-served--service-one .customers-served__distribution-heading h3 { margin: 0; font-size: clamp(28px, 3vw, 44px); }
.service-one-page .customers-served--service-one .customers-served__distribution-banner img { width: 100%; height: 150px; margin: 0; display: block; object-fit: cover; object-position: center 49%; }

@media (max-width: 900px) {
  .service-one-page .customers-served--service-one { padding-inline: 28px; }
}

@media (max-width: 640px) {
  .service-one-page .customers-served--service-one { margin-top: 54px; padding: 64px 16px 70px; }
  .service-one-page .customers-served--service-one .customers-served__heading { margin-bottom: 34px; }
  .service-one-page .customers-served--service-one .customers-served__distribution-banner { margin-top: 48px; }
  .service-one-page .customers-served--service-one .customers-served__distribution-banner img { height: 125px; }
}

.hardware-service__challenge-grid {
  width: 100vw;
  margin: 0 0 0 calc(50% - 50vw);
  padding: 82px max(36px, calc((100vw - 1240px) / 2));
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  
  margin-top: 0px;
}
.hardware-service__challenge-heading {
  grid-column: 1 / -1;
  width: min(1500px, 100%);
  margin: 0 auto 28px;
  text-align: center;
}
.hardware-service__challenge-heading h2 {
  margin: 0;
 
  font-size: clamp(28px, 2.55vw, 46px);
  line-height: 1.06;
  font-weight: 500;
  white-space: nowrap;
}
.hardware-service__challenge-heading h2 span { color: var(--hardware-accent); }
.hardware-service__challenge-heading p {
  max-width: 780px;
  margin: 20px auto 0;
  color: #000000;
  font-size: 16px;
  line-height: 1.65;
}

@media (max-width: 1100px) {
  .hardware-service__challenge-heading h2 { white-space: normal; }
}
.hardware-service__list-panel { position: relative; padding: 40px; border: 1px solid rgba(184,197,211,.18); border-radius: 20px; background: var(--hardware-card-deep); }
.hardware-service__list-panel h2,
.hardware-service__list-panel h3 { color: #f5f7fb; }
.hardware-service__list-panel--accent { border-color: var(--hardware-border);  }
.hardware-service__list-panel h2,
.hardware-service__list-panel h3 { max-width: 78%; margin-bottom: 14px; font-size: clamp(25px, 2.2vw, 34px); }
.hardware-service__list-panel > p { max-width: 85%; margin: 0 0 25px; color: var(--hardware-copy); line-height: 1.6; }
.hardware-service__list-panel > .hardware-service__panel-summary { max-width: none; margin-bottom: 0; color: #d7e0e9; font-size: 15px; line-height: 1.75; }
.hardware-service__list-panel ul { margin: 0; padding: 0; display: grid; gap: 11px; list-style: none; }
.hardware-service__list-panel li { position: relative; padding-left: 23px; color: #d6dee7; font-size: 14px; line-height: 1.45; }
.hardware-service__list-panel li::before { content: "✓"; position: absolute; left: 0; color: var(--hardware-accent); font-weight: 800; }

/* Service Two: complete network solutions section. */
.network-services-section {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 100px;
}

/* Network Infrastructure only: dark background for Complete Network Solutions. */
body.network-infrastructure-page .network-services-section {
  background-color: #1B2632;
}

body.network-infrastructure-page .network-services-section .hardware-service__challenge-heading h2 {
  color: #ffffff;
}

/* Cybersecurity only: dark background for Secure. Monitor. Protect. */
body.service-three-page .network-services-section {
  background-color: #1B2632;
}

body.service-three-page .network-services-section .hardware-service__challenge-heading h2 {
  color: #ffffff;
}

/* Access Control & CCTV only: dark background for Complete Security Solutions. */
body.access-control-page .network-services-section {
  background-color: #1B2632;
}

body.access-control-page .network-services-section .hardware-service__challenge-heading h2 {
  color: #ffffff;
}

.network-services-section .hardware-service__challenge-heading { margin-bottom: 34px; }
body.service-one-page .network-services-section__eyebrow { margin: 0 auto 24px; }
body.service-one-page .network-services-section__eyebrow .section-eyebrow__text { color: #e3b562; }
.network-services-section .hardware-service__challenge-heading h2 { white-space: normal; }
.network-services-section__intro {
  grid-column: 1 / -1;
  max-width: 900px;
  margin: -28px auto 18px;
  color: var(--hardware-copy);
  line-height: 1.7;
  text-align: center;
}
.network-services-section__card {
  min-height: 250px;
  display: flex;
  flex-direction: column;
  padding: 34px;
  background: var(--hardware-card-deep);
  transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease, background-color .28s ease;
}
.network-services-section__card:nth-of-type(even) {
  border-color: var(--hardware-border);
  
}
.network-services-section__card:last-of-type { grid-column: 2 / 3; }
.service-three-page .network-services-section--four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.service-three-page .network-services-section--four .network-services-section__card:last-of-type {
  grid-column: auto;
  width: auto;
  justify-self: stretch;
}
.network-services-section__number {
  color: var(--hardware-accent);
  font-family: "Chakra Petch", sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .08em;
}
.network-services-section__card h3 {
  max-width: none;
  margin: 26px 0 16px;
  font-size: clamp(24px, 2vw, 32px);
  line-height: 1.08;
}
.network-services-section__card > .hardware-service__panel-summary { margin-top: auto; }
.network-services-section__card:hover {
  border-color: var(--hardware-accent);
  background: #1B2936;
  box-shadow: 0 0 20px rgba(250,208,67,.17), 0 16px 34px rgba(0,0,0,.2);
  transform: translateY(-5px);
}
.service-two-page .network-section-cta {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.service-two-page .network-section-cta--overview {
  margin: 32px 0 0;
}
.service-two-page .network-section-cta--services {
  grid-column: 1 / -1;
  margin-top: 28px;
}
.service-two-page .network-section-cta .about-company-section__button {
  width: auto;
  min-width: 340px;
  max-width: 100%;
  margin: 0;
  font-family: "Chakra Petch", sans-serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .09em;
}

@media (min-width: 981px) {
  body.network-infrastructure-page .hardware-service__intro {
    align-items: center;
  }

  body.network-infrastructure-page .hardware-service__intro-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
@media (max-width: 980px) {
  .network-services-section { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-three-page .network-services-section--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .network-services-section__card:last-of-type { grid-column: 1 / -1; width: calc(50% - 12px); justify-self: center; }
}
@media (max-width: 700px) {
  .network-services-section { grid-template-columns: 1fr; }
  .service-three-page .network-services-section--four { grid-template-columns: 1fr; }
  .network-services-section__card { min-height: 0; }
  .network-services-section__card:last-of-type { grid-column: auto; width: auto; }
  .service-two-page .network-section-cta .about-company-section__button {
    width: min(100%, 360px);
    min-width: 0;
  }
}

/* Service Two: centred benefits introduction after network solutions. */
.network-benefits-intro {
  box-sizing: border-box;
  width: min(1300px, calc(100% - 32px));
  max-width: 1400px;
  margin: 0 auto;
  padding: clamp(78px, 8vw, 118px) 32px;
  
  color: #06111d;
}
.network-benefits-intro__inner {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
body.service-one-page .network-benefits-intro__eyebrow {
  margin: 0 auto 30px;
}
body.service-one-page .network-benefits-intro__eyebrow .section-eyebrow__text {
  color: #06111d;
}
.network-benefits-intro h2 {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  color: #06111d;
  font-size: clamp(38px, 3.25vw, 76px);
  font-weight: 800;
  line-height: 1.02;
  text-align: center;
  text-wrap: balance;
}
.network-benefits-intro h2 span {
  display: block;
  color: #B57E1B;
}
.network-benefits-intro p {
  width: 100%;
  max-width: 1100px;
  margin: 30px auto 0;
  color: #000000;
  font-size: 16px;
  line-height: 1.8;
  text-align: center;
}
.service-three-page .cyber-challenges-grid {
  width: 100%;
  margin-top: 48px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  text-align: left;
}
.service-three-page .cyber-challenges-card {
  min-height: 330px;
  padding: clamp(30px, 3vw, 44px);
  border: 1px solid rgba(250,208,67,.72);
  border-radius: 20px;
  background: #1b2936;
  box-shadow: 0 16px 34px rgba(6,17,29,.16);
}
.service-three-page .cyber-challenges-card--accent {
  background: #172532;
}
.service-three-page .cyber-challenges-card h3 {
  margin: 0 0 26px;
  color: #B57E1B;
  font-size: clamp(25px, 2.2vw, 34px);
  line-height: 1.15;
}
.service-three-page .cyber-challenges-card ul {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 14px;
  list-style: none;
}
.service-three-page .cyber-challenges-card li {
  position: relative;
  padding-left: 23px;
  color: #d7e0e9;
  font-size: 15px;
  line-height: 1.55;
}
.service-three-page .cyber-challenges-card li::before {
  content: "◆";
  position: absolute;
  left: 0;
  top: .42em;
  color: #e3b562;
  font-size: 9px;
}
@media (max-width: 800px) {
  .service-three-page .cyber-challenges-grid { grid-template-columns: 1fr; }
  .service-three-page .cyber-challenges-card { min-height: 0; width: 370px; margin-left: -40px;}
}
@media (max-width: 700px) {
  .network-benefits-intro { padding-inline: 20px; }
  .network-benefits-intro h2 br { display: none; }
  .network-benefits-intro p { font-size: 15px; }
}

.hardware-included { margin-top: -80px; padding: 66px 0;     background: #ffffff ; color: #06111d; padding-bottom: 90px;}
/* Enterprise Hardware only: dark background for the What's Included section. */
body.service-one-page--main .hardware-included {
  background-color: #1B2632;
}

/* Enterprise Hardware only: inset divider before Our Delivery Process. */
body.service-one-page--main .hardware-process {
  position: relative;
}

body.service-one-page--main .hardware-process::before {
  content: "";
  position: absolute;
  top: 0;
  right: clamp(18px, 4vw, 80px);
  left: clamp(18px, 4vw, 80px);
  height: 2px;
  background: #b57e1b;
  pointer-events: none;
}

body.service-three-page .hardware-included { background: none; }
.hardware-included .hardware-section-heading {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-size: 18px;
  color:#ffffff;
  margin-top: 40px;
}
.hardware-included .hardware-section-heading h2 { white-space: nowrap; }
.hardware-included .hardware-section-heading > span {
  margin-left: auto;
  margin-right: auto;
}
.hardware-section-heading { max-width: 850px; margin-bottom: 46px; }
.hardware-section-heading p { margin: 20px 0 0; color: #ffffff ! important; font-size: 16px; }
.hardware-included__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.hardware-included__grid { align-items: start; }
.hardware-included__grid article {
  min-height: 0;
  height: auto;
  padding: 28px;
  border: 1px solid rgba(184,197,211,.2);
  border-radius: 17px;
  background: var(--hardware-card-deep);
  box-shadow: 0 10px 24px rgba(6,17,29,.1);
  transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease, filter .28s ease;
}
.hardware-included__grid article > span { color: var(--hardware-accent); font-weight: 800; }
.hardware-included__grid h3 { margin: 28px 0 14px; color: #f5f7fb; font-size: 19px; line-height: 1.25; }
.hardware-included__grid p { margin: 0; color: #b8c5d3; font-size: 14px; line-height: 1.6; }
.hardware-included__grid article:hover {
  border-color: var(--hardware-accent);
  box-shadow: 0 0 18px rgba(250,208,67,.2), 0 16px 34px rgba(6,17,29,.2);
  filter: brightness(1.04);
  transform: translateY(-5px);
}
.hardware-included__grid article:last-child { grid-column: 2 / 3; }
.hardware-included__grid--single-row article:last-child { grid-column: auto; }
.hardware-included__grid--four-cols { grid-template-columns: repeat(4, 1fr); align-items: stretch; }
.hardware-included__grid--four-cols article { height: 100%; }
.hardware-included__grid--four-cols article:last-child { grid-column: auto; }
.hardware-included__grid--single-row p + p { margin-top: 18px; }
.hardware-included__grid--single-row p strong { color: #f5f7fb; font-weight: 700; }
.network-insights-grid { align-items: stretch; }
.network-insights-grid .network-insight-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 34px;
}
.network-insight-card__number { display: block; }
.network-insights-grid .network-insight-card h3 {
  min-height: 72px;
  margin: 26px 0 20px;
}
.network-insights-grid .network-insight-card p {
  font-size: 14px;
  line-height: 1.7;
}
@media (max-width: 980px) {
  .network-insights-grid .network-insight-card h3 { min-height: 0; }
}

.hardware-process { padding: 96px 0; background: #1B2632; }
.hardware-process .hardware-section-heading { text-align: center; margin-inline: auto; }
.hardware-process .hardware-section-heading h2 span {
  display: inline-block;
  white-space: nowrap;
  font-size: clamp(20px, 5.3vw, 54px);
}
.hardware-process__steps { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5,1fr); list-style: none; }
.hardware-process__steps.network-process-steps { grid-template-columns: repeat(6, 1fr); }
.hardware-process__steps li { position: relative; padding: 0 22px; text-align: center; }
.hardware-process__steps li:not(:last-child)::after { content: ""; position: absolute; top: 27px; left: calc(50% + 35px); width: calc(100% - 70px); height: 1px; background: rgba(250,208,67,.35); }
.hardware-process__steps b { width: 56px; height: 56px; margin: 0 auto 25px; display: grid; place-items: center; border: 1px solid var(--hardware-accent); border-radius: 50%; color: var(--hardware-accent); background: #071725; }
.hardware-process__steps h3 { margin: 0 0 12px; font-size: 17px; }
.hardware-process__steps p { margin: 0; color: var(--hardware-copy); font-size: 13px; line-height: 1.55; }

.hardware-industries { padding: 92px 0;  background:#ffffff; margin-bottom: 80px; margin-top: -10px;}
.hardware-industries__inner { display: grid; grid-template-columns: .9fr 1.1fr; gap: 70px; align-items: center; }
.hardware-industries__content p { margin: 22px 0 0; color: #000000; line-height: 1.68; }
.hardware-industries .network-why-content {
  grid-column: 1 / -1;
  width: min(1200px, 100%);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
      margin-top: -10px;
}
.hardware-industries .network-why-content .section-eyebrow {
  margin-inline: auto;
  justify-items: center;
}
.hardware-industries .network-why-content h2 {
  width: 100%;
  margin-inline: auto;
  text-align: center;
}
.hardware-industries .network-why-content p {
  width: min(1000px, 100%);
  margin: 24px auto 0;
  text-align: center;
}
.hardware-industries .network-why-content p + p {
  margin-top: 18px;
}
.hardware-industries .network-why-cta {
  grid-column: 1 / -1;
  width: 100%;
  margin-top: 34px;
  display: flex;
  justify-content: center;
}
.hardware-industries .network-why-cta .service-one-ad-cta {
  margin: 0 !important;
}
.hardware-industries ul { margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; list-style: none; }
.hardware-industries li { min-height: 68px; padding: 14px 20px; display: flex; align-items: center; gap: 16px; border: 1px solid rgba(250,208,67,.22); border-radius: 10px; background: rgba(2,15,27,.44); color: #000000; }
.hardware-industries li::before { content: none; }
.hardware-industries__icon { flex: 0 0 34px; display: inline-grid; place-items: center; font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif; font-size: 27px; line-height: 1; }
.hardware-industries .network-industry-points li::before {
  content: "◆";
  flex: 0 0 auto;
  display: inline-block;
  color: var(--hardware-accent);
  font-size: 10px;
  line-height: 1;
}
.hardware-industries .network-industry-points li {
  min-height: 0;
  padding: 18px 0;
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  border: 0;
  border-radius: 0;
  background: transparent;
  text-align: left;
}
.hardware-industries .network-industry-points li > div {
  display: grid;
  gap: 8px;
}
.hardware-industries .network-industry-points strong {
  color: #f5f7fb;
  font-size: 17px;
  line-height: 1.3;
}
.hardware-industries .network-industry-points span {
  color: var(--hardware-copy);
  font-size: 14px;
  line-height: 1.55;
}
.hardware-industries .network-industry-points li:last-child {
  grid-column: 1 / 2;
  width: auto;
  justify-self: stretch;
}
.hardware-industries__content:has(+ .network-industry-points),
.hardware-industries .network-industry-points {
  grid-column: 1 / -1;
}
.hardware-industries__content:has(+ .network-industry-points) {
  width: min(1200px, 100%);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.hardware-industries__content:has(+ .network-industry-points) .section-eyebrow {
  --eyebrow-alignment: center;
  margin-inline: auto;
  justify-items: center;
}
.hardware-industries__content:has(+ .network-industry-points) h2,
.hardware-industries__content:has(+ .network-industry-points) p {
  margin-inline: auto;
  text-align: center;
}
.hardware-industries__content:has(+ .network-industry-points) p {
  display: block;
  width: min(900px, 100%);
  max-width: 900px;
  margin-top: 24px;
}
.hardware-industries .network-industry-points {
  margin-top: -36px;
}
.hardware-industries .network-industry-points li > div {
  display: flex;
  align-items: baseline;
  gap: 10px;
  white-space: nowrap;
}
.hardware-industries .network-industry-points strong::after {
  content: " —";
  color: var(--hardware-accent);
}
@media (max-width: 1100px) {
  .hardware-industries .network-industry-points li > div {
    flex-wrap: wrap;
    white-space: normal;
  }
}
@media (max-width: 700px) {
  .hardware-industries .network-industry-points li:last-child {
    grid-column: auto;
    width: auto;
  }
}

.hardware-faq { margin-bottom: -90px; padding: 96px 0; background: #ffffff; color: #06111d; margin-top: -120px; }
.hardware-faq__inner { position: relative; display: grid; grid-template-columns: minmax(240px, .75fr) minmax(280px, .9fr) minmax(420px, 1.35fr); gap: 36px; align-items: start; }
.hardware-faq__image-holder { min-height: 320px; height: 50%; margin: 0; overflow: hidden; border-radius: 18px; background: #dfe3e5; grid-row: 1 / span 2; }
.hardware-faq__image-holder img { width: 100%; height: 50%; min-height: 520px; display: block; object-fit: cover; object-position: center; }
.hardware-faq__list { border-top: 1px solid rgba(6,17,29,.16); }
.hardware-faq details { margin: 0; overflow: hidden; border-bottom: 1px solid rgba(6,17,29,.16); transition: background-color .25s ease; border-radius: 15px; }
.hardware-faq details:hover { background-color: #06111C; }
.hardware-faq summary { position: relative; margin: 0; padding: 23px 44px 23px 23px; cursor: pointer; list-style: none; color: #071522; font-size: 17px; font-weight: 700; transition: color .25s ease; }
.hardware-faq summary:hover { color: var(--hardware-accent); }
.hardware-faq details:hover p { color: #b8c5d3; }
.hardware-faq summary::-webkit-details-marker { display: none; }
.hardware-faq summary::after { content: "+"; position: absolute; right: 4px; top: 18px; color: var(--hardware-accent); font-size: 27px; font-weight: 400; }
.hardware-faq details[open] summary::after { content: "−"; }
.hardware-faq details p { margin: -5px 45px 23px 0; color: #536474; line-height: 1.65; }

/* Service Two: two-column FAQ layout without the image. */
.hardware-faq--network {
  background-color: #f1f1f1;
  background-image: rgba(255, 255, 255,0.88);
    url("assets/images/background.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
}
.hardware-faq--network .hardware-faq__inner {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: clamp(48px, 6vw, 90px);
  align-items: start;
  padding-bottom: 80px;
}
.hardware-faq--network .hardware-section-heading {
  width: 100%;
  max-width: none;
  margin: 0;
  text-align: left;
}
body.service-one-page .hardware-faq--network .hardware-section-heading .section-eyebrow {
  margin-left: 0;
  margin-right: 0;
  justify-items: start;
  margin-left: 20px;
}
.hardware-faq--network .hardware-section-heading h2 {
  width: 190%;
  max-width: none;
  margin-inline: 0;
  text-align: left;
  margin-left: 20px;
}
.hardware-faq--network .hardware-faq__list {
  width: 100%;
  margin-inline: auto;
}
.hardware-faq--network .service-one-section-cta {
  width: 100%;
  justify-content: center;
}
@media (max-width: 980px) {
  .hardware-faq--network .hardware-faq__inner {
    grid-template-columns: 1fr;
    gap: 42px;
  }
}
@media (prefers-reduced-motion: reduce), (max-width: 900px) {
  .hardware-faq--network { background-attachment: scroll; }
}

.hardware-related { padding: 86px 0 100px; background: #1B2632; }
.hardware-related .hardware-section-heading { text-align: center; margin-inline: auto; }
.hardware-related__grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin-bottom: 100px;}
.hardware-related__grid a { display: flex; align-items: center; justify-content: space-between; gap: 22px; min-height: 130px; padding: 24px; border: 1px solid var(--hardware-border); border-radius: 12px; background: var(--hardware-card-deep); color: var(--hardware-text); font-weight: 700; transition: .25s ease; }
.hardware-related__content { min-width: 0; display: grid; gap: 12px; }
.hardware-related__content strong { font-size: 17px; line-height: 1.25; }
.hardware-related__content small { position: relative; padding-left: 16px; color: var(--hardware-copy); font-size: 13px; font-weight: 500; line-height: 1.5; }
.hardware-related__content small::before { content: "•"; position: absolute; left: 0; color: var(--hardware-accent); font-size: 17px; line-height: 1.1; }
.hardware-related__grid .hardware-related__arrow { flex: 0 0 auto; color: var(--hardware-accent); font-size: 23px; transition: transform .25s ease; }
.hardware-related__grid a:hover { border-color: var(--hardware-accent); box-shadow: 0 0 20px rgba(250,208,67,.18); transform: translateY(-3px); }
.hardware-related__grid a:hover .hardware-related__arrow { transform: translateX(5px); }

/* Service One conversion buttons for paid-search and social visitors. */
body.service-one-page .service-one-section-cta {
  width: 100%;
  display: flex;
  justify-content: center;
  grid-column: 1 / -1;
  margin-top: 46px;
  margin-bottom: 60px;
}

body.service-one-page .hardware-faq .service-one-section-cta {
  position: static;
  left: auto;
  width: 100%;
  margin-top: 22px;
  transform: none;
  grid-column: 1 / -1;
  grid-row: 2;
  justify-self: center;
}

body.service-one-page .hardware-faq .service-one-ad-cta {
  margin: 0 !important;
}

body.service-one-page .service-one-ad-cta {
  width: auto !important;
  min-width: 250px;
  min-height: 58px;
  margin: 20px !important;
  padding-inline: 28px;
  align-self: auto !important;
  justify-self: auto !important;
  font-family: "Chakra Petch", sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  letter-spacing: .09em !important;
  text-decoration: none;
}

@media (max-width: 600px) {
  body.service-one-page .service-one-ad-cta {
    width: min(100%, 320px) !important;
    min-width: 0;
  }
}

@media (max-width: 980px) {
  body.service-one-page .hardware-faq .service-one-section-cta {
    position: static;
    width: 100%;
    transform: none;
  }
}

.service-one-page :is(a, button, summary):focus-visible { outline: 3px solid #e3b562; outline-offset: 4px; }
.service-one-page .hardware-section-heading > span,
.service-one-page .hardware-service__eyebrow,
.service-one-page .hardware-industries__content > span { width: fit-content; padding-bottom: 11px; border-bottom: 1px solid var(--hardware-accent); }
.service-one-page .hardware-process .hardware-section-heading > span,
.service-one-page .hardware-related .hardware-section-heading > span { margin-inline: auto; }

@media (max-width: 980px) {
  .hardware-included .hardware-section-heading h2 { white-space: normal; }
  .hardware-service__intro,
  .hardware-industries__inner,
  .hardware-faq__inner { grid-template-columns: 1fr; gap: 42px; margin-top: 60px;}
  .hardware-service__intro-media { height: 420px; }
  .hardware-faq__image-holder,
  .hardware-faq__image-holder img { min-height: 380px; }
  .hardware-included__grid { grid-template-columns: 1fr 1fr; }
  .hardware-included__grid article:last-child { grid-column: auto; }
  .hardware-process__steps { grid-template-columns: 1fr 1fr; gap: 30px; }
  .hardware-process__steps li:not(:last-child)::after { display: none; }
  .hardware-process__steps li:last-child { grid-column: 1 / -1; width: 50%; justify-self: center; }
  .hardware-process__steps.network-process-steps li:last-child { grid-column: auto; width: auto; justify-self: stretch; }
}

@media (max-width: 700px) {
  .hardware-service__inner,
  .hardware-included__inner,
  .hardware-process__inner,
  .hardware-industries__inner,
  .hardware-faq__inner,
  .hardware-related__inner { width: calc(100% - 32px); margin-top:60px; }
  .hardware-service,
  .hardware-included,
  .hardware-process,
  .hardware-industries,
  .hardware-faq,
  .hardware-related { padding-block: 3px; }
  .hardware-service__intro-media { height: 300px; }
  .hardware-service__highlights { grid-template-columns: 1fr; }
  .hardware-service__challenge-grid,
  .hardware-included__grid,
  .hardware-process__steps,
  .hardware-industries ul,
  .hardware-related__grid { grid-template-columns: 1fr; }
  .hardware-service__challenge-grid { padding: 64px 16px; }
  .hardware-service__list-panel { padding: 30px 24px; }
  .hardware-process__steps li:last-child { grid-column: auto; width: auto; }
  .hardware-process__steps li { text-align: left; display: grid; grid-template-columns: 56px 1fr; gap: 18px; padding: 0; }
  .hardware-process__steps b { margin: 0; }
  .hardware-service h2 br,
  .hardware-section-heading h2 br,
  .hardware-industries h2 br { display: none; }
}

@media (prefers-reduced-motion: reduce), (max-width: 900px) {
  .hardware-service { background-attachment: scroll; }
}

/* ================================================================
   REUSABLE SECTION EYEBROW

   Example:
   <div class="section-eyebrow section-eyebrow--center section-eyebrow--gold">
     <span class="section-eyebrow__text">Trusted Partners</span>
     <img class="section-eyebrow__border" src="assets/images/gold-ornamental-divider.webp" alt="" aria-hidden="true">
   </div>

   Available alignment classes: --left, --center, --right
   Available colour classes: --gold, --blue, --white
   ================================================================ */
.section-eyebrow {
  --eyebrow-color: #25AAFF;
  --eyebrow-font-family: "Chakra Petch", sans-serif;
  --eyebrow-font-size: 15px;
  --eyebrow-font-weight: 700;
  --eyebrow-letter-spacing: .08em;
  --eyebrow-text-transform: uppercase;
  --eyebrow-border-image: url("assets/images/gold-ornamental-divider.webp");
  --eyebrow-border-width: 160px;
  --eyebrow-border-height: 18px;
  --eyebrow-gap: 3px;
  --eyebrow-alignment: center;

  display: grid;
  justify-items: center;
  width: fit-content;
  max-width: 100%;
  color: var(--eyebrow-color);
  text-align: var(--eyebrow-alignment);
}

.section-eyebrow__text {
  color: #e3b562 ! important;
  font-size: 15px !important;
  font-weight: 600 !important;
  font-weight: var(--eyebrow-font-weight);
  line-height: 1.2;
  letter-spacing: var(--eyebrow-letter-spacing);
  text-transform: var(--eyebrow-text-transform);
}

.section-eyebrow__border {
  content: var(--eyebrow-border-image);
  width: min(var(--eyebrow-border-width), 100%);
  height: var(--eyebrow-border-height);
  margin-top: var(--eyebrow-gap);
  display: block;
  object-fit: contain;
  object-position: center;
  margin-inline: auto;
}

.section-eyebrow--left { --eyebrow-alignment: left; justify-items: start; }
.section-eyebrow--center { --eyebrow-alignment: center; justify-items: center; margin-inline: auto; }
.section-eyebrow--right { --eyebrow-alignment: right; justify-items: end; margin-left: auto; }

.section-eyebrow--gold { --eyebrow-color: #e3b562; }
.section-eyebrow--blue { --eyebrow-color: #25AAFF; }
.section-eyebrow--white { --eyebrow-color: #FFFFFF; }

.service-one-page .hardware-service__eyebrow {
  padding-bottom: 0;
  border-bottom: 0;
}

/* Service One: consistent gold ornamental eyebrow treatment. */
.service-one-page .section-eyebrow {
  --eyebrow-font-family: "Chakra Petch", sans-serif;
  --eyebrow-font-size: clamp(18px, 2vw, 26px);
  --eyebrow-font-weight: 600;
  --eyebrow-letter-spacing: .035em;
  --eyebrow-border-width: 240px;
  --eyebrow-border-height: 18px;
  --eyebrow-gap: 5px;
  margin: 0 0 22px;
}

.service-one-page .service-one-partners__eyebrow,
.service-one-page .hardware-included__eyebrow,
.service-one-page .hardware-process .section-eyebrow,
.service-one-page .hardware-related .section-eyebrow {
  margin-inline: auto;
}

body.service-one-page .section-eyebrow .section-eyebrow__text {
  font-family: "Chakra Petch", sans-serif !important;
}

/* Service One eyebrow colours based on section background. */
body.service-one-page .hardware-service__eyebrow .section-eyebrow__text,
body.service-one-page .hardware-included .section-eyebrow__text,
body.service-one-page .hardware-faq .section-eyebrow__text {
  color: #06111D;
}

/* Darker gold text for legibility on Service One's light backgrounds. */
body.service-one-page .hardware-service h2 span,
body.service-one-page .hardware-included .hardware-section-heading h2 span,
body.service-one-page .hardware-included__grid article > span,
body.service-one-page .hardware-faq .hardware-section-heading h2 span {
  color: #B57E1B !important;
}

body.service-one-page .customers-served--service-one .section-eyebrow__text,
body.service-one-page .hardware-process .section-eyebrow__text,
body.service-one-page .hardware-industries .section-eyebrow__text,
body.service-one-page .hardware-related .section-eyebrow__text {
  color: #e3b562;
}

.service-one-page .section-eyebrow__border {
  width: min(240px, 100%);
 
}

/* Service One hero alignment only. */
.service-one-page .service-one-hero {
  --service-one-background: url("assets/images/enterprise-hardware-hero-gauteng.webp");
  --service-one-background-position: center 52%;
}

/* Service Two hero image override. */
body.service-two-page:not(.service-three-page) .service-two-hero {
  --service-two-background: url("assets/images/service23.webp");
  --service-two-background-position: center 48%;
}

/* Service Three hero image override. */
body.service-three-page .service-one-hero {
  --service-one-background: url("assets/images/cyberhero.webp");
  --service-one-background-position: center 50%;
}

.service-one-page .service-one-hero__inner {
  text-align: center;
}

.service-one-page .service-one-hero__breadcrumb {
  justify-content: center;
}

@media (max-width: 900px) {
  .section-eyebrow {
    --eyebrow-font-size: 14px;
    --eyebrow-border-width: 145px;
    --eyebrow-border-height: 17px;
  }
}

@media (max-width: 600px) {
  .section-eyebrow {
    --eyebrow-font-size: 12px;
    --eyebrow-border-width: 125px;
    --eyebrow-border-height: 15px;
    --eyebrow-letter-spacing: .06em;
  }
}


/* Access Control page: 4 cards on the first row and 3 centred cards on the second row. */
@media (min-width: 981px) {
  .access-control-page .network-services-section {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 24px;
  }

  .access-control-page .network-services-section .hardware-service__challenge-heading,
  .access-control-page .network-services-section .network-section-cta {
    grid-column: 1 / -1;
  }

  .access-control-page .network-services-section__card {
    grid-column: span 2;
    width: auto;
    min-width: 0;
  }

  .access-control-page .network-services-section__card:nth-of-type(5) {
    grid-column: 2 / span 2;
  }

  .access-control-page .network-services-section__card:nth-of-type(6) {
    grid-column: 4 / span 2;
  }

  .access-control-page .network-services-section__card:nth-of-type(7) {
    grid-column: 6 / span 2;
  }

  .access-control-page .network-services-section__card:last-of-type {
    width: auto;
    justify-self: stretch;
  }

  .access-control-page .network-services-section__card h3 {
    font-size: clamp(21px, 1.55vw, 28px);
  }
}

@media (max-width: 980px) {
  .access-control-page .network-services-section__card:nth-of-type(n) {
    grid-column: auto;
    width: auto;
    justify-self: stretch;
  }

  .access-control-page .network-services-section__card:last-of-type {
    grid-column: 1 / -1;
    width: calc(50% - 12px);
    justify-self: center;
  }
}

@media (max-width: 700px) {
  .access-control-page .network-services-section__card:last-of-type {
    grid-column: auto;
    width: auto;
  }
}

/* ================================================================
   ACCESS CONTROL FAQ — EDITABLE 145 x 145 HEADING IMAGE
   Replace assets/images/faq-heading-placeholder.svg in the HTML.
   ================================================================ */
body.service-three-page .hardware-faq--network .hardware-faq__inner {
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
}
body.service-three-page .hardware-faq__intro {
  min-width: 0;
  display: grid;
  grid-template-columns: 145px minmax(0, 1fr);
  align-items: start;
  gap: 28px;
}
body.service-three-page .hardware-faq__heading-image {
  width: 145px;
  height: 145px;
  margin: 0;
  overflow: hidden;
  border-radius: 14px;
  background: #0b2030;
  box-shadow: 0 14px 32px rgba(6, 17, 29, .12);
}
body.service-three-page .hardware-faq__heading-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}
body.service-three-page .hardware-faq--network .hardware-section-heading p {
  max-width: 720px;
  margin: 24px 0 0;
  color: #536474;
  font-size: 16px;
  line-height: 1.7;
}
@media (max-width: 980px) {
  body.service-three-page .hardware-faq--network .hardware-faq__inner {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  body.service-three-page .hardware-faq__intro {
    grid-template-columns: 1fr;
  }
  body.service-three-page .hardware-faq__heading-image {
    width: 145px;
    height: 145px;
  }
}

/* X3WEB BUTTON COLOUR OVERRIDES - COLOURS ONLY
   Preserves the original layout, dimensions, typography and responsive theme. */
:root {
  --x3-button-bg: #e3b562;
  --x3-button-hover: #b57e1b;
  --x3-button-text: #3d2b09;
}

:is(
  .btn,
  .about-security__button,
  .case-study-card__button,
  .cyber-cta__button,
  .core-values__button,
  .secure-header__cta,
  .about-company-section__button,
  .network-overview__button,
  .service-offer-review__button,
  .other-services__button,
  .services-ad-cta,
  .grow-together__button
) {
  background-color: var(--x3-button-bg) !important;
  border-color: var(--x3-button-bg) !important;
  color: var(--x3-button-text) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

:is(
  .btn,
  .about-security__button,
  .case-study-card__button,
  .cyber-cta__button,
  .core-values__button,
  .secure-header__cta,
  .about-company-section__button,
  .network-overview__button,
  .service-offer-review__button,
  .other-services__button,
  .services-ad-cta,
  .grow-together__button
):is(:hover, :focus-visible) {
  background-color: var(--x3-button-hover) !important;
  border-color: var(--x3-button-hover) !important;
  color: var(--x3-button-text) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}



/* FAQ heading image layout - 190px editable placeholder */
.hardware-faq--network .hardware-faq__intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 190px;
  gap: 10px;
  align-items: start;
  min-width: 0;
  margin-left: 200px;
}
.hardware-faq--network .hardware-faq__intro .hardware-section-heading {
  width: 80%;
  min-width: 0;
  margin: 0;
}
.hardware-faq--network .hardware-faq__heading-image {
  width: 190px;
  height: 190px;
  margin: 0;
  overflow: hidden;
  border-radius: 18px;
}
.hardware-faq--network .hardware-faq__heading-image img {
  display: block;
  width: 190px;
  height: 190px;
  object-fit: cover;
  object-position: center;
}
@media (max-width: 1280px) {
  .hardware-faq--network .hardware-faq__intro {
    margin-left: clamp(0px, 8vw, 120px);
  }
  .hardware-faq--network .hardware-faq__intro .hardware-section-heading {
    width: 100%;
  }
}
@media (max-width: 980px) {
  .hardware-faq--network .hardware-faq__intro {
    grid-template-columns: minmax(0, 1fr) 190px;
    margin-left: 0;
  }
}
@media (max-width: 640px) {
  .hardware-faq--network .hardware-faq__intro {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .hardware-faq--network .hardware-faq__heading-image {
    justify-self: start;
  }
}

/* ================================================================
   FAQ heading image repositioned to the LEFT of the text on service pages
   ================================================================ */
.hardware-faq--network .hardware-faq__intro,
body.service-three-page .hardware-faq--network .hardware-faq__intro {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  min-width: 0;
  margin-left: 0;
}

.hardware-faq--network .hardware-faq__intro .hardware-section-heading,
body.service-three-page .hardware-faq--network .hardware-faq__intro .hardware-section-heading {
  width: 80%;
  min-width: 0;
  margin: 0;
}

.hardware-faq--network .hardware-faq__heading-image,
body.service-three-page .hardware-faq--network .hardware-faq__heading-image {
  order: -1;
  width: 190px;
  height: 190px;
  margin: 0;
  overflow: hidden;
  border-radius: 18px;
  justify-self: start;
  margin-top:20px;
}

.hardware-faq--network .hardware-faq__heading-image img,
body.service-three-page .hardware-faq--network .hardware-faq__heading-image img {
  display: block;
  width: 190px;
  height: 190px;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 1280px) {
  .hardware-faq--network .hardware-faq__intro,
  body.service-three-page .hardware-faq--network .hardware-faq__intro {
    margin-left: 0;
  }
  .hardware-faq--network .hardware-faq__intro .hardware-section-heading,
  body.service-three-page .hardware-faq--network .hardware-faq__intro .hardware-section-heading {
    width: 100%;
  }
}

@media (max-width: 980px) {
  .hardware-faq--network .hardware-faq__intro,
  body.service-three-page .hardware-faq--network .hardware-faq__intro {
    grid-template-columns: 190px minmax(0, 1fr);
    margin-left: 0;
  }
}

@media (max-width: 640px) {
  .hardware-faq--network .hardware-faq__intro,
  body.service-three-page .hardware-faq--network .hardware-faq__intro {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .hardware-faq--network .hardware-faq__heading-image,
  body.service-three-page .hardware-faq--network .hardware-faq__heading-image {
    order: 0;
    justify-self: start;
  }
}


/* =========================================================
   SERVICES PAGE MOBILE / TABLET RESPONSIVE FIXES
   Desktop layout (> 860px) intentionally unchanged.
   ========================================================= */
@media (max-width: 860px) {
  .secure-header__inner { grid-template-columns: minmax(0, 1fr) auto auto; gap: 12px; }
  .secure-header__brand-image { height: 62px; max-width: 210px; }
  .secure-header__nav {
    top: calc(100% + 6px); left: var(--site-wide-gutter-tablet); right: var(--site-wide-gutter-tablet);
    width: auto !important; max-height: calc(100dvh - 96px); overflow-x: hidden; overflow-y: auto;
    overscroll-behavior: contain; z-index: 10001;
  }
  .secure-header__nav > a, .nav-dropdown__toggle { width: 100%; box-sizing: border-box; }
  .nav-dropdown { display: block; width: 100%; }
  .nav-dropdown__toggle { min-height: 44px; justify-content: space-between; padding: 0 14px; text-align: left; }
  .nav-dropdown__menu {
    position: static; display: none; width: auto; min-width: 0; margin: 0 8px 8px; padding: 6px;
    opacity: 1; visibility: visible; transform: none; box-shadow: none; background: #101a26;
  }
  .nav-dropdown.is-open .nav-dropdown__menu { display: block; }
  .nav-dropdown:hover .nav-dropdown__menu:not(:focus-within) { display: none; }
  .nav-dropdown.is-open:hover .nav-dropdown__menu { display: block; }
  .nav-dropdown__menu a { min-height: 42px !important; padding: 8px 12px !important; font-size: 14px !important; line-height: 1.25; white-space: normal; }
  body.services-page .services-catalog, body.services-page .service-offer-review { background-attachment: scroll; }
}

@media (max-width: 650px) {
  .secure-header__inner { min-height: 70px; gap: 10px; }
  .secure-header__brand-image { height: 56px; max-width: 180px; }
  .menu-toggle { width: 40px; height: 40px; }
  .secure-header__nav { left: var(--site-wide-gutter-mobile); right: var(--site-wide-gutter-mobile); padding: 8px; max-height: calc(100dvh - 82px); }
  body.services-page .services-page-hero { --services-hero-height: 285px; --services-hero-title-size: clamp(38px, 12vw, 52px); --services-hero-bg-position: 68% 50%; }
  body.services-page .services-page-hero__inner { padding-top: 66px !important; }
  body.services-page .services-page-hero__title { margin-bottom: 18px; line-height: 1.05; }
  body.services-page .services-page-hero__breadcrumb { gap: 10px; font-size: 12px; flex-wrap: wrap; justify-content: center; }
  body.services-page .services-catalog { padding: 64px 0 48px; }
  body.services-page .services-catalog__eyebrow { margin-bottom: 20px; }
  body.services-page .services-catalog__intro h2 { margin-bottom: 18px; font-size: clamp(30px, 9vw, 40px); line-height: 1.08; letter-spacing: -1px; }
  body.services-page .services-catalog__intro p { padding-bottom: 24px; font-size: 16px; line-height: 1.65; }
  body.services-page .services-catalog__card { min-height: 0; padding: 22px 20px; }
  body.services-page .services-catalog__number { min-height: 38px; }
  body.services-page .network-overview, body.services-page .service-offer-review, body.services-page .other-services { overflow: hidden; }
  body.services-page .network-overview__card, body.services-page .service-offer-review__card, body.services-page .other-services__card { min-width: 0; }
  body.services-page .service-offer-review__inner { padding-top: 64px !important; gap: 28px; }
  body.services-page .service-offer-review__offer h2, body.services-page .service-offer-review__testimonial h3 { margin-top: 0; }
  body.services-page .service-offer-review__card { padding: 20px; }
  body.services-page .service-offer-review__card img { height: 205px; }
  body.services-page .other-services__top { padding-top: 54px; padding-bottom: 42px; }
  body.services-page .other-services h2 { font-size: clamp(30px, 9vw, 40px); }
  body.services-page .other-services__card { padding: 22px 20px; }
}

@media (max-width: 420px) {
  .secure-header__brand-image { height: 50px; max-width: 155px; }
  body.services-page .services-page-hero { --services-hero-height: 265px; margin-top: -30px; }
  body.services-page .services-page-hero__inner { padding-top: 62px !important; }
  body.services-page .services-catalog__card h3, body.services-page .other-services__body h3 { overflow-wrap: anywhere; }
}

/* Mobile hero layout fix: keep statistics in normal document flow below CTA buttons. */
@media (max-width: 650px) {
  body .cyber-hero {
    height: auto;
    min-height: 0;
  }

  body .cyber-hero .hero-content {
    height: auto;
    min-height: 0;
    padding: 34px 18px 42px;
  }

  body .cyber-hero .hero-stats {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    transform: none;
    width: 100%;
    margin: 30px 0 0;
    padding: 20px 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 14px;
  }

  body .cyber-hero .hero-actions {
    margin-bottom: 0;
  }

  body .cyber-hero .hero-overlay {
    height: 100%;
  }
}

/* Mobile homepage hero: strict vertical flow to prevent CTA/statistics overlap. */
@media (max-width: 650px) {
  body .cyber-hero {
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden;
  }

  body .cyber-hero .hero-content {
    position: relative;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch;
    height: auto !important;
    min-height: 0 !important;
    padding: 34px 18px 38px !important;
  }

  body .cyber-hero .copy-column {
    position: relative;
    z-index: 3;
    width: 100% !important;
    flex: 0 0 auto;
  }

  body .cyber-hero .hero-actions {
    position: relative;
    z-index: 4;
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100%;
    gap: 14px !important;
    margin: 26px 0 0 !important;
  }

  body .cyber-hero .hero-actions .btn {
    position: relative;
    display: inline-flex !important;
    width: 100% !important;
    min-height: 58px;
    margin: 0 !important;
  }

  body .cyber-hero .hero-stats {
    position: relative !important;
    z-index: 3;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    order: 2;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    flex: 0 0 auto;
    width: 100% !important;
    max-width: none;
    margin: 34px 0 0 !important;
    padding: 22px 18px !important;
    transform: none !important;
    gap: 22px 14px !important;
  }

  body .cyber-hero .hero-stats .stat-item {
    min-width: 0;
  }

  body .cyber-hero .hero-stats .stat-item:nth-child(3) {
    grid-column: 1 / -1;
    justify-content: center;
  }
}

@media (max-width: 420px) {
  body .cyber-hero .hero-content {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body .cyber-hero .hero-actions .btn {
    min-height: 56px;
    padding-left: 16px;
    padding-right: 16px;
    font-size: 15px;
  }

  body .cyber-hero .hero-stats {
    margin-top: 30px !important;
    padding: 20px 14px !important;
    gap: 20px 10px !important;
  }
}

/* Mobile homepage hero stats: compact sizing on phones. */
@media (max-width: 650px) {
  body .cyber-hero .hero-stats {
    width: min(88%, 520px) !important;
    margin: 26px auto 0 !important;
    padding: 16px 14px !important;
    gap: 16px 10px !important;
    border-radius: 18px;
  }

  body .cyber-hero .hero-stats .stat-item {
    gap: 8px;
    align-items: flex-start;
  }

  body .cyber-hero .hero-stats .stat-number {
    font-size: 22px !important;
    line-height: 1;
  }

  body .cyber-hero .hero-stats .stat-label {
    padding-top: 5px !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
  }
}

@media (max-width: 420px) {
  body .cyber-hero .hero-stats {
    width: min(84%, 360px) !important;
    margin-top: 24px !important;
    padding: 14px 12px !important;
    gap: 14px 8px !important;
  }

  body .cyber-hero .hero-stats .stat-number {
    font-size: 19px !important;
  }

  body .cyber-hero .hero-stats .stat-label {
    font-size: 10px !important;
    line-height: 1.3 !important;
  }
}

/* Mobile homepage spacing: keep National Distributors fully clear of Client Reviews. */
@media (max-width: 640px) {
  body .customers-served__distribution-banner {
   
    height: auto !important;
    min-height: 0 !important;
    margin: 42px auto 44px !important;
    overflow: visible !important;
    border-radius: 0 !important;
  }

  body .customers-served__distribution-heading {
    margin-bottom: 18px !important;
  }

  body .customers-served__distribution-banner img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    margin-top: -80px !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  body .client-testimonials {
    padding-top: 48px !important;
    padding-bottom: 118px !important;
    margin-top:-120px;
  }

  body .client-testimonials__controls {
    bottom: 38px !important;
  }
}

/* About page mobile core-values spacing: prevent cards overlapping gallery images. */
@media (max-width: 650px) {
  body.about-page .core-values__gallery {
    margin: -40px 0 30px !important;
    gap: 18px !important;
  }

  body.about-page .core-values__gallery img {
    height: auto !important;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 20px;
  }

  body.about-page .core-values__list {
    margin-top: 0 !important;
    gap: 18px !important;
  }

  body.about-page .core-values__item {
    padding: 26px 20px !important;
    min-height: 0 !important;
  }
}

/* Center the Experience & Capabilities eyebrow on mobile/tablet. */
@media (max-width: 900px) {
  body.about-page .experience-capabilities__eyebrow {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body.about-page .experience-capabilities__header .experience-capabilities__badge,
  body.about-page .experience-capabilities__header .experience-capabilities__divider {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}

/* Mobile CTA: center all copy in the final services/about/service CTA cards. */
@media (max-width: 680px) {
  body .cyber-cta .cyber-cta__content {
    align-items: center !important;
    text-align: center !important;
  }

  body .cyber-cta .cyber-cta__content h2,
  body .cyber-cta .cyber-cta__content h3,
  body .cyber-cta .cyber-cta__content p {
    width: 100%;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body .cyber-cta .cyber-cta__content h3 {
    max-width: 520px;
    margin-top: 16px;
    margin-bottom: 14px;
  }

  body .cyber-cta .cyber-cta__content p {
    max-width: 540px;
  }

  body .cyber-cta .cyber-cta__actions {
    justify-content: center !important;
    width: 100%;
  }
}

/* Enterprise Hardware FAQ — mobile layout only. */
@media (max-width: 700px) {
  body.service-one-page .hardware-faq--network {
    
    margin-bottom: 0 !important;
    padding: 64px 0 72px !important;
    overflow-x: hidden;
  }

  body.service-one-page .hardware-faq--network .hardware-faq__inner {
    width: calc(100% - 32px) !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    padding-bottom: 0 !important;
  }

  body.service-one-page .hardware-faq--network .hardware-faq__intro {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.service-one-page .hardware-faq--network .hardware-faq__intro .hardware-section-heading {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.service-one-page .hardware-faq--network .hardware-section-heading h2 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 30px 0 0 !important;
    font-size: clamp(34px, 9.5vw, 46px) !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: left !important;
  }

  body.service-one-page .hardware-faq--network .hardware-section-heading h2 span {
    display: inline;
  }

  body.service-one-page .hardware-faq--network .hardware-section-heading .section-eyebrow {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100%;
  }

  body.service-one-page .hardware-faq--network .hardware-faq__heading-image {
    order: 0 !important;
    justify-self: start !important;
    width: min(280px, 100%) !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
    margin: 0 !important;
  }

  body.service-one-page .hardware-faq--network .hardware-faq__heading-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body.service-one-page .hardware-faq--network .hardware-faq__list {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
}

@media (max-width: 420px) {
  body.service-one-page .hardware-faq--network .hardware-section-heading h2 {
    font-size: clamp(31px, 10.5vw, 39px) !important;
  }
}


/* Mobile Network Infrastructure intro eyebrow: center label and divider. */
@media (max-width: 600px) {
  body.service-one-page .hardware-service__intro-copy .hardware-service__eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-items: center !important;
    text-align: center !important;
    --eyebrow-alignment: center;
  }

  body.service-one-page .hardware-service__intro-copy .hardware-service__eyebrow .section-eyebrow__text {
    width: 100%;
    text-align: center !important;
  }

  body.service-one-page .hardware-service__intro-copy .hardware-service__eyebrow .section-eyebrow__border {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Network Infrastructure mobile: remove empty space below distributor logos. */
@media (max-width: 640px) {
  body.service-one-page .customers-served--service-one .customers-served__distribution-banner {
    margin-bottom: 22px !important;
  }

  body.service-one-page .customers-served--service-one .customers-served__distribution-banner img {
    height: 105px !important;
    max-height: 105px !important;
    object-fit: cover !important;
    object-position: center 49% !important;
    padding-top: 1px;
  }

  body.service-one-page .hardware-included {
    
    padding-top: 2px !important;
  }

  body.service-one-page .hardware-included .hardware-section-heading {
    margin-top: 0 !important;
  }
}

/* Network Infrastructure FAQ — mobile layout and heading only. */
@media (max-width: 700px) {
  body.service-two-page .hardware-faq--network .hardware-faq__inner {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-inline: auto !important;
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  body.service-two-page .hardware-faq--network .hardware-faq__intro {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 28px !important;
    margin: 0 !important;
  }

  body.service-two-page .hardware-faq--network .hardware-section-heading {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center !important;
  }

  body.service-two-page .hardware-faq--network .hardware-section-heading .section-eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.service-two-page .hardware-faq--network .hardware-section-heading .section-eyebrow__border {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.service-two-page .hardware-faq--network .hardware-section-heading h2 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 28px auto 0 !important;
    padding: 0 !important;
    font-size: clamp(30px, 8.5vw, 42px) !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: center !important;
  }

  body.service-two-page .hardware-faq--network .hardware-section-heading h2 br {
    display: none !important;
  }

  body.service-two-page .hardware-faq--network .hardware-section-heading h2 span {
    display: block !important;
    margin-top: 4px;
  }

  body.service-two-page .hardware-faq--network .hardware-faq__heading-image {
    justify-self: center !important;
    align-self: center !important;
    width: min(280px, 82vw) !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
    margin: 8px auto 0 !important;
  }

  body.service-two-page .hardware-faq--network .hardware-faq__list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
}

@media (max-width: 420px) {
  body.service-two-page .hardware-faq--network .hardware-section-heading h2 {
    font-size: clamp(28px, 9vw, 36px) !important;
  }
}

/* Cybersecurity hero: keep the long title centered and inside the mobile viewport. */
@media (max-width: 640px) {
  body.service-three-page .service-one-hero__inner {
    width: calc(100% - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.service-three-page .service-one-hero__title {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: clamp(34px, 10.5vw, 46px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.025em !important;
    white-space: nowrap;
    text-align: center !important;
  }

  body.service-three-page .service-one-hero__breadcrumb {
    width: 100%;
    justify-content: center !important;
    flex-wrap: wrap;
    text-align: center;
  }
}

@media (max-width: 390px) {
  body.service-three-page .service-one-hero__title {
    font-size: clamp(31px, 10vw, 39px) !important;
  }
}

/* Cybersecurity intro eyebrow: center on mobile only. */
@media (max-width: 680px) {
  body.service-three-page .hardware-service__intro-copy .hardware-service__eyebrow {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-items: center !important;
    text-align: center !important;
    --eyebrow-alignment: center !important;
  }

  body.service-three-page .hardware-service__intro-copy .hardware-service__eyebrow .section-eyebrow__text {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
  }

  body.service-three-page .hardware-service__intro-copy .hardware-service__eyebrow .section-eyebrow__border {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Cybersecurity partner logos: clean mobile stacking and spacing. */
@media (max-width: 640px) {
  body.service-three-page .partner-logos-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: min(100%, 340px) !important;
    margin: 30px auto 0 !important;
    padding: 0 !important;
    gap: 16px !important;
    align-items: stretch !important;
    justify-items: center !important;
    overflow: visible !important;
  }

  body.service-three-page .partner-logos-row__block {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 96px !important;
    margin: 0 !important;
    padding: 16px 22px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 12px !important;
  }

  body.service-three-page .partner-logos-row__block img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 88% !important;
    max-height: 58px !important;
    object-fit: contain !important;
  }
}

@media (max-width: 420px) {
  body.service-three-page .partner-logos-row {
    width: min(92%, 310px) !important;
    gap: 14px !important;
  }

  body.service-three-page .partner-logos-row__block {
    min-height: 88px !important;
    padding: 14px 18px !important;
  }

  body.service-three-page .partner-logos-row__block img {
    max-height: 52px !important;
  }
}

/* Cybersecurity FAQ — mobile-only layout and heading correction. */
@media (max-width: 700px) {
  body.service-three-page .hardware-faq--network {
    overflow-x: hidden !important;
  }

  body.service-three-page .hardware-faq--network .hardware-faq__inner {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-inline: auto !important;
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  body.service-three-page .hardware-faq--network .hardware-faq__intro {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 30px !important;
    margin: 0 !important;
  }

  body.service-three-page .hardware-faq--network .hardware-section-heading {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center !important;
  }

  body.service-three-page .hardware-faq--network .hardware-section-heading .section-eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center !important;
    justify-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.service-three-page .hardware-faq--network .hardware-section-heading .section-eyebrow__border {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.service-three-page .hardware-faq--network .hardware-section-heading h2 {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 28px auto 0 !important;
    padding: 0 4px !important;
    font-size: clamp(31px, 8.5vw, 42px) !important;
    line-height: 1.06 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: center !important;
  }

  body.service-three-page .hardware-faq--network .hardware-section-heading h2 br {
    display: block !important;
  }

  body.service-three-page .hardware-faq--network .hardware-section-heading h2 span {
    display: inline !important;
  }

  body.service-three-page .hardware-faq--network .hardware-faq__heading-image {
    justify-self: center !important;
    align-self: center !important;
    width: min(280px, 82vw) !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    margin: 6px auto 0 !important;
  }

  body.service-three-page .hardware-faq--network .hardware-faq__heading-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body.service-three-page .hardware-faq--network .hardware-faq__list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
}

@media (max-width: 420px) {
  body.service-three-page .hardware-faq--network .hardware-section-heading h2 {
    font-size: clamp(29px, 9vw, 36px) !important;
  }
}

/* SAN Storage intro: mobile-only layout correction. */
@media (max-width: 700px) {
  body.service-four-page {
    overflow-x: hidden;
  }

  body.service-four-page .hardware-service {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }

  body.service-four-page .hardware-service__inner,
  body.service-four-page .hardware-service__intro,
  body.service-four-page .hardware-service__intro-copy {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.service-four-page .hardware-service__inner {
    width: calc(100% - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.service-four-page .hardware-service__intro {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 34px !important;
  }

  body.service-four-page .hardware-service__intro-copy .hardware-service__eyebrow {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.service-four-page .hardware-service__intro-copy .hardware-service__eyebrow .section-eyebrow__text {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
  }

  body.service-four-page .hardware-service__intro-copy .hardware-service__eyebrow .section-eyebrow__border {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.service-four-page .hardware-service__intro-copy > h2 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: clamp(34px, 10.2vw, 46px) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.02em !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-wrap: balance;
  }

  body.service-four-page .hardware-service__intro-copy > h3 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 28px 0 0 !important;
    font-size: clamp(19px, 5.4vw, 24px) !important;
    line-height: 1.32 !important;
    overflow-wrap: anywhere !important;
  }

  body.service-four-page .hardware-service__intro-copy > p {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 26px !important;
    font-size: 15px !important;
    line-height: 1.68 !important;
    overflow-wrap: anywhere !important;
  }

  body.service-four-page .hardware-service__highlights {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 28px !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.service-four-page .hardware-service__highlights li {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 24px 20px !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    overflow-wrap: anywhere !important;
  }

  body.service-four-page .hardware-service__intro-media {
    width: 100% !important;
    max-width: 100% !important;
    height: 300px !important;
  }
}

@media (max-width: 420px) {
  body.service-four-page .hardware-service__inner {
    width: calc(100% - 28px) !important;
  }

  body.service-four-page .hardware-service__intro-copy > h2 {
    font-size: clamp(31px, 9.6vw, 39px) !important;
  }

  body.service-four-page .hardware-service__highlights li {
    padding: 22px 18px !important;
  }
}

/* SAN Storage mobile: hard-stop all intro content inside the visible viewport. */
@media (max-width: 700px) {
  body.service-four-page .hardware-service,
  body.service-four-page .hardware-service__inner,
  body.service-four-page .hardware-service__intro,
  body.service-four-page .hardware-service__intro-copy,
  body.service-four-page .hardware-service__highlights,
  body.service-four-page .hardware-service__highlights li,
  body.service-four-page .hardware-service__intro-media {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.service-four-page .hardware-service__inner {
    width: auto !important;
    margin-left: 24px !important;
    margin-right: 24px !important;
  }

  body.service-four-page .hardware-service__intro {
    width: 100% !important;
    overflow: visible !important;
  }

  body.service-four-page .hardware-service__highlights {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.service-four-page .hardware-service__highlights li {
    width: 100% !important;
    margin: 0 !important;
    padding: 24px 22px !important;
    overflow: hidden !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  body.service-four-page .hardware-service__intro-media {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 3;
    margin: 0 !important;
    overflow: hidden !important;
  }

  body.service-four-page .hardware-service__intro-media img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    display: block !important;
    object-fit: cover !important;
  }
}

@media (max-width: 420px) {
  body.service-four-page .hardware-service__inner {
    margin-left: 18px !important;
    margin-right: 18px !important;
  }

  body.service-four-page .hardware-service__highlights li {
    padding: 22px 18px !important;
    font-size: 13.5px !important;
    line-height: 1.58 !important;
  }
}

/* SAN Storage delivery process: clean single-column mobile layout. */
@media (max-width: 700px) {
  body.service-four-page .hardware-process {
    padding: 64px 0 !important;
    overflow: hidden !important;
  }

  body.service-four-page .hardware-process__inner {
    width: auto !important;
    margin-left: 22px !important;
    margin-right: 22px !important;
    box-sizing: border-box !important;
  }

  body.service-four-page .hardware-process .hardware-section-heading {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 42px !important;
    text-align: center !important;
  }

  body.service-four-page .hardware-process .hardware-section-heading h2 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: clamp(34px, 9.7vw, 46px) !important;
    line-height: 1.08 !important;
    text-align: center !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.service-four-page .hardware-process .hardware-section-heading h2 br {
    display: none !important;
  }

  body.service-four-page .hardware-process .hardware-section-heading p {
    width: 100% !important;
    max-width: 520px !important;
    margin: 24px auto 0 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    text-align: center !important;
  }

  body.service-four-page .hardware-process__steps,
  body.service-four-page .hardware-process__steps.network-process-steps {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.service-four-page .hardware-process__steps li,
  body.service-four-page .hardware-process__steps.network-process-steps li,
  body.service-four-page .hardware-process__steps li:last-child {
    display: grid !important;
    grid-template-columns: 62px minmax(0, 1fr) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 18px !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
    justify-self: stretch !important;
    box-sizing: border-box !important;
  }

  body.service-four-page .hardware-process__steps li::after {
    display: none !important;
  }

  body.service-four-page .hardware-process__steps li > b {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    margin: 0 !important;
    font-size: 16px !important;
  }

  body.service-four-page .hardware-process__steps li > div {
    min-width: 0 !important;
    width: 100% !important;
  }

  body.service-four-page .hardware-process__steps h3 {
    width: 100% !important;
    margin: 2px 0 10px !important;
    font-size: 20px !important;
    line-height: 1.18 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.service-four-page .hardware-process__steps p {
    width: 100% !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

@media (max-width: 420px) {
  body.service-four-page .hardware-process__inner {
    margin-left: 18px !important;
    margin-right: 18px !important;
  }

  body.service-four-page .hardware-process .hardware-section-heading h2 {
    font-size: clamp(31px, 9.2vw, 39px) !important;
  }

  body.service-four-page .hardware-process__steps li,
  body.service-four-page .hardware-process__steps.network-process-steps li {
    grid-template-columns: 56px minmax(0, 1fr) !important;
    gap: 15px !important;
  }

  body.service-four-page .hardware-process__steps li > b {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    font-size: 15px !important;
  }

  body.service-four-page .hardware-process__steps h3 {
    font-size: 18px !important;
  }

  body.service-four-page .hardware-process__steps p {
    font-size: 13.5px !important;
  }
}


/* SAN Storage FAQ: mobile-only heading and layout correction. */
@media (max-width: 700px) {
  body.service-four-page .hardware-faq--network {
    overflow-x: hidden !important;
    padding: 64px 0 !important;
  }

  body.service-four-page .hardware-faq--network .hardware-faq__inner {
    width: auto !important;
    max-width: none !important;
    margin-left: 20px !important;
    margin-right: 20px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 34px !important;
  }

  body.service-four-page .hardware-faq--network .hardware-faq__intro {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 30px !important;
    margin: 0 !important;
  }

  body.service-four-page .hardware-faq--network .hardware-section-heading {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center !important;
  }

  body.service-four-page .hardware-faq--network .hardware-section-heading .section-eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center !important;
    justify-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.service-four-page .hardware-faq--network .hardware-section-heading .section-eyebrow__text {
    width: 100% !important;
    text-align: center !important;
  }

  body.service-four-page .hardware-faq--network .hardware-section-heading .section-eyebrow__border {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.service-four-page .hardware-faq--network .hardware-section-heading h2 {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 26px auto 0 !important;
    padding: 0 !important;
    font-size: clamp(28px, 8vw, 39px) !important;
    line-height: 1.06 !important;
    letter-spacing: -0.01em !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: center !important;
  }

  body.service-four-page .hardware-faq--network .hardware-section-heading h2 br {
    display: none !important;
  }

  body.service-four-page .hardware-faq--network .hardware-section-heading h2 span {
    display: block !important;
    width: 100% !important;
  }

  body.service-four-page .hardware-faq--network .hardware-faq__heading-image {
    justify-self: center !important;
    align-self: center !important;
    width: min(280px, 82vw) !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    margin: 4px auto 0 !important;
    overflow: hidden !important;
  }

  body.service-four-page .hardware-faq--network .hardware-faq__heading-image img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
  }

  body.service-four-page .hardware-faq--network .hardware-faq__list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
}

@media (max-width: 420px) {
  body.service-four-page .hardware-faq--network .hardware-faq__inner {
    margin-left: 16px !important;
    margin-right: 16px !important;
  }

  body.service-four-page .hardware-faq--network .hardware-section-heading h2 {
    font-size: clamp(27px, 8.8vw, 34px) !important;
  }
}

/* Access Control & CCTV: center the intro eyebrow on mobile only. */
@media (max-width: 700px) {
  body.access-control-page .hardware-service__intro-copy .hardware-service__eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-items: center !important;
    text-align: center !important;
    --eyebrow-alignment: center;
  }

  body.access-control-page .hardware-service__intro-copy .hardware-service__eyebrow .section-eyebrow__text {
    width: 100% !important;
    text-align: center !important;
  }

  body.access-control-page .hardware-service__intro-copy .hardware-service__eyebrow .section-eyebrow__border {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Access Control & CCTV mobile: compact National Distributors spacing and transition. */
@media (max-width: 640px) {
  body.access-control-page .customers-served--service-one {
    margin-top: 42px !important;
    padding: 52px 16px 26px !important;
    margin-bottom: 0 !important;
  }

  body.access-control-page .customers-served--service-one .customers-served__heading {
    margin-bottom: 24px !important;
  }

  body.access-control-page .customers-served--service-one .customers-served__distribution-banner {
    width: 100% !important;
    max-width: 520px !important;
    height: auto !important;
    margin: 28px auto 0 !important;
  }

  body.access-control-page .customers-served--service-one .customers-served__distribution-heading {
    margin: 0 auto 14px !important;
  }

  body.access-control-page .customers-served--service-one .customers-served__distribution-heading h2 {
    margin: 0 auto !important;
    font-size: clamp(30px, 9vw, 40px) !important;
    line-height: 1.06 !important;
    text-align: center !important;
  }

  body.access-control-page .customers-served--service-one .customers-served__distribution-banner img {
    width: 100% !important;
    height: 100px !important;
    max-height: 100px !important;
    margin: 0 auto !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center 49% !important;
  }

  body.access-control-page .hardware-included {
    
    padding-top: 28px !important;
  }

  body.access-control-page .hardware-included .hardware-section-heading {
    margin-top: 0 !important;
  }
}

/* Access Control & CCTV process: clean single-column mobile layout. */
@media (max-width: 700px) {
  body.access-control-page .hardware-process {
    overflow-x: hidden !important;
  }

  body.access-control-page .hardware-process__inner {
    width: auto !important;
    max-width: none !important;
    margin-left: 20px !important;
    margin-right: 20px !important;
  }

  body.access-control-page .hardware-process__steps,
  body.access-control-page .hardware-process__steps.network-process-steps {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 30px !important;
    width: 100% !important;
    margin: 34px 0 0 !important;
    padding: 0 !important;
  }

  body.access-control-page .hardware-process__steps li,
  body.access-control-page .hardware-process__steps.network-process-steps li,
  body.access-control-page .hardware-process__steps li:last-child {
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 18px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    grid-column: auto !important;
    justify-self: stretch !important;
  }

  body.access-control-page .hardware-process__steps li::after {
    display: none !important;
  }

  body.access-control-page .hardware-process__steps li > b {
    width: 64px !important;
    height: 64px !important;
    margin: 0 !important;
    flex: none !important;
  }

  body.access-control-page .hardware-process__steps li > div {
    min-width: 0 !important;
    width: 100% !important;
  }

  body.access-control-page .hardware-process__steps h3 {
    margin: 2px 0 10px !important;
    font-size: 20px !important;
    line-height: 1.15 !important;
    overflow-wrap: anywhere !important;
  }

  body.access-control-page .hardware-process__steps p {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  body.access-control-page .hardware-process .service-one-section-cta {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin-top: 42px !important;
  }

  body.access-control-page .hardware-process .service-one-ad-cta {
    width: min(100%, 360px) !important;
    min-width: 0 !important;
    max-width: 360px !important;
    min-height: 58px !important;
    padding: 14px 22px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
    justify-content: center !important;
    text-align: center !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
  }
}

@media (max-width: 420px) {
  body.access-control-page .hardware-process__inner {
    margin-left: 16px !important;
    margin-right: 16px !important;
  }

  body.access-control-page .hardware-process__steps li,
  body.access-control-page .hardware-process__steps.network-process-steps li {
    grid-template-columns: 58px minmax(0, 1fr) !important;
    gap: 15px !important;
  }

  body.access-control-page .hardware-process__steps li > b {
    width: 58px !important;
    height: 58px !important;
  }
}


/* Access Control & CCTV FAQ: mobile-only heading and layout correction. */
@media (max-width: 700px) {
  body.access-control-page .hardware-faq--network {
    overflow-x: hidden !important;
    padding: 64px 0 !important;
  }

  body.access-control-page .hardware-faq--network .hardware-faq__inner {
    width: auto !important;
    max-width: none !important;
    margin-left: 20px !important;
    margin-right: 20px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 34px !important;
  }

  body.access-control-page .hardware-faq--network .hardware-faq__intro {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 28px !important;
    margin: 0 !important;
  }

  body.access-control-page .hardware-faq--network .hardware-section-heading {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center !important;
  }

  body.access-control-page .hardware-faq--network .hardware-section-heading .section-eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center !important;
    justify-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.access-control-page .hardware-faq--network .hardware-section-heading .section-eyebrow__text {
    width: 100% !important;
    text-align: center !important;
  }

  body.access-control-page .hardware-faq--network .hardware-section-heading .section-eyebrow__border {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.access-control-page .hardware-faq--network .hardware-section-heading h2 {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 26px auto 0 !important;
    padding: 0 !important;
    font-size: clamp(28px, 8vw, 39px) !important;
    line-height: 1.06 !important;
    letter-spacing: -0.01em !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: center !important;
  }

  body.access-control-page .hardware-faq--network .hardware-section-heading h2 br {
    display: none !important;
  }

  body.access-control-page .hardware-faq--network .hardware-section-heading h2 span {
    display: block !important;
    width: 100% !important;
  }

  body.access-control-page .hardware-faq--network .hardware-section-heading p {
    width: 100% !important;
    max-width: 500px !important;
    margin: 24px auto 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    text-align: center !important;
  }

  body.access-control-page .hardware-faq--network .hardware-faq__heading-image {
    justify-self: center !important;
    align-self: center !important;
    width: min(280px, 82vw) !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    margin: 4px auto 0 !important;
    overflow: hidden !important;
    border-radius: 22px !important;
  }

  body.access-control-page .hardware-faq--network .hardware-faq__heading-image img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
  }

  body.access-control-page .hardware-faq--network .hardware-faq__list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
}

@media (max-width: 420px) {
  body.access-control-page .hardware-faq--network .hardware-faq__inner {
    margin-left: 16px !important;
    margin-right: 16px !important;
  }

  body.access-control-page .hardware-faq--network .hardware-section-heading h2 {
    font-size: clamp(27px, 8.8vw, 34px) !important;
  }
}

/* FAQ page: center Help Centre eyebrow and divider on mobile only. */
@media (max-width: 600px) {
  body.faq-page .faq-introduction__eyebrow {
    width: max-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
    text-align: center !important;
    justify-content: center !important;
  }

  body.faq-page .faq-introduction__divider {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }
}

/* FAQ Help Centre CTA: center the Contact Us button on mobile only. */
@media (max-width: 600px) {
  body.faq-page .faq-introduction__content .about-company-section__button {
    display: flex !important;
    width: min(320px, 82vw) !important;
    max-width: 100% !important;
    margin: 24px auto 0 !important;
    align-self: center !important;
    justify-self: center !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }
}


/* FAQ answers hero: mobile-only alignment fix. */
@media (max-width: 640px) {
  body.faq-page .faq-answers__intro {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.faq-page .faq-answers__badge {
    display: flex !important;
    width: fit-content !important;
    max-width: calc(100% - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
    text-align: center !important;
    justify-content: center !important;
  }

  body.faq-page .faq-answers__divider {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }

  body.faq-page .faq-answers__intro h2 {
    width: 100% !important;
    max-width: 520px !important;
    margin: 28px auto 20px !important;
    padding: 0 8px !important;
    text-align: center !important;
  }

  body.faq-page .faq-answers__intro p {
    width: 100% !important;
    max-width: 500px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 8px !important;
    text-align: center !important;
  }
}

/* Contact page CONNECT heading: mobile-only overflow and wrapping fix. */
@media (max-width: 640px) {
  body.contact-us-page .contact-connect {
    overflow-x: hidden !important;
  }

  body.contact-us-page .contact-connect .contact-connect__heading {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 30px !important;
    padding: 0 4px !important;
    align-items: center !important;
    text-align: center !important;
  }

  body.contact-us-page .contact-connect .contact-connect__heading h2 {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 540px !important;
    margin: -10px auto 18px !important;
    padding: 0 4px !important;
    font-size: clamp(34px, 9.2vw, 44px) !important;
    line-height: 1.06 !important;
    letter-spacing: -0.02em !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: center !important;
  }

  body.contact-us-page .contact-connect .contact-connect__heading h2 br {
    display: none !important;
  }

  body.contact-us-page .contact-connect .contact-connect__heading h2 span {
    display: inline !important;
  }

  body.contact-us-page .contact-connect .contact-connect__heading p {
    width: 100% !important;
    max-width: 500px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 6px !important;
    text-align: center !important;
  }
}

@media (max-width: 420px) {
  body.contact-us-page .contact-connect .contact-connect__heading h2 {
    font-size: clamp(31px, 9.5vw, 38px) !important;
  }
}


/* Homepage hero stats: extra-compact mobile sizing. */
@media (max-width: 650px) {
  body .cyber-hero .hero-stats {
    width: min(78%, 430px) !important;
    margin: 22px auto 0 !important;
    padding: 12px 12px !important;
    gap: 10px 8px !important;
    border-radius: 16px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body .cyber-hero .hero-stats .stat-item {
    gap: 6px !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body .cyber-hero .hero-stats .stat-item:nth-child(3) {
    grid-column: 1 / -1 !important;
    justify-content: center !important;
  }

  body .cyber-hero .hero-stats .stat-number {
    font-size: 18px !important;
    line-height: 1 !important;
  }

  body .cyber-hero .hero-stats .stat-label {
    padding-top: 0 !important;
    font-size: 9.5px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 420px) {
  body .cyber-hero .hero-stats {
    width: min(74%, 330px) !important;
    padding: 11px 10px !important;
    gap: 9px 6px !important;
  }

  body .cyber-hero .hero-stats .stat-number {
    font-size: 17px !important;
  }

  body .cyber-hero .hero-stats .stat-label {
    font-size: 9px !important;
  }
}

/* About Us eyebrow: prevent gold divider from crossing the label on mobile. */
@media (max-width: 640px) {
  body.about-page .about-company-section__content > .about-page-eyebrow--about {
    display: flex !important;
    width: fit-content !important;
    min-height: 0 !important;
    margin: 0 auto -20px !important;
    padding: 0 8px !important;
    line-height: 1.15 !important;
    text-align: center !important;
  }

  body.about-page .about-company-section__content > .about-page-divider--about {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    display: block !important;
    width: 160px !important;
    margin: 0 auto 26px !important;
  }
}


/* Homepage ABOUT US eyebrow: fully centered on mobile. */
@media (max-width: 650px) {
  body .about-security .about-security__eyebrow,
  body .about-security .global-security-badge {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
  }

  body .about-security .global-security-badge-divider {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }
}

/* Homepage MORE ABOUT US button: center on mobile only. */
@media (max-width: 650px) {
  body .about-security .about-security__button {
    display: flex !important;
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* Homepage WHY US eyebrow: center label + divider on mobile only. */
@media (max-width: 640px) {
  body .why-security__content {
    text-align: left;
  }

  body .why-security__badge {
    display: flex !important;
    
   
    
    justify-content: center !important;
    text-align: center !important;
            margin-left: 80px;
  }

  body .why-security__border-image {
    display: block !important;
    margin-left: 120px !important;
    
    transform: none !important;
  }
}

/* Center journey CTA buttons against the full mobile section width. */
@media (max-width: 640px) {
  body .journey-cta,
  body .journey-cta--center {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body .journey-cta .btn {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Homepage capabilities CONTACT US: center against the actual mobile viewport. */
@media (max-width: 640px) {
  body .case-studies-security .journey-cta,
  body .case-studies-security .journey-cta--center {
    position: relative !important;
    left: 50% !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateX(-50%) !important;
    display: flex !important;
    justify-content: center !important;
  }

  body .case-studies-security .journey-cta .btn {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* Enterprise Hardware FAQ: center the mobile intro block. */
@media (max-width: 700px) {
  body.service-one-page .hardware-faq--network .hardware-faq__intro {
    justify-items: center !important;
    text-align: center !important;
    padding-top:60px;
  }

  body.service-one-page .hardware-faq--network .hardware-faq__intro .hardware-section-heading {
    text-align: center !important;
  }

  body.service-one-page .hardware-faq--network .hardware-section-heading .section-eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    justify-items: center !important;
    align-items: center !important;
    text-align: center !important;
  }

  body.service-one-page .hardware-faq--network .hardware-section-heading .section-eyebrow__text {
    width: 100% !important;
    text-align: center !important;
  }

  body.service-one-page .hardware-faq--network .hardware-section-heading .section-eyebrow__border {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.service-one-page .hardware-faq--network .hardware-section-heading h2 {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.service-one-page .hardware-faq--network .hardware-faq__heading-image {
    justify-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Network Infrastructure delivery process: match Enterprise Hardware mobile layout. */
@media (max-width: 700px) {
  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 42px 0 0 !important;
    padding: 0 !important;
    gap: 38px !important;
  }

  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps li,
  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps li:last-child {
    display: grid !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 26px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    justify-self: stretch !important;
    grid-column: auto !important;
  }

  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps li::after {
    display: none !important;
  }

  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps li > b {
    width: 82px !important;
    height: 82px !important;
    margin: 0 !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    align-self: start !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }

  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps li > div {
    min-width: 0 !important;
    width: 100% !important;
    padding-top: 2px !important;
  }

  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps h3 {
    width: 100% !important;
    margin: 0 0 14px !important;
    font-size: 22px !important;
    line-height: 1.15 !important;
    text-align: left !important;
    white-space: normal !important;
  }

  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps p {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    text-align: left !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

@media (max-width: 420px) {
  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps {
    gap: 34px !important;
  }

  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps li,
  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps li:last-child {
    grid-template-columns: 76px minmax(0, 1fr) !important;
    column-gap: 22px !important;
  }

  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps li > b {
    width: 76px !important;
    height: 76px !important;
  }

  body.service-two-page:not(.service-three-page) .hardware-process__steps.network-process-steps h3 {
    font-size: 20px !important;
  }
}

/* Network Infrastructure hero: mobile-only title fit and centering. */
@media (max-width: 640px) {
  body.service-two-page:not(.service-three-page) .service-one-hero__inner {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-top: 24px !important;
    text-align: center !important;
  }

  body.service-two-page:not(.service-three-page) .service-one-hero__title {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 22px !important;
    padding: 0 !important;
    font-size: clamp(31px, 9vw, 43px) !important;
    line-height: 1.03 !important;
    letter-spacing: -0.025em !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: center !important;
  }

  body.service-two-page:not(.service-three-page) .service-one-hero__breadcrumb {
    width: 100% !important;
    max-width: 100% !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 10px 12px !important;
    text-align: center !important;
  }
}

@media (max-width: 400px) {
  body.service-two-page:not(.service-three-page) .service-one-hero__title {
    font-size: clamp(29px, 8.5vw, 36px) !important;
  }

  body.service-two-page:not(.service-three-page) .service-one-hero__breadcrumb {
    font-size: 10px !important;
  }
}


/* Network Infrastructure overview: center the key heading and lead line on mobile. */
@media (max-width: 700px) {
  body.service-two-page .hardware-service__intro-copy > h2 {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.service-two-page .hardware-service__intro-copy > p:first-of-type {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}


/* Network Infrastructure intro: center main heading + lead text on mobile. */
@media (max-width: 700px) {
  body.service-two-page .hardware-service__intro-copy {
    text-align: center !important;
  }

  body.service-two-page .hardware-service__intro-copy > h2 {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.service-two-page .hardware-service__intro-copy > p:first-of-type {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}


/* Cybersecurity intro: center main heading on mobile only. */
@media (max-width: 700px) {
  body.service-three-page .hardware-service__intro-copy > h2 {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.service-three-page .hardware-service__intro-copy > h2 span {
    display: inline !important;
  }
}

/* SAN Storage intro: center main heading on mobile only. */
@media (max-width: 700px) {
  body.service-four-page .hardware-service__intro-copy > h2 {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.service-four-page .hardware-service__intro-copy > h2 span {
    display: inline !important;
  }
}

/* Access Control & CCTV intro: center main heading on mobile only. */
@media (max-width: 700px) {
  body.access-control-page .hardware-service__intro-copy > h2 {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.access-control-page .hardware-service__intro-copy > h2 span {
    display: inline !important;
  }
}


/* FAQ Help Centre intro: center eyebrow + main heading on mobile only. */
@media (max-width: 600px) {
  body.faq-page .faq-introduction__content {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
   
  }

  body.faq-page .faq-introduction__eyebrow {
   
    margin-right: auto !important;
    justify-content: center !important;
    text-align: center !important;
     margin-left: 200px;
  }

  body.faq-page .faq-introduction__divider {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.faq-page .faq-introduction h2 {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.faq-page .faq-introduction h2 span {
    display: inline !important;
  }
}

/* FAQ COMMON QUESTIONS eyebrow: center on mobile only. */
@media (max-width: 640px) {
  body.faq-page .faq-answers__badge,
  body.faq-page .faq-answers__eyebrow {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    text-align: center !important;
    transform: none !important;
  }

  body.faq-page .faq-answers__divider {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }
}


/* Homepage mobile: remove the dark strip below the stats card. */
@media (max-width: 650px) {
  body .cyber-hero {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  body .cyber-hero .hero-content {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  body .cyber-hero .hero-stats {
    margin-bottom: 0 !important;
  }

  body .cyber-hero + .services-security {
    margin-top: 0 !important;
    padding-top: 44px !important;
  }
}

@media (max-width: 420px) {
  body .cyber-hero + .services-security {
    padding-top: 38px !important;
  }
}

/* Homepage ABOUT US eyebrow: definitive mobile alignment fix. */
@media (max-width: 650px) {
  body .about-security .about-security__badge {
    display: flex !important;
    width: fit-content !important;
    max-width: calc(100% - 32px) !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto 2px !important;
    padding: 0 8px !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1.2 !important;
  }

  body .about-security .about-security__border-image {
    position: static !important;
    display: block !important;
    width: 160px !important;
    max-width: 70% !important;
    height: auto !important;
    margin: 0 auto 28px !important;
    transform: none !important;
  }
}


/* Homepage WHY US copy: center heading and supporting paragraph on mobile only. */
@media (max-width: 640px) {
  body .why-security__content h2,
  body .why-security__content p {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}


/* About page National Distributors: compact mobile layout. */
@media (max-width: 640px) {
  body.about-page .national-distributors {
    padding: 42px 0 38px !important;
  }

  body.about-page .national-distributors__inner {
    width: calc(100% - 32px) !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  body.about-page .national-distributors__title {
    width: 100% !important;
    max-width: 360px !important;
    margin: 0 auto 24px !important;
    font-size: clamp(28px, 8.5vw, 38px) !important;
    line-height: 1.08 !important;
    text-align: center !important;
  }

  body.about-page .national-distributors__logos {
    width: min(100%, 470px) !important;
    height: 92px !important;
    margin: 0 auto !important;
    overflow: hidden !important;
  }

  body.about-page .national-distributors__logos img {
    width: 100% !important;
    height: 92px !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center 49% !important;
  }
}

@media (max-width: 420px) {
  body.about-page .national-distributors {
    padding: 36px 0 32px !important;
  }

  body.about-page .national-distributors__title {
    margin-bottom: 18px !important;
    font-size: clamp(27px, 8.8vw, 34px) !important;
  }

  body.about-page .national-distributors__logos,
  body.about-page .national-distributors__logos img {
    height: 80px !important;
  }
}


/* About Us page intro: center eyebrow, divider, and heading on mobile only. */
@media (max-width: 700px) {
  body.about-page .about-company-section__content {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
  }

  body.about-page .about-company-section__content .global-security-badge {
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.about-page .about-company-section__content > .global-security-badge-divider {
    display: block !important;
    margin: 8px auto 26px !important;
    left: 115px !important;
    
    transform: none !important;
  }

  body.about-page .about-company-section__title {
    width: 100% !important;
    max-width: 540px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    line-height: 1.08 !important;
  }

  body.about-page .about-company-section__title span {
    display: inline !important;
  }
}

@media (max-width: 420px) {
  body.about-page .about-company-section__title {
    font-size: clamp(34px, 10vw, 46px) !important;
  }
}


/* About Us page CONTACT US button: center on mobile only. */
@media (max-width: 700px) {
  body.about-page .about-company-section__button {
    display: inline-flex !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-self: center !important;
    justify-self: center !important;
  }

  body.about-page .about-company-section__actions,
  body.about-page .about-company-section__content {
    text-align: center !important;
  }
}


/* About Us Experience & Capabilities heading: center on mobile only. */
@media (max-width: 700px) {
  body.about-page .experience-capabilities__header h2 {
    width: 100% !important;
    max-width: 540px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    line-height: 1.08 !important;
  }

  body.about-page .experience-capabilities__header h2 span {
    display: inline !important;
  }
}


/* About Us Experience & Capabilities CONTACT US button: center on mobile only. */
@media (max-width: 700px) {
  body.about-page .experience-capabilities__actions {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
  }

  body.about-page .experience-capabilities__actions .btn {
    margin-left: auto !important;
    margin-right: auto !important;
    justify-self: center !important;
    align-self: center !important;
  }
}


/* About Us Our Process eyebrow: center on mobile only. */
@media (max-width: 700px) {
  body.about-page .process-section .section-eyebrow,
  body.about-page .about-process .section-eyebrow,
  body.about-page .our-process .section-eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    justify-items: center !important;
    align-items: center !important;
    text-align: center !important;
  }

  body.about-page .process-section .section-eyebrow__text,
  body.about-page .about-process .section-eyebrow__text,
  body.about-page .our-process .section-eyebrow__text {
    width: 100% !important;
    text-align: center !important;
  }

  body.about-page .process-section .section-eyebrow__border,
  body.about-page .about-process .section-eyebrow__border,
  body.about-page .our-process .section-eyebrow__border {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }
}


/* Services page Related Services intro: center copy and add space before cards on mobile. */
@media (max-width: 700px) {
  body.services-page .other-services__top {
    display: block !important;
    padding-top: 54px !important;
    padding-bottom: 0 !important;
    margin-bottom: 42px !important;
    text-align: center !important;
  }

  body.services-page .other-services__intro {
    width: 100% !important;
    max-width: 540px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.services-page .other-services__badge {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.services-page .other-services h2,
  body.services-page .other-services__intro p {
    width: 100% !important;
    max-width: 540px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  body.services-page .other-services__intro p {
    margin-top: 22px !important;
  }

  body.services-page .other-services__grid {
    margin-top: 18px !important;
  }
}


/* Services final CTA: cleaner mobile heading layout. */
@media (max-width: 680px) {
  body.services-page #get-started .cyber-cta__card {
    min-height: 0 !important;
    padding: 46px 18px 42px !important;
  }

  body.services-page #get-started .cyber-cta__content {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    align-items: center !important;
    text-align: center !important;
  }

  body.services-page #services-final-cta-title {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 480px !important;
    margin: 0 auto 22px !important;
    padding: 0 8px !important;
    font-size: clamp(32px, 8.8vw, 42px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.01em !important;
    text-align: center !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.services-page #services-final-cta-title span {
    display: block !important;
    width: 100% !important;
    margin-top: 4px !important;
    text-align: center !important;
  }

  body.services-page #get-started .cyber-cta__content h3 {
    width: 100% !important;
    max-width: 460px !important;
    margin: 0 auto 14px !important;
    padding: 0 6px !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    text-align: center !important;
  }

  body.services-page #get-started .cyber-cta__content p {
    width: 100% !important;
    max-width: 450px !important;
    margin: 0 auto 26px !important;
    padding: 0 6px !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    text-align: center !important;
  }
}

@media (max-width: 420px) {
  body.services-page #services-final-cta-title {
    max-width: 350px !important;
    font-size: clamp(29px, 9vw, 35px) !important;
  }

  body.services-page #get-started .cyber-cta__content h3 {
    font-size: 16px !important;
  }
}


/* SAN Storage mobile: remove the white gap between adjacent dark sections. */
@media (max-width: 700px) {
  body.service-four-page .hardware-service__partners,
  body.service-four-page .hardware-service__partners + section,
  body.service-four-page .hardware-service__partners + .service-one-process,
  body.service-four-page .service-one-process {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  body.service-four-page .hardware-service__partners {
    padding-bottom: 0 !important;
  }

  body.service-four-page .service-one-process {
    padding-top: 52px !important;
  }

  body.service-four-page main > section {
    border-top: 0 !important;
  }
}


/* Service pages: center the "INDUSTRIES WE SERVE" eyebrow on mobile only. */
@media (max-width: 700px) {
  body .hardware-industries .section-eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    justify-items: center !important;
    align-items: center !important;
    text-align: center !important;
  }

  body .hardware-industries .section-eyebrow__text {
    width: 100% !important;
    text-align: center !important;
  }

  body .hardware-industries .section-eyebrow__border {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }
}

/* Access Control & CCTV mobile: remove white seam between distributors and included section. */
@media (max-width: 700px) {
  body.access-control-page .customers-served--service-one {
    position: relative !important;
    z-index: 1 !important;
    margin-bottom: 0 !important;
    padding-bottom: 24px !important;
  }

  body.access-control-page .customers-served--service-one + .hardware-included {
    position: relative !important;
    z-index: 2 !important;
    margin-top: -100px !important;
    padding-top: 128px !important;
    background: #1B2632 !important;
  }
}

/* ================================================================
   HOMEPAGE MOBILE HERO -> STATS -> OUR SERVICES FLOW
   Keep desktop unchanged. Prevent the stats card from sliding under
   the CTA buttons and keep all three statistics visible on phones.
   ================================================================ */
@media (max-width: 700px) {
  body .cyber-hero + .services-security {
    margin-top: 0 !important;
    padding: 28px 16px 72px !important;
  }

  body .services-security__inner {
    margin-top: 0 !important;
  }

  body .services-security .hero-stats {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: min(88%, 430px) !important;
    max-width: 430px !important;
    margin: 0 auto 46px !important;
    padding: 16px 18px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    border-radius: 20px !important;
    box-sizing: border-box !important;
  }

  body .services-security .hero-stats .stat-item {
    display: grid !important;
    grid-template-columns: 88px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body .services-security .hero-stats .stat-number {
    min-width: 0 !important;
    font-size: 30px !important;
    line-height: 1 !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  body .services-security .hero-stats .stat-label {
    min-width: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    text-align: left !important;
    white-space: normal !important;
  }

  body .services-security__badge {
    margin-top: 0 !important;
  }
}

@media (max-width: 420px) {
  body .cyber-hero + .services-security {
    padding-top: 24px !important;
  }

  body .services-security .hero-stats {
    width: min(92%, 360px) !important;
    padding: 14px 14px !important;
    gap: 11px !important;
    margin-bottom: 42px !important;
  }

  body .services-security .hero-stats .stat-item {
    grid-template-columns: 78px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body .services-security .hero-stats .stat-number {
    font-size: 27px !important;
  }

  body .services-security .hero-stats .stat-label {
    font-size: 13px !important;
  }
}

/* SERVICES PAGE — mobile-only eyebrow centering. Desktop/PC unchanged. */
@media (max-width: 700px) {
  /* OUR PROCESS */
  body.services-page .service-offer-review__eyebrow {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.services-page .service-offer-review__eyebrow > .service-offer-review__eyebrow-text.global-security-badge,
  body.services-page .service-offer-review__eyebrow > .service-offer-review__eyebrow-text {
    width: fit-content !important;
    margin: 0 auto 35px !important;
    transform: none !important;
    text-align: center !important;
  }

  body.services-page .service-offer-review__eyebrow > .service-offer-review__eyebrow-divider,
  body.services-page .service-offer-review__eyebrow > .global-security-badge-divider {
    display: block !important;
    margin: -47px auto 30px !important;
    transform: none !important;
  }

  /* RELATED SERVICES */
  body.services-page .other-services__intro {
    text-align: center !important;
  }

  body.services-page .other-services__intro > .other-services__badge.global-security-badge,
  body.services-page .other-services__intro > .other-services__badge {
    display: flex !important;
    width: fit-content !important;
    margin: 0 auto 35px !important;
    justify-content: center !important;
    text-align: center !important;
    transform: none !important;
  }

  body.services-page .other-services__intro > .other-services__badge + .global-security-badge-divider {
    display: block !important;
    margin: -47px auto 30px !important;
    transform: none !important;
  }
}

/* Final mobile cascade: keep desktop unchanged and normalise every public page. */
@media (max-width: 700px) {
  html, body { width: 100%; max-width: 100%; overflow-x: clip; }
  *, *::before, *::after { box-sizing: border-box; }
  img, video, svg { max-width: 100%; }

  body .secure-header__inner {
    width: calc(100% - 32px) !important;
    min-height: 68px !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 16px !important;
  }
  body .secure-header__brand-image { width: auto !important; height: 58px !important; max-width: 190px !important; }
  body .secure-header__cta { display: none !important; }
  body .menu-toggle { width: 44px; min-width: 44px; height: 44px; }
  body .secure-header__nav { left: 16px !important; right: 16px !important; max-height: calc(100dvh - 92px); overflow-y: auto; }
  body .secure-header__nav a { min-height: 46px; font-size: 12px; }

  body main > section { scroll-margin-top: 76px; }
  body main h1, body main h2 { max-width: 100%; overflow-wrap: normal; word-break: normal; }
  body main p, body main li, body main blockquote { overflow-wrap: anywhere; }
  body .btn, body [class*="__button"], body .journey-cta .btn { min-height: 48px; }

  body .customers-served__badge,
  body .client-testimonials__badge,
  body .case-studies-security__badge,
  body .services-security__badge,
  body .industries-served__badge {
    width: fit-content !important;
    max-width: calc(100% - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
  }
  body .customers-served__badge::after,
  body .client-testimonials__badge::after,
  body .case-studies-security__badge::after { width: min(180px, 70vw) !important; }

  body .cyber-hero .hero-content { padding: 24px 18px 72px !important; }
  body .cyber-hero .copy-column { width: 100% !important; margin-top: 0 !important; }
  body .cyber-hero .eyebrow { margin-top: 28px !important; }
  body .cyber-hero .copy-column h1 { margin-top: 28px !important; font-size: clamp(36px, 10.5vw, 48px) !important; line-height: 1.05 !important; }
  body .cyber-hero .copy-column p { font-size: 15px !important; line-height: 1.65 !important; }
  body .cyber-hero .hero-actions { width: 100%; gap: 12px; }
  body .cyber-hero .hero-actions .btn { width: min(100%, 360px); }
  body .cyber-hero + .services-security { margin-top: 0 !important; padding: 32px 16px 68px !important; }
  body .services-security h2 { margin-left: 0 !important; font-size: clamp(32px, 9vw, 42px) !important; line-height: 1.08; text-align: center; }
  body .services-security__intro { text-align: center; }
  body .services-security .hero-stats { width: 100% !important; max-width: 430px !important; margin: 0 auto 42px !important; }

  body .about-security, body .why-security, body .industries-served,
  body .case-studies-security, body .customers-served { padding-left: 18px !important; padding-right: 18px !important; }
  body .industries-served__visual,
  body .customers-served__distribution-banner img,
  body .client-testimonials { margin-top: -70px !important; }
  body .industries-served__visual { min-height: 250px !important;  }
  body .industries-served__eyebrow { width: 100% !important; margin-left: 0 !important; text-align: center; }
  body .industries-served__border-image { margin-left: auto !important; margin-right: auto !important; }
  body .industries-served__header { text-align: center; }
  body .case-studies-security__header br { display: none; }
  body .client-testimonials { padding: 54px 18px 82px !important; }
  body .client-testimonial blockquote { font-size: clamp(17px, 4.7vw, 20px) !important; line-height: 1.55; }
  body .client-testimonials__quote { font-size: 110px !important; opacity: .25; }

  body.about-page .about-page-hero, body.about-page .about-company-section,
  body.about-page .mvp-section, body.about-page .national-distributors,
  body.about-page .core-values, body.about-page .experience-capabilities,
  body.about-page .team-section { margin-top: 0 !important; margin-bottom: 0 !important; }
  body.about-page .core-values__gallery { margin-top: 0 !important; }

  body.services-page main > section, body.service-one-page main > section { margin-top: 1 !important; margin-bottom: 0 !important; }
  body.about-page main h1, body.about-page main h2,
  body.services-page main h1, body.services-page main h2,
  body.service-one-page main h1, body.service-one-page main h2,
  body.contact-us-page main h1, body.contact-us-page main h2,
  body.faq-page main h1, body.faq-page main h2,
  body.legal-page main h1, body.legal-page main h2,
  body main .grow-together h1, body main .grow-together h2 {
    font-size: clamp(31px, 8.8vw, 42px) !important;
    line-height: 1.1 !important;
  }
  body.services-page main h2, body.service-one-page main h2 { text-align: center; }
  body.services-page main h2 br, body.service-one-page main h2 br { display: none; }
  body.services-page .section-eyebrow, body.service-one-page .section-eyebrow,
  body.service-one-page .hardware-industries .section-eyebrow {
    width: 100% !important; margin-left: auto !important; margin-right: auto !important;
    justify-content: center !important; text-align: center !important;
  }
  body.service-one-page .hardware-service__inner,
  body.service-one-page .hardware-included__inner,
  body.service-one-page .hardware-process__inner,
  body.service-one-page .hardware-industries__inner,
  body.service-one-page .hardware-faq__inner,
  body.service-one-page .hardware-related__inner,
  body.contact-us-page .contact-connect__inner,
  body.contact-us-page .contact-map__inner,
  body.faq-page .faq-introduction__inner,
  body.faq-page .faq-answers__inner,
  body.legal-page .legal-content__inner,
  body .grow-together__inner {
    width: calc(100% - 32px) !important;
    max-width: 560px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.access-control-page .customers-served--service-one + .hardware-included { margin-top: 0 !important; padding-top: 64px !important; }
  body.service-four-page .hardware-service__partners, body.service-four-page .service-one-process { margin-top: 0 !important; margin-bottom: 0 !important; }
  body.faq-page .faq-question, body.faq-page [class*="accordion"] button { min-height: 52px; }
  body.legal-page .legal-content, body.legal-page .legal-section { padding-left: 0 !important; padding-right: 0 !important; }

  body .cyber-cta { margin-top: 0 !important;  }
  body .cyber-cta .cyber-cta__card { min-height: 0 !important; }
  body .cyber-cta .cyber-cta__content { width: 100%; padding: 52px 18px !important; text-align: center; }
  body .cyber-cta .cyber-cta__content h2 { font-size: clamp(30px, 8.5vw, 40px) !important; }
  body .cyber-cta .cyber-cta__actions { width: 100%; flex-direction: column; align-items: center; gap: 12px; }
  body .cyber-cta .cyber-cta__button { width: min(100%, 360px); justify-content: center; }

  body .secure-footer { padding: 48px 16px 36px !important; }
  body .secure-footer__top { gap: 32px !important; }
  body .secure-footer__brand, body .secure-footer__links,
  body .secure-footer__contact-column { width: 100%; text-align: center; align-items: center; }
  body .secure-footer__brand-image { width: auto !important; height: 112px !important; max-width: 220px !important; margin: 0 auto; }
  body .secure-footer__brand > p { max-width: 480px; margin-left: auto; margin-right: auto; font-size: 16px; }
  body .secure-footer__socials { justify-content: center; }
  body .secure-footer__contacts, body .secure-footer__contact { width: 100%; min-width: 0; }
  body .secure-footer__contact { text-align: left; }
  body .secure-footer__contact span:last-child, body .secure-footer__contact strong { width: auto; min-width: 0; overflow-wrap: anywhere; }
}

@media (max-width: 420px) {
  body .cyber-hero .copy-column h1 { font-size: clamp(33px, 10vw, 40px) !important; }
  body .services-security .hero-stats .stat-item { grid-template-columns: 72px minmax(0, 1fr) !important; }
  body .services-security .hero-stats .stat-number { font-size: 25px !important; }
  body .services-security .hero-stats .stat-label { font-size: 13px !important; }
  body .secure-footer__brand-image { height: 96px !important; }
}

@media (max-width: 700px) {
  body .contact-connect__inner,
  body .contact-map__inner {
    width: calc(100% - 32px) !important;
    max-width: 560px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body .contact-page-hero h1,
  body .contact-connect h2,
  body .contact-map h2 {
    max-width: 100% !important;
    font-size: clamp(31px, 8.8vw, 42px) !important;
    line-height: 1.1 !important;
  }
  body .contact-connect__form,
  body .contact-connect__grid { grid-template-columns: 1fr !important; }
}

/* Homepage WHY US eyebrow: remove legacy fixed offsets on phones. */
@media (max-width: 640px) {
  body .why-security__inner {
    gap: 24px !important;
    padding-top: 48px !important;
  }

  body .why-security__badge {
    display: flex !important;
    width: fit-content !important;
    max-width: calc(100% - 32px) !important;
    margin: 0 auto 30px !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body .why-security__border-image {
    display: block !important;
    width: 160px !important;
    height: auto !important;
    margin: -46px auto 12px !important;
    transform: none !important;
  }

  body .why-security__content h2 {
    margin: 16px auto 22px !important;
  }

  body .why-security-card h3 {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}

/* Testimonials eyebrow: centre the complete label group on mobile. */
@media (max-width: 700px) {
  body .client-testimonials__label-wrap {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center !important;
  }

  body .client-testimonials__badge {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* Services page OUR SERVICES eyebrow: centre label and ornament on mobile. */
@media (max-width: 700px) {
  body.services-page .services-catalog__eyebrow {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.services-page .services-catalog__eyebrow > .global-security-badge {
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
    text-align: center !important;
  }

  body.services-page .services-catalog__eyebrow > .global-security-badge-divider {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }
}

/* FAQ HELP CENTRE eyebrow: centre text and divider as one mobile group. */
@media (max-width: 640px) {
  html body.faq-page .faq-introduction__content {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  html body.faq-page .faq-introduction__eyebrow,
  html body.faq-page .faq-introduction__divider {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    align-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }

  html body.faq-page .faq-introduction__eyebrow {
    width: fit-content !important;
    justify-content: center !important;
    text-align: center !important;
  }

  html body.faq-page .faq-introduction__divider {
    display: block !important;
    width: 150px !important;
    height: auto !important;
  }

  html body.faq-page .faq-introduction__content > h2,
  html body.faq-page .faq-introduction__content > p {
    width: 100% !important;
  }
}

/* FAQ COMMON QUESTIONS eyebrow: centre text and divider on mobile. */
@media (max-width: 640px) {
  html body.faq-page .faq-answers__intro {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }

  html body.faq-page .faq-answers__badge,
  html body.faq-page .faq-answers__eyebrow,
  html body.faq-page .faq-answers__divider {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    align-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }

  html body.faq-page .faq-answers__badge,
  html body.faq-page .faq-answers__eyebrow {
    width: fit-content !important;
    justify-content: center !important;
    text-align: center !important;
  }

  html body.faq-page .faq-answers__divider {
    display: block !important;
    width: 150px !important;
    height: auto !important;
  }

  html body.faq-page .faq-answers__intro > h2,
  html body.faq-page .faq-answers__intro > p {
    width: 100% !important;
  }
}

/* Service highlight cards: centre their content on mobile. */
@media (max-width: 700px) {
  body.service-one-page .hardware-service__highlights li {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    text-align: center !important;
  }

  body.service-one-page .hardware-service__highlights li::before {
    display: none !important;
  }

  body.service-one-page .hardware-service__highlights strong,
  body.service-one-page .hardware-service__highlights span {
    width: 100% !important;
    text-align: center !important;
  }
}

/* Network Infrastructure intro: use more horizontal space on phones. */
@media (max-width: 700px) {
  body.network-infrastructure-page .network-benefits-intro {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  body.network-infrastructure-page .network-benefits-intro__inner {
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.network-infrastructure-page #network-benefits-title,
  body.network-infrastructure-page #network-benefits-title + p {
    width: 100% !important;
    max-width: none !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
}

/* Network delivery heading: preserve the intended mobile line break. */
@media (max-width: 700px) {
  body.network-infrastructure-page #hardware-process-title br {
    display: block !important;
  }

  body.network-infrastructure-page #hardware-process-title > span {
    display: block !important;
    width: 100% !important;
    margin-top: 4px !important;
    font-size: inherit !important;
    line-height: inherit !important;
    text-align: center !important;
  }
}

/* Access Control process heading: match SITE SECURITY to the lead line on mobile. */
@media (max-width: 700px) {
  body.access-control-page #hardware-process-title > span {
    font-size: inherit !important;
    line-height: inherit !important;
  }
}

/* All service FAQs: align expanded answers with their questions. */
body.service-one-page .hardware-faq__list details > p {
  box-sizing: border-box;
  width: 100%;
  margin: -5px 0 0 !important;
  padding: 0 44px 24px 23px !important;
}

/* FAQ page active question and answer block. */
html body.faq-page .faq-answers .faq-item.is-open {
  background: #1D1E1C !important;
}

/* Network Infrastructure distributors: prevent mobile heading/logo overlap. */
@media (max-width: 700px) {
  body.network-infrastructure-page .customers-served--service-one .customers-served__distribution-banner {
    width: 100% !important;
    max-width: 520px !important;
    height: auto !important;
    margin: 48px auto 24px !important;
    overflow: visible !important;
  }

  body.network-infrastructure-page .customers-served--service-one .customers-served__distribution-heading {
    width: 100% !important;
    margin: 0 auto 24px !important;
    text-align: center !important;
  }

  body.network-infrastructure-page .customers-served--service-one .customers-served__distribution-heading h2 {
    width: 100% !important;
    margin: 0 auto !important;
    font-size: clamp(30px, 9vw, 40px) !important;
    line-height: 1.08 !important;
    text-align: center !important;
  }

  body.network-infrastructure-page .customers-served--service-one .customers-served__distribution-banner > img {
    display: block !important;
    width: 100% !important;
    height: 120px !important;
    max-height: 120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center 49% !important;
  }
}

/* Cybersecurity process heading: match the highlighted line on mobile. */
@media (max-width: 700px) {
  body.service-three-page #hardware-process-title > span {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: inherit !important;
    line-height: inherit !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: center !important;
  }
}

/* SAN Storage process heading: match the highlighted line on mobile. */
@media (max-width: 700px) {
  body.service-four-page #hardware-process-title > span {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: inherit !important;
    line-height: inherit !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: center !important;
  }
}

/* Contact live map: span the full viewport on desktop and mobile. */
body .contact-map,
body .contact-map__inner,
body .contact-map__frame {
  width: 100% !important;
  max-width: none !important;
}

body .contact-map__inner {
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-radius: 0 !important;
}

@media (max-width: 700px) {
  body.service-one-page .hardware-faq__list details > p {
    padding-left: 20px !important;
    padding-right: 20px !important;
    padding-bottom: 22px !important;
  }
}

/* Services page typography alignment: keep this final so older page-specific
   declarations cannot reduce the text again. */
body.services-page :is(
  .services-catalog__intro > p,
  .services-catalog__card p,
  .network-overview__intro p,
  .network-overview__card p,
  .network-overview__reasons li span,
  .service-offer-review__offer > p,
  .service-offer-review blockquote,
  .service-offer-review__card p,
  .other-services__intro p,
  .other-services__body p
) {
  font-size: 18px;
  line-height: 1.65;
}

body.services-page :is(
  .services-catalog__card h3,
  .network-overview__card h3,
  .network-overview__reasons li strong,
  .service-offer-review__card h3,
  .other-services__body h3
) {
  font-size: 22px;
  line-height: 1.28;
  overflow-wrap: break-word;
}

body.services-page .services-capabilities__grid li {
  font-size: 18px;
}

body.services-page :is(
  .services-catalog__card,
  .network-overview__reasons li,
  .other-services__card
) {
  height: auto;
  min-height: 260px;
  padding: 28px;
}

@media (max-width: 980px) {
  body.services-page :is(
    .services-catalog__card,
    .network-overview__reasons li,
    .other-services__card
  ) {
    min-height: 0;
  }
}

@media (max-width: 650px) {
  body.services-page :is(
    .services-catalog__intro > p,
    .services-catalog__card p,
    .network-overview__intro p,
    .network-overview__card p,
    .network-overview__reasons li span,
    .service-offer-review__offer > p,
    .service-offer-review blockquote,
    .service-offer-review__card p,
    .other-services__intro p,
    .other-services__body p
  ) {
    font-size: 17px;
  }

  body.services-page :is(
    .services-catalog__card h3,
    .network-overview__card h3,
    .network-overview__reasons li strong,
    .service-offer-review__card h3,
    .other-services__body h3
  ) {
    font-size: 20px;
  }

  body.services-page .services-capabilities__grid li {
    font-size: 17px;
  }

  body.services-page :is(
    .services-catalog__card,
    .network-overview__reasons li,
    .other-services__card
  ) {
    padding: 22px 20px;
  }
}

/* Services page — Related Services layout. Keep this after legacy overrides. */
body.services-page .other-services__top {
  display: flex !important;
  flex-direction: column;
  align-items: center !important;
  justify-content: flex-start;
  gap: 42px;
  text-align: center !important;
}

body.services-page .other-services__intro {
  width: min(820px, 100%) !important;
  max-width: none !important;
  margin-inline: auto !important;
  text-align: center !important;
}

body.services-page .related-services-gold-eyebrow {
  margin-inline: auto;
  align-items: center;
  text-align: center;
}

body.services-page .other-services__intro :is(h2, p) {
  margin-inline: auto !important;
  text-align: center !important;
}

body.services-page .other-services__grid {
  width: 100%;
  margin: 0 !important;
}

body.services-page .other-services__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

body.services-page .other-services__number {
  width: 100%;
  padding-left: 0;
  border-left: 0;
  text-align: center;
}

body.services-page .other-services__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  text-align: center;
}

body.services-page .other-services__body > div:first-child {
  width: 100%;
}

body.services-page .other-services__body :is(h3, p) {
  max-width: 360px;
  margin-inline: auto;
  text-align: center;
}

body.services-page .other-services__icon {
  flex: 0 0 auto;
  align-self: center;
  margin-inline: auto;
}

@media (max-width: 700px) {
  body.services-page .other-services__top {
    gap: 32px;
  }
}

/* ==========================================================
   SITE-WIDE RESPONSIVE SAFETY LAYER
   Added to keep existing visual design usable on phones,
   tablets, laptops and wide desktop displays.
   ========================================================== */
html {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

img,
picture,
video,
canvas,
svg,
iframe {
  max-width: 100%;
}

img,
picture,
video,
canvas,
svg {
  height: auto;
}

iframe {
  width: 100%;
}

table {
  max-width: 100%;
}

input,
select,
textarea,
button {
  max-width: 100%;
}

/* Prevent flex/grid children with long content from forcing overflow. */
main,
section,
article,
header,
footer,
nav,
main > *,
section > *,
article > *,
[class*="__inner"],
[class*="__content"],
[class*="__grid"],
[class*="__column"],
[class*="__card"] {
  min-width: 0;
}

p,
li,
h1,
h2,
h3,
h4,
h5,
h6,
a,
span,
strong {
  overflow-wrap: break-word;
}

/* Large hero dimensions were designed for desktop; allow them to breathe
   naturally on smaller viewports rather than clipping the content. */
@media (max-width: 1000px) {
  .hero-content {
    height: auto;
  }

  .hero-overlay {
    height: 100%;
  }
}

@media (max-width: 860px) {
  body {
    padding-top: 78px;
  }

  .secure-header,
  .secure-header__inner {
    max-width: 100%;
  }

  .main-nav.open {
    max-height: calc(100dvh - 78px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .main-nav a,
  .main-nav button {
    white-space: normal;
  }
}

@media (max-width: 720px) {
  /* Footer contact blocks contained desktop-only fixed widths. */
  .secure-footer__contact,
  .secure-footer__contact strong,
  .secure-footer__contact-column,
  .secure-footer__newsletter,
  .secure-footer__form {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .secure-footer__form {
    display: flex;
    flex-wrap: wrap;
  }

  .secure-footer__form input {
    flex: 1 1 180px;
  }

  .secure-footer__newsletter img {
    width: min(100%, 360px);
    height: auto;
  }

  /* Keep multi-column content within the viewport. */
  [class*="__grid"],
  [class*="__columns"] {
    max-width: 100%;
  }
}

@media (max-width: 650px) {
  .hero-actions,
  [class*="__actions"] {
    gap: 12px;
  }

  .hero-actions .btn {
    flex: 1 1 160px;
  }

  .hero-stats {
    margin-bottom: 0;
    gap: 20px;
  }

  .stat-item {
    min-width: 0;
  }

  .cyber-title {
    max-width: 95vw;
  }
}

@media (max-width: 480px) {
  body {
    padding-top: 72px;
  }

  .hero-content {
    padding-left: 16px;
    padding-right: 16px;
  }

  .hero-actions {
    align-items: stretch;
  }

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

  .secure-footer__form input,
  .secure-footer__form button {
    width: 100%;
    flex-basis: 100%;
  }
}

@media (max-width: 360px) {
  h1 {
    font-size: clamp(36px, 12vw, 44px);
  }

  .btn {
    padding-inline: 16px;
    letter-spacing: .6px;
  }
}

/* Trusted company carousel: index + About pages */
body .about-partners[data-partner-carousel] {
  width: min(1204px, calc(100% - 48px)) !important;
  
  margin: 72px auto 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
  width: 1520px !important;
}

.about-partners[data-partner-carousel] .about-partners__label {
  margin-bottom: 46px;
}

.about-partners__carousel {
  position: relative;
  display: block;
  width: 100%;
}

.about-partners__viewport {
  width: 100%;
  min-width: 0;
  overflow: hidden;
}

.about-partners[data-partner-carousel] .about-partners__grid {
  display: flex;
  grid-template-columns: none;
  grid-auto-rows: auto;
  justify-content: flex-start;
  gap: 32px;
  width: max-content;
  will-change: transform;
  transform: translate3d(0, 0, 0);
}

.about-partners[data-partner-carousel] .about-partner-card,
.about-partners[data-partner-carousel] .about-partner-card:nth-child(n + 7) {
  display: flex;
  flex: 0 0 auto;
  height: 120px;
  min-width: 0;
}

@media (max-width: 900px) {
  .about-partners[data-partner-carousel] .about-partners__grid { gap: 16px; }
  .about-partners[data-partner-carousel] .about-partner-card,
  .about-partners[data-partner-carousel] .about-partner-card:nth-child(n + 7) {
    height: 110px;
  }
}

@media (max-width: 560px) {
  body .about-partners[data-partner-carousel] {
    width: min(100% - 28px, 1204px) !important;
    margin-top: 56px !important;
  }
  .about-partners[data-partner-carousel] .about-partners__label {
    margin-bottom: 32px;
    font-size: 13px;
  }
  .about-partners[data-partner-carousel] .about-partners__grid { gap: 12px; }
  .about-partners[data-partner-carousel] .about-partner-card,
  .about-partners[data-partner-carousel] .about-partner-card:nth-child(n + 7) {
    height: 105px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .about-partners[data-partner-carousel] .about-partners__grid {
    transform: none !important;
  }
  .about-partner-card { transition: none !important; }
}

