@media screen and (max-width: 767px) {

    /* === Mainpage variant (default) === */
    .sh-hero--mainpage {
        padding: 0;
        min-height: 700px;
        width: min(calc(100% + 32px), 375px);
        margin-left: max(-16px, calc(((100% + 32px) - 375px) / 2 - 16px));
        overflow: hidden;
    }

    .sh-hero--mainpage .sh-hero-h1 {
        font-size: clamp(20px, 6vw, 24px);
        line-height: normal;
        font-family: 'InterMedium', sans-serif;
        padding: 0;
        margin: 0;
        word-wrap: break-word;
    }

    .sh-hero--mainpage .sh-main-text {
        font-size: 14px;
        line-height: 18px;
        font-family: "Inter", sans-serif;
        font-weight: 400;
        margin-top: 24px;
        padding-top: 0;
        color: #383B47;
    }

    .sh-hero--mainpage .sh-main-text--desktop {
        display: none;
    }

    .sh-hero--mainpage .sh-main-blackbutton {
        width: 228px !important;
        font-size: 11px;
        line-height: 14px;
        font-family: "Inter", sans-serif;
        font-weight: 700;
        padding: 17px 16px;
        margin-top: 16px;
        margin-bottom: 0;
    }

    .sh-hero--mainpage .sh-hero-mainpage__visual-mobile {
        display: block;
        position: absolute;
        top: 298px;
        left: calc(50% + 113px);
        transform: translateX(-50%);
        width: 569px;
        height: 333px;
    }

    .sh-hero--mainpage.gr-main {
        display: block !important;
        position: relative;
        min-height: 700px;
        overflow: hidden;
    }

    .sh-hero--mainpage .sh-hero-mainpage__content {
        position: relative;
        z-index: 2;
        width: calc(100% - 32px);
        max-width: 343px;
        padding: 80px 0 0;
        margin-left: 16px;
    }

    .sh-hero--mainpage .sh-hero-mainpage__visual {
        position: absolute;
        inset: 0;
        margin-top: 0;
        pointer-events: none;
    }

    .sh-hero--mainpage .sh-hero-mainpage__visual-desktop {
        display: none;
    }

    .sh-hero--mainpage .sh-hero-mainpage__door {
        position: absolute;
        overflow: hidden;
    }

    .sh-hero--mainpage .sh-hero-mainpage__door img {
        position: absolute;
        display: block;
        max-width: none;
    }

    .sh-hero--mainpage .sh-hero-mainpage__door--side img {
        width: 221.97%;
        height: 112.07%;
        left: -13.29%;
        top: -6.35%;
    }

    .sh-hero--mainpage .sh-hero-mainpage__door--center {
        mix-blend-mode: darken;
    }

    .sh-hero--mainpage .sh-hero-mainpage__door--center img {
        width: 200.27%;
        height: 107.34%;
        left: -6.9%;
        top: -1.87%;
    }

    .sh-hero--mainpage .sh-hero-mainpage__door--mobile-left {
        left: 0;
        top: 14.36px;
        width: 160.51px;
        height: 318.64px;
    }

    .sh-hero--mainpage .sh-hero-mainpage__door--mobile-center {
        left: 171.33px;
        top: -0.8px;
        width: 180.35px;
        height: 334.61px;
    }

    .sh-hero--mainpage .sh-hero-mainpage__door--mobile-right {
        left: 363.16px;
        top: 13.39px;
        width: 162.33px;
        height: 319.61px;
    }

    .sh-hero--mainpage .sh-hero-mainpage__door--desktop-left,
    .sh-hero--mainpage .sh-hero-mainpage__door--desktop-center,
    .sh-hero--mainpage .sh-hero-mainpage__door--desktop-right {
        display: none;
    }

    /* === Smarts variant === */
    /* Figma 2252:5430: Frame 7 (bg #F6F6F8), padding 0 16px 30px */
    .sh-hero--smarts {
        background: #F6F6F8;
        padding: 0px 16px 30px 16px;
    }

    /* Figma: Mobile/H1 = Inter 500 24px UPPER, y=80px from top → padding-top 80px */
    .sh-hero--smarts .sh-hero-h1 {
        font-size: 24px;
        line-height: 30px;
        font-family: 'InterMedium', sans-serif;
        padding: 80px 0px 0px 0px;
        color: #0E0F11;
    }

    /* Figma: Mobile/Body = Inter 400 14px, fills Main/gray (#383B47) */
    .sh-hero--smarts .sh-main-text {
        font-size: 14px;
        line-height: 18px;
        color: #383B47;
        padding-top: 24px;
    }

    /* Figma: Mobile/BUTTON = Inter 700 11px UPPER, padding 17px 16px, width 228px */
    .sh-hero--smarts .sh-main-blackbutton {
        width: 228px !important;
        font-size: 11px;
        line-height: 14px;
        padding: 17px 16px;
        margin-top: 32px;
        margin-bottom: 0;
    }

    /* Figma: 3 door images as horizontal slider below button */
    .sh-hero--smarts .sh-hero-doors-desktop {
        display: none;
    }

    .sh-hero--smarts .sh-hero-doors-mobile {
        display: block;
        width: calc(100% + 32px);
        margin-left: -16px;
        overflow: hidden;
        margin-top: 24px;
    }

    .sh-hero--smarts .sh-hero-doors-mobile img {
        width: 100%;
        height: auto;
        display: block;
    }

    /* === Cooperation variant === */
    .sh-hero--cooperation {
        padding: 0;
    }

    .sh-hero--cooperation .sh-hero-block1 {
        padding-top: 0 !important;
    }

    .sh-hero--cooperation H1 {
        font-size: 24px !important;
        line-height: 30px;
        padding-bottom: 16px;
    }

    .sh-hero--cooperation .sh-dark-button {
        width: 100%;
        margin-top: 24px;
        margin-bottom: 24px;
    }

    .sh-hero--cooperation .sh-hero-doorspic {
        max-width: 280px;
        margin: 0 auto;
        display: block;
    }

    .sh-hero--cooperation .sh-text {
        font-family: 'Inter', sans-serif;
        font-size: 14px;
        line-height: 18px;
        color: #383B47;
    }

    .sh-hero--cooperation .sh-hero-block2 {
        padding-bottom: 24px;
        text-align: center;
    }

    /* Ensure hero images don't overflow on mobile (smarts/cooperation variants only) */
    .sh-hero--smarts img,
    .sh-hero--cooperation img {
        max-width: 100%;
        height: auto;
    }

    /* Cooperation hero: stack layout */
    .sh-hero--cooperation .gr-main {
        display: flex !important;
        flex-direction: column;
    }

    .sh-hero--cooperation .gr-main > div {
        padding: 0;
    }
}
