/* Utilities */
.bold {
  font-weight: 600;
}

.bolder {
  font-weight: 800;
  letter-spacing: 0.5px;
}

a.link-hover {
  text-decoration: none;
  transition: all 0.3s ease;
}

a.link-hover:hover {
  text-decoration: underline;
}

#header .header-nav-top .nav > li > a {
  color: var(--primary);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.3s ease-in-out;
}
#header .header-nav-top .nav > li > a:hover {
  text-decoration-color: #fff;
}

#header img {
  width: 250px;
}

/* End Utilities */

/* Global Components */

#footer {
  padding-top: 100px;
  padding-bottom: 100px;
  .flex {
    display: flex;
    flex-wrap: wrap;
  }
  img {
    margin-bottom: 30px;
  }
  a {
    display: block;
    font-weight: 600;
    color: #fff;
    text-decoration: underline;
    text-decoration-color: #fff;
    transition: text-decoration-color 0.3s ease-in-out;
  }
  a:hover {
    text-decoration-color: transparent;
  }
  a {
    display: block;
  }
  .footer-contact {
    h5 {
      text-transform: capitalize;
      font-weight: 700;
    }
    h5:last-of-type {
      margin-top: 30px;
    }
    p {
      color: #fff;
    }
    .phone {
      width: 100%;
    }
  }
}
#who-we-are .secondaryHero,
.team .secondaryHero,
#company .secondaryHero,
#platform .secondaryHero,
#brands .secondaryHero,
#timeline .secondaryHero,
#locations .secondaryHero,
#contact .secondaryHero,
#employee-resources .secondaryHero,
#privacy .secondaryHero,
#terms .secondaryHero,
#lost .secondaryHero {
  display: flex;
  background-image: linear-gradient(
      15deg,
      rgba(8, 59, 92, 1) 0%,
      rgba(8, 59, 92, 0.75) 75%
    ),
    url(../img/bssimg/building.jpg);
  background-blend-mode: multiply;
  background-size: cover;
  background-position: center;
  margin-bottom: 20px;

  h1 {
    margin-bottom: 0;
    padding: 50px 0;
  }
}
/* End Global Components */

/* Homepage */
.hero {
  background-image: linear-gradient(
      15deg,
      rgba(8, 59, 92, 1) 0%,
      rgba(8, 59, 92, 0.25) 75%
    ),
    url(../img/bssimg/building.jpg);
  background-blend-mode: multiply;
  background-size: cover;
  background-position: center;
  height: 600px;

  img {
    display: block;
    width: 80%;
  }

  .center {
    text-align: center;
  }

  .sub-text {
    text-align: center;
    color: #fff;
    font-size: 1.35em;
    font-style: italic;
    font-weight: bold;
    background-color: rgba(8, 59, 92, 0.75);
    display: inline-block;
    padding: 10px 30px;
    margin: 10px auto 20px;
    width: 100%;
  }

  h1 {
    font-size: 2em;
    line-height: 1.15;
    text-align: left;
  }
}

.featured-boxes {
  .box-hover {
    transition: all 0.3s ease;
  }

  .box-hover:hover {
    transform: scale(1.03);
    box-shadow: 0 2px 4px 0px rgba(0, 0, 0, 0.2);
  }

  .box-content {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 130px;
  }
}
/* End Homepage */

/* Who We Are */
#who-we-are {
  .about-images {
    justify-content: space-between;
    margin-bottom: 20px;
    span {
      width: 100%;
      display: block;
    }
    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .center,
    .right-border {
      display: none;
    }
  }
  p,
  ul {
    font-size: 1.15em;
  }
}
/* End Who We Are */

/* Team Page */
.team {
  .team-list {
    justify-content: center;
  }
  .team-wrapper {
    margin-top: 80px;
  }
  .row {
    --bs-gutter-y: 1rem;
  }
  .bio-image {
    max-width: 100%;
    height: auto;
  }
  .bio-info {
    margin: 10px 0;
    text-align: center;
    line-height: 1.3;
    span {
      display: block;
    }
    .name {
      font-size: 1.3em;
      font-weight: 800;
      color: var(--primary);
      margin-bottom: 5px;
    }
    .title {
      font-size: 0.9em;
      font-weight: 800;
      text-transform: uppercase;
    }
    .bio-divider {
      height: 2px;
      width: 50px;
      background-color: var(--blueGray);
      margin: 5px auto;
    }
    img {
      width: 100px;
    }
  }
}
/* End Team Page */

/* Company Pages */
#company {
  a {
    font-weight: 600;
    color: var(--primary);
    text-decoration: underline;
    text-decoration-color: #fff;
    transition: text-decoration-color 0.3s ease-in-out;
  }
  a:hover {
    text-decoration-color: var(--primary);
  }

  .company-info-esc {
    img {
      max-width: 350px;
      width: 300px;
      margin: 30px auto 0;
    }
    .esc-float {
      width: 100%;
      img {
        max-width: none;
      }
    }
  }

  .company-info {
    padding: 0;
    .wistia {
      border: 1px solid var(blueGray);
      width: 100%;
    }
    img {
      max-width: 350px;
      width: 300px;
      margin: 30px auto 0;
    }
  }
  .company-link {
    margin: 40px auto 60px;
    text-align: center;
  }
  .company-link > a {
    border: 1px solid var(--primary);
    background-color: #fff;
    padding: 20px 40px;
    color: var(--primary);
    font-weight: 600;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer !important;
  }
  .company-link > a:hover {
    background-color: var(--primary);
    color: #fff;
  }
}

/* Platform Pages */
#platform {
  .platform-info {
    .platform-img-wrapper {
      width: 100%;
      text-align: center;
    }
    img {
      max-width: 350px;
      width: 250px;
      margin: 30px auto 20px;
    }
  }

  .platform-info.fpc {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .platform-link {
    margin: 40px auto 60px;
    text-align: center;
  }
  .platform-link > a {
    border: 1px solid var(--primary);
    background-color: #fff;
    padding: 20px 40px;
    color: var(--primary);
    font-weight: 600;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer !important;
  }
  .platform-link > a:hover {
    background-color: var(--primary);
    color: #fff;
  }
}

/* Brands */
#brands {
  .brand-flex {
    margin: 20px;
    padding: 40px;
    border: 1px solid var(--lightBlueGray);
    text-align: center;
  }
  .brand-img {
    img {
      max-width: 200px;
      width: 100%;
      height: auto;
      margin-bottom: 30px;
    }
  }
  a {
    color: var(--primary);
    font-weight: 600;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer !important;
    padding-right: 10px;
    margin-top: 10px;
  }
  a:hover {
    margin-right: 10px;
  }
}
/* End Brands */

/* Timeline */
#timeline {
  .timeline.container {
    margin: auto;
    text-align: center;
    float: none;

    h2 {
      font-size: 2em;
      font-weight: 700;
      color: var(--primary);
      line-height: 1.3;
    }

    .timeline-date {
      margin-top: 50px;
      background-color: var(--lighterBlueGray);
    }

    .timeline-text {
      margin: 0;
      padding: 0;
      font-size: 1.1em;
      font-weight: 600;
      line-height: 1.4;
    }
  }
}
/* End Timeline */

/* Locations */
#locations {
  .location-key {
    margin: 40px 40px 0;
    padding-bottom: 5px;
    border-bottom: 1px solid var(--blueGray);
    font-size: 1.2em;
    font-weight: 500;
    display: flex;
    flex-direction: column;
  }
  .locations-wrap {
    display: block;
    padding: 40px;
    .address-wrap {
      border-left: 3px solid var(--blueGray);
      padding-left: 10px;
      margin-bottom: 40px;
    }

    address {
      line-height: 1.4;
      font-size: 1.15em;
      margin-bottom: 0;
    }
  }
}
/* End Locations */

/* Contact Page */
#contact {
  h3 {
    font-size: 1.15em;
    text-transform: capitalize;
    font-weight: 600;
  }
  .phone > h3 {
    margin-top: 20px;
  }
}

/* Employee Resources */
#employee-resources {
  .employee-resources-wrapper {
    margin: 80px auto;
  }
  a {
    color: var(--primary);
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: var(--primary);
    transition: text-decoration-color 0.3s ease-in-out;
  }
  a:hover {
    text-decoration-color: transparent;
  }
  .italic {
    font-style: italic;
  }
}
/* End Employee Resources */

/* Privacy Policy */
#privacy,
#terms {
  .copy {
    margin: 75px auto;
  }

  h2,
  h3 {
    color: var(--primary);
  }

  h2 {
    font-weight: 400;
  }
  h3 {
    font-size: 1.5em;
    font-weight: 400;
    line-height: 1.35;
    text-transform: capitalize;
    margin-bottom: 10px;
    margin-top: 30px;
  }
  li {
    margin-top: 10px;
    margin-left: 20px;
  }
  li:last-child {
    margin-bottom: 20px;
  }
  a {
    color: var(--primary);
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: #fff;
    transition: text-decoration-color 0.3s ease-in-out;
  }
  a:hover {
    text-decoration-color: var(--primary);
  }
  table {
    border-collapse: collapse;
    width: 100%;
  }

  td,
  th {
    border: 1px solid var(--lightBlueGray);
    text-align: left;
    padding: 8px;
  }

  tr:nth-child(even) {
    background-color: var(--lighterBlueGray);
  }
}
/* End Privacy Policy */

/* 404 Page */
#lost {
  .content {
    margin: 100px auto;
    h2 {
      font-size: 5em;
      font-weight: 800;
      letter-spacing: 1px;
      text-align: center;
      color: var(--primary);
    }
    p {
      text-align: center;
      font-size: 1.45em;
    }
    a {
      color: var(--primary);
      font-weight: 600;
      text-decoration: underline;
      text-decoration-color: var(--primary);
      transition: text-decoration-color 0.3s ease-in-out;
    }
    a:hover {
      text-decoration-color: transparent;
    }
  }
}
/* End 404 Page */

/* NEWS */
.news-wrapper {
  margin: 40px auto;
  padding: 0 40px;

  h2 {
    font-weight: 700;
    line-height: 1.25;
    margin: 20px 0 0;
  }

  h2:after {
    content: "";
    display: block;
    margin: 20px 0;
    height: 2px;
    width: 100px;
    background-color: var(--primary);
  }
  h3 {
    text-transform: capitalize;
    line-height: 1.3;
    margin-top: 0;
    font-style: italic;
  }

  h4 {
    margin-top: 35px;
  }
  sub {
    line-height: 0.75;
  }

  a.link-hover {
    color: var(--primary);
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid #fff;
    transition: border 0.3s ease;
  }

  a.link-hover:hover {
    border-bottom: 1px solid var(--primary);
  }
}
/* End NEWS */

/* ________________________MEDIA MIN-WIDTH 992PX_________________________ */
@media screen and (min-width: 992px) {
  /* Homepage */
  .hero {
    img {
      max-width: 462px;
    }
    h1 {
      font-size: 3.05em;
    }
    .center {
      text-align: left;
    }

    .sub-text {
      font-size: 1.95em;
      font-weight: normal;
      margin: 20px auto 10px;
      width: auto;
    }
  }
  /* End Homepage */

  /* About Us */
  #who-we-are {
    .secondaryHero {
      margin-bottom: 40px;
    }
    .about-images {
      text-align: center;
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between;
      gap: 5px;
      margin-bottom: 40px;
      .center,
      .right-border {
        display: block;
      }
      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        &.left-border {
          border-radius: 50px 0 0 0;
        }
        &.right-border {
          border-radius: 0 0 50px 0;
        }
      }
    }
    ul {
      -moz-column-count: 3;
      -moz-column-gap: 20px;
      -webkit-column-count: 3;
      -webkit-column-gap: 20px;
      column-count: 3;
      column-gap: 20px;
    }
  }
  /* End About Us */

  /* Team */

  /* End Team */

  /* Company */
  #company {
    .secondaryHero {
      margin-bottom: 60px;
      h1 {
        letter-spacing: 1px;
      }
    }
    .company-info {
      .wistia {
        width: 60%;
        margin-bottom: 20px;
      }
      img {
        margin: 0;
      }
      .company-link {
        margin: 60px auto 80px;
      }
    }
    .company-info-esc {
      img {
        max-width: 450px;
        width: 300px;
        margin: 30px auto 0 30px;
      }
      .esc-float {
        width: auto;
        img {
          max-width: 5000px;
        }
      }
    }
  }
  /* End Company */

  /* Platform */
  #platform {
    .secondaryHero {
      margin-bottom: 50px;
    }
    .platform-info {
      .platform-img-wrapper {
        width: 30%;
        text-align: center;
        &.fpn {
          width: 40%;
        }
      }
      img {
        width: 250px;
        margin: 30px auto 0;
      }
      .fpn > img {
        width: 375px;
      }
    }
    .bss {
      margin: 40px 30px;
    }
    .bss img {
      width: 300px;
      margin-top: 0;
    }
    .platform-info.fpc {
      flex-wrap: nowrap;
      align-items: center;
    }
    .platform-link {
      margin: 60px auto 80px;
    }
  }
  /* End Platform */

  /* Brands */
  #brands {
    .brand-wrap {
      margin: 60px auto;
    }
    .brand-flex {
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      width: 100%;
    }
    .brand-img {
      padding-right: 40px;
      border-right: 1px solid var(--lightBlueGray);
      img {
        width: 225px;
        max-width: none;
        margin-bottom: 0;
      }
    }
    .brand-text {
      text-align: left;
      margin: 20px;
      padding-left: 30px;
    }
  }
  /* End Brands */

  /* Timeline */
  #timeline {
    .secondaryHero {
      margin-bottom: 60px;
    }
    .timeline.container {
      margin: 0 auto 200px;
      h2 {
        font-size: 3.5em;
        max-width: 700px;
        line-height: 1.3;
        margin: 0 auto 50px;
      }

      .timeline-date {
        margin-top: 50px;
        background-color: var(--lighterBlueGray);
      }

      .timeline-text {
        margin: 0;
        padding: 0;
        font-size: 1.1em;
        font-weight: 600;
        line-height: 1.4;
      }
    }
  }
  /* End Timeline */

  /* Locations */
  #locations {
    .secondaryHero {
      margin-bottom: 60px;
    }
    .location-key {
      margin: 50px 0;
      flex-direction: row;
      span {
        margin: 0 20px;
      }
    }
    .locations-wrap {
      display: flex;
      padding: 0;
      margin: 40px auto;
      justify-content: space-between;
      .col1,
      .col2,
      .col3 {
        width: 33%;
      }
      .col1,
      .col2 {
        margin-right: 100px;
      }
    }
  }
  /* End Locations */

  #footer {
    padding-top: 50px;
    padding-bottom: 50px;
    .footer-wrapper {
      justify-content: space-between;
    }
    img {
      margin-bottom: 0;
    }
    .footer-info {
      width: 60%;
      padding-right: 50px;
    }
    .footer-copyright {
      width: 100%;
    }
    .footer-contact {
      width: 40%;
      flex-wrap: nowrap;

      h5:last-of-type {
        margin-top: 0;
      }
      .address {
        padding-right: 20px;
      }
      .phone {
        width: auto;
        padding-left: 20px;
      }
    }
  }
}

/* Contact Page */
#contact {
  aside {
    border-right: 1px solid var(--blueGray);
    padding-right: 20px;
    padding-bottom: 100px;
    p {
      font-size: 1.15em;
    }
    a {
      color: var(--primary);
      font-weight: 600;
      text-decoration: underline;
      text-decoration-color: transparent;
      transition: text-decoration-color 0.3s ease-in-out;
    }
    a:hover {
      text-decoration-color: var(--primary);
    }
  }
  .contact-aside {
    padding-right: 40px;
  }
  h2 {
    font-size: 1.75em;
    line-height: 1.35;
  }
  h3 {
    color: #444;
  }
}
/* End Contact Page */

/* 404 Page */
#lost {
  .content {
    h2 {
      font-size: 7em;
      margin-bottom: 60px;
    }
    p {
      font-size: 2.75em;
      line-height: 1.15;
    }
  }
}
/* End 404 Page */

/* NEWS */
.news-wrapper {
  margin: 80px auto;

  h2,
  h3 {
    max-width: 885px;
  }
}
