/**
 * @file
 * Contact Info
 *
 * Styles for Contact Info object.
 */

@use '_helper' as *;

.contact-info {
  &__inner {
    @include swipe($type: "watercolor", $direction: "left", $vertPosOffset: calc(-1 * (100svw * 0.25)));

    padding-bottom: 45px;

    @media screen and (min-width: $break-medium) {
      padding-top: 120px;
      padding-bottom: 80px;
    }

    @media screen and (min-width: $break-large) {
      padding-top: 0;
      padding-bottom: 100px;
    }
  }

  &__content {
    display: flex;
    flex-direction: column;
    max-width: calc($content-max - 58px * 2);
    margin: 0 auto;
  }

  &:last-child {
    margin-bottom: 0;
  }

  &__image {
    margin: 0 0 37px auto;
    width: 158px;
    height: 158px;

    @media screen and (min-width: $break-medium) {
      margin: 0;
      width: 186px;
      height: 186px;
      position: absolute;
      top: 0;
      right: 48px;
    }

    @media screen and (min-width: $break-large) {
      position: relative;
      width: 374px;
      height: 374px;
      right: 0;
      align-self: flex-end;
    }

    img {
      width: 158px;
      height: 158px;
      border-radius: 100%;
      object-fit: cover;

      @media screen and (min-width: $break-medium) {
        width: 186px;
        height: 186px;
      }

      @media screen and (min-width: $break-large) {
        width: 374px;
        height: 374px;
      }
    }
  }

  &__header {
    margin-bottom: 20px;

    @media screen and (min-width: $break-medium) {
      margin-bottom: 30px;
      padding-right: 240px;
    }

    @media screen and (min-width: $break-large) {
      margin-bottom: 40px;
      padding-right: 400px;
    }

    h2 {
      @include h3;
      margin: 0;
      text-transform: none;
      color: $color-black;
    }
  }

  &__main {
    display: flex;
    flex-direction: column;
    gap: 20px;

    @media screen and (min-width: $break-medium) {
      gap: 30px;
    }

    @media screen and (min-width: $break-large) {
      flex-direction: row;
      gap: 40px;
    }
  }

  &__block {
    @media screen and (min-width: $break-large) {
      flex: 0 0 41.3%;
    }
  }

  &__subheader {
    margin-bottom: 20px;

    h3 {
      @include body-large(true);
      margin: 0;
      color: $color-black;
    }
  }

  &__links {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;

    li {
      margin: 0;
      display: flex;
      align-items: center;
      gap: 9px;

      @media screen and (min-width: $break-medium) {
        gap: 10px;
      }

      &::before {
        content: none;
      }

      svg {
        min-width: 30px;
      }

      a {
        color: $color-black;
        word-break: break-word;

        &:hover {
          color: $color-blue-dark;
        }
      }
    }
  }
}