/**
 * Homepage hero (desktop): copy left, slider right.
 * Hero block centered on the page; both columns vertically centered.
 * Mobile: intro copy first, slider below.
 *
 * Background matches Technology Services hub hero
 * (navy wash over the same circuit-board photo).
 */

body.pcs-home .banner-three-area {
  background: linear-gradient(135deg, #0a1028 0%, #12183d 45%, #0d1433 100%);
}

body.pcs-home .pcs-home-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: url("/assets/home/images/pcs-home-hero-bg.jpg") center 32% / cover no-repeat;
  opacity: 0.4;
}

body.pcs-home .pcs-home-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 16, 40, 0.7) 0%, rgba(10, 16, 40, 0.52) 100%);
}

body.pcs-home .banner-three__container {
  position: relative;
  z-index: 2;
}

body.pcs-home .banner-three__bg,
body.pcs-home .banner-three__shape-left,
body.pcs-home .banner-three__shape-right {
  display: none;
}

@media (max-width: 767.98px) {
  body.pcs-home .banner-three-area .row.align-items-center > .col-md-7 {
    order: 1;
  }

  body.pcs-home .banner-three-area .row.align-items-center > .col-md-5 {
    order: 2;
  }
}

@media (min-width: 992px) {
  body.pcs-home main > .banner-three-area:first-child {
    padding-top: max(
      clamp(108px, 11vh, 152px),
      calc(env(safe-area-inset-top, 0px) + clamp(92px, 9vh, 112px))
    ) !important;
    padding-bottom: clamp(56px, 7vh, 104px) !important;
  }

  body.pcs-home .banner-three__container {
    max-width: min(1280px, calc(100% - 48px));
    padding-inline: clamp(24px, 3vw, 40px);
    margin-inline: auto;
  }

  body.pcs-home .banner-three-area .row.align-items-center {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center !important;
    justify-content: center;
    --bs-gutter-x: clamp(28px, 3.5vw, 52px);
    --bs-gutter-y: 0;
    max-width: min(1180px, 100%);
    margin-inline: auto;
  }

  body.pcs-home .banner-three-area .row.align-items-center > [class*="col-"] {
    flex: 0 0 auto;
    width: auto;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body.pcs-home .banner-three-area .row.align-items-center > .col-md-7 {
    flex: 1 1 0;
    min-width: 0;
    max-width: min(58%, 640px);
  }

  body.pcs-home .banner-three-area .row.align-items-center > .col-md-5 {
    flex: 1 1 0;
    min-width: 0;
    max-width: min(42%, 520px);
  }

  body.pcs-home .banner-three__content {
    margin-top: 0 !important;
    width: 100%;
    max-width: 100%;
    text-align: left;
  }

  body.pcs-home .banner-three__content h4 {
    margin-top: 0 !important;
    margin-inline: 0;
    display: inline-flex;
    text-align: left;
  }

  body.pcs-home .banner-three__content h1 {
    font-size: clamp(2rem, 3.4vw, 3.1rem) !important;
    line-height: 1.12 !important;
  }

  body.pcs-home .banner-three__content p {
    max-width: 62ch;
    margin-inline: 0;
    font-size: clamp(17px, 1.25vw, 19px) !important;
    line-height: 1.65 !important;
  }

  body.pcs-home .banner-three__info {
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: clamp(18px, 2.5vw, 36px);
    margin-top: clamp(20px, 2.5vh, 28px) !important;
  }

  body.pcs-home .banner-three__info .btn-one {
    min-height: 52px;
    padding-inline: clamp(22px, 2.4vw, 34px);
    font-size: clamp(16px, 1.1vw, 18px);
  }

  body.pcs-home .banner-three__video-btn h5 {
    font-size: clamp(16px, 1.1vw, 18px);
  }

  body.pcs-home .banner-three__video-btn .video-btn,
  body.pcs-home .banner-three__video-btn .video-btn a {
    min-width: 48px;
    min-height: 48px;
  }

  body.pcs-home .banner-three-area .pcs-hero-slider {
    width: 100%;
    max-width: 100% !important;
    margin-top: 0 !important;
    margin-inline: auto;
  }

  body.pcs-home .banner-three-area .pcs-hero-btn {
    min-width: 48px;
    min-height: 48px;
  }
}

@media (min-width: 1200px) {
  body.pcs-home .banner-three__container {
    max-width: min(1320px, calc(100% - 56px));
  }

  body.pcs-home .banner-three-area .row.align-items-center {
    max-width: min(1240px, 100%);
  }
}

@media (min-width: 1600px) {
  body.pcs-home .banner-three-area .row.align-items-center {
    max-width: min(1280px, 88vw);
  }

  body.pcs-home .banner-three-area .pcs-hero-slider {
    max-width: 100% !important;
  }
}

@media (min-width: 2560px) {
  body.pcs-home .banner-three__container {
    max-width: min(1360px, 72vw);
  }

  body.pcs-home .banner-three-area .row.align-items-center {
    max-width: min(1280px, 68vw);
  }
}
