/**
 * Mixin for fluid type.
 * Example usage: @include fluid-type(font-size, 320px, 1600px, 32px, 80px);
 */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
:host {
  display: block;
}
.hy-introduction__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media (min-width: 60rem) {
  .hy-introduction__content.hy-introduction__content--without-image.hy-introduction__content--limit-width {
    width: calc(50% - 16px);
  }
}
.hy-introduction--reversed .hy-introduction__outer-content {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}
@media (min-width: 60rem) {
  .hy-introduction--reversed .hy-introduction__outer-content {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
}
.hy-introduction--with-bg {
  width: auto;
}
@media (min-width: 60rem) {
  .hy-introduction--with-bg {
    padding: 0;
  }
}
.hy-introduction--with-bg__white {
  background: var(--grayscale-white);
}
.hy-introduction--with-bg__white .hy-introduction__content--with-image {
  background: var(--grayscale-white);
}
.hy-introduction--with-bg__white .hy-introduction__title h2,
.hy-introduction--with-bg__white .hy-introduction__description {
  color: var(--grayscale-black);
}
.hy-introduction--with-bg__white .hy-introduction__link {
  background: var(--brand-main-light);
  color: var(--grayscale-white);
}
.hy-introduction--with-bg__white .hy-introduction__link__icon svg {
  fill: var(--grayscale-white);
}
.hy-introduction--with-bg__white .hy-introduction__link:hover {
  background: var(--brand-main-active);
}
.hy-introduction__outer-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media (min-width: 60rem) {
  .hy-introduction__outer-content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 0;
  }
  @supports (gap: 32px) {
    .hy-introduction__outer-content {
      gap: 32px;
    }
  }
}
@media (min-width: 1601px) {
  @supports (gap: 48px) {
    .hy-introduction__outer-content {
      gap: 48px;
    }
  }
}
.hy-introduction__content--without-image {
  width: 100%;
}
@media (min-width: 60rem) {
  .hy-introduction__content--without-image {
    width: 91.46%;
  }
}
@media (min-width: 75.0625rem) {
  .hy-introduction__content--without-image {
    width: 82.89%;
  }
}
@media (min-width: 1601px) {
  .hy-introduction__content--without-image {
    width: 74.2%;
  }
}
@media (min-width: 60rem) {
  .hy-introduction__content--with-image {
    margin: 0;
    padding: 0;
    width: 50%;
  }
}
@media (min-width: 60rem) {
  .hy-introduction__title .hy-heading__container {
    padding-top: 0;
  }
}
.hy-introduction__image {
  width: 100%;
}
@media (min-width: 60rem) {
  .hy-introduction__image {
    width: 50%;
  }
  @supports not (gap: 32px) {
    .hy-introduction__image {
      width: calc(50% - 32px);
    }
  }
}
.hy-introduction__image img,
.hy-introduction__image .hy-image,
.hy-introduction__image .hy-image .hy-image__image-container {
  height: 100% !important;
}
.hy-introduction__description {
  font-size: 0.9375rem;
  line-height: 22px;
  font-weight: 400;
  color: var(--grayscale-black);
  font-family: var(--main-font-family);
  margin-bottom: 24px;
  margin-top: 0;
}
@media (min-width: 30rem) {
  .hy-introduction__description {
    font-size: 1rem;
    line-height: 24px;
  }
}
@media (min-width: 60rem) {
  .hy-introduction__description {
    margin-bottom: 28px;
  }
}
@media (min-width: 1601px) {
  .hy-introduction__description {
    font-size: 1.0625rem;
    line-height: 26px;
  }
}
@media (min-width: 75.0625rem) {
  .hy-introduction__description__large {
    font-size: 1.0625rem;
    line-height: 26px;
    margin-bottom: 28px;
  }
}
.hy-introduction__link {
  font-size: 1rem;
  line-height: 20px;
  letter-spacing: -0.5px;
  background-color: var(--brand-main-light);
  -webkit-box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: var(--grayscale-white);
  cursor: pointer;
  display: inline-block;
  font-family: var(--main-font-family);
  font-weight: 700;
  height: 100%;
  padding: 12px 60px 12px 12px;
  position: relative;
  text-decoration: none;
}
@media (min-width: 30rem) {
  .hy-introduction__link {
    font-size: 1rem;
    line-height: 20px;
    letter-spacing: -0.6px;
    padding: 15px 62px 15px 16px;
  }
}
@media (min-width: 60rem) {
  .hy-introduction__link {
    font-size: 1.125rem;
    line-height: 20px;
  }
}
@media (min-width: 75.0625rem) {
  .hy-introduction__link {
    font-size: 1.25rem;
    line-height: 20px;
    letter-spacing: -0.7px;
    padding: 16px 70px 16px 18px;
  }
}
.hy-introduction__link__icon {
  position: absolute;
  right: 16px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.hy-introduction__link__icon svg {
  fill: var(--grayscale-white);
}