.sw19b-image-card-section {
  padding: 6rem 0 6.5rem 0;
  text-align: center;

  .sw19s-std-wrap {
    padding: 0 1.5rem;
    max-width: 80rem;
  }

  .sw19s-block-title {
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.25;
    margin-bottom: 2rem;
    color: #111;
  }

  .sw19s-block-subtitle {
    font-family: "Roboto Slab", sans-serif;
    font-size: 24px;
    line-height: 1.5;
    color: #444;
    margin-bottom: 3.5rem;
    margin-top: 0;
  }

  .sw32-button {
    margin: 30px;
    position: relative;
    padding: 0.75rem 2.375rem 0.75rem 1rem;
  }

  .sw32-button:before {
    position: absolute;
    content: "";
    width: 20px;
    height: 10px;
    right: 10px;
    top: 38%;
    background: url("data:image/svg+xml,%3Csvg width='17' height='9' viewBox='0 0 17 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.18 8.619a.729.729 0 0 1-.444-.649V5.51H1.652a.733.733 0 0 1-.738-.71.757.757 0 0 1 .738-.738h10.085V1.629a.738.738 0 0 1 1.241-.541l3.448 3.2a.738.738 0 0 1 0 1.082l-3.448 3.2a.784.784 0 0 1-.799.049z' fill='%23292929'/%3E%3C/svg%3E%0A")
      no-repeat;
  }

  .image-container {
    color: #111111;
    text-align: left;
    border-radius: 1.5rem;
    width: 17.75rem;
    border: solid 1px #a0b9b9;
    overflow: hidden;
    position: relative;
    transition: all 0.4s ease;

    &:hover {
      box-shadow: 0 20px 40px 0 #0003;

      a {
        text-decoration: underline;
      }
    }

    .image-card-image {
      display: block;
      height: 17.75rem;
      width: 100%;
      max-width: 100%;
      overflow: hidden;
      object-fit: cover;
      margin: 0 auto;
    }

    .image-container-text {
      padding: 1rem 1rem 1.5rem 1rem;
      text-align: center;
    }

    .title {
      font-size: 24px;
      font-weight: bold;
      line-height: 1.5;
      margin: 0;
    }

    .subtitle {
      font-size: 14px;
      font-weight: 500;
      color: #a1a1a1;
      margin: 5px 0 0 0;
    }

    a.image-link {
      padding-top: 0.5rem;
      margin-bottom: 0.5rem;
      font-size: 16px;
      font-weight: 500;
      text-decoration: none;
      color: #006482;
      display: block;
      border-bottom: 1px solid transparent;
      line-height: 1.25;
      display: inline-block;

      &:hover {
        text-decoration: underline;
      }
    }

    .cta-container {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      color: transparent;
      background-color: transparent;
    }
  }

  .image-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
    margin-bottom: 6rem;
  }

  .select-box {
    position: relative;
    display: none;
    width: 100%;
    max-width: 378px;
    font-family: "Roboto", sans-serif;
    font-size: 22px;
    font-weight: 500;
    color: #006482;
    z-index: 2;
    border-radius: 8px;
    border: solid 1px #a1a1a1;
    margin: 0 auto 2rem;
    text-align: left;

    @media (max-width: 1024px) {
      display: block;
    }

    & .select-box__overlay {
      position: absolute;
      content: "";
      background-color: rgba(0, 0, 0, 0, 0);
      z-index: -1;
    }

    & .select-box__current {
      position: relative;
      box-shadow: 0 15px 30px -10px transparentize(#000, 0.9);
      cursor: pointer;
      outline: none;
      overflow: hidden;

      &.show {
        & ~ .select-box__list {
          opacity: 1;
          animation-name: none;
          pointer-events: all;
          border: 1px solid #dce2e3;

          .select-box__option {
            cursor: pointer;
          }
        }

        & + .select-box__overlay {
          position: fixed;
          content: "";
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          z-index: 0;
        }

        .select-box__icon {
          transform: translateY(-50%) rotate(180deg);
        }
      }
    }

    & .select-box__icon {
      position: absolute;
      top: 50%;
      right: 27px;
      transform: translateY(-50%);
      width: 18.6px;
      opacity: 1;
      fill: #444;
      transition: 0.2s ease;
      pointer-events: none;
    }

    & .select-box__value {
      display: flex;
    }

    & .select-box__input {
      display: none;

      &:checked + .select-box__input-text {
        display: block;
      }
    }

    & .select-box__input-text {
      display: none;
      width: 100%;
      margin: 0;
      padding: 15px 55px 15px 15px;
      background-color: #fff;
      border-radius: 8px;
    }

    & .select-box__list {
      position: absolute;
      width: 100%;
      padding: 0;
      list-style: none;
      opacity: 0;
      border-radius: 8px;
      margin: 8px 0 0 0;
      overflow: hidden;
      pointer-events: none;
      box-shadow: 0 15px 30px -10px transparentize(#000, 0.9);

      li {
        margin-bottom: -1px;
      }
    }

    & .select-box__option {
      display: block;
      padding: 15px;
      background-color: #fff;
      color: #111111;

      &:hover,
      &:focus {
        background-color: #f4f7f7;

        a {
          color: #006482;
        }
      }

      a {
        text-decoration: none;
        color: #111111;
      }
    }

    .active .select-box__option {
      background-color: #fbfbfb;

      a {
        color: #006482;
      }
    }
  }

  @media (max-width: 1024px) {
    padding: 3.5rem 0 4rem 0;

    .image-grid {
      margin-bottom: 2rem;
    }

    .sw19s-block-title {
      font-size: 34px;
      line-height: 1.29;
      margin-bottom: 1rem;
      text-align: left;
    }

    .sw19s-block-subtitle {
      font-size: 20px;
      line-height: 1.5;
      margin-bottom: 2rem;
      text-align: left;
    }

    .image-container {
      display: none;

      &.active {
        display: block;
      }
    }

    .sw32-button {
      margin-top: 0;
    }
  }
}
