*,
*:before,
*:after {
  box-sizing: border-box;
}

.outro,
.pager__movable,
.pager__nav_dir_next,
.screens {
  backface-visibility: hidden;
}

.intro__media,
.outro .app-links {
  white-space: nowrap;
}

html {
  color: #191919;
  font-size: 13px;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

@font-face {
  font-family: FuturaNewDemi;
  src: url('../assets/fonts/FuturaNewDemi.otf') format('opentype');
}

body,
html {
  width: 100%;
  height: 100%;
  margin: 0;
  font-family: FuturaNewDemi, 'PT Sans', sans-serif;
  background: #e42828;
  overflow: hidden;
}

h3 {
  font-size: 42px;
  font-weight: normal;
  letter-spacing: .7px;
  margin: 0;
  padding: 0;
}

.invite-form {
  position: relative;
  width: 540px;
  margin: auto;
}

.invite-form input {
  height: 60px;
  width: 360px;
  display: inline-block;
  vertical-align: middle;
  background: #fff;
  border: 1px solid #dedede;
  border-radius: 8px;
  padding: 18px 16px;
  font-family: 'PT Sans', sans-serif;
  font-size: 20px;
  font-weight: normal;
  outline: none;
}

.invite-form.with-error input {
  border-color: #e42828 !important;
  padding-right: 32px;
}

.invite-form.with-error:before {
  content: '';
  width: 16px;
  height: 16px;
  background: url('../assets/images/icons/error_icon.svg') no-repeat center center / contain;
  position: absolute;
  left: 336px;
  top: 50%;
  margin-top: -8px;
}

.invite-form input:focus,
.invite-form input:active {
  border-color: #3092f9 !important;
}

.invite-form button {
  height: 60px;
  width: 154px;
  padding: 20px 10px;
  display: inline-block;
  vertical-align: middle;
  background: #e42828;
  border: none;
  border-radius: 8px;
  box-shadow: none;
  font-family: Roboto, 'PT Sans', serif;
  color: #fff;
  text-transform: uppercase;
  font-size: 16px;
  font-weight: bold;
  line-height: 20px;
  text-align: center;
  margin-left: 20px;
  outline: none;
}

.invite-form button:hover {
  background: #ce0e0e;
}

.intro__info .invite-form input {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
  border-color: rgba(255, 255, 255, 0.4);
}

.intro__info .invite-form input::-webkit-input-placeholder {
  color: #fff;
}

.intro__info .invite-form input:-moz-placeholder {
  color: #fff;
}

.send-email-thanks {
  display: none;
  font-size: 30px;
}

.intro__info .send-email-thanks {
  color: #fff;
  padding-top: 43px;
}

.features__item p,
.screens__balloon {
  font-family: 'PT Sans', sans-serif;
}

.pager {
  z-index: 1;
  overflow-y: auto;
  overflow-x: hidden;
}

.pager__page {
  min-width: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

.pager__page-content {
  padding: 20px;
  margin: auto;
}

.pager,
.pager__movable {
  position: relative;
  width: 100%;
  height: 100%;
}

.pager__nav {
  display: flex;
  cursor: pointer;
}

.pager__nav-arrow {
  content: '';
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 48px 40px;
  border-color: #e42828 #e42828 transparent;
}

.pager__nav-after,
.pager__nav-before {
  background: #e42828;
  flex-grow: 1;
}

.pager__nav_dir_next {
  z-index: 1;
  position: absolute;
  bottom: -1px;
  height: 40px;
  left: 0;
  width: 100%;
}

.intro__media,
.intro__nexus-pic,
.logo__img,
.pager__page_type_screens {
  position: relative;
}

.pager__nav_dir_next .pager__nav-arrow {
  transform: rotate(180deg);
}

.pager__nav:hover .pager__nav-arrow img {
  opacity: 1;
}

.pager__nav_dir_next .pager__nav-arrow img {
  opacity: .8;
  transition: opacity .25s;
  transform: rotateX(180deg) translate(-50%, -21px);
}

@media all and (max-width: 1024px) {
  .pager__page-content {
    padding: 16px;
  }

  .pager__nav {
    height: 18px;
  }

  .pager__nav-arrow {
    border-width: 0 22px 18px;
  }

  .pager__nav-arrow img {
    width: 28px;
    height: 12px;
  }

  .pager__nav_dir_next .pager__nav-arrow img {
    transform: rotateX(180deg) translate(-50%, -7px);
  }
}

.app-links a {
  display: inline-block;
  margin: 0 10px;
}

.app-links img {
  height: 65px;
}

.app-links img + img {
  margin-left: 28px;
}

@media all and (max-width: 1024px) {
  .app-links img {
    width: 136px;
    height: auto;
  }

  .app-links img + img {
    margin-left: 13px;
  }
}

.pager__page_type_intro {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, .25), rgba(0, 0, 0, .08));
  border-top: 1px solid #e42828;
  height: 100%;
}

.pager__page_type_intro .pager__page-content {
  padding-bottom: 48px;
  height: 100%;
  padding-top: 0;
  display: flex;
  flex-direction: column;
}

.logo {
  margin: 0 auto;
  padding: 20px 20px 0;
}

.logo__img {
  vertical-align: top;
  width: 100%;
  transform: translateY(-60%);
  top: 50%;
}

.intro {
  display: flex;
  align-items: center;
  height: 100%;
  flex-grow: 1;
}

.intro__media {
  height: 100%;
}

.intro__iphone-pic {
  margin-left: 5.5%;
  position: relative;
  width: auto;
  height: 100%;
  z-index: 1;
}

.intro__nexus-pic {
  transform: translateX(-25%);
  top: 7.5%;
  width: auto;
  height: 85%;
  vertical-align: top;
}

.pager__page_type_intro h2 {
  line-height: .89;
  letter-spacing: -.1px;
  color: #fff;
  font-weight: 400;
  margin: 0;
  padding: 0;
}

.pager__page_type_intro h2 + .app-links {
  margin: 22px auto 44px;
  white-space: nowrap;
}

.pager__page_type_intro h3 {
  color: #fff;
  margin: 28px 0 17px;
}

@media all and (min-width: 1240px) {
  .pager__page_type_intro {
    min-height: 650px;
    border-top-width: 20px;
  }

  .pager__page_type_intro .pager__page-content {
    max-width: 1024px;
  }

  .logo {
    height: 33%;
    width: 358px;
    min-height: 160px;
  }

  .pager__page_type_intro h2 {
    font-size: 76px;
  }

  .pager__page_type_intro h2 + .app-links {
    margin: 44px auto;
    text-align: center;
  }

  .intro__media {
    max-height: 520px;
    width: 45%;
    text-align: right;
  }
}

.features__item,
.features__item-icon {
  text-align: center;
}

@media all and (max-width: 1239px) {
  .pager__page_type_intro {
    min-height: 690px;
  }

  .logo {
    width: 340px;
    min-height: 144px;
    height: 20%;
  }

  .intro {
    flex-direction: column-reverse;
    text-align: center;
    max-height: 690px;
    min-height: 470px;
    margin: auto;
  }

  .intro__info {
    height: 30%;
    min-height: 190px;
  }

  .pager__page_type_intro h2 {
    font-size: 58px;
    line-height: 1.17;
    margin-bottom: 15px;
  }

  .pager__page_type_intro h3 {
    font-size: 32px;
  }

  .intro__media {
    max-height: calc(100% - 190px);
    height: 70%;
    width: 100%;
    text-align: center;
  }

  .intro__iphone-pic {
    margin-left: 5.5%;
  }
}

@media all and (max-width: 1024px) {
  .pager__page_type_intro {
    border-top-width: 1px;
    min-height: 500px;
    max-height: 735px;
  }

  .pager__page_type_intro .pager__page-content {
    padding-bottom: 18px;
  }

  .logo {
    padding-top: 10px;
    width: 180px;
    min-height: 114px;
    object-fit: contain;
  }

  .intro {
    max-height: 70%;
    min-height: 300px;
    margin: auto;
  }

  .intro__info {
    padding-top: 14px;
    height: 30%;
  }

  .pager__page_type_intro h2 {
    font-size: 34px;
    line-height: .88;
    letter-spacing: .3px;
    margin: auto;
    text-align: center;
  }

  .pager__page_type_intro h2 + .app-links {
    margin-top: 28px;
  }
}

.pager__page_type_features .pager__page-content {
  max-width: 1134px;
}

.features {
  display: flex;
  height: 100%;
}

.features__item {
  padding: 30px;
  display: flex;
  flex-direction: column;
  color: #fff;
}

.screens__bullets,
.screens__nav {
  display: none;
}

.features__item h3 {
  font-size: 42px;
  line-height: 1.1;
  letter-spacing: .4px;
  font-weight: 400;
  margin: 26px 0 16px;
  padding: 0;
}

.features__item p {
  margin: 0;
  font-size: 19px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: .2px;
}

@media all and (max-width: 1239px) {
  .features {
    flex-direction: column;
  }

  .features__item {
    flex-direction: row;
    text-align: left;
    align-items: center;
  }

  .features__item-info {
    margin-left: 50px;
    max-width: 345px;
  }

  .features__item img {
    width: 194px;
  }

  .features__item h3 {
    font-size: 32px;
    line-height: 1.13;
    margin: 0 0 10px;
  }

  .features__item p {
    line-height: 1.33;
    font-size: 18px;
  }
}

@media all and (max-width: 1024px) {
  .features__item {
    padding: 15px 0;
  }

  .features__item-info {
    margin-left: 12px;
  }

  .features__item-icon {
    width: 110px;
  }

  .features__item img {
    height: 90px;
    width: auto;
  }

  .features__item h3 {
    font-size: 24px;
    line-height: 1.13;
    letter-spacing: .2px;
    margin: 0 0 3px;
  }

  .features__item p {

    line-height: 1.25;
    font-size: 16px;
    letter-spacing: .2px;
  }

  .pager__page_type_features .pager__page-content {
    max-width: 500px;
  }
}

.pager__page_type_screens:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  padding-top: 10%;
  left: 50%;
  top: 0;
  transform: translate3d(-50%, 0, 0);
  background: #f7f7f7;
}

.screens {
  position: relative;
  z-index: 1;
}

.screens__screen {
  position: relative;
  width: 356px;
  margin: 0 auto;
  z-index: 2;
}

.screens__placeholder {
  position: relative;
  width: 100%;
  z-index: 1;
}

.screens__viewport {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.screens__images {
  position: relative;
  height: 100%;
}

.screens__images img {
  width: auto;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity .25s .25s ease-out;
}

.screens_step_0 .screens__images img:nth-child(1),
.screens_step_1 .screens__images img:nth-child(2),
.screens_step_2 .screens__images img:nth-child(3),
.screens_step_3 .screens__images img:nth-child(4),
.screens_step_4 .screens__images img:nth-child(5),
.screens_step_5 .screens__images img:nth-child(6) {
  opacity: 1;
}

.screens__lines {
  display: none;
  margin: 0 auto;
  position: relative;
}

.screens__balloon {
  position: absolute;
  background: #3092f9;
  border-radius: 8px;
  padding: 16px 22px;
  font-size: 20px;
  letter-spacing: -.2px;
  color: #fff;
}

.screens_step_1 .screens__balloon_step_1,
.screens_step_2 .screens__balloon_step_2,
.screens_step_3 .screens__balloon_step_3,
.screens_step_4 .screens__balloon_step_4,
.screens_step_5 .screens__balloon_step_5,
.screens_step_6 .screens__balloon_step_6 {
  background: #e42828;
  opacity: 1;
}

.screens__balloon_step_1 {
  top: 13px;
  width: 309px;
}

.screens__balloon_step_2 {
  top: 128px;
  width: 311px;
}

.screens__balloon_step_3 {
  top: 261px;
  left: 148px !important;
  width: 267px;
}

.screens__balloon_step_4 {
  right: 82px !important;
  top: 293px;
}

.screens__balloon_step_5 {
  top: 434px;
}

@media all and (min-width: 768px) {
  .pager__page_type_screens:before {
    background-image: url('../assets/images/bg/3-large.svg');
    background-position: center;
    background-size: 3000px 100%
  }

  .screens__balloons {
    position: absolute;
    width: 1168px;
    height: 100%;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
  }

  .fill-line__bg {
    stroke: #3092f9;
  }

  .fill-line__path {
    stroke: #ececec;
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
  }

  .screens__lines_big {
    width: 978px;
    display: block;
    left: 22px;
  }

  .screens__balloon:nth-child(even) {
    right: 0;
  }

  .screens__balloon:nth-child(odd) {
    left: 0;
  }

  .screens_step_1 .fill-line__mark_step_1,
  .screens_step_2 .fill-line__mark_step_2,
  .screens_step_3 .fill-line__mark_step_3,
  .screens_step_4 .fill-line__mark_step_4,
  .screens_step_5 .fill-line__mark_step_5,
  .screens_step_6 .fill-line__mark_step_6 {
    fill: #e42828;
  }

  .screens_step_0 .fill-line__path,
  .screens_step_1 .fill-line__path_step_1 ~ .fill-line__path,
  .screens_step_2 .fill-line__path_step_2 ~ .fill-line__path,
  .screens_step_3 .fill-line__path_step_3 ~ .fill-line__path,
  .screens_step_4 .fill-line__path_step_4 ~ .fill-line__path,
  .screens_step_5 .fill-line__path_step_5 ~ .fill-line__path,
  .screens_step_6 .fill-line__path_step_6 ~ .fill-line__path {
    stroke-dashoffset: 0;
  }

  .screens_step_0 .fill-line__mark,
  .screens_step_1 .fill-line__mark_step_1 ~ .fill-line__mark,
  .screens_step_2 .fill-line__mark_step_2 ~ .fill-line__mark,
  .screens_step_3 .fill-line__mark_step_3 ~ .fill-line__mark,
  .screens_step_4 .fill-line__mark_step_4 ~ .fill-line__mark,
  .screens_step_5 .fill-line__mark_step_5 ~ .fill-line__mark,
  .screens_step_6 .fill-line__mark_step_6 ~ .fill-line__mark {
    fill: #ececec;
  }

  .screens_step_0 .screens__balloon,
  .screens_step_1 .screens__balloon_step_1 ~ .screens__balloon,
  .screens_step_2 .screens__balloon_step_2 ~ .screens__balloon,
  .screens_step_3 .screens__balloon_step_3 ~ .screens__balloon,
  .screens_step_4 .screens__balloon_step_4 ~ .screens__balloon,
  .screens_step_5 .screens__balloon_step_5 ~ .screens__balloon,
  .screens_step_6 .screens__balloon_step_6 ~ .screens__balloon {
    opacity: 0;
    transition-delay: 0s;
    transition-duration: .25s;
  }

  .fill-line__path {
    transition: stroke-dashoffset 1s ease-out;
  }

  .fill-line__mark,
  .screens__balloon {
    transition: fill .25s, background .25s, opacity .25s;
  }

  .screens_step_0 .fill-line__mark_step_0 {
    transition-delay: .5s;
  }

  .screens_step_1 .fill-line__mark_step_0 {
    transition-delay: 0s;
  }

  .screens_step_1 .fill-line__mark_step_1,
  .screens_step_1 .screens__balloon_step_1,
  .screens_step_2 .fill-line__mark_step_2,
  .screens_step_2 .screens__balloon_step_2 {
    transition-delay: .5s;
  }

  .screens_step_3 .fill-line__mark_step_3,
  .screens_step_3 .screens__balloon_step_3 {
    transition-delay: .37s;
  }

  .screens_step_4 .fill-line__mark_step_4,
  .screens_step_4 .screens__balloon_step_4 {
    transition-delay: .2s;
  }

  .screens_step_5 .fill-line__mark_step_5,
  .screens_step_5 .screens__balloon_step_5 {
    transition-delay: .45s;
  }

  .fill-line__path_step_5 {
    transition-duration: .5s;
  }
}

@media all and (max-width: 1239px) {
  .screens__screen {
    width: 227px;
  }

  .screens__balloons {
    width: 728px;
    top: 37px;
  }

  .screens__lines {
    display: none;
  }

  .screens__lines_small {
    display: block;
    width: 708px;
    left: 10px;
  }

  .screens__balloon {
    font-size: 14px;
    line-height: 1.29;
    padding: 10px 13px;
  }

  .screens__balloon_step_1 {
    top: 0;
    width: 178px;
  }

  .screens__balloon_step_2 {
    right: 23px !important;
    top: 73px;
    width: 158px;
  }

  .screens__balloon_step_3 {
    left: 43px !important;
    top: 179px;
  }

  .screens__balloon_step_4 {
    right: 25px !important;
    top: 186px;
  }

  .screens__balloon_step_5 {
    top: 278px;
  }
}

@media all and (max-width: 1023px) {
  .pager__page_type_screens:before {
    background-image: url('../assets/images/bg/3.svg');
    background-size: 1020px 650px;
    background-position: center;
    background-repeat: repeat-y;
  }
}

@media all and (max-width: 1024px) {
  .pager__page_type_screens {
    max-height: 555px;
    min-height: 555px;
  }

  .pager__page_type_screens:before {
    background-image: url('../assets/images/bg/mobile-background.svg');
    background-size: 1000px 784px;
    background-position: top center;
  }

  .pager__page_type_screens .pager__page-content {
    margin: 0 auto;
    padding: 56px 16px 96px;
  }

  .screens__lines {
    display: none;
  }

  .screens__screen {
    width: 177px;
  }

  .screens__bullets {
    display: block;
    position: absolute;
    bottom: -10px;
    white-space: nowrap;
    padding: 0;
    margin: 0;
    height: 8px;
    width: 100%;
    text-align: center;
  }

  .screens__bullets li {
    width: 8px;
    height: 8px;
    background: #ededed;
    border-radius: 50%;
    display: inline-block;
    vertical-align: top;
  }

  .screens__bullets li + li {
    margin-left: 14px;
  }

  .screens__balloons {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 192px;
    top: auto;
    bottom: -95px;
    height: 90px;
  }

  .screens__balloons .screens__balloon {
    background: #e42828;
    text-align: center;
    left: 50% !important;
    top: 50% !important;
    transform: translate3d(-50%, -50%, 0);
    width: 100%;
    padding: 15px;
    font-size: 12px;
    opacity: 0;
    transition: opacity .25s .25s ease-out;
  }

  .screens__images img:first-child {
    display: none;
  }

  .screens_step_0 .screens__images img:nth-child(2),
  .screens_step_1 .screens__images img:nth-child(3),
  .screens_step_2 .screens__images img:nth-child(4),
  .screens_step_3 .screens__images img:nth-child(5),
  .screens_step_4 .screens__images img:nth-child(6) {
    opacity: 1;
  }

  .screens_step_0 .screens__balloon_step_1,
  .screens_step_1 .screens__balloon_step_2,
  .screens_step_2 .screens__balloon_step_3,
  .screens_step_3 .screens__balloon_step_4,
  .screens_step_4 .screens__balloon_step_5 {
    opacity: 1;
    background: #e42828;
  }

  .screens_step_0 .screens__bullets li:nth-child(1),
  .screens_step_1 .screens__bullets li:nth-child(2),
  .screens_step_2 .screens__bullets li:nth-child(3),
  .screens_step_3 .screens__bullets li:nth-child(4),
  .screens_step_4 .screens__bullets li:nth-child(5) {
    background: #e42828;
  }

  .screens__nav {
    display: block;
    position: absolute;
    bottom: 15px;
    top: 0;
    width: 200%;
    z-index: 1;
  }

  .screens__nav_dir_next {
    left: 50%;
    background: url('../assets/images/icons/next.svg') 32% 50% no-repeat;
  }

  .screens__nav_dir_prev {
    right: 50%;
    background: url('../assets/images/icons/prev.svg') 67% 50% no-repeat;
  }

  .screens_step_0 .screens__nav_dir_prev,
  .screens_step_4 .screens__nav_dir_next {
    display: none;
  }
}

.footer,
.outro {
  position: relative;
  text-align: center;
}

.pager__page_type_outro .pager__page-content {
  flex-grow: 1;
  flex-shrink: 0;
  display: flex;
  width: 100%;
  padding: 0;
  background: #f7f7f7;
}

.footer__contacts,
.footer__contacts li {
  display: inline-block;
}

.outro {
  margin: auto;
  padding: 0 20px;
  width: 100%;
  background: url('../assets/images/bg/4-large.svg') center;
  background-size: 3000px 484px;
}

.outro .app-links {
  margin: 100px auto;
}

.outro h2 {
  margin: 100px auto 60px;
  font-size: 64px;
  font-weight: 400;
  padding: 0;
  line-height: 1.11;
  letter-spacing: .6px;
  color: #e42828;
}

.outro .invite-form {
  margin: 54px auto;
}

@media (max-width: 1239px) {
  .outro h2 {
    font-size: 50px;
  }
}

.footer {
  background: url('../assets/images/bus.jpg') center;
  background-size: cover;
  width: 100%;
  flex-grow: 4;
  flex-basis: 50%;
  border-bottom: #e42828 20px solid;
  border-top: #e42828 4px solid;
}

.footer__inner {
  width: 100%;
  padding: 0 20px;
  background: url('../assets/images/hand-with-iphone.png') right bottom no-repeat;
  background-size: contain;
  position: absolute;
  left: 50%;
  top: 50px;
  bottom: 0;
  z-index: 1;
  transform: translateX(-50%);
  max-width: 728px;
}

.footer__contacts {
  padding: 200px 0 25px;
  margin: 0;
  text-align: left;
  width: 728px;
  position: relative;
  z-index: 2;
}

.footer__contacts li + li {
  margin-left: 30px;
}

.footer__contacts svg {
  width: 64px;
}

.footer__contacts .fill,
.footer__contacts .stroke {
  transition: all .2s;
}

.footer__contacts li:hover .stroke {
  stroke: #e42828;
}

.footer__contacts li:hover .fill {
  fill: #e42828;
}

.copyright {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding-bottom: 12px;
  left: 0;
  text-align: center;
  color: #fff;
  font-family: Roboto, 'PT Sans', serif;
  font-size: 12px;
  font-weight: 500;
  text-decoration: none;
}

@media all and (max-width: 1023px) {
  .intro__info .send-email-thanks {
    width: 540px;
  }

  .outro {
    background-image: url('../assets/images/bg/4.svg');
    background-size: 1020px 350px;
    padding: 0 16px;
  }
}

@media all and (max-width: 490px) {
  .invite-form.with-error:before {
    left: 50%;
    top: 24px;
    transform: translateX(100px);
  }
}

@media all and (max-width: 767px) {
  .pager__page-content {
    padding: 0;
  }

  .pager__page_type_intro {
    border-top-width: 16px;
  }

  .invite-form {
    width: auto;
    margin-bottom: 17px;
  }

  .invite-form input {
    width: 244px;
    height: 48px;
    padding: 14px 16px;
    font-size: 14px;
    text-align: center;
  }

  .invite-form button {
    width: 244px;
    height: 48px;
    margin: 10px 0;
    padding: 14px 10px;
    font-size: 15px;
    font-weight: normal;
  }

  .invite-form.with-error:before {
    left: 218px;
  }

  .intro__info .send-email-thanks {
    width: auto;
  }

  .send-email-thanks {
    font-size: 20px;
  }

  .logo {
    width: 220px;
  }

  .pager__page_type_intro h2 {
    font-size: 24px;
  }

  .outro .app-links,
  .outro h2 {
    margin: 36px auto;
  }

  .pager__page_type_intro h3 {
    margin-top: 0;
    font-size: 20px;
  }

  .features__item h3 {
    font-size: 16px;
  }

  .features__item p {
    font-size: 12px;
  }

  .outro h2 {
    line-height: 1.21;
    letter-spacing: .2px;
    font-size: 28px;
  }

  .footer__inner {
    top: 77px;
    transform: translateX(-65%);
  }

  .footer__contacts {
    width: 100%;
    padding: 24px 0;
    text-align: center;
  }

  .footer__contacts svg {
    width: 33px;
  }
}

.hidden {
  display: none !important;
}

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

.invisible {
  visibility: hidden;
}

.clearfix:after,
.clearfix:before {
  content: ' ';
  display: table;
}

.clearfix:after {
  clear: both;
}

@media print {
  blockquote,
  img,
  pre,
  tr {
    page-break-inside: avoid;
  }

  *,
  :after,
  :before,
  :first-letter,
  :first-line {
    background: 0 0 !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]:after {
    content: ' (' attr(href) ')';
  }

  abbr[title]:after {
    content: ' (' attr(title) ')';
  }

  a[href^='#']:after,
  a[href^='javascript:']:after {
    content: '';
  }

  blockquote,
  pre {
    border: 1px solid #999;
  }

  thead {
    display: table-header-group;
  }

  img {
    max-width: 100% !important;
  }

  h2,
  h3,
  p {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}

.hidden-sm,
.hidden-md,
.hidden-lg {
  display: block;
}

.visible-sm,
.visible-md,
.visible-lg {
  display: none;
}

@media (max-width: 767px) {
  .hidden-sm {
    display: none;
  }

  .visible-sm {
    display: block;
  }
}

@media (min-width: 768px) and (max-width: 1239px) {
  .hidden-md {
    display: none;
  }

  .visible-md {
    display: block;
  }
}

@media (min-width: 1240px) {
  .hidden-lg {
    display: none;
  }

  .visible-lg {
    display: block;
  }
}