:root {
  --header-height: 75px;
}
@font-face {
  font-family: "openSans-Light";
  font-style: normal;
  font-weight: 300;
  src: url("/assets/font/open-sans/OpenSans-Light.woff2") format("woff2");
}
@font-face {
  font-family: "openSans-Regular";
  font-style: normal;
  font-weight: 400;
  src: url("/assets/font/open-sans/OpenSans-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "openSans-SemiBold";
  font-style: normal;
  font-weight: 600;
  src: url("/assets/font/open-sans/OpenSans-SemiBold.woff2") format("woff2");
}
@font-face {
  font-family: "openSans-Bold";
  font-style: normal;
  font-weight: 700;
  src: url("/assets/font/open-sans/OpenSans-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-Thin";
  font-style: normal;
  font-weight: 100;
  src: url("/assets/font/IvyMode/IvyMode-Thin.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-Light";
  font-style: normal;
  font-weight: 300;
  src: url("/assets/font/IvyMode/IvyMode-Light.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-Regular";
  font-style: normal;
  font-weight: 400;
  src: url("/assets/font/IvyMode/IvyMode-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-SemiBold";
  font-style: normal;
  font-weight: 600;
  src: url("/assets/font/IvyMode/IvyMode-SemiBold.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-Bold";
  font-style: normal;
  font-weight: 700;
  src: url("/assets/font/IvyMode/IvyMode-Bold.woff2") format("woff2");
}
.contact-form {
  padding-bottom: 40px;
}
.contact-form__content {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 44px;
  width: 100%;
}
.contact-form__title {
  --font-size: 32px;
  --font-size-rem: 2rem;
  --line-height: 40px;
  --line-height-rem: 2.5rem;
  font-size: var(--font-size-rem);
  line-height: var(--line-height-rem);
}
.contact-form__social {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
.contact-form__social .social {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 68px;
}
.contact-form__social .social__title {
  margin-bottom: 25px;
  color: #285F5E;
  --font-size: 21px;
  --font-size-rem: 1.3125rem;
  --line-height: 27px;
  --line-height-rem: 1.6875rem;
  font-size: var(--font-size-rem);
  line-height: var(--line-height-rem);
  font-family: "IvyMode-Regular";
  font-weight: 400;
}
.contact-form__social .social__item {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin: 0 5px;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  border: 1px solid #fff;
  background-color: #285F5E;
  transition: background-color 0.3s, border 0.3s;
}
.contact-form__social .social__item:hover {
  background-color: transparent;
  border: 1px solid #285F5E;
}
.contact-form__social .social__item:hover img.-light {
  display: none;
}
.contact-form__social .social__item:hover img.-color {
  display: block;
}
.contact-form__social .social__item img.-color {
  display: none;
}
@media only screen and (min-width: 768px) {
  :root {
    --header-height: 80px;
  }
}
@media only screen and (min-width: 1024px) {
  :root {
    --header-height: 101px;
  }
  .contact-form {
    padding-bottom: 0;
  }
  .contact-form__content {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 62px;
  }
  .contact-form__social {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
  }
  .contact-form__social .social {
    margin-bottom: 0;
  }
  .contact-form__social .social__title {
    margin: 0 0 0 25px;
  }
  .contact-form__social .social__item {
    margin: 0 0 0 9px;
  }
}
:root {
  --header-height: 75px;
}
@font-face {
  font-family: "openSans-Light";
  font-style: normal;
  font-weight: 300;
  src: url("/assets/font/open-sans/OpenSans-Light.woff2") format("woff2");
}
@font-face {
  font-family: "openSans-Regular";
  font-style: normal;
  font-weight: 400;
  src: url("/assets/font/open-sans/OpenSans-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "openSans-SemiBold";
  font-style: normal;
  font-weight: 600;
  src: url("/assets/font/open-sans/OpenSans-SemiBold.woff2") format("woff2");
}
@font-face {
  font-family: "openSans-Bold";
  font-style: normal;
  font-weight: 700;
  src: url("/assets/font/open-sans/OpenSans-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-Thin";
  font-style: normal;
  font-weight: 100;
  src: url("/assets/font/IvyMode/IvyMode-Thin.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-Light";
  font-style: normal;
  font-weight: 300;
  src: url("/assets/font/IvyMode/IvyMode-Light.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-Regular";
  font-style: normal;
  font-weight: 400;
  src: url("/assets/font/IvyMode/IvyMode-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-SemiBold";
  font-style: normal;
  font-weight: 600;
  src: url("/assets/font/IvyMode/IvyMode-SemiBold.woff2") format("woff2");
}
@font-face {
  font-family: "IvyMode-Bold";
  font-style: normal;
  font-weight: 700;
  src: url("/assets/font/IvyMode/IvyMode-Bold.woff2") format("woff2");
}
.contact-info {
  padding: 44px 0 44px 0;
}
.contact-info__mail {
  margin: 0 0 54px 0;
  color: #285F5E;
  --font-size: 36px;
  --font-size-rem: 2.25rem;
  --line-height: 42px;
  --line-height-rem: 2.625rem;
  font-size: var(--font-size-rem);
  line-height: var(--line-height-rem);
  font-family: "IvyMode-Regular";
  font-weight: 400;
}
.contact-info .contact-info__items {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 50px;
  margin-bottom: 30px;
  width: 100%;
}
.contact-info .contact-info__item {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  font-style: normal;
}
.contact-info .contact-info__item__title {
  margin-bottom: 16px;
  --font-size: 32px;
  --font-size-rem: 2rem;
  --line-height: 40px;
  --line-height-rem: 2.5rem;
  font-size: var(--font-size-rem);
  line-height: var(--line-height-rem);
}
.contact-info .contact-info__item p {
  color: #285F5E;
  --font-size: 18px;
  --font-size-rem: 1.125rem;
  --line-height: 41px;
  --line-height-rem: 2.5625rem;
  font-size: var(--font-size-rem);
  line-height: var(--line-height-rem);
  font-family: "openSans-Regular";
  font-weight: 400;
}
.contact-info .contact-info__row {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  color: #285F5E;
  --font-size: 18px;
  --font-size-rem: 1.125rem;
  --line-height: 41px;
  --line-height-rem: 2.5625rem;
  font-size: var(--font-size-rem);
  line-height: var(--line-height-rem);
  font-family: "openSans-Regular";
  font-weight: 400;
}
.contact-info .contact-info__key {
  margin-right: 5px;
}
.contact-info .working-hours__items {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  margin-bottom: 56px;
  width: 100%;
}
.contact-info .working-hours__item {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 32px 20px 32px 38px;
  background-color: #285F5E;
}
.contact-info .working-hours__item.-white {
  background-color: #fff;
}
.contact-info .working-hours__item.-white .working-hours__title,
.contact-info .working-hours__item.-white .working-hours__text {
  color: #285F5E;
}
.contact-info .working-hours__title {
  margin-bottom: 16px;
  color: #fff;
  --font-size: 15px;
  --font-size-rem: 0.9375rem;
  --line-height: 23px;
  --line-height-rem: 1.4375rem;
  font-size: var(--font-size-rem);
  line-height: var(--line-height-rem);
  font-family: "IvyMode-Regular";
  font-weight: 400;
}
.contact-info .working-hours__text {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  color: #fff;
  --font-size: 24px;
  --font-size-rem: 1.5rem;
  --line-height: 30px;
  --line-height-rem: 1.875rem;
  font-size: var(--font-size-rem);
  line-height: var(--line-height-rem);
  font-family: "IvyMode-Regular";
  font-weight: 400;
}
.contact-info .working-hours__text span {
  margin-bottom: 10px;
}
.contact-info__map {
  margin-left: -30px;
  width: calc(100% + 60px);
  height: 542px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 768px) {
  :root {
    --header-height: 80px;
  }
  .contact-info .contact-info__items {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 80px;
  }
  .contact-info .working-hours__items {
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 90px;
    height: 85px;
  }
  .contact-info .working-hours__item {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0 38px 0 45px;
  }
  .contact-info .working-hours__title {
    margin-bottom: 0;
  }
  .contact-info .working-hours__text {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
  }
  .contact-info .working-hours__text span {
    margin: 0 0 0 25px;
  }
}
@media only screen and (min-width: 1024px) {
  :root {
    --header-height: 101px;
  }
  .contact-info {
    padding: 86px 0 84px 0;
  }
  .contact-info__mail {
    margin: 0 0 77px 0;
    --font-size: 62px;
    --font-size-rem: 3.875rem;
    --line-height: 70px;
    --line-height-rem: 4.375rem;
    font-size: var(--font-size-rem);
    line-height: var(--line-height-rem);
  }
  .contact-info .contact-info__item:last-child {
    margin: 0 15% 0 auto;
    width: 70%;
  }
  .contact-info .contact-info__item__title {
    --font-size: 32px;
    --font-size-rem: 2rem;
    --line-height: 40px;
    --line-height-rem: 2.5rem;
    font-size: var(--font-size-rem);
    line-height: var(--line-height-rem);
  }
  .contact-info__map {
    width: 100%;
    border-radius: 40px;
  }
}