/*==========  Desktop First  ==========*/
/* Large Devices, Wide Screens */
@media only screen and (max-width: 1300px) {
  .btn-top-scroll {
    right: 10px;
    width: 40px;
    height: 40px;
  }
  .btn-top-scroll svg {
    width: 20px;
    height: 10px;
  }
}
@media only screen and (max-width: 1200px) {
  footer .header-contacts {
    padding: 0;
  }
  .old-price {
    font-size: 22px;
  }
  .price-wrapper {
    padding: 0 65px;
  }
}
@media only screen and (max-width: 992px) {
  footer .header-contacts, footer .nav-menu {
    padding: 0 0 0 24px;
    margin: 40px 0 0;
  }
  footer .logo {
    max-width: 343px;
  }
  .footer-top {
    padding: 16px 0 8px;
  }
  .menu-footer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .menu-footer li {
    margin: 0 0 8px;
  }
  .menu-footer li:last-child {
    margin: 0;
  }
  .stage-work-box {
    padding: 16px;
  }
  .stage-work-box__number {
    margin: 0 0 12px;
  }
  .stage-work-box .box-text {
    font-size: 14px;
  }
  .advantages {
    padding: 16px 0 8px;
  }
  .advantages .mb-24 {
    margin-bottom: 8px;
  }
  .advantages-item {
    border: none;
    padding: 8px;
  }
  .text-lgsmall {
    font-size: 13px;
    line-height: 110%;
  }
  header .logo {
    max-width: 200px;
  }
  .payment-rules, .service-details {
    padding: 30px 0 60px;
  }
  .payment-rules .text-lgsmall, .service-details .text-lgsmall {
    font-size: 16px;
    line-height: 150%;
  }
  .prices-section {
    padding: 30px 0;
  }
  .prices-page .text-xlsmall.mb-40 {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 768px) {
  .container {
    padding: 0 16px;
  }
  .row {
    margin: 0 -8px;
  }
  .row > * {
    padding: 0 8px;
  }
  .mb-40 {
    margin-bottom: 24px;
  }
  h1, .h1 {
    margin: 0 0 8px;
  }
  h1 span, .h1 span {
    font-size: 32px;
  }
  h6, .h6 {
    font-size: 16px;
  }
  .subtitle-decor {
    font-size: 13px;
    padding: 4px;
  }
  .btn {
    height: 40px;
    padding: 8px 24px;
    font-size: 14px;
    line-height: 150%;
  }
  .btn-icon {
    margin: 0 0 0 4px;
  }
  .home {
    padding: 64px 0 24px;
  }
  .home-item {
    padding: 8px;
    max-width: none;
  }
  .home-item:first-child {
    margin-top: 16px;
  }
  header {
    position: relative;
    z-index: 1;
    padding: 8px 0;
  }
  header .logo {
    max-width: 259px;
  }
  header .header-contacts {
    display: none;
    padding: 16px;
    background: #F8F9FA;
  }
  header .nav-menu {
    display: none;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    background: #fff;
    z-index: 5;
    -webkit-box-shadow: 0px 10px 15px -3px rgba(16, 24, 40, 0.1);
            box-shadow: 0px 10px 15px -3px rgba(16, 24, 40, 0.1);
  }
  header .nav-menu .header-contacts {
    display: block;
  }
  header .menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
  header .menu li {
    width: 100%;
  }
  header .menu li a {
    width: 100%;
    padding: 8px;
  }
  .btn-burger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p-40 {
    padding: 24px 0;
  }
  .error-page {
    padding: 0 0 32px;
  }
  .error-page__icon {
    margin: 0 auto 24px;
  }
  .form-payment {
    max-width: 255px;
  }
  .form-payment .form-group {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .form-payment .form-group label {
    margin: 0 0 8px;
  }
  .form-payment .form-group label:last-child {
    margin: 0;
  }
  .form-payment [type=submit] {
    width: 100%;
  }
  .requisites-list li {
    padding: 8px 8px 10px;
  }
  .contacts-requisites {
    padding: 50px 0 40px;
  }
  .how-work {
    padding: 40px 0 20px;
  }
  .how-work-wrapper, .reviews-wrapper {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    overflow-x: auto;
  }
  .how-work-column, .reviews-column {
    min-width: 244px;
  }
  .reviews-column {
    padding-bottom: 20px;
  }
  .how-work-box, .reviews-box {
    min-width: 228px;
    padding: 16px;
  }
  .h5 {
    margin: 0 0 8px;
  }
  .reviews-box__date {
    margin: 12px 0 4px;
  }
  .reviews-box .box-text {
    font-size: 14px;
  }
}
@media only screen and (max-width: 576px) {
  .btn-top-scroll {
    display: none;
  }
  h1, .h1 {
    font-size: 38px;
  }
  h2, .h2 {
    margin: 0 0 50px;
    font-size: 38px;
  }
  .mb-16 {
    margin-bottom: 8px;
  }
  .m-24 {
    margin: 16px 0;
  }
  .btn-group {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .btn-group .btn {
    width: 100%;
    margin: 0 0 8px;
  }
  .btn-group .btn:last-child {
    margin: 0;
  }
  .thanks-payment .btn-group {
    max-width: 255px;
    width: 100%;
    margin: 0 auto;
  }
  .thanks-payment .btn-group .btn {
    margin: 0 0 20px;
  }
  .thanks-payment .btn-group .btn:last-child {
    margin: 0;
  }
  .payment-rules, .service-details {
    padding: 24px 0 16px;
  }
  .contacts-requisites {
    padding: 16px 0 0;
  }
  .contacts-requisites-card {
    padding: 16px;
  }
  .contacts-requisites-card .header-contacts {
    margin: 24px 0 0;
  }
  .form-contacts label {
    margin: 0 0 8px;
  }
  .form-contacts label:last-child {
    margin: 0;
  }
  .prices-box {
    padding: 16px;
  }
  .prices-box ul {
    margin: 0 0 24px;
  }
  .prices-box ul:last-child {
    margin: 0;
  }
  .prices-box__body {
    padding: 16px;
  }
  .prices-box__head {
    padding: 16px;
  }
  .prices-box .h6 {
    margin: 0 0 16px;
  }
  .prices-box-max {
    padding: 0;
  }
  .list-decor li {
    margin: 0 0 8px;
  }
  .list-decor li:last-child {
    margin: 0;
  }
  .list-decor li__icon {
    margin: 0 4px 0 0;
  }
  .attention-information {
    padding: 8px 8px 8px 48px;
  }
  .attention-information::before {
    top: 8px;
    left: 8px;
  }
  .list-bank li {
    margin: 8px 0 0;
  }
  .list-compare li p, .list-compare li span {
    padding: 4px;
  }
}
@media only screen and (max-width: 480px) {
  .requisites-list p {
    min-width: 155px;
  }
}
@media only screen and (max-width: 420px) {
  .advantages-item h3, .advantages-item .h3 {
    font-size: 24px;
  }
  header .logo {
    max-width: 220px;
  }
}
@media only screen and (max-width: 370px) {
  .requisites-list li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .requisites-list p {
    min-width: auto;
    width: 100%;
    margin: 0 0 8px;
  }
  .requisites-list span {
    display: block;
  }
}