/* for same-page links */
#b-hat-menu .nav-link.g-font-size-18 {
    /* padding-top: 0.3rem !important; */
}

#b-hat-menu {
    .u-header__section {
        box-shadow: none;
    }

    @media (min-width: 1400px) {
        .navbar.navbar-expand-lg>.container {
            max-width: 1200px !important;
        }
    }

    header {
        box-shadow: rgb(30, 30, 30) 0 0 5px;
        clip-path: inset(0 0 -5px);
    }

    .landing-block-node-menu-list {
        justify-content: center;
    }

    @media (min-width: 992px) {
        .landing-block-node-menu-logo-link {
            position: absolute;
            right: 0rem;
        }
    }

    #navBar1139 {
        max-width: 85vw;
    }

    .landing-block-node-menu-logo {
        height: 3rem;
    }

    .landing-block-node-menu-logo:hover {
        filter: brightness(0.95);
        transform: scale(0.95);
        transition: 0.1s;
    }
}

#b-cover .u-bg-overlay__inner.w-100 {
    position: absolute;
    /* padding-top is calculated from JS */
    top: 0;
    left: 7rem;
    height: 57vh;

    div {
        padding: 0 !important;
        margin: 0 !important;
        height: 100% !important;
        max-width: none !important;
    }

    img {
        /* margin: 0 auto 0 auto; */
        height: 100%;
    }
}

#b-cover-tablet .u-bg-overlay__inner.w-100 {
    /* padding-top is calculated from JS */
    display: flex;
    justify-content: center;
    height: 100%;

    >div {
        flex: 0 0 70%;
    }
}

#b-cover-mobile .u-bg-overlay__inner.w-100 {
    /* padding-top is calculated from JS */
    display: flex;
    justify-content: center;
    height: 100%;
}

#b-about-p1 {
    margin-top: -120px;
}

#b-services,
#b-services-mobile {
    img.landing-block-node-leftblock-img {
        filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.25));
    }

    .landing-block-node-card .media {
        cursor: pointer;
    }
}

@media (min-width: 992px) {

    /* 
    shoudn't be applied when element is invisible.
    this margin is in effect even when element is hidden,
    which affects the #b-services-mobile element below it.
  */
    #b-services {
        margin-top: -120px;
    }
}

@media (max-width: 991px) {

    /* 
    shoudn't be applied until element is visible.
    this margin is in effect even when element is hidden,
    which affects the #b-about element below it.
  */
    #b-services-mobile {
        margin-top: -120px;
    }
}

#b-services {
    section.landing-block.landing-block-node-bgimg {
        padding-top: 14rem !important;
    }

    .row.g-mb-90 .media.g-mb-25 {
        margin-bottom: 0 !important;
    }

    .container .row {
        .col-md-6.col-lg-4 {
            flex: 0 0 38%;
            max-width: 38%;

            article {
                padding-right: 3rem;
            }
        }

        .col-md-6.col-lg-8 {
            flex: 0 0 62%;
            max-width: 62%;
        }
    }
}

#b-services-mobile {
    >section {
        background-attachment: fixed !important;
        padding: 18rem 0 0 0 !important;
    }

    @media (max-width: 767px) {
        >section {
            padding-bottom: 10rem !important;
        }
    }

    .u-bg-overlay__inner .row .div.col-md-6.col-lg-4 {
        padding: 0 1.5rem;

        >.article {
            padding-right: 0 !important;
        }
    }

    .row .landing-block-node-rightblock {
        h4.landing-block-node-subtitle.text-uppercase {
            text-align: center !important;
        }
    }

    @media (min-width: 768px) {
        .row {
            .col-md-6.col-lg-4 {
                padding-top: 6rem;
                flex: 0 0 40%;
                max-width: 40%;
            }

            .landing-block-node-rightblock.js-animation {
                flex: 0 0 60%;
                max-width: 60%;
            }
        }
    }

    @media (max-width: 767px) {
        .row .col-md-6.col-lg-4 {
            padding: 0 2rem;
        }

        .row .landing-block-node-rightblock .g-color-white.g-mb-45 {
            margin-bottom: 6rem !important;
        }

        .row.g-mb-90 {
            max-width: 80% !important;
            margin: 0 auto 0 auto !important;
        }

        .landing-block-node-card {
            margin-bottom: 0 !important;
        }
    }
}

/* Симуляция hover для info блока */
.info-v3-3.hover-simulated .info-v3-3__description-sm,
.info-v3-3.hover-simulated .info-v3-3__img {
    left: 15%;
    transform: translateZ(0);
}

.info-v3-3.hover-simulated::after {
    opacity: 1;
    background-color: hsla(176, 86%, 26%, 0.9) !important;
}

.info-v3-3.hover-simulated .info-v3-3__category {
    display: none !important;
}

.info-v3-3.hover-simulated .info-v3-3__content {
    display: block !important;
}

/* Цвет текста при "ховере" */
.g-color--hover.hover-simulated {
    color: var(--color-hover) !important;
}

.g-color--hover.hover-simulated :not(font):not(a) {
    color: var(--color-hover);
}

@media (min-width: 768px) {
    #b-arrange-p2 .container-fluid.px-0 {
        padding: 0 70px !important;
    }
}

@media (min-width: 1500px) {
    #b-arrange-p2 .container-fluid.px-0 {
        padding: 0 120px !important;
    }
}

#b-arrange-p2 {
    .landing-block-node-card {
        padding-top: 2.14286rem;
        padding-bottom: 2.14286rem;
    }

    .landing-block-node-card img {
        margin-right: 1rem;
    }

    .landing-block-node-card:hover img {
        margin-right: 0rem;
    }

    @media (min-width: 450px) {
        .landing-block-node-card {
            min-width: 420px;
        }
    }

    article img {
        box-shadow: 3px 3px 5px 0px rgb(181, 181, 181);
        padding: 0 !important;
        border-radius: 3px;
    }

    @media (min-width: 992px) {
        .info-v3-3__description-sm {
            width: 65% !important;
        }

        .info-v3-3:hover .info-v3-3__description-sm,
        .info-v3-3:hover .info-v3-3__img {
            left: 17.5% !important;
        }
    }

    @media (max-width: 991px) {
        .info-v3-3__description-sm {
            width: 60% !important;
        }

        .info-v3-3:hover .info-v3-3__description-sm,
        .info-v3-3:hover .info-v3-3__img {
            left: 20% !important;
        }
    }
}

@media (max-width: 767px) {

    #b-3g-repair-p2 img.landing-block-node-img,
    #b-3g-repair-p3 img.landing-block-node-img {
        padding-left: 20px;
    }

    #b-3g-repair-p3>section {
        padding-top: 3rem;
    }
}

#b-repair {
    .landing-block-card-text-inner {
        box-shadow: 2px 0px 3px rgba(0, 0, 0, 0.3);
    }

    .landing-block-card-text-block {
        flex: 0 0 80%;
        max-width: 80%;
    }

    @media (min-width: 992px) {
        #b-repair .landing-block-node-texts {
            padding-left: 10rem !important;
        }
    }

    @media (max-width: 991px) {
        >section {
            padding-top: 5rem !important;
        }

        .landing-block-node-texts {
            padding: 0 2rem !important;
        }

        h2.landing-block-node-title {
            text-align: center !important;
        }

        .landing-block-card-text-block {
            margin: 0 auto 2rem auto !important;
        }

        .landing-block-node-header.text-left.u-heading-v2-3--bottom::after {
            margin-left: auto !important;
            margin-right: auto !important;
        }
    }

    @media (max-width: 575px) {
        .landing-block-card-text-block {
            flex: 0 0 100%;
            max-width: 100%;
        }
    }
}

#b-why-us-p2 {
    .row.landing-block-inner {
        justify-content: center;
    }

    @media (max-width: 767px) {
        .row.landing-block-inner {
            row-gap: 2rem;
        }

        .landing-block-node-card {
            flex: 0 0 80%;
        }

        .landing-block-node-card-bghover {
            padding-left: 3rem !important;
            padding-right: 3rem !important;
        }
    }
}

#b-certificates-p2 img {
    box-shadow: 3px 3px 5px 0px rgb(181, 181, 181);
}

@media (max-width: 575px) {
    #b-contacts .landing-block-card.g-border-color {
        border: 0;
    }
}

#b-3g-repair-p2 .landing-block-node-text-container,
#b-3g-repair-p3 .landing-block-node-text-container {
    align-content: center;
    flex-wrap: wrap;
}

#b-3g-repair-p2 .landing-block-node-card:nth-last-child(1),
#b-3g-repair-p3 .landing-block-node-card:nth-last-child(1) {
    margin-bottom: 0 !important;
}

#b-cover,
#b-services,
#b-repair {
    z-index: 0;
}

#b-about-p2,
#b-why-us-p1,
#b-why-us-p2,
#b-3g-repair-p1,
#b-3g-repair-p2,
#b-3g-repair-p3 {
    z-index: 1;
}

#b-about-p1,
#b-about-p3,
#b-arrange-p1,
#b-arrange-p2,
#b-accomp-p1,
#b-accomp-p4,
#b-certificates {
    z-index: 2;
}

#b-accomp-p2,
#b-accomp-p3 {
    z-index: 3;
}

#b-contacts {
    z-index: 4;
}

#b-footer {
    z-index: 5;
}

/* Upper shadow */
/* #b-why-us-p1, */
#b-certificates {
    box-shadow: 0 0 3px rgb(181, 181, 181);
    clip-path: inset(-3px 0 0 0);
}

/* Lower shadow */
#b-arrange-p2,
#b-accomp-p4 {
    box-shadow: 0 0 3px rgb(181, 181, 181);
    clip-path: inset(0 0 -3px 0);
}

/* Upper medium darker shadow */
/* #b-about-p1 {
    box-shadow: rgb(140, 140, 140) 0 0 10px;
    clip-path: inset(-10px 0 0 0);
} */
/* Upper darker shadow */
#b-contacts {
    box-shadow: rgb(125, 125, 125) 0 0 5px;
    clip-path: inset(-5px 0 -1px 0);
}

/* Lower darker shadow */
/* #b-about-p2 {
    box-shadow: rgb(100, 100, 100) 0 0 5px;
    clip-path: inset(0 0 -5px 0);
} */
/* Inner upper & lower shadow */
/* #b-repair section {
  box-shadow: inset rgb(150 150 150) 0 4px 4px -4px,
    inset rgb(150 150 150) 0 -4px 4px -4px;
} */
/* Inner upper & lower dark shadow */
#b-repair section {
    box-shadow: inset rgb(50 50 50) 0 5px 5px -5px,
        inset rgb(50 50 50) 0 -5px 5px -5px;
}

/* Inner only lower shadow */
#b-services section {
    box-shadow: inset rgb(50 50 50) 0 -5px 5px -5px;
}

.b-flip-hv {
    transform: rotateX(180deg) rotateY(180deg);
}