a {
  color: var(--link-color);
  border: var(--link-border);
  text-decoration: underline;
}
.highlight-links a {
  background: var(--link-bg);
}
a, .link-inner-text {
  text-decoration: none !important;
  color: currentColor;
  background-image: linear-gradient(to right, currentColor 0%, currentColor 100%);
  background-size: 100% 1px;
  background-repeat: no-repeat;
  background-position: 0 100%;
  padding-bottom: 0.1rem;
  vertical-align: baseline;
  transition: background-size var(--animation-fast);
}
a:focus-visible,
a:hover {
  background-position: 100% 100%;
  background-size: 0 1px;
}
.link, .link-inner-text {
  background-size: 0 1px;
  background-position: 100% 100%;
  color: currentColor;
}
.link-inner {
  color: currentColor;
  background: none;
}
.link:hover,
.link-inner:hover .link-inner-text,
.link:focus-visible,
.link-inner:focus-visible .link-inner-text {
  background-position: 0 100%;
  background-size: 100% 1px;
}
.btn {
  display: inline-block;
  font-family: var(--body-ff);
  font-size: calc(var(--1-rem) * 0.8125);
  padding: 13px 31px;
  letter-spacing: calc(var(--0-ls) + 0.02em);  
  font-weight: 900;
  text-align: var(--text-center);
  background: var(--btn-main-bg);
  color: var(--btn-main-color);
  border: 1px solid var(--btn-main-bg);
  border-radius: 45px;
  cursor: pointer;
  /* min-width: 191px; */
  position: relative;
  /* letter-spacing: calc(var(--0-ls) + 0.01em); */
  text-transform: uppercase;
  overflow: hidden;
}
.btn span {
  line-height: 1;
  pointer-events: none;
  top: 1px;
}
.macos .btn span {
  top: 2px;
}
.btn svg {
  overflow: visible;
}
.btn:hover,
.btn:focus-visible {
  background: var(--5-color);
  border-color: var(--5-color);
}
.btn-secondary {
  color: var(--btn-secondary-color);
  background: var(--btn-secondary-bg);
  border-color: var(--btn-secondary-bg);
}
.btn-secondary:hover,
.btn-secondary:focus-visible {
  color: var(--btn-secondary-bg);
  border-color: var(--btn-secondary-color);
}
.btn-secondary:before {
  background: var(--btn-secondary-color);
}
.btn-third {
  background: var(--5-color);
  border-color: var(--5-color);
}
.btn-third:hover,
.btn-third:focus-visible {
  background: var(--5-color);
  border-color: var(--5-color);
}
.btn-quaternary {
  background: var(--3-color);
  border-color: var(--3-color);
  color: var(--5-color);
}
.btn-simple {
  background: transparent;
  color: var(--btn-simple-color);
  border: 1px solid;
}
.btn-simple:hover,
.btn-simple:focus-visible,
.btn-simple.active,
.btn-simple.is-active {
  color: var(--4-color);
  background: var(--5-color);
  border-color: var(--5-color);
}
.btn-simple-second {
  background: transparent;
  color: var(--btn-simple-second-color);
  border-color: var(--btn-simple-second-color);
}
.btn-simple-second:before {
  background: var(--btn-simple-second-color);
}
.btn-simple-second.active,
.btn-simple-second:hover,
.btn-simple-second:focus-visible {
  color: var(--btn-simple-second-bg);
}
.btn-small {
  min-width: 136px;
}
.btn-arrow {
  margin-left: 9px;
}
.btn__icon--prev {
  margin-right: 8px;
}
.btn__icon--next {
  margin-left: 8px;
}
.btn__icon {
  position: relative;
  top: -.1rem;
  flex: 0 0 auto;
}
.btn:hover .btn-arrow,
.btn:focus-visible .btn-arrow {
  transform: translateX(3px);
}
.link-social {
  width: 67px;
  height: 67px;
  border: 1px solid var(--12-color);
  background: var(--2-color);
  color: var(--4-color);
  box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.16);
  border-radius: 50%;
}
.link-social:hover,
.link-social:focus-visible {
  background: var(--5-color);
  border-color: var(--5-color);
}
.link-second__hover .char {
  transition-timing-function: cubic-bezier(0.25, 0.74, 0.22, 0.99);
}
.link-second {
  color: currentColor;
  display: inline-flex;
  background: none;
}
.link-second__content {
  overflow: hidden;
  position: relative;
  display: inline-block;
  height: 1lh;
}
.link-second-2-lines .link-second__content {
  height: 2lh;
}
.link-second__hover {
  position: absolute;
  left: 0;
  color: var(--5-color);
  visibility: hidden;
  transition: visibility 0s ease .6s;
}
.link-second:hover .link-second__hover,
.link-second:focus-visible .link-second__hover {
  visibility: visible;
  transition: visibility 0s ease 0s;
}
.footer .link-second__hover {
  color: var(--2-color);
}
.link-second .char {
  display: inline-block;
  transition-property: transform;
  transition: transform var(--animation-smooth);
  transition-delay: calc(var(--char-index) * 10ms);
}
.link-second .link-second__hover .char {
  transform: translateY(100%);
}
.link-second:hover .link-second__text .char,
.link-second:hover .link-second__hover .char,
.link-second:focus-visible .link-second__text .char,
.link-second:focus-visible .link-second__hover .char {
  transform: translateY(-100%);
}
.link-second-2-lines:hover .link-second__text .char,
.link-second-2-lines:hover .link-second__hover .char,
.link-second-2-lines:focus-visible .link-second__text .char,
.link-second-2-lines:focus-visible .link-second__hover .char {
  transform: translateY(-200%);
}
.link-scrollto {
  width: 40px;
  height: 40px;
  border: 1px solid;
  color: var(--12-color);
  border-radius: 50%;
  background: none;
  padding: 0;
}
.link-scrollto svg {
  max-width: 100%;
  height: auto;
}
.link-scrollto-second {
  width: 42px;
  height: 52px;
  border-radius: 14px;
}
.link-scrollto:hover .link-scrollto__arrow,
.link-scrollto:focus-visible .link-scrollto__arrow {
  transform: translateY(5px);
}
.header__btn-apply {
  padding-inline: 17px;
}
.full-menu__contact-list .btn,
.header__btn-apply {
  /* min-width: 140px;
  padding: 10px;
  font-size: calc(var(--1-rem) * .8125);
  font-weight: 600; */
  /* letter-spacing: calc(var(--0-ls) + 0.01em); */
}
.icon-btn {
  background: 0 0;
  width: 32px;
  height: 32px;
  color: var(--5-color);
  border: 2px solid currentColor;
  border-radius: 4px;
}
@media (min-width: 1900px) {
  .btn {
    font-size: calc(var(--1-rem) * 0.9375);
    padding: 15px 40px;
  }
  .header__btn-apply {
    min-width: 158px;
    padding-inline: 20px;
  }
}
@media (max-width: 1399.9px) {
  .btn {
    padding: 11px 40px;
    font-size: calc(var(--1-rem) * 0.9375);
  }
  .header__btn-apply {
    min-width: 158px;
    padding-inline: 20px;
  }
}
@media (max-width: 575.9px) {
  .btn {
   font-size: calc(var(--1-rem) * 0.75);
    padding: 11px 17px;
  }
  .btn .btn-arrow[viewBox="0 0 18 12"] {
    width: 26px !important;
    height: auto !important;
    margin-left: 10px;
  }
  /* .header__btn-apply {
    font-size: calc(var(--1-rem) * .6875);
    margin-right: 17px;
    min-width: 113px;
    padding: 7px;
  } */
}