/* ProMaster 39 — staged redesign, block 01: header / first screen only. */

.page-home-hero {
    --hero-ink: #15221f;
    --hero-cream: #f7f5ef;
    --hero-cream-muted: rgba(247, 245, 239, 0.76);
    --hero-copper: #d08a5b;
    --hero-copper-deep: #b66f43;
    --hero-line: rgba(247, 245, 239, 0.18);
    --hero-menu-surface: #0f1b18;
    --hero-shell: min(91vw, 1680px);
    --hero-section-shell: min(95vw, 1800px);
    --hero-ease: 220ms cubic-bezier(0.22, 1, 0.36, 1);
}

.page-home-hero header,
.page-home-hero header *,
.page-home-hero > .header_description,
.page-home-hero > .header_description * {
    box-sizing: border-box;
}

.page-home-hero header {
    position: relative;
    isolation: auto;
    min-height: 100svh;
    overflow: hidden;
    background-image:
        linear-gradient(90deg, rgba(13, 25, 22, 0.90) 0%, rgba(13, 25, 22, 0.72) 37%, rgba(13, 25, 22, 0.24) 72%, rgba(13, 25, 22, 0.08) 100%),
        url('/img/fon1.webp?v=1');
    background-position: center;
    background-size: cover;
}

.page-home-hero header::after {
    position: absolute;
    inset: auto 0 0;
    z-index: 0;
    height: 27%;
    background: linear-gradient(180deg, transparent, rgba(10, 21, 18, 0.82));
    content: "";
    pointer-events: none;
}

.page-home-hero .header {
    width: 100%;
    min-height: 100svh;
    padding-top: clamp(150px, 20vh, 200px);
    align-items: stretch;
}

/* Navigation */
.page-home-hero .headerMenu {
    z-index: 1000;
    top: clamp(16px, 2.5vh, 26px);
    left: 50%;
    width: var(--hero-shell);
    height: 68px;
    margin: 0;
    padding: 8px clamp(12px, 1.35vw, 24px);
    border: 1px solid var(--hero-line);
    border-radius: 18px;
    background: var(--hero-menu-surface);
    box-shadow: 0 16px 42px rgba(5, 13, 11, 0.24);
    backdrop-filter: blur(17px) saturate(115%);
    transform: translateX(-50%);
}

.page-home-hero .headerMenuDiv {
    position: relative;
    z-index: 3;
    height: 100%;
    flex-wrap: nowrap;
    gap: clamp(8px, 1.2vw, 22px);
}

.page-home-hero .mobMenu {
    z-index: 1100;
}

.page-home-hero .a_logo {
    flex: 0 0 clamp(180px, 19vw, 290px);
}

.page-home-hero .a_logoMar {
    margin-left: 0;
}

.page-home-hero .header_logo {
    width: clamp(166px, 12vw, 205px);
    height: auto;
    filter: brightness(0) invert(1);
    opacity: 0.96;
}

.page-home-hero .a_menu_text {
    position: relative;
    display: flex;
    height: 100%;
    min-height: 0;
    align-items: center;
    justify-content: center;
    padding: 0 clamp(5px, 0.5vw, 10px);
}

.page-home-hero .a_menu_text::after {
    position: absolute;
    right: clamp(5px, 0.5vw, 10px);
    bottom: 2px;
    left: clamp(5px, 0.5vw, 10px);
    height: 1px;
    background: #e7a575;
    content: "";
    opacity: 0;
    transform: scaleX(0.35);
    transition: opacity var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .menu_text {
    margin: 0;
    color: rgba(247, 245, 239, 0.72);
    font-size: clamp(13px, 0.88vw, 16px);
    line-height: 1.15;
    letter-spacing: 0.02em;
    text-transform: none;
    transition: color var(--hero-ease);
}

.page-home-hero .a_menu_text:hover .menu_text,
.page-home-hero .a_menu_text:focus-visible .menu_text,
.page-home-hero .a_menu_text.is-menu-active .menu_text {
    color: var(--hero-cream);
}

.page-home-hero .a_menu_text:hover::after,
.page-home-hero .a_menu_text:focus-visible::after,
.page-home-hero .a_menu_text.is-menu-active::after {
    opacity: 1;
    transform: scaleX(1);
}

.page-home-hero .a_tel {
    flex: 0 0 auto;
    min-height: 48px;
    height: 48px;
    margin-right: 0;
    padding: 0 clamp(14px, 1.2vw, 22px);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 13px;
    background: linear-gradient(135deg, #df9666, #bd7044);
    transition: background var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .a_tel:hover {
    background: linear-gradient(135deg, #d58958, #aa6037);
    transform: translateY(-1px);
}

.page-home-hero .menu_button {
    margin: 0;
    color: #fff;
    font-size: clamp(13px, 0.88vw, 16px);
    line-height: 1;
    white-space: nowrap;
}

.page-home-hero .servicesCom,
.page-home-hero .servicesComAbout {
    position: absolute;
    top: calc(100% - 1px);
    left: -1px;
    width: calc(100% + 2px);
    display: flex !important;
    padding: 28px 32px 30px;
    border: 1px solid var(--hero-line);
    border-top: 0;
    border-radius: 0 0 18px 18px;
    background: var(--hero-menu-surface);
    box-shadow: 0 28px 65px rgba(5, 13, 11, 0.34);
    backdrop-filter: blur(17px) saturate(115%);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-9px);
    transform-origin: top;
    transition:
        opacity 170ms ease,
        transform 220ms cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0s linear 220ms;
}

.page-home-hero .servicesCom.is-open,
.page-home-hero .servicesComAbout.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
}

.page-home-hero .servicesComScroll,
.page-home-hero .servicesComScrollAbout {
    display: grid;
    width: 100%;
    max-height: none;
    overflow: visible;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin: 0;
    padding: 0;
}

.page-home-hero .servicesComScrollAbout {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.page-home-hero .servicesComScroll .footer_column,
.page-home-hero .servicesComScrollAbout .footer_column {
    width: 100%;
    min-width: 0;
    padding: 0 clamp(16px, 1.7vw, 28px);
    box-sizing: border-box;
}

.page-home-hero .servicesComScrollAbout .footer_column {
    align-items: center;
    text-align: center;
}

.page-home-hero .servicesComScrollAbout .a-menu {
    width: 100%;
    justify-content: center;
}

.page-home-hero .menu_head {
    margin: 0 0 8px;
    color: #e5af88;
    font-size: clamp(16px, 1.02vw, 19px);
    line-height: 1.3;
}

.page-home-hero .menu_body {
    margin: 0;
    color: rgba(247, 245, 239, 0.68);
    font-size: clamp(13px, 0.82vw, 15px);
    line-height: 1.65;
    transition: color var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .a-menu:hover .menu_body,
.page-home-hero .a-menu:focus-visible .menu_body {
    color: var(--hero-cream);
    transform: translateX(3px);
}

.page-home-hero .headerMenuClo,
.page-home-hero .headerMenuCloAbout {
    display: none !important;
}

/* Offer */
.page-home-hero .header_offer {
    width: min(61vw, 900px);
    margin: 0 0 0 5.2vw;
    align-self: flex-start;
}

.page-home-hero .hero_location {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 8px;
    margin: 0 0 14px;
    padding: 7px 11px;
    border: 1px solid rgba(232, 192, 159, 0.34);
    border-radius: 999px;
    background: rgba(21, 34, 31, 0.34);
    color: #f0c5a3;
    font-size: 12px;
    font-weight: 650;
    line-height: 1;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    backdrop-filter: blur(7px);
}

.page-home-hero .hero_location::before {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #ed9b64;
    box-shadow: 0 0 0 4px rgba(237, 155, 100, 0.14);
    content: "";
}

.page-home-hero .h1_blue,
.page-home-hero .h1_black,
.page-home-hero .p1_blue {
    max-width: 100%;
    color: var(--hero-cream);
}

.page-home-hero .h1_blue {
    margin: 0;
    font-size: clamp(34px, 3.3vw, 52px);
    font-weight: 500;
    line-height: 1.04;
    letter-spacing: -0.036em;
}

.page-home-hero .h1_black {
    max-width: 720px;
    margin: clamp(16px, 2.2vh, 22px) 0 0;
    color: var(--hero-cream-muted);
    font-size: clamp(19px, 1.3vw, 22px);
    line-height: 1.42;
    letter-spacing: -0.012em;
}

.page-home-hero .p1_blue {
    max-width: 760px;
    margin: clamp(10px, 1.4vh, 14px) 0 0;
    color: #e8c09f;
    font-size: clamp(18px, 1.12vw, 20px);
    font-weight: 600;
    line-height: 1.42;
}

.page-home-hero .header_button {
    gap: 12px;
    margin: clamp(30px, 4.2vh, 44px) 0 0 5.2vw;
}

.page-home-hero .a_button_blue,
.page-home-hero .a_button_white {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-width: clamp(210px, 17vw, 270px);
    min-height: 58px;
    height: 58px;
    margin: 0;
    border-radius: 13px;
    cursor: pointer;
    transition: background var(--hero-ease), border-color var(--hero-ease), box-shadow var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .a_button_blue {
    border-color: #f2ab78;
    background: linear-gradient(135deg, #f2aa75 0%, #dd824b 54%, #c86a36 100%);
    box-shadow: 0 15px 34px rgba(205, 106, 51, 0.34), inset 0 1px rgba(255, 255, 255, 0.35);
}

.page-home-hero .a_button_white {
    border-color: rgba(255, 255, 255, 0.78);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.23), rgba(255, 255, 255, 0.10));
    box-shadow: 0 14px 30px rgba(5, 13, 11, 0.18), inset 0 1px rgba(255, 255, 255, 0.22);
    backdrop-filter: blur(8px);
}

.page-home-hero .a_button_blue:hover,
.page-home-hero .a_button_white:hover {
    transform: translateY(-2px);
}

.page-home-hero .a_button_blue:hover {
    border-color: #ffc097;
    background: linear-gradient(135deg, #f6b486 0%, #e58b54 54%, #d4753f 100%);
    box-shadow: 0 18px 38px rgba(214, 113, 58, 0.42), inset 0 1px rgba(255, 255, 255, 0.42);
}

.page-home-hero .a_button_white:hover {
    border-color: #fff;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.30), rgba(255, 255, 255, 0.16));
    box-shadow: 0 18px 36px rgba(5, 13, 11, 0.24), inset 0 1px rgba(255, 255, 255, 0.30);
}

.page-home-hero .sparkle::before,
.page-home-hero .sparklew::before {
    position: absolute;
    top: -70%;
    left: -55%;
    z-index: -1;
    display: block;
    width: 34%;
    height: 240%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.62), transparent);
    content: "";
    opacity: 0;
    pointer-events: none;
    transform: rotate(18deg);
    animation: hero-button-shine 5.8s ease-in-out infinite;
}

.page-home-hero .sparklew::before {
    animation-delay: 1.1s;
}

@keyframes hero-button-shine {
    0%, 72% { left: -55%; opacity: 0; }
    76% { opacity: 0.72; }
    87% { left: 125%; opacity: 0; }
    100% { left: 125%; opacity: 0; }
}

.page-home-hero .button_blue,
.page-home-hero .button_white {
    position: relative;
    z-index: 1;
    color: #fff;
    font-size: 16px;
    line-height: 1;
}

/* Numbers at the foot of the first screen */
.page-home-hero .header_description_mob {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: 100%;
    margin: auto 0 0;
    border-top: 1px solid var(--hero-line);
    border-radius: 0;
    background: rgba(10, 21, 18, 0.66);
    backdrop-filter: blur(12px);
}

.page-home-hero .header_description_mob .advantage {
    min-width: 0;
    margin: 0;
    padding: clamp(22px, 2.7vh, 32px) clamp(22px, 3vw, 52px);
    border-right: 1px solid var(--hero-line);
}

.page-home-hero .header_description_mob .advantage:last-child {
    border-right: 0;
}

.page-home-hero .h4_numbers {
    margin: 0 0 7px;
    color: #df9666;
    font-size: clamp(28px, 2.1vw, 38px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.035em;
}

.page-home-hero .h5_numbers {
    width: auto;
    max-width: 28ch;
    margin: 0;
    color: rgba(247, 245, 239, 0.65);
    font-size: clamp(12px, 0.82vw, 14px);
    line-height: 1.4;
}

.page-home-hero header :focus-visible {
    outline: 3px solid #efb68e;
    outline-offset: 4px;
}

@media (max-width: 1180px) and (min-width: 1001px) {
    .page-home-hero .a_logo {
        flex-basis: 190px;
    }

    .page-home-hero .a_menu_text {
        padding-inline: 3px;
    }

    .page-home-hero .menu_text,
    .page-home-hero .menu_button {
        font-size: 12px;
    }

    .page-home-hero .a_tel {
        padding-inline: 12px;
    }
}

@media (min-width: 1001px) {
    .page-home-hero .headerMenu {
        height: 68px !important;
        min-height: 68px;
        overflow: visible;
    }

    .page-home-hero .headerMenu.is-menu-open {
        border-radius: 18px 18px 0 0;
    }

    .page-home-hero header::after {
        display: none;
    }

    .page-home-hero .header {
        position: relative;
        justify-content: center;
        padding-top: 0;
    }

    .page-home-hero .header_description_mob {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        margin: 0;
        background: rgba(12, 24, 21, 0.08);
        backdrop-filter: blur(3px);
    }

    .page-home-hero .header_description_mob .h4_numbers,
    .page-home-hero .header_description_mob .h5_numbers {
        text-shadow: 0 2px 14px rgba(3, 10, 8, 0.72);
    }

    .page-home-hero .header_description_mob .h5_numbers {
        color: rgba(247, 245, 239, 0.90);
    }
}

@media (max-width: 1000px) {
    .page-home-hero.home-hero-scope,
    .page-home-hero.service-hero-scope {
        background: #0a1512;
    }

    .page-home-hero .headerMenu .a_menu_text {
        display: none;
    }

    .page-home-hero header {
        min-height: 760px;
        background-image:
            linear-gradient(0deg, rgba(10, 22, 18, 0.96) 0%, rgba(10, 22, 18, 0.63) 62%, rgba(10, 22, 18, 0.24) 100%),
            url('/img/fon1-mobile.webp?v=1');
        background-position: center;
    }

    .page-home-hero header::after {
        display: block;
        height: 42%;
        background: linear-gradient(
            180deg,
            rgba(10, 21, 18, 0) 0%,
            rgba(10, 21, 18, 0.46) 38%,
            rgba(10, 21, 18, 0.96) 100%
        );
    }

    .page-home-hero .header {
        min-height: 760px;
        padding-top: 136px;
    }

    .page-home-hero .headerMenu {
        top: 14px;
        width: calc(100vw - 24px);
        height: 64px;
        padding: 8px 10px 8px 16px;
        border-radius: 16px;
    }

    .page-home-hero .headerMenuDiv {
        gap: 8px;
    }

    .page-home-hero .a_logo {
        flex: 0 1 148px;
        min-width: 0;
    }

    .page-home-hero .a_logoMar {
        margin: 0;
    }

    .page-home-hero .header_logo {
        width: min(34vw, 148px);
        height: auto;
    }

    .page-home-hero .icon {
        gap: 6px;
    }

    .page-home-hero .header_icon {
        width: 44px;
        height: 44px;
        border-radius: 12px;
    }

    .page-home-hero .sandwichMob {
        margin-right: 0;
    }

    .page-home-hero .mobMenu {
        padding-bottom: 28px;
        background: var(--hero-ink);
    }

    .page-home-hero .mobMenuDubl {
        align-items: center;
        margin: 16px 0 22px;
    }

    .page-home-hero .aLogoMob {
        width: auto;
        margin-left: 18px;
    }

    .page-home-hero .menuTextMob,
    .page-home-hero .menuTextMob1 {
        color: var(--hero-cream);
        font-size: clamp(18px, 5vw, 22px);
        line-height: 1.25;
    }

    .page-home-hero .aMenuTextMob {
        min-height: 54px;
        border-bottom: 1px solid rgba(247, 245, 239, 0.10);
    }

    .page-home-hero .verticalStripe {
        background: var(--hero-copper);
    }

    .page-home-hero .header_offer {
        width: auto;
        margin: 0 20px;
    }

    .page-home-hero .h1_blue {
        font-size: clamp(29px, 7.9vw, 36px);
        line-height: 1.04;
    }

    .page-home-hero .h1_black {
        margin-top: 16px;
        font-size: clamp(18px, 4.7vw, 20px);
        line-height: 1.42;
    }

    .page-home-hero .p1_blue {
        margin-top: 10px;
        font-size: clamp(17px, 4.35vw, 19px);
        line-height: 1.4;
    }

    .page-home-hero .hero_location {
        margin-bottom: 12px;
        padding: 6px 10px;
        font-size: 10px;
    }

    .page-home-hero .header_button {
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 10px;
        width: calc(100% - 40px);
        margin: 28px 20px 0;
    }

    .page-home-hero .a_button_blue,
    .page-home-hero .a_button_white {
        flex: 1 1 0;
        min-width: 0;
        min-height: 54px;
        height: 54px;
        padding: 0 10px;
        text-align: center;
    }

    .page-home-hero .button_blue,
    .page-home-hero .button_white {
        font-size: 14px;
        line-height: 1.15;
    }

    .page-home-hero .header_description_mob {
        display: none;
    }

    .page-home-hero > .header_description.mob,
    body.page-home-hero > .header_description.mob {
        position: relative;
        z-index: 3;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        box-sizing: border-box;
        width: 100%;
        margin: -104px auto 0;
        padding: 0;
        overflow: hidden;
        border: 0;
        border-top: 1px solid rgba(248, 246, 241, 0.22);
        border-radius: 0;
        background: transparent;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        box-shadow: none;
    }

    .service-hero-scope > .header_description.mob {
        margin-top: -204px;
    }

    .page-home-hero > .header_description.mob .advantage {
        min-width: 0;
        margin: 0;
        padding: 18px 12px;
        border-right: 1px solid rgba(248, 246, 241, 0.16);
        border-bottom: 0;
    }

    .page-home-hero > .header_description.mob .advantage:nth-child(odd) {
        padding-left: 24px;
    }

    .page-home-hero > .header_description.mob .advantage:nth-child(even) {
        padding-right: 24px;
        padding-left: 12px;
        border-right: 0;
    }

    .page-home-hero > .header_description.mob .advantage:nth-child(n + 3) {
        border-top: 1px solid rgba(248, 246, 241, 0.16);
    }

    .page-home-hero > .header_description.mob .h4_numbers {
        margin: 0;
        color: #b77a50;
        font-size: clamp(1.55rem, 8vw, 2rem);
        font-weight: 400;
        line-height: 0.95;
        letter-spacing: -0.045em;
    }

    .page-home-hero > .header_description.mob .h5_numbers {
        max-width: 24ch;
        margin: 8px 0 0;
        color: rgba(248, 246, 241, 0.74);
        font-size: 0.61rem;
        font-weight: 500;
        line-height: 1.35;
        letter-spacing: 0.055em;
        text-transform: uppercase;
    }
}

@media (max-width: 375px) {
    .service-hero-scope > .header_description.mob {
        margin-top: -228px;
    }
}

@media (max-width: 480px) {
    .page-home-hero .header {
        padding-top: 124px;
    }

    .page-home-hero .a_logo {
        flex-basis: 126px;
    }

    .page-home-hero .header_logo {
        width: 124px;
    }

    .page-home-hero .h1_blue {
        font-size: clamp(29px, 7.9vw, 34px);
    }

    .page-home-hero .header_button {
        flex-direction: column;
    }

    .page-home-hero .a_button_blue,
    .page-home-hero .a_button_white {
        flex-basis: auto;
        width: 100%;
    }
}

@media (max-width: 480px) and (max-height: 720px) {
    .page-home-hero .header_button {
        flex-direction: row;
        gap: 8px;
        margin-top: 0;
    }

    .page-home-hero .a_button_blue,
    .page-home-hero .a_button_white {
        flex: 1 1 0;
        width: auto;
        min-height: 44px;
        height: 44px;
        padding-inline: 8px;
    }

    .page-home-hero .button_blue,
    .page-home-hero .button_white {
        font-size: 12px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-home-hero header *,
    .page-home-hero header *::before,
    .page-home-hero header *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* Floating video and contacts */
.page-home-hero #videoContainer {
    right: auto;
    bottom: max(16px, env(safe-area-inset-bottom));
    left: clamp(14px, 1.25vw, 22px);
    z-index: 800;
}

.page-home-hero #myVideo {
    width: clamp(88px, 6.5vw, 104px);
    aspect-ratio: 9 / 16;
    object-position: center;
    border: 2px solid rgba(224, 142, 88, 0.92);
    border-radius: 14px;
    box-shadow: 0 16px 38px rgba(4, 12, 10, 0.38);
    cursor: pointer;
    transition: width var(--hero-ease), border-color var(--hero-ease), border-radius var(--hero-ease), box-shadow var(--hero-ease);
}

.page-home-hero #myVideo:hover {
    border-color: var(--hero-cream);
    box-shadow: 0 20px 46px rgba(4, 12, 10, 0.46);
    transform: none;
}

.page-home-hero #myVideo.expanded {
    width: min(300px, calc(100vw - 32px));
    aspect-ratio: 2160 / 3840;
    max-height: min(76dvh, 620px);
    object-position: center;
    border-color: rgba(224, 142, 88, 1);
    border-radius: 20px;
    box-shadow: 0 28px 72px rgba(4, 12, 10, 0.5);
    transform: none;
}

.page-home-hero #collapseBtn {
    z-index: 3;
    top: 12px;
    right: 12px;
    box-sizing: border-box;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid rgba(247, 245, 239, 0.38);
    border-radius: 50%;
    background: rgba(15, 27, 24, 0.84);
    color: var(--hero-cream);
    box-shadow: 0 8px 24px rgba(4, 12, 10, 0.3);
    font-size: 0;
    line-height: 0;
    backdrop-filter: blur(8px);
    transition: background var(--hero-ease), border-color var(--hero-ease), color var(--hero-ease);
}

.page-home-hero #collapseBtn::before,
.page-home-hero #collapseBtn::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 15px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    transform-origin: center;
}

.page-home-hero #collapseBtn::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.page-home-hero #collapseBtn::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.page-home-hero #collapseBtn:hover,
.page-home-hero #collapseBtn:focus-visible {
    border-color: rgba(247, 245, 239, 0.82);
    background: var(--hero-copper);
    color: var(--hero-ink);
}

.page-home-hero .benefits_a_button_blue_video {
    appearance: none;
    right: 18px;
    bottom: 18px;
    left: 18px;
    z-index: 3;
    width: auto;
    min-width: 0;
    height: 50px;
    padding: 0 20px;
    border: 1px solid rgba(247, 245, 239, 0.42);
    border-radius: 999px;
    background: linear-gradient(135deg, #e79a67, #bd7044);
    box-shadow: 0 14px 34px rgba(71, 34, 17, 0.36);
    font: inherit;
    transform: none;
    transition: opacity 180ms ease, background var(--hero-ease), box-shadow var(--hero-ease);
}

.page-home-hero .benefits_a_button_blue_video:hover,
.page-home-hero .benefits_a_button_blue_video:focus-visible {
    background: linear-gradient(135deg, #efaa79, #c7794c);
    box-shadow: 0 18px 42px rgba(71, 34, 17, 0.46);
}

.page-home-hero .benefits_button_blue_video {
    color: var(--hero-ink);
    font-family: 'Raleway', sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.15;
    text-align: center;
}

.page-home-hero .floating-contact,
.page-home-hero .floating-contact * {
    box-sizing: border-box;
}

.page-home-hero .floating-contact {
    position: fixed;
    right: clamp(20px, 1.5vw, 28px);
    bottom: max(22px, env(safe-area-inset-bottom));
    z-index: 850;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    gap: 14px;
    color: var(--hero-cream);
    font-family: 'Raleway', sans-serif;
}

.page-home-hero .floating-contact__toggle,
.page-home-hero .floating-contact__item-icon {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    color: var(--hero-cream);
    box-shadow: 0 14px 34px rgba(4, 12, 10, 0.34);
}

.page-home-hero .floating-contact__toggle {
    position: relative;
    width: 58px;
    height: 58px;
    padding: 16px;
    border: 1px solid rgba(255, 255, 255, 0.32);
    border-radius: 50%;
    background: linear-gradient(135deg, #e79a67, #bd7044);
    color: #fff;
    cursor: pointer;
    transition: box-shadow var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .floating-contact__toggle:hover,
.page-home-hero .floating-contact__toggle:focus-visible {
    box-shadow: 0 20px 46px rgba(89, 43, 21, 0.38);
    transform: translateY(-2px);
}

.page-home-hero .floating-contact__toggle svg,
.page-home-hero .floating-contact__item-icon svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: currentColor;
}

.page-home-hero .floating-contact__toggle-close {
    position: absolute;
    width: 26px !important;
    height: 26px !important;
    opacity: 0;
    transform: rotate(-70deg) scale(0.72);
}

.page-home-hero .floating-contact__toggle-chat,
.page-home-hero .floating-contact__toggle-close {
    transition: opacity 150ms ease, transform var(--hero-ease);
}

.page-home-hero .floating-contact__panel {
    display: flex;
    width: 58px;
    min-width: 58px;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    overflow: visible;
    pointer-events: none;
}

.page-home-hero .floating-contact__item {
    display: block;
    width: 50px;
    min-width: 50px;
    height: 50px;
    min-height: 50px;
    flex: 0 0 50px;
    color: #fff;
    text-decoration: none;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px) scale(0.94);
    transform-origin: 100% 100%;
    transition: opacity 150ms ease, visibility 150ms ease, transform var(--hero-ease);
}

.page-home-hero .floating-contact__item-icon {
    width: 50px;
    height: 50px;
    padding: 13px;
    border: 1px solid rgba(224, 142, 88, 0.6);
    border-radius: 50%;
    background: linear-gradient(145deg, #142720, #0b1714);
    box-shadow: inset 0 0 0 1px rgba(247, 245, 239, 0.04), 0 14px 34px rgba(4, 12, 10, 0.34);
    transition: background var(--hero-ease), border-color var(--hero-ease), box-shadow var(--hero-ease), color var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .floating-contact__item:hover .floating-contact__item-icon,
.page-home-hero .floating-contact__item:focus-visible .floating-contact__item-icon {
    border-color: rgba(247, 245, 239, 0.82);
    background: linear-gradient(135deg, #e79a67, #bd7044);
    box-shadow: 0 20px 42px rgba(89, 43, 21, 0.34);
    color: #0f1b18;
    transform: translateY(-2px) scale(1.04);
}

.page-home-hero .floating-contact__item--phone {
    display: flex;
    width: 50px;
    align-self: flex-end;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: flex-end;
    overflow: hidden;
    height: 50px;
    margin-right: 4px;
    border: 1px solid rgba(247, 245, 239, 0.2);
    border-radius: 999px;
    background: var(--hero-menu-surface);
    box-shadow: 0 16px 38px rgba(4, 12, 10, 0.3);
    transition: width var(--hero-ease), opacity 150ms ease, visibility 150ms ease, transform var(--hero-ease), border-color var(--hero-ease), box-shadow var(--hero-ease);
}

.page-home-hero .floating-contact__item--phone:hover,
.page-home-hero .floating-contact__item--phone:focus-visible {
    width: 218px;
    border-color: rgba(224, 142, 88, 0.72);
    box-shadow: 0 20px 46px rgba(4, 12, 10, 0.42);
}

.page-home-hero .floating-contact__item--phone .floating-contact__item-icon {
    width: 48px;
    min-width: 48px;
    height: 48px;
    padding: 12px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #e59a68;
    box-shadow: none;
    transform: none;
    transition: background var(--hero-ease), color var(--hero-ease);
}

.page-home-hero .floating-contact__item--phone:hover .floating-contact__item-icon,
.page-home-hero .floating-contact__item--phone:focus-visible .floating-contact__item-icon {
    box-shadow: none;
    transform: none;
}

.page-home-hero .floating-contact__phone-number {
    flex: 0 0 auto;
    overflow: hidden;
    padding: 0 8px 0 16px;
    opacity: 0;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    transform: translateX(8px);
    transition: opacity 150ms ease, transform var(--hero-ease);
}

.page-home-hero .floating-contact__item--phone:hover .floating-contact__phone-number,
.page-home-hero .floating-contact__item--phone:focus-visible .floating-contact__phone-number {
    opacity: 1;
    transform: translateX(0);
}

.page-home-hero .floating-contact__item--max .floating-contact__item-icon {
    padding: 10.5px;
}

.page-home-hero .floating-contact__item--max .floating-contact__item-icon svg {
    width: 27px;
    height: 27px;
    overflow: visible;
}

.page-home-hero .floating-contact__item--phone .floating-contact__item-icon svg {
    width: 24px;
    height: 24px;
    overflow: visible;
    transform: translate(1px, -1px);
}

.page-home-hero .floating-contact__item--telegram .floating-contact__item-icon,
.page-home-hero .floating-contact__item--whatsapp .floating-contact__item-icon {
    color: var(--hero-cream);
}

.page-home-hero .floating-contact.is-open .floating-contact__panel {
    pointer-events: auto;
}

.page-home-hero .floating-contact.is-open .floating-contact__item {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}

.page-home-hero .floating-contact.is-open .floating-contact__item:nth-child(2) {
    transition-delay: 25ms;
}

.page-home-hero .floating-contact.is-open .floating-contact__item:nth-child(3) {
    transition-delay: 50ms;
}

.page-home-hero .floating-contact.is-open .floating-contact__item:nth-child(4) {
    transition-delay: 75ms;
}

.page-home-hero .floating-contact.is-open .floating-contact__toggle-chat {
    opacity: 0;
    transform: rotate(70deg) scale(0.72);
}

.page-home-hero .floating-contact.is-open .floating-contact__toggle-close {
    opacity: 1;
    transform: rotate(0) scale(1);
}

@media (hover: hover) and (pointer: fine) {
    .page-home-hero .floating-contact:hover .floating-contact__panel {
        pointer-events: auto;
    }

    .page-home-hero .floating-contact:hover .floating-contact__item {
        opacity: 1;
        visibility: visible;
        transform: translateY(0) scale(1);
    }

    .page-home-hero .floating-contact:hover .floating-contact__item:nth-child(2) {
        transition-delay: 25ms;
    }

    .page-home-hero .floating-contact:hover .floating-contact__item:nth-child(3) {
        transition-delay: 50ms;
    }

    .page-home-hero .floating-contact:hover .floating-contact__item:nth-child(4) {
        transition-delay: 75ms;
    }
}

@media (max-width: 1000px) {
    .page-home-hero #videoContainer {
        bottom: max(14px, env(safe-area-inset-bottom));
        left: 14px;
    }

    .page-home-hero #myVideo {
        width: clamp(78px, 22vw, 88px);
        border-radius: 13px;
    }

    .page-home-hero #myVideo:hover {
        transform: none;
    }

    .page-home-hero #myVideo.expanded {
        width: min(72vw, 270px);
        max-height: calc(100dvh - 28px);
        border-radius: 18px;
    }

    .page-home-hero .benefits_a_button_blue_video {
        right: 14px;
        bottom: 14px;
        left: 14px;
        width: auto;
        height: 46px;
        padding: 0 14px;
    }

    .page-home-hero .benefits_button_blue_video {
        font-size: 14px;
    }

    .page-home-hero #collapseBtn {
        top: 10px;
        right: 10px;
        width: 34px;
        height: 34px;
    }

    .page-home-hero .floating-contact {
        right: 16px;
        bottom: max(16px, env(safe-area-inset-bottom));
        gap: 13px;
    }

    .page-home-hero .floating-contact__toggle {
        width: 56px;
        height: 56px;
        border-radius: 50%;
    }

    .page-home-hero .floating-contact__item-icon,
    .page-home-hero .floating-contact__item,
    .page-home-hero .floating-contact__item--phone,
    .page-home-hero .floating-contact__item--phone .floating-contact__item-icon {
        width: 48px;
        min-width: 48px;
        height: 48px;
        min-height: 48px;
        border-radius: 50%;
    }

    .page-home-hero .floating-contact__item {
        flex-basis: 48px;
    }

    .page-home-hero .floating-contact__item--phone .floating-contact__item-icon {
        width: 46px;
        min-width: 46px;
        height: 46px;
        min-height: 46px;
        padding: 11px;
    }

    .page-home-hero .floating-contact__panel {
        width: 56px;
        min-width: 56px;
        gap: 11px;
    }

    .page-home-hero .floating-contact__item--phone:hover,
    .page-home-hero .floating-contact__item--phone:focus-visible {
        width: 48px;
    }

    .page-home-hero .floating-contact__phone-number {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-home-hero #myVideo,
    .page-home-hero .floating-contact *,
    .page-home-hero .floating-contact *::before,
    .page-home-hero .floating-contact *::after {
        transition-duration: 0.01ms !important;
    }
}

/* Full-cycle section — architectural editorial system */
.page-home-hero .home_full_cycle,
.page-home-hero .home_full_cycle * {
    box-sizing: border-box;
}

.page-home-hero .home_full_cycle {
    position: relative;
    isolation: isolate;
    width: var(--hero-section-shell);
    margin: clamp(32px, 3.2vw, 52px) auto 0;
    padding: clamp(26px, 2.55vw, 40px);
    overflow: hidden;
    border: 1px solid rgba(21, 34, 31, 0.1);
    border-radius: clamp(28px, 3vw, 44px);
    background: #f1ede4;
    box-shadow: 0 30px 90px rgba(15, 27, 24, 0.1);
    color: var(--hero-ink);
    font-family: 'Raleway', Arial, sans-serif;
}

.page-home-hero .home_full_cycle::before {
    position: absolute;
    top: -220px;
    right: -180px;
    z-index: -2;
    width: 560px;
    height: 560px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(208, 138, 91, 0.26) 0, rgba(208, 138, 91, 0.08) 42%, transparent 72%);
    content: "";
}

.page-home-hero .home_full_cycle::after {
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image:
        linear-gradient(rgba(21, 34, 31, 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(21, 34, 31, 0.035) 1px, transparent 1px);
    background-size: 44px 44px;
    content: "";
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.68), transparent 72%);
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.68), transparent 72%);
}

.page-home-hero .home_full_cycle_head {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(340px, 0.88fr);
    gap: clamp(34px, 5vw, 78px);
    align-items: center;
    margin-bottom: clamp(28px, 3.2vw, 48px);
}

.page-home-hero .home_full_cycle_intro,
.page-home-hero .home_full_cycle_summary {
    min-width: 0;
}

.page-home-hero .home_full_cycle_eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    color: var(--hero-copper-deep);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.16em;
    line-height: 1;
    text-transform: uppercase;
}

.page-home-hero .home_full_cycle_eyebrow::before {
    width: 30px;
    height: 2px;
    border-radius: 99px;
    background: var(--hero-copper);
    content: "";
}

.page-home-hero .home_full_cycle_title {
    max-width: none;
    margin: 0;
    color: var(--hero-ink);
    font-size: clamp(42px, 3.45vw, 56px);
    font-weight: 500;
    letter-spacing: -0.048em;
    line-height: 0.98;
    white-space: nowrap;
}

.page-home-hero .home_full_cycle_title span {
    display: block;
    color: var(--hero-copper-deep);
}

.page-home-hero .home_full_cycle_text {
    max-width: 660px;
    margin: 0;
    color: rgba(21, 34, 31, 0.76);
    font-size: clamp(15px, 1.05vw, 17px);
    font-weight: 400;
    line-height: 1.5;
}

.page-home-hero .home_full_cycle_metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 20px;
}

.page-home-hero .home_full_cycle_metrics > span {
    display: flex;
    min-height: 60px;
    align-items: center;
    gap: 12px;
    padding: 11px 14px;
    border: 1px solid rgba(21, 34, 31, 0.12);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.52);
    color: rgba(21, 34, 31, 0.7);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.25;
    backdrop-filter: blur(12px);
}

.page-home-hero .home_full_cycle_metrics strong {
    color: var(--hero-ink);
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -0.04em;
    line-height: 1;
}

.page-home-hero .home_full_cycle_grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(14px, 1.35vw, 22px);
}

.page-home-hero .home_full_cycle_card {
    display: flex;
    min-width: 0;
    min-height: clamp(210px, 15.6vw, 244px);
    height: auto;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: normal;
    justify-content: space-between;
    padding: clamp(19px, 1.55vw, 25px);
    overflow: hidden;
    border: 1px solid rgba(21, 34, 31, 0.11);
    border-radius: clamp(20px, 1.7vw, 26px);
    background: rgba(255, 255, 255, 0.72);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.62);
    color: var(--hero-ink);
    text-decoration: none;
    backdrop-filter: blur(14px);
    transition: transform var(--hero-ease), border-color var(--hero-ease), box-shadow var(--hero-ease), background var(--hero-ease);
}

.page-home-hero .home_full_cycle_card:hover,
.page-home-hero .home_full_cycle_card:focus-visible {
    border-color: rgba(208, 138, 91, 0.72);
    box-shadow: 0 22px 48px rgba(15, 27, 24, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.7);
    transform: translateY(-6px);
}

.page-home-hero .home_full_cycle_card:focus-visible {
    outline: 3px solid rgba(208, 138, 91, 0.34);
    outline-offset: 3px;
}

.page-home-hero .home_full_cycle_card--dark {
    border-color: rgba(247, 245, 239, 0.16);
    background: linear-gradient(145deg, #172a24, #0f1b18);
    box-shadow: inset 0 1px 0 rgba(247, 245, 239, 0.08);
    color: var(--hero-cream);
}

.page-home-hero .home_full_cycle_card--dark:hover,
.page-home-hero .home_full_cycle_card--dark:focus-visible {
    border-color: rgba(224, 142, 88, 0.74);
    background: linear-gradient(145deg, #1d332c, #12221d);
    box-shadow: 0 24px 54px rgba(4, 12, 10, 0.28), inset 0 1px 0 rgba(247, 245, 239, 0.1);
}

.page-home-hero .home_full_cycle_card--copper {
    border-color: rgba(255, 255, 255, 0.34);
    background: linear-gradient(145deg, #e2a071, #c7794c);
    color: #13231f;
}

.page-home-hero .home_full_cycle_card--copper:hover,
.page-home-hero .home_full_cycle_card--copper:focus-visible {
    border-color: rgba(255, 255, 255, 0.72);
    background: linear-gradient(145deg, #e9aa7c, #ce8052);
}

.page-home-hero .home_full_cycle_card_footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.page-home-hero .home_full_cycle_card_icon {
    display: grid;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    place-items: center;
    border: 1px solid rgba(21, 34, 31, 0.12);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.56);
    color: var(--hero-copper-deep);
}

.page-home-hero .home_full_cycle_card--dark .home_full_cycle_card_icon {
    border-color: rgba(247, 245, 239, 0.2);
    background: rgba(247, 245, 239, 0.07);
    color: var(--hero-copper);
}

.page-home-hero .home_full_cycle_card--copper .home_full_cycle_card_icon {
    border-color: rgba(19, 35, 31, 0.18);
    background: rgba(247, 245, 239, 0.25);
    color: #13231f;
}

.page-home-hero .home_full_cycle_card_icon svg {
    display: block;
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.page-home-hero .home_full_cycle_card_body {
    display: block;
    margin: 0 0 15px;
}

.page-home-hero .home_full_cycle_card_heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 14px;
}

.page-home-hero .home_full_cycle_card_title {
    min-width: 0;
    margin: 0;
    color: inherit;
    font-size: clamp(21px, 1.55vw, 25px);
    font-weight: 600;
    letter-spacing: -0.035em;
    line-height: 1.05;
}

.page-home-hero .home_full_cycle_card_text {
    display: block;
    color: rgba(21, 34, 31, 0.7);
    font-size: clamp(13px, 0.94vw, 15px);
    font-weight: 400;
    line-height: 1.46;
}

.page-home-hero .home_full_cycle_card--dark .home_full_cycle_card_text {
    color: rgba(247, 245, 239, 0.68);
}

.page-home-hero .home_full_cycle_card--copper .home_full_cycle_card_text {
    color: rgba(19, 35, 31, 0.72);
}

.page-home-hero .home_full_cycle_card_footer {
    padding-top: 14px;
    border-top: 1px solid rgba(21, 34, 31, 0.1);
    color: inherit;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.page-home-hero .home_full_cycle_card--dark .home_full_cycle_card_footer {
    border-top-color: rgba(247, 245, 239, 0.14);
}

.page-home-hero .home_full_cycle_card--copper .home_full_cycle_card_footer {
    border-top-color: rgba(19, 35, 31, 0.14);
}

.page-home-hero .home_full_cycle_arrow {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 50%;
    background: var(--hero-ink);
    color: var(--hero-cream);
    font-size: 18px;
    line-height: 1;
    transition: background var(--hero-ease), color var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .home_full_cycle_card--dark .home_full_cycle_arrow {
    background: var(--hero-copper);
    color: var(--hero-ink);
}

.page-home-hero .home_full_cycle_card--copper .home_full_cycle_arrow {
    background: rgba(19, 35, 31, 0.9);
    color: var(--hero-cream);
}

.page-home-hero .home_full_cycle_card:hover .home_full_cycle_arrow,
.page-home-hero .home_full_cycle_card:focus-visible .home_full_cycle_arrow {
    background: var(--hero-copper);
    color: var(--hero-ink);
    transform: rotate(45deg);
}

.page-home-hero .home_full_cycle_footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    margin-top: clamp(20px, 2.2vw, 32px);
    padding-top: clamp(20px, 2.2vw, 30px);
    border-top: 1px solid rgba(21, 34, 31, 0.14);
}

.page-home-hero .home_full_cycle_footer_copy > span {
    display: block;
    margin-bottom: 6px;
    color: var(--hero-ink);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.2;
}

.page-home-hero .home_full_cycle_footer_copy p {
    margin: 0;
    color: rgba(21, 34, 31, 0.64);
    font-size: 14px;
    line-height: 1.45;
}

.page-home-hero .home_full_cycle_button {
    display: inline-flex;
    min-width: min(320px, 100%);
    height: 52px;
    flex: 0 0 auto;
    flex-wrap: nowrap;
    align-content: normal;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 0 10px 0 24px;
    border: 1px solid rgba(247, 245, 239, 0.18);
    border-radius: 999px;
    background: var(--hero-ink);
    color: var(--hero-cream);
    cursor: pointer;
    font-family: inherit;
    text-decoration: none;
    box-shadow: 0 16px 34px rgba(15, 27, 24, 0.18);
    transition: background var(--hero-ease), box-shadow var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .home_full_cycle_button:hover,
.page-home-hero .home_full_cycle_button:focus-visible {
    background: #20362f;
    box-shadow: 0 20px 42px rgba(15, 27, 24, 0.24);
    transform: translateY(-2px);
}

.page-home-hero .home_full_cycle_button:focus-visible {
    outline: 3px solid rgba(208, 138, 91, 0.36);
    outline-offset: 3px;
}

.page-home-hero .home_full_cycle_button_text {
    color: inherit;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
}

.page-home-hero .home_full_cycle_button_arrow {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: 50%;
    background: var(--hero-copper);
    color: var(--hero-ink);
    font-size: 19px;
    line-height: 1;
    transition: transform var(--hero-ease);
}

.page-home-hero .home_full_cycle_button:hover .home_full_cycle_button_arrow,
.page-home-hero .home_full_cycle_button:focus-visible .home_full_cycle_button_arrow {
    transform: translateX(3px);
}

@media (max-width: 1000px) {
    .page-home-hero .home_full_cycle {
        width: calc(100% - 32px);
        margin-top: clamp(34px, 6vw, 52px);
        padding: clamp(24px, 4.5vw, 36px);
        border-radius: 30px;
    }

    .page-home-hero .home_full_cycle_head {
        grid-template-columns: 1fr;
        gap: 24px;
        margin-bottom: 28px;
    }

    .page-home-hero .home_full_cycle_title {
        font-size: clamp(38px, 5.4vw, 50px);
    }

    .page-home-hero .home_full_cycle_text {
        font-size: 17px;
    }

    .page-home-hero .home_full_cycle_grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .page-home-hero .home_full_cycle_card {
        min-height: 220px;
        padding: 20px;
        border-radius: 24px;
    }

    .page-home-hero .home_full_cycle_card_title {
        font-size: 23px;
    }

    .page-home-hero .home_full_cycle_card_text {
        font-size: 15px;
    }
}

@media (max-width: 620px) {
    .page-home-hero .home_full_cycle {
        width: calc(100% - 24px);
        padding: 24px 16px 20px;
        border-radius: 26px;
    }

    .page-home-hero .home_full_cycle::before {
        top: -170px;
        right: -230px;
    }

    .page-home-hero .home_full_cycle_eyebrow {
        margin-bottom: 13px;
        font-size: 10px;
    }

    .page-home-hero .home_full_cycle_title {
        font-size: clamp(27px, 7.55vw, 31px);
        line-height: 1;
    }

    .page-home-hero .home_full_cycle_text {
        font-size: 15px;
        line-height: 1.48;
    }

    .page-home-hero .home_full_cycle_metrics {
        gap: 8px;
        margin-top: 18px;
    }

    .page-home-hero .home_full_cycle_metrics > span {
        min-height: 68px;
        gap: 8px;
        padding: 12px;
        border-radius: 16px;
        font-size: 11px;
    }

    .page-home-hero .home_full_cycle_metrics strong {
        font-size: 27px;
    }

    .page-home-hero .home_full_cycle_grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .page-home-hero .home_full_cycle_card {
        min-height: 206px;
        padding: 18px;
    }

    .page-home-hero .home_full_cycle_card_body {
        margin: 0 0 14px;
    }

    .page-home-hero .home_full_cycle_card_heading {
        gap: 12px;
        margin-bottom: 12px;
    }

    .page-home-hero .home_full_cycle_card_title {
        font-size: 23px;
    }

    .page-home-hero .home_full_cycle_card_text {
        font-size: 14px;
    }

    .page-home-hero .home_full_cycle_footer {
        align-items: stretch;
        flex-direction: column;
        margin-top: 22px;
        padding-top: 22px;
    }

    .page-home-hero .home_full_cycle_button {
        width: 100%;
        min-width: 0;
        height: 52px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-home-hero .home_full_cycle *,
    .page-home-hero .home_full_cycle *::before,
    .page-home-hero .home_full_cycle *::after {
        transition-duration: 0.01ms !important;
    }
}

/* Application modal and quiz belong to the first-screen conversion flow. */
.page-home-hero .application,
.page-home-hero #popap_quiz {
    inset: 0;
    width: 100%;
    height: 100dvh;
    padding: 20px;
    background: rgba(7, 15, 13, 0.78);
    backdrop-filter: blur(10px);
}

.page-home-hero .application,
.page-home-hero .application *,
.page-home-hero #popap_quiz,
.page-home-hero #popap_quiz * {
    box-sizing: border-box;
}

.page-home-hero .application {
    z-index: 1200;
}

.page-home-hero .application_1 {
    position: relative;
    width: min(680px, 100%);
    max-height: calc(100dvh - 40px);
    overflow: hidden auto;
    border: 1px solid rgba(21, 34, 31, 0.12);
    border-radius: 24px;
    background:
        radial-gradient(circle at 100% 0, rgba(224, 142, 88, 0.13), transparent 34%),
        #f7f5ef;
    box-shadow: 0 34px 90px rgba(3, 10, 8, 0.38);
}

.page-home-hero .application_2 {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    min-height: 0;
    margin: 0;
    padding: 18px;
}

.page-home-hero .applicationClose {
    position: relative;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid rgba(21, 34, 31, 0.14);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.72);
    transition: background var(--hero-ease), border-color var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .applicationClose::before,
.page-home-hero .applicationClose::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 15px;
    height: 1.5px;
    border-radius: 99px;
    background: var(--hero-ink);
    content: "";
    transition: background var(--hero-ease);
}

.page-home-hero .applicationClose::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.page-home-hero .applicationClose::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.page-home-hero .applicationClose:hover {
    border-color: var(--hero-ink);
    background: var(--hero-ink);
    transform: rotate(3deg);
}

.page-home-hero .applicationCloseImg {
    display: none;
}

.page-home-hero .applicationClose:hover::before,
.page-home-hero .applicationClose:hover::after {
    background: #fff;
}

.page-home-hero .application_p2 {
    display: block !important;
    margin: 0;
    padding: 38px 92px 20px 38px;
    color: var(--hero-ink);
    font-family: 'Raleway', sans-serif;
    font-size: clamp(25px, 2.2vw, 32px);
    font-weight: 500;
    line-height: 1.14;
    letter-spacing: -0.032em;
}

.page-home-hero .applicationForm {
    min-height: 0;
    padding: 0 38px 38px;
    border-radius: 0;
    background: transparent;
}

.page-home-hero .formApplicationForm {
    display: grid;
    gap: 12px;
    align-items: stretch;
    width: 100%;
    margin: 0;
}

.page-home-hero .application .form_input,
.page-home-hero #contact_quiz .quiz_input {
    width: 100%;
    height: 56px;
    margin: 0 0 12px;
    padding: 0 16px;
    border: 1px solid rgba(21, 34, 31, 0.17);
    border-radius: 12px;
    outline: 0;
    background: rgba(255, 255, 255, 0.76);
    color: var(--hero-ink);
    font-family: 'Raleway', sans-serif;
    font-size: 16px;
    line-height: 1;
    text-indent: 0;
    transition: background var(--hero-ease), border-color var(--hero-ease), box-shadow var(--hero-ease);
}

.page-home-hero .application .form_input {
    margin: 0;
}

.page-home-hero .application .form_input:focus,
.page-home-hero #contact_quiz .quiz_input:focus {
    border-color: #d47c47;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(212, 124, 71, 0.12);
}

.page-home-hero .application .form_input::placeholder,
.page-home-hero #contact_quiz .quiz_input::placeholder {
    color: #7d8985;
    font-size: 15px;
    line-height: normal;
}

.page-home-hero .rebrand-phone-control {
    position: relative;
    display: block;
    width: 100%;
}

.page-home-hero .rebrand-phone-control .phone {
    padding-right: 54px;
}

.page-home-hero .rebrand-phone-progress {
    position: absolute;
    top: 28px;
    right: 16px;
    width: 22px;
    height: 22px;
    border: 0;
    border-radius: 50%;
    background: conic-gradient(
        from -90deg,
        #dc824d 0 var(--phone-progress, 0%),
        rgba(21, 34, 31, 0.12) var(--phone-progress, 0%) 100%
    );
    transform: translateY(-50%);
}

.page-home-hero .rebrand-phone-progress::before {
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    background: #fff;
    content: "";
}

.page-home-hero .rebrand-phone-progress::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    content: "";
    opacity: 0;
    transform: translate(-50%, -58%) rotate(45deg);
}

.page-home-hero .rebrand-phone-control.is-complete .rebrand-phone-progress {
    background: #dc824d;
}

.page-home-hero .rebrand-phone-control.is-complete .rebrand-phone-progress::before {
    opacity: 0;
}

.page-home-hero .rebrand-phone-control.is-complete .rebrand-phone-progress::after {
    opacity: 1;
}

.page-home-hero .rebrand-phone-hint {
    display: block;
    min-height: 18px;
    margin: -5px 2px 11px;
    color: #71807b;
    font-size: 12px;
    line-height: 1.3;
}

.page-home-hero .application .rebrand-phone-hint {
    align-self: stretch;
    min-height: 16px;
    margin: -6px 2px 0;
    text-align: left;
}

.page-home-hero .application .privacy_checkbox_label,
.page-home-hero #contact_quiz .quiz_privacy_checkbox_label {
    gap: 10px;
    margin: 4px 0 18px;
    color: #65736e;
    font-size: 12px;
    line-height: 1.45;
}

.page-home-hero .application .privacy_checkbox_label {
    align-items: flex-start;
    width: 100%;
    margin: 2px 0 4px;
}

.page-home-hero .application .privacy_checkbox_label a,
.page-home-hero #contact_quiz .quiz_privacy_checkbox_label a {
    color: #a85f37;
}

.page-home-hero .application .privacy_checkbox,
.page-home-hero #contact_quiz .privacy_checkbox {
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin: 0;
    accent-color: #d47c47;
}

.page-home-hero .application .forb_bt,
.page-home-hero #button_quiz3 {
    width: 100%;
    height: 56px;
    margin: 0;
    border: 1px solid #eba06c;
    border-radius: 12px;
    background: linear-gradient(135deg, #f1a36e, #d97842);
    box-shadow: 0 14px 28px rgba(197, 99, 47, 0.25), inset 0 1px rgba(255, 255, 255, 0.34);
    color: #fff;
    font-family: 'Raleway', sans-serif;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: box-shadow var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .application .forb_bt {
    margin-top: 2px;
}

.page-home-hero .application .forb_bt:hover,
.page-home-hero #button_quiz3:hover {
    animation: none;
    box-shadow: 0 18px 34px rgba(197, 99, 47, 0.34), inset 0 1px rgba(255, 255, 255, 0.4);
    transform: translateY(-2px);
}

/* Quiz */
.page-home-hero #popap_quiz {
    z-index: 1300;
}

.page-home-hero .window_quiz {
    display: flex;
    width: min(920px, 100%);
    height: min(592px, calc(100dvh - 40px));
    min-height: min(592px, calc(100dvh - 40px));
    max-width: none;
    max-height: calc(100dvh - 40px);
    margin: 0;
    overflow: visible;
    flex-direction: column;
    border: 1px solid rgba(21, 34, 31, 0.12);
    border-radius: 24px;
    background:
        radial-gradient(circle at 100% 0, rgba(224, 142, 88, 0.12), transparent 30%),
        #f7f5ef;
    box-shadow: 0 34px 90px rgba(3, 10, 8, 0.38);
}

.page-home-hero .heder_quiz {
    display: grid;
    grid-template-areas: "title close";
    grid-template-columns: minmax(0, 1fr) 42px;
    gap: 16px;
    align-items: center;
    width: auto;
    margin: 0;
    padding: 16px 20px;
    border-bottom: 1px solid rgba(21, 34, 31, 0.10);
}

.page-home-hero #title_quiz,
.page-home-hero #title_quiz_fin {
    grid-area: title;
    margin: 0;
}

.page-home-hero #title_quiz_fin {
    align-items: flex-start;
}

.page-home-hero .text3_quiz {
    color: var(--hero-ink);
    font-size: clamp(24px, 2vw, 30px);
    font-weight: 500;
    line-height: 1.12;
    letter-spacing: -0.03em;
}

.page-home-hero .text4_quiz {
    margin-top: 4px;
    color: #64726d;
    font-size: 14px;
    line-height: 1.45;
}

.page-home-hero .text5_quiz {
    grid-area: close;
    display: grid;
    position: relative;
    width: 42px;
    height: 42px;
    margin: 0;
    place-items: center;
    border: 1px solid rgba(21, 34, 31, 0.14);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.72);
    color: var(--hero-ink);
    font-size: 0;
    line-height: 0;
    transition: background var(--hero-ease), color var(--hero-ease);
}

.page-home-hero .text5_quiz::before,
.page-home-hero .text5_quiz::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    height: 2px;
    border-radius: 2px;
    background: currentColor;
    content: "";
}

.page-home-hero .text5_quiz::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.page-home-hero .text5_quiz::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.page-home-hero .text5_quiz:hover {
    animation: none;
    background: var(--hero-ink);
    color: #fff;
}

.page-home-hero .question_quiz_0 {
    flex: 1 1 auto;
    min-height: 0;
    margin: 0;
    padding: 18px 20px 20px;
    overflow: hidden;
    scrollbar-color: rgba(21, 34, 31, 0.25) transparent;
}

.page-home-hero #question_quiz_1:not([style]),
.page-home-hero .question_quiz_0[style*="display: block"] {
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto;
}

.page-home-hero .question_quiz {
    align-items: baseline;
    gap: 8px;
}

.page-home-hero .text6_quiz,
.page-home-hero .text7_quiz {
    color: var(--hero-ink);
    font-size: clamp(20px, 1.8vw, 25px);
    line-height: 1.2;
    letter-spacing: -0.025em;
}

.page-home-hero .text6_quiz {
    color: #c66e3d;
}

.page-home-hero .answer_quiz,
.page-home-hero .answer_quiz2,
.page-home-hero .answer_quiz3 {
    min-height: 0;
    height: 100%;
    max-height: 100%;
    margin: 0;
    padding: 10px 2px;
    overflow-y: auto;
    scrollbar-color: rgba(21, 34, 31, 0.25) transparent;
}

.page-home-hero .answer_quiz {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    align-content: safe center;
}

.page-home-hero .answer_quiz2,
.page-home-hero .answer_quiz3 {
    justify-content: safe center;
}

.page-home-hero .answer_quiz > [id^="quiz_answer"],
.page-home-hero .answer_quiz2 > [id^="quiz_answer"],
.page-home-hero .answer_quiz3 > [id^="quiz_answer"] {
    display: none;
}

.page-home-hero .options_quiz,
.page-home-hero .options_quiz2,
.page-home-hero .options_quiz3 {
    position: relative;
    width: auto;
    max-width: none;
    height: auto;
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(21, 34, 31, 0.12);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.68);
    transition: border-color var(--hero-ease), box-shadow var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero .options_quiz:hover,
.page-home-hero .options_quiz2:hover,
.page-home-hero .options_quiz3:hover {
    border-color: rgba(212, 124, 71, 0.56);
    box-shadow: 0 12px 24px rgba(21, 34, 31, 0.10);
    transform: translateY(-2px);
}

.page-home-hero .img_quiz,
.page-home-hero .img_quiz2 {
    width: 100%;
    height: 118px;
    border-radius: 0;
    object-fit: cover;
}

.page-home-hero .sample_quiz,
.page-home-hero .sample_quiz2,
.page-home-hero .sample_quiz3 {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 30px;
    min-width: 30px;
    height: 30px;
    margin: 0;
    display: grid;
    place-items: center;
    border: 1px solid rgba(21, 34, 31, 0.18);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 5px 14px rgba(3, 10, 8, 0.14);
    transition: background var(--hero-ease), border-color var(--hero-ease), box-shadow var(--hero-ease);
}

.page-home-hero .text8_quiz {
    margin: 0;
    color: #858e89;
    font-size: 18px;
    line-height: 1;
    opacity: 1;
    transition: color var(--hero-ease), opacity var(--hero-ease);
}

.page-home-hero .options_quiz.is-selected,
.page-home-hero .options_quiz2.is-selected,
.page-home-hero .options_quiz3.is-selected {
    border-color: rgba(212, 124, 71, 0.78);
    box-shadow: 0 0 0 2px rgba(212, 124, 71, 0.13), 0 12px 24px rgba(21, 34, 31, 0.11);
}

.page-home-hero .options_quiz.is-selected .sample_quiz,
.page-home-hero .options_quiz2.is-selected .sample_quiz2,
.page-home-hero .options_quiz3.is-selected .sample_quiz3 {
    border-color: #efb083;
    background: linear-gradient(135deg, #ed9c65, #c96b38) !important;
    box-shadow: 0 6px 16px rgba(182, 91, 43, 0.34), inset 0 1px rgba(255, 255, 255, 0.34);
}

.page-home-hero .options_quiz.is-selected .text8_quiz,
.page-home-hero .options_quiz2.is-selected .text8_quiz,
.page-home-hero .options_quiz3.is-selected .text8_quiz {
    color: #fff;
    opacity: 1;
}

.page-home-hero .text9_quiz,
.page-home-hero .text9_quiz2,
.page-home-hero .text9_quiz3 {
    min-height: 54px;
    margin: 0;
    padding: 11px 12px;
    color: var(--hero-ink);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    text-align: left;
}

.page-home-hero .button_quiz {
    gap: 10px;
    margin: 0;
}

.page-home-hero .button_quiz1_1,
.page-home-hero .button_quiz1_2,
.page-home-hero .button_quiz2,
.page-home-hero .button_quiz02 {
    min-height: 44px;
    padding: 10px 20px;
    border: 1px solid rgba(21, 34, 31, 0.14);
    border-radius: 10px;
}

.page-home-hero .button_quiz02,
.page-home-hero .button_quiz2 {
    border-color: #dc824d;
    background: linear-gradient(135deg, #ea995f, #cf713d);
}

.page-home-hero #contact_quiz {
    align-items: stretch;
    width: min(520px, calc(100% - 48px));
    max-height: 100%;
    margin: 0 auto;
}

.page-home-hero #quiz_contact_stage {
    position: relative;
    display: none;
    flex: 1 1 auto;
    min-height: 0;
    padding: 20px;
    align-items: center;
    justify-content: center;
    overflow-y: auto;
    scrollbar-color: rgba(21, 34, 31, 0.25) transparent;
}

.page-home-hero .quiz_contact_actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    width: 100%;
}

.page-home-hero #button_quiz_back_contact {
    position: absolute;
    bottom: 20px;
    left: 20px;
    min-height: 44px;
    padding: 10px 20px;
    border: 1px solid rgba(21, 34, 31, 0.14);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.82);
    color: var(--hero-ink);
    font-family: 'Raleway', sans-serif;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background var(--hero-ease), border-color var(--hero-ease), transform var(--hero-ease);
}

.page-home-hero #button_quiz_back_contact:hover {
    border-color: rgba(212, 124, 71, 0.56);
    background: #fff;
    transform: translateY(-2px);
}

.page-home-hero #contact_quiz .quiz_privacy_checkbox_label {
    width: 100%;
    max-width: none;
}

@media (min-width: 901px) {
    .page-home-hero #question_quiz_1 .answer_quiz {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: safe center;
    }

    .page-home-hero #question_quiz_1 .options_quiz {
        width: 100%;
        max-width: 270px;
        flex: 0 1 270px;
    }
}

@media (min-width: 641px) and (max-height: 760px) {
    .page-home-hero .heder_quiz {
        padding-block: 11px;
    }

    .page-home-hero .question_quiz_0 {
        padding-block: 14px;
    }

    .page-home-hero .img_quiz,
    .page-home-hero .img_quiz2 {
        height: 94px;
    }

    .page-home-hero .text9_quiz,
    .page-home-hero .text9_quiz2,
    .page-home-hero .text9_quiz3 {
        min-height: 48px;
        padding-block: 9px;
    }
}

@media (max-width: 640px) {
    .page-home-hero .application,
    .page-home-hero #popap_quiz {
        padding: 0;
    }

    .page-home-hero .application_1,
    .page-home-hero .window_quiz {
        width: 100%;
        max-height: 100dvh;
        min-height: 100dvh;
        border: 0;
        border-radius: 0;
    }

    .page-home-hero .window_quiz {
        height: 100dvh;
        overflow: hidden;
    }

    .page-home-hero .application_1 {
        justify-content: flex-start;
        padding-top: clamp(105px, 16dvh, 145px);
    }

    .page-home-hero .application_2 {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 2;
        padding: 14px;
    }

    .page-home-hero .application_p2 {
        padding: 0 64px 20px 22px;
        font-size: clamp(24px, 7.2vw, 30px);
    }

    .page-home-hero .applicationForm {
        padding: 0 22px 28px;
    }

    .page-home-hero .formApplicationForm {
        gap: 10px;
    }

    .page-home-hero .heder_quiz {
        grid-template-areas: "title close";
        grid-template-columns: minmax(0, 1fr) 40px;
        gap: 8px 10px;
        padding: 12px 14px 10px;
    }

    .page-home-hero .text3_quiz {
        font-size: 20px;
    }

    .page-home-hero .text4_quiz {
        display: none;
    }

    .page-home-hero .text5_quiz {
        width: 40px;
        height: 40px;
    }

    .page-home-hero .question_quiz_0 {
        padding: 14px 16px max(14px, env(safe-area-inset-bottom));
    }

    .page-home-hero .text6_quiz,
    .page-home-hero .text7_quiz {
        font-size: 21px;
    }

    .page-home-hero .answer_quiz {
        grid-template-columns: 1fr;
        gap: 9px;
        padding-block: 8px;
    }

    .page-home-hero .options_quiz,
    .page-home-hero .options_quiz2,
    .page-home-hero .options_quiz3 {
        display: grid;
        grid-template-columns: 112px minmax(0, 1fr);
        grid-template-rows: minmax(76px, auto);
        width: 100%;
        max-width: none;
    }

    .page-home-hero .img_quiz,
    .page-home-hero .img_quiz2 {
        grid-column: 1;
        grid-row: 1;
        width: 112px;
        height: 100%;
        min-height: 76px;
    }

    .page-home-hero .text9_quiz,
    .page-home-hero .text9_quiz2,
    .page-home-hero .text9_quiz3 {
        grid-column: 2;
        grid-row: 1;
        align-self: center;
        min-height: 0;
        padding: 12px 44px 12px 12px;
    }

    .page-home-hero .sample_quiz,
    .page-home-hero .sample_quiz2,
    .page-home-hero .sample_quiz3 {
        top: 50%;
        right: 10px;
        transform: translateY(-50%);
    }

    .page-home-hero .options_quiz:hover,
    .page-home-hero .options_quiz2:hover,
    .page-home-hero .options_quiz3:hover {
        transform: none;
    }

    .page-home-hero #contact_quiz {
        width: 100%;
        margin: 0;
    }

    .page-home-hero #quiz_contact_stage {
        padding: 16px;
    }

    .page-home-hero #button_quiz_back_contact {
        bottom: max(14px, env(safe-area-inset-bottom));
        left: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-home-hero .sparkle::before,
    .page-home-hero .sparklew::before {
        animation: none;
    }
}
