

/* Start:/local/templates/stroy-v1/src/scss/individual_pages/reviews.css?179136818457380*/
:root {
    --en-h1: #2f3947;
    --en-heading: #303b49;
    --en-graphite: #424c5c;
    --en-body: #5d6c7c;
    --en-lead: #536372;
    --en-muted: #697786;
    --en-deep: #5d8aa3;
    --en-blue: #7aafca;
    --en-icon-bg: #edf7fb;
    --en-bg: #f4f4f4;
    --en-bg-brand: #f4f8fb;
    --en-line: #dce8f0;
    --en-hero-line: #d4e4ec;
    --en-orange: #ffa828;
    --en-dark2: #202d3b;
    --en-wide: 1764px;
    --en-cta: 1305px;
    --en-gutter: 32px;
    --shadow-lg: 0 22px 55px rgba(66, 76, 92, 0.13);
    --shadow-sm: 0 12px 30px rgba(66, 76, 92, 0.08);
    --r-hero: 36px;
    --r-cta: 34px;
    --r-card: 24px;
    --r-small: 20px;
    --r-input: 14px;
    --r-btn: 15px;
}

.reviews {
    body.modal-open {
        overflow: hidden;
    }

    h1 {
        font-size: 54px;
        line-height: 1.03;
        letter-spacing: -0.045em;
        color: var(--en-h1);
        font-weight: 700;
    }
    h2 {
        font-size: 38px;
        line-height: 1.12;
        letter-spacing: -0.03em;
        color: var(--en-heading);
        font-weight: 700;
    }
    h3 {
        font-size: 21px;
        line-height: 1.22;
        letter-spacing: -0.015em;
        color: var(--en-heading);
        font-weight: 700;
    }
    p {
        font-size: 17px;
        line-height: 1.58;
        color: var(--en-body);
    }
    .en-wide {
        width: 100%;
        max-width: var(--en-wide);
        margin: 0 auto;
        padding-inline: var(--en-gutter);
    }
    .section {
        padding: 82px 0;
    }
    .section.white {
        background: #fff;
    }
    .section.gray {
        background: var(--en-bg);
    }
    .section.brand {
        background: var(--en-bg-brand);
    }
    .section-head {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(300px, 480px);
        gap: 42px;
        align-items: end;
        margin-bottom: 34px;
    }
    .section-lead {
        margin-top: 16px;
        max-width: 820px;
        color: var(--en-lead);
    }
    .section-side {
        font-size: 14px;
    }
    .eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        padding: 10px 14px;
        border-radius: 999px;
        background: #fff;
        border: 1px solid var(--en-line);
        font-size: 12px;
        line-height: 1.2;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        color: var(--en-deep);
        margin-bottom: 20px;
    }
    .eyebrow:before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--en-orange);
        flex: 0 0 auto;
    }
    .btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 46px;
        padding: 16px 22px;
        border-radius: var(--r-btn);
        border: 0;
        font-size: 14px;
        line-height: 1;
        font-weight: 700;
        cursor: pointer;
        transition:
                transform 0.18s ease,
                box-shadow 0.18s ease;
    }
    .btn:hover {
        transform: translateY(-1px);
    }
    .btn-primary {
        background: var(--en-orange);
        color: #fff;
        box-shadow: 0 12px 24px rgba(255, 168, 40, 0.28);
    }
    .btn-secondary {
        background: #fff;
        color: var(--en-deep);
        border: 1px solid var(--en-line);
    }
    .btn-primary:hover {
        background: var(--en-orange);
        color: #fff;
        box-shadow: 0 12px 24px rgba(255, 168, 40, 0.28);
    }
    .btn-primary:active {
        background: var(--en-orange)!important;
        color: #fff!important;
        box-shadow: 0 12px 24px rgba(255, 168, 40, 0.28)!important;
    }
    .btn-secondary:hover {
        background: #fff;
        color: var(--en-deep);
        border: 1px solid var(--en-line);
    }
    .btn-header {
        background: var(--en-deep);
        color: #fff;
        padding: 14px 18px;
    }
    /* production header */
    .site-header {
        background: #fff;
    }
    .header-meta {
        height: 54px;
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        font-size: 12px;
        color: #888;
    }
    .production-social,
    .header-meta-center,
    .header-actions,
    .mobile-icons {
        display: flex;
        align-items: center;
    }
    .production-social {
        gap: 16px;
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .production-social a {
        display: grid;
        place-items: center;
        min-width: 20px;
        height: 20px;
        color: #9e9e9e;
        font-size: 10px;
        font-weight: 700;
        transition: color 0.2s ease;
    }
    .production-social a:hover {
        color: var(--en-deep);
    }
    .header-meta-center {
        gap: 18px;
    }
    .header-meta-center .phone-link {
        font-size: 17px;
        line-height: 1.43;
        font-weight: 600;
        color: #333;
    }
    .header-meta-center .phone-link:hover {
        color: var(--en-deep);
    }
    .callback-link {
        color: #999;
    }
    .account-link {
        justify-self: end;
        display: grid;
        place-items: center;
        width: 32px;
        height: 32px;
        color: #888;
    }
    .account-link svg {
        width: 18px;
        height: 19px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.7;
    }
    .header-main {
        height: 100px;
        display: grid;
        grid-template-columns: minmax(360px, 1fr) auto minmax(215px, 0.8fr);
        align-items: center;
        gap: 28px;
        padding-inline: 30px;
        border-radius: 4px;
        box-shadow: 0 3px 7px rgba(0, 0, 0, 0.05);
        position: relative;
    }
    .header-brand {
        display: flex;
        align-items: center;
        min-width: 0;
    }
    .logo img {
        width: 150px;
        height: 50px;
        object-fit: contain;
    }
    .logo-text {
        margin-left: 20px;
        font-size: 15px;
        line-height: 21px;
        color: #333;
    }
    .desktop-nav {
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 52px;
        font-size: 12px;
        line-height: 19px;
        font-weight: 700;
        text-transform: uppercase;
        color: #333;
    }
    .nav-item {
        height: 100%;
        position: relative;
        display: flex;
        align-items: center;
    }
    .nav-link,
    .more-link {
        height: 100%;
        display: flex;
        align-items: center;
        border: 0;
        background: transparent;
        padding: 0;
        color: #333;
        font: inherit;
        text-transform: inherit;
        cursor: pointer;
    }
    .nav-link:hover,
    .more-link:hover,
    .nav-link[aria-current="page"] {
        color: var(--en-deep);
    }
    .header-dropdown {
        position: absolute;
        z-index: 20;
        top: 100%;
        left: 0;
        min-width: 230px;
        margin: 0;
        padding: 17px;
        border: 1px solid #edf0f2;
        border-radius: 0 0 12px 12px;
        background: #fff;
        box-shadow: 0 12px 26px rgba(0, 0, 0, 0.1);
        list-style: none;
        visibility: hidden;
        opacity: 0;
        transform: translateY(8px);
        transition:
                opacity 0.2s ease,
                transform 0.2s ease,
                visibility 0.2s;
    }
    .header-dropdown.wide {
        width: 430px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0 16px;
    }
    .header-dropdown a {
        display: block;
        padding: 10px 11px;
        color: #333;
        font-size: 13px;
        line-height: 1.35;
        font-weight: 600;
        text-transform: none;
    }
    .header-dropdown a:hover {
        color: var(--en-deep);
    }
    .nav-item:hover > .header-dropdown,
    .nav-item:focus-within > .header-dropdown {
        visibility: visible;
        opacity: 1;
        transform: translateY(0);
    }
    .header-actions {
        justify-content: flex-end;
        gap: 18px;
    }
    .header-phone {
        font-size: 17px;
        line-height: 1.43;
        font-weight: 600;
        color: #333;
    }
    .header-phone:hover {
        color: var(--en-deep);
    }
    .btn-header {
        padding: 9px 20px;
        min-height: 41px;
        border-radius: 4px;
        background: var(--en-deep);
        font-size: 16px;
    }
    .headerfixed {
        position: fixed;
        z-index: 999;
        top: -100%;
        left: 0;
        right: 0;
        height: 81px;
        background: rgba(255, 255, 255, 0.7);
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
        transition: all 0.5s;
    }
    .headerfixed.show {
        top: 0;
    }
    .headerfixed .header-main {
        height: 81px;
        max-width: var(--en-wide);
        margin-inline: auto;
        box-shadow: none;
    }
    .headerfixed .header-brand .logo img {
        width: 180px;
        height: 60px;
    }
    .headerfixed .desktop-nav {
        height: 81px;
    }
    .mobile-header,
    .mobile-menu {
        display: none;
    }
    /* breadcrumbs */
    /*.breadcrumbs {*/
    /*    padding-top: 38px;*/
    /*}*/
    /*.breadcrumb {*/
    /*    display: flex;*/
    /*    flex-wrap: wrap;*/
    /*    margin: 0 0 10px;*/
    /*    padding: 0 0 15px;*/
    /*    list-style: none;*/
    /*    font-size: 13px;*/
    /*    line-height: 1.43;*/
    /*}*/
    /*.breadcrumb-item {*/
    /*    color: rgba(33, 37, 41, 0.75);*/
    /*}*/
    /*.breadcrumb-item a {*/
    /*    color: var(--en-deep);*/
    /*    font-weight: 500;*/
    /*}*/
    /*.breadcrumb-item + .breadcrumb-item {*/
    /*    padding-left: 5px;*/
    /*}*/
    /*.breadcrumb-item + .breadcrumb-item:before {*/
    /*    content: "";*/
    /*    float: left;*/
    /*    width: 8px;*/
    /*    height: 8px;*/
    /*    margin: 5px 5px 0 0;*/
    /*    background: no-repeat center/8px 8px*/
    /*    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cpath d='M2.5 0 1 1.5 3.5 4 1 6.5 2.5 8l4-4-4-4Z' fill='%23697786'/%3E%3C/svg%3E");*/
    /*}*/
    /*.breadcrumb-item.active {*/
    /*    font-weight: 400;*/
    /*}*/
    /* hero */
    .hero {
        padding: 24px 0 82px;
    }
    .hero-box {
        border: 1px solid var(--en-hero-line);
        border-radius: var(--r-hero);
        background: linear-gradient(135deg, #fff 0%, #f4f8fb 56%, #e8f5fa 100%);
        overflow: hidden;
    }
    .hero-grid {
        min-height: 650px;
        padding: 58px;
        display: grid;
        grid-template-columns: minmax(0, 0.94fr) minmax(440px, 0.76fr);
        gap: 64px;
        align-items: center;
    }
    .hero-lead {
        margin-top: 22px;
        max-width: 760px;
        font-size: 19px;
        color: var(--en-lead);
    }
    .hero-actions {
        display: flex;
        gap: 12px;
        flex-wrap: wrap;
        margin-top: 30px;
    }
    .hero-proof {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
        margin-top: 36px;
    }
    .proof {
        padding: 15px 14px;
        border-radius: 17px;
        border: 1px solid var(--en-line);
        background: rgba(255, 255, 255, 0.84);
    }
    .proof strong {
        display: block;
        font-size: 16px;
        color: var(--en-heading);
    }
    .proof span {
        display: block;
        margin-top: 4px;
        font-size: 12px;
        line-height: 1.45;
        color: var(--en-muted);
    }
    .hero-collage {
        position: relative;
        min-height: 520px;
    }
    .hero-shot {
        position: absolute;
        overflow: hidden;
        border: 8px solid #fff;
        border-radius: 29px;
        background: #fff;
        box-shadow: var(--shadow-lg);
    }
    .hero-shot img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: top;
    }
    .hero-shot.one {
        width: 47%;
        height: 500px;
        left: 7%;
        top: 4%;
        transform: rotate(-3deg);
    }
    .hero-shot.two {
        width: 47%;
        height: 480px;
        right: 5%;
        top: 8%;
        transform: rotate(3deg);
    }
    .hero-yandex {
        position: absolute;
        z-index: 3;
        left: 18%;
        right: 12%;
        bottom: 4%;
        display: flex;
        align-items: center;
        gap: 15px;
        padding: 18px 20px;
        background: #fff;
        border: 1px solid var(--en-line);
        border-radius: 20px;
        box-shadow: var(--shadow-sm);
    }
    .hero-yandex .ya {
        display: grid;
        place-items: center;
        width: 46px;
        height: 46px;
        border-radius: 15px;
        background: #fff2e8;
        color: #e9362f;
        font-size: 25px;
        font-weight: 700;
    }
    .hero-yandex strong {
        display: block;
        color: var(--en-heading);
    }
    .hero-yandex span {
        display: block;
        margin-top: 3px;
        font-size: 12px;
        color: var(--en-muted);
    }
    /* Фон внешней Hero-секции */
    .hero {
        background: #f4f8fb;
        /*padding-top: 8px;*/
    }
    /*.breadcrumbs {*/
    /*    background: #f4f8fb;*/
    /*}*/
    /*.breadcrumb {*/
    /*    margin-bottom: 0;*/
    /*    padding-bottom: 4px;*/
    /*}*/
    /*.breadcrumb-item + .breadcrumb-item:before {*/
    /*    filter: brightness(0);*/
    /*}*/
    .hero-box {
        box-shadow: var(--shadow-lg);
    }
    /* yandex */
    .yandex-panel {
        display: grid;
        grid-template-columns: 380px 1fr;
        gap: 36px;
        padding: 36px;
        border-radius: 30px;
        background: #fff;
        border: 1px solid var(--en-line);
        box-shadow: var(--shadow-sm);
    }
    .yandex-summary {
        padding: 30px;
        border-radius: 24px;
        background: linear-gradient(145deg, #fff8df, #fffdf4);
        border: 1px solid #f4e8b9;
    }
    .yandex-wordmark {
        width: 238px;
        height: auto;
    }
    .rating-number {
        display: flex;
        align-items: end;
        gap: 14px;
        margin-top: 28px;
    }
    .rating-number strong {
        font-size: 64px;
        line-height: 0.9;
        color: var(--en-heading);
        letter-spacing: -0.06em;
    }
    .rating-stars {
        font-size: 22px;
        letter-spacing: 2px;
        color: #ffcc32;
    }
    .rating-count {
        margin-top: 15px;
        font-size: 14px;
        line-height: 1.55;
    }
    .yandex-summary .btn {
        margin-top: 24px;
        width: 100%;
    }
    .yandex-note {
        display: block;
        margin-top: 12px;
        font-size: 11px;
        line-height: 1.45;
        color: var(--en-muted);
    }
    .yandex-reviews {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
    }
    .text-review {
        display: flex;
        flex-direction: column;
        padding: 24px;
        border: 1px solid var(--en-line);
        border-radius: 22px;
        background: #fff;
    }
    .review-author {
        display: flex;
        align-items: center;
        gap: 12px;
    }
    .review-author .avatar {
        display: grid;
        place-items: center;
        width: 42px;
        height: 42px;
        margin-top: 0;
        border-radius: 50%;
        background: var(--en-icon-bg);
        color: var(--en-deep);
        font-size: 15px;
        line-height: 1;
        font-weight: 700;
    }
    .review-author strong {
        display: block;
        font-size: 15px;
        color: var(--en-heading);
    }
    .review-author span {
        display: block;
        margin-top: 3px;
        font-size: 11px;
        color: var(--en-muted);
    }
    .mini-stars {
        margin: 17px 0 12px;
        color: #ffbe1a;
        letter-spacing: 1px;
    }
    .text-review p {
        font-size: 14px;
        line-height: 1.58;
    }
    .text-review a {
        margin-top: auto;
        padding-top: 18px;
        font-size: 12px;
        font-weight: 700;
        color: var(--en-deep);
    }
    /* CRM stories */
    .story-filter-bar {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
        gap: 12px;
        align-items: end;
        margin-bottom: 28px;
        padding: 18px 20px;
        border: 1px solid var(--en-line);
        border-radius: 22px;
        background: #fff;
        box-shadow: var(--shadow-sm);
    }
    .story-filter {
        display: flex;
        flex-direction: column;
        gap: 7px;
        min-width: 0;
    }
    .story-filter > span {
        font-size: 12px;
        line-height: 1.2;
        font-weight: 700;
        color: var(--en-heading);
    }
    .story-filter select {
        width: 100%;
        min-height: 44px;
        border: 1px solid var(--en-line);
        border-radius: 14px;
        background: #f8fbfd;
        color: var(--en-body);
        padding: 11px 34px 11px 13px;
        font-size: 13px;
        outline: none;
    }
    .story-filter select:focus {
        border-color: var(--en-blue);
        box-shadow: 0 0 0 3px rgba(122, 175, 202, 0.12);
    }
    .story-filter-reset {
        min-height: 44px;
        padding: 11px 14px;
        border: 1px solid var(--en-line);
        border-radius: 14px;
        background: #fff;
        color: var(--en-deep);
        font-size: 12px;
        font-weight: 700;
        cursor: pointer;
    }
    .story-filter-reset:hover {
        border-color: var(--en-blue);
    }
    .story-grid {
        display: flex;
        gap: 18px;
        overflow-x: auto;
        padding: 4px 4px 24px;
        scroll-snap-type: x mandatory;
        scrollbar-width: thin;
        scrollbar-color: var(--en-blue) #e7eef2;
    }
    .story-grid::-webkit-scrollbar {
        height: 8px;
    }
    .story-grid::-webkit-scrollbar-track {
        background: #e7eef2;
        border-radius: 999px;
    }
    .story-grid::-webkit-scrollbar-thumb {
        background: var(--en-blue);
        border-radius: 999px;
    }
    .story-card {
        display: flex;
        flex: 0 0 min(430px, calc(100vw - 40px));
        flex-direction: column;
        padding: 25px;
        border: 1px solid var(--en-line);
        border-radius: 24px;
        background: #fff;
        box-shadow: var(--shadow-sm);
        scroll-snap-align: start;
    }
    .story-card[hidden] {
        display: none;
    }
    .story-card-top {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 17px;
    }
    .story-badge,
    .story-kind {
        display: inline-flex;
        align-items: center;
        border-radius: 999px;
        font-size: 10px;
        line-height: 1.2;
        font-weight: 700;
    }
    .story-badge {
        padding: 8px 10px;
        background: #fff5e4;
        color: #a36b12;
    }
    .story-kind {
        color: var(--en-deep);
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }
    .story-card h3 {
        font-size: 21px;
    }
    .story-meta {
        display: grid;
        gap: 10px;
        margin-top: 20px;
        padding-top: 18px;
        border-top: 1px solid var(--en-line);
    }
    .story-meta > div {
        display: grid;
        grid-template-columns: 96px minmax(0, 1fr);
        gap: 12px;
        align-items: baseline;
        font-size: 13px;
        line-height: 1.4;
    }
    .story-meta span {
        color: var(--en-muted);
    }
    .story-meta a {
        color: var(--en-deep);
        font-weight: 700;
    }
    .story-meta a:hover {
        text-decoration: underline;
    }
    .story-facts {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        margin-top: 20px;
    }
    .story-facts > div {
        padding: 12px 10px;
        border-radius: 15px;
        background: var(--en-icon-bg);
    }
    .story-facts span,
    .story-facts strong {
        display: block;
    }
    .story-facts span {
        font-size: 10px;
        color: var(--en-muted);
    }
    .story-facts strong {
        margin-top: 4px;
        font-size: 13px;
        color: var(--en-heading);
    }
    .story-text {
        margin-top: 19px;
        font-size: 14px;
        line-height: 1.58;
    }
    .story-result {
        display: grid;
        gap: 5px;
        margin-top: auto;
        padding-top: 18px;
    }
    .story-result span {
        font-size: 11px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        color: var(--en-deep);
    }
    .story-result strong {
        font-size: 13px;
        line-height: 1.4;
        color: var(--en-heading);
    }
    .story-empty {
        flex: 0 0 100%;
        padding: 30px;
        border: 1px dashed var(--en-blue);
        border-radius: 20px;
        text-align: center;
        color: var(--en-muted);
    }
    /* story carousel */
    .story-card {
        flex-basis: 380px;
        height: 500px;
    }
    .story-carousel {
        position: relative;
    }
    .story-scroll {
        position: absolute;
        z-index: 2;
        top: 50%;
        display: grid;
        place-items: center;
        width: 42px;
        height: 42px;
        padding: 0;
        border: 1px solid var(--en-line);
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.96);
        color: var(--en-deep);
        font-size: 24px;
        line-height: 1;
        box-shadow: var(--shadow-sm);
        cursor: pointer;
        transform: translateY(-50%);
    }
    .story-scroll:hover {
        border-color: var(--en-blue);
    }
    .story-scroll:disabled {
        opacity: 0.4;
        cursor: default;
    }
    .story-scroll-prev {
        left: -12px;
    }
    .story-scroll-next {
        right: -12px;
    }
    .story-carousel:not(.has-overflow) .story-scroll {
        display: none;
    }
    .story-load-more,
    .gallery-load-more {
        display: block;
        margin: 14px auto 0;
        min-height: 44px;
        padding: 11px 18px;
        border: 1px solid var(--en-line);
        border-radius: 14px;
        background: #fff;
        color: var(--en-deep);
        font-size: 12px;
        font-weight: 700;
        cursor: pointer;
        box-shadow: var(--shadow-sm);
    }
    .story-load-more:hover,
    .gallery-load-more:hover {
        border-color: var(--en-blue);
    }
    .chat-card[hidden] {
        display: none;
    }
    @media (max-width: 720px) {
        .story-carousel {
            margin-inline: -20px;
        }
        .story-grid {
            padding-inline: 20px;
            scroll-padding-inline: 20px;
        }
        .story-card {
            flex-basis: calc(100vw - 40px);
            height: auto;
        }
        .story-scroll {
            width: 40px;
            height: 40px;
        }
        .story-scroll-prev {
            left: 8px;
        }
        .story-scroll-next {
            right: 8px;
        }
    }
    @media (min-width: 721px) {
        .story-card {
            padding: 20px;
        }
        .story-card-top {
            margin-bottom: 12px;
        }
        .story-card h3 {
            font-size: 19px;
            line-height: 1.2;
        }
        .story-meta {
            gap: 7px;
            margin-top: 14px;
            padding-top: 14px;
        }
        .story-meta > div {
            grid-template-columns: 86px minmax(0, 1fr);
            font-size: 12px;
            line-height: 1.3;
        }
        .story-facts {
            gap: 7px;
            margin-top: 14px;
        }
        .story-facts > div {
            padding: 10px 8px;
        }
        .story-text {
            margin-top: 14px;
            font-size: 13px;
            line-height: 1.48;
        }
        .story-result {
            gap: 4px;
            padding-top: 12px;
        }
    }
    /* chat gallery */
    .chat-intro {
        display: flex;
        align-items: end;
        justify-content: space-between;
        gap: 24px;
        margin-bottom: 34px;
    }
    .gallery-controls {
        display: flex;
        align-items: center;
        gap: 10px;
    }
    .gallery-count {
        min-width: 64px;
        text-align: center;
        font-size: 12px;
        font-weight: 700;
        color: var(--en-muted);
    }
    .gallery-arrow {
        display: grid;
        place-items: center;
        width: 46px;
        height: 46px;
        border: 1px solid var(--en-line);
        border-radius: 15px;
        background: #fff;
        color: var(--en-deep);
        font-size: 25px;
        cursor: pointer;
        box-shadow: var(--shadow-sm);
    }
    .gallery-arrow:hover {
        border-color: var(--en-blue);
    }
    .chat-gallery {
        display: flex;
        gap: 18px;
        overflow-x: auto;
        padding: 4px 4px 24px;
        scroll-snap-type: x mandatory;
        scrollbar-width: thin;
        scrollbar-color: var(--en-blue) #e7eef2;
    }
    .chat-gallery::-webkit-scrollbar {
        height: 8px;
    }
    .chat-gallery::-webkit-scrollbar-track {
        background: #e7eef2;
        border-radius: 999px;
    }
    .chat-gallery::-webkit-scrollbar-thumb {
        background: var(--en-blue);
        border-radius: 999px;
    }
    .chat-card {
        position: relative;
        display: block;
        flex: 0 0 340px;
        height: 590px;
        padding: 0;
        border: 1px solid var(--en-line);
        border-radius: 24px;
        background: #fff;
        box-shadow: var(--shadow-sm);
        overflow: hidden;
        cursor: zoom-in;
        scroll-snap-align: start;
    }
    .chat-card img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: top;
    }
    .chat-card:after {
        content: "Увеличить";
        position: absolute;
        right: 13px;
        bottom: 13px;
        padding: 8px 10px;
        border-radius: 999px;
        background: rgba(32, 45, 59, 0.82);
        color: #fff;
        font-size: 11px;
        font-weight: 700;
        opacity: 0;
        transition: 0.18s;
    }
    .chat-card:hover:after {
        opacity: 1;
    }
    /* directions */
    .directions {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 18px;
    }
    .direction {
        padding: 26px;
        border-radius: 24px;
        border: 1px solid var(--en-line);
        background: #fff;
        box-shadow: var(--shadow-sm);
    }
    .icon-holder {
        display: grid;
        place-items: center;
        width: 52px;
        height: 52px;
        border-radius: 17px;
        background: var(--en-icon-bg);
        margin-bottom: 20px;
    }
    .icon-holder svg {
        width: 24px;
        height: 24px;
        fill: none;
        stroke: var(--en-deep);
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }
    .direction p {
        font-size: 14px;
        margin-top: 10px;
    }
    .direction a {
        display: inline-block;
        margin-top: 18px;
        font-size: 13px;
        font-weight: 700;
        color: var(--en-deep);
    }
    /* faq */
    .faq-layout {
        display: grid;
        grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
        gap: 42px;
        align-items: start;
    }
    .faq-list {
        display: grid;
        gap: 12px;
    }
    .faq-item {
        padding: 22px;
        border: 1px solid var(--en-line);
        border-radius: 20px;
        background: #fff;
        box-shadow: none;
        overflow: hidden;
    }
    .faq-button {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        padding: 21px 22px;
        border: 0;
        background: #fff;
        color: var(--en-heading);
        font-size: 24px;
        line-height: 1.25;
        font-weight: 700;
        text-align: left;
        cursor: pointer;
    }
    .faq-button:focus-visible {
        outline: 2px solid var(--en-blue);
        outline-offset: -2px;
        border-radius: 10px;
    }
    .faq-button:after {
        content: "+";
        flex: 0 0 15px;
        width: 15px;
        height: 15px;
        margin-left: auto;
        color: var(--en-orange);
        font-size: 27px;
        line-height: 18px;
        font-weight: 700;
        transition: transform 0.2s ease-in-out;
    }
    .faq-button[aria-expanded="true"]:after {
        transform: rotate(135deg);
    }
    .faq-panel {
        height: 0;
        overflow: hidden;
        transition: height 0.35s ease;
    }
    .faq-panel-inner {
        padding: 10px 12.5px;
        color: var(--en-body);
        font-size: 17px;
        line-height: 1.58;
    }
    .faq-panel-inner p {
        font-size: 17px;
        line-height: 1.58;
    }
    .faq-panel-inner a {
        display: inline-block;
        margin-top: 12px;
        color: var(--en-deep);
        font-size: 13px;
        font-weight: 700;
    }
    /* final CTA */
    .cta-section {
        padding: 82px 0;
        background: var(--en-bg-brand);
    }
    .final-cta {
        width: min(var(--en-cta), calc(100% - 40px));
        margin: 0 auto;
        border-radius: var(--r-cta);
        background: linear-gradient(135deg, var(--en-graphite), var(--en-dark2));
        box-shadow: var(--shadow-lg);
        overflow: hidden;
        color: #fff;
    }
    .cta-grid {
        display: grid;
        grid-template-columns: 0.9fr 1.1fr;
        gap: 44px;
        align-items: center;
        padding: 50px;
    }
    .cta-copy h2 {
        color: #fff;
    }
    .cta-copy p {
        margin-top: 17px;
        font-size: 16px;
        color: #d9e5ed;
    }
    .cta-points {
        display: grid;
        gap: 9px;
        margin-top: 22px;
    }
    .cta-point {
        display: flex;
        gap: 9px;
        font-size: 13px;
        line-height: 1.5;
        color: #d9e5ed;
    }
    .cta-point:before {
        content: "•";
        color: var(--en-orange);
        font-weight: 700;
    }
    .cta-eyebrow {
        background: rgba(255, 255, 255, 0.08);
        border-color: rgba(255, 255, 255, 0.24);
        color: #fff;
    }
    .review-form {
        background: #fff;
        border-radius: 26px;
        padding: 28px;
        color: var(--en-body);
    }
    .form-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 13px;
    }
    .field {
        display: flex;
        flex-direction: column;
        gap: 7px;
    }
    .field.wide {
        grid-column: 1/-1;
    }
    .field label {
        font-size: 12px;
        font-weight: 600;
        color: #546575;
    }
    .field input,
    .field select,
    .field textarea {
        width: 100%;
        border: 1px solid var(--en-line);
        border-radius: 14px;
        background: #f8fbfd;
        padding: 14px 15px;
        color: #344151;
        font-size: 14px;
        outline: none;
    }
    .field textarea {
        min-height: 105px;
        resize: vertical;
    }
    .field input:focus,
    .field select:focus,
    .field textarea:focus {
        border-color: var(--en-blue);
        box-shadow: 0 0 0 3px rgba(122, 175, 202, 0.12);
    }
    .form-bottom {
        display: flex;
        align-items: center;
        gap: 12px;
        flex-wrap: wrap;
        margin-top: 14px;
    }
    .consent {
        font-size: 11px;
        line-height: 1.45;
        color: #7b8894;
        margin-top: 11px;
    }
    .form-status {
        font-size: 12px;
        color: var(--en-deep);
    }
    /* production footer */
    .site-footer {
        border-top: 1px solid rgba(255, 255, 255, 0.1);
        background: #333;
        color: #fff;
    }
    .footer-content-top {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(280px, 317px);
        gap: 72px;
        padding: 56px 0 42px;
    }
    .footer-nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        max-width: 675px;
    }
    .footer-nav a {
        color: #fff;
        font-size: 17px;
        line-height: 1.43;
        font-weight: 700;
    }
    .footer-nav a:hover {
        color: #a6a6a6;
    }
    .footer-social {
        display: flex;
        align-items: center;
        gap: 7px;
        margin-top: 40px;
    }
    .footer-social a {
        display: grid;
        place-items: center;
        width: 39px;
        height: 39px;
        border-radius: 50%;
        background: #fff;
        color: #5d8aa3;
        font-size: 11px;
        font-weight: 700;
        transition: opacity 0.3s ease-in-out;
    }
    .footer-social a:hover {
        opacity: 0.8;
    }
    .footer-social .max {
        background: linear-gradient(135deg, #44ccff, #5533ee);
        color: #fff;
    }
    .footer-social .vk {
        background: #07f;
        color: #fff;
    }
    .footer-social .telegram {
        background: #29b6f6;
        color: #fff;
    }
    .footer-social .youtube {
        background: #d4101d;
        color: #fff;
    }
    .footer-social .whatsapp {
        background: #25d366;
        color: #fff;
    }
    .footer-contacts {
        justify-self: end;
        width: 100%;
        max-width: 317px;
    }
    .footer-contact-row {
        display: flex;
        align-items: center;
        color: #fff;
    }
    .footer-contact-row + .footer-contact-row {
        margin-top: 15px;
    }
    .footer-contact-icon {
        display: grid;
        place-items: center;
        flex: 0 0 20px;
        width: 20px;
        color: #888;
    }
    .footer-contact-icon svg {
        width: 14px;
        height: 14px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }
    .footer-phone {
        margin-inline: 10px;
        color: #fff;
        font-size: 17px;
        line-height: 1.43;
        font-weight: 600;
    }
    .footer-email,
    .footer-address {
        margin-left: 15px;
        color: #fff;
        font-size: 16px;
        line-height: 1.43;
        font-weight: 400;
    }
    .footer-content-bottom {
        display: flex;
        justify-content: space-between;
        padding: 47px 0;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
        color: #999;
        font-size: 15px;
        line-height: 21px;
    }
    .footer-content-bottom a:hover {
        color: #fff;
        text-decoration: underline;
    }
    /* lightbox */
    .lightbox {
        position: fixed;
        z-index: 100;
        inset: 0;
        display: none;
        place-items: center;
        overflow: auto;
        padding: 26px 78px;
        background: rgba(25, 33, 43, 0.9);
        backdrop-filter: blur(8px);
    }
    .lightbox.open {
        display: grid;
    }
    .lightbox-dialog {
        display: flex;
        align-items: center;
        gap: 22px;
        max-width: min(1180px, 100%);
        max-height: calc(100vh - 52px);
        padding: 18px;
        border-radius: 28px;
        background: #f4f8fb;
        box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35);
    }
    .lightbox img {
        max-width: min(760px, 68vw);
        max-height: calc(100vh - 88px);
        border-radius: 18px;
        box-shadow: 0 14px 38px rgba(25, 33, 43, 0.18);
    }
    .lightbox-copy {
        width: min(310px, 26vw);
        padding: 10px 8px 10px 0;
    }
    .lightbox-label {
        display: block;
        margin-top: 18px;
        font-size: 11px;
        line-height: 1.2;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        color: var(--en-deep);
    }
    .lightbox-label:first-child {
        margin-top: 0;
    }
    .lightbox-complex {
        display: block;
        margin-top: 7px;
        font-size: 22px;
        line-height: 1.2;
        color: var(--en-heading);
    }
    .lightbox-client-text {
        margin-top: 8px;
        font-size: 14px;
        line-height: 1.58;
        color: var(--en-body);
    }
    .lightbox-close {
        position: fixed;
        z-index: 2;
        top: 22px;
        right: 24px;
        width: 46px;
        height: 46px;
        border: 1px solid rgba(255, 255, 255, 0.3);
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.12);
        color: #fff;
        font-size: 28px;
        cursor: pointer;
    }
    .lightbox-nav {
        position: fixed;
        z-index: 2;
        top: 50%;
        transform: translateY(-50%);
        width: 48px;
        height: 48px;
        border: 1px solid rgba(255, 255, 255, 0.3);
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.12);
        color: #fff;
        font-size: 28px;
        cursor: pointer;
    }
    .lightbox-prev {
        left: 24px;
    }
    .lightbox-next {
        right: 24px;
    }
    .chat-card {
        flex-basis: 240px;
        height: auto;
        display: flex;
        flex-direction: column;
        text-align: left;
    }
    .chat-card img {
        height: 350px;
        flex: 0 0 350px;
        object-fit: contain;
        background: #fff;
    }
    .chat-card-caption {
        display: grid;
        gap: 4px;
        padding: 11px 13px 13px;
        border-top: 1px solid var(--en-line);
        background: #fff;
    }
    .chat-card-caption strong {
        font-size: 12px;
        line-height: 1.25;
        color: var(--en-heading);
    }
    .chat-card-caption span {
        font-size: 10px;
        line-height: 1.35;
        color: var(--en-muted);
    }
    .lightbox {
        z-index: 10000;
        isolation: isolate;
    }
    .lightbox-dialog {
        max-width: min(900px, 100%);
        max-height: calc(100vh - 100px);
        padding: 16px;
    }
    .lightbox img {
        max-width: 360px;
        max-height: min(500px, calc(100vh - 140px));
        object-fit: contain;
    }
    .lightbox-value {
        display: block;
        margin-top: 7px;
        font-size: 14px;
        line-height: 1.35;
        font-weight: 700;
        color: var(--en-heading);
    }

    .hero-shot.one {
        width: 37%;
        height: 480px;
        left: 0;
        top: 5%;
        z-index: 1;
    }
    .hero-shot.three {
        width: 39%;
        height: 510px;
        left: 30%;
        top: 0;
        z-index: 2;
        transform: rotate(0deg);
    }
    .hero-shot.two {
        width: 37%;
        height: 465px;
        right: 0;
        top: 8%;
        z-index: 1;
    }
    .story-card {
        flex-basis: 300px;
        height: 360px;
        padding: 18px;
    }
    .story-card .story-facts,
    .story-card .story-result {
        display: none;
    }
    .story-card .story-meta {
        gap: 6px;
        margin-top: 12px;
        padding-top: 12px;
    }
    .story-card .story-meta > div {
        grid-template-columns: 78px minmax(0, 1fr);
        font-size: 11px;
        line-height: 1.25;
    }
    .story-card .story-text {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
        margin-top: 13px;
        font-size: 13px;
        line-height: 1.45;
    }
    .story-view {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 42px;
        margin-top: auto;
        padding: 10px 14px;
        border: 0;
        border-radius: 13px;
        background: var(--en-orange);
        color: #fff;
        font-size: 12px;
        font-weight: 700;
        cursor: pointer;
        box-shadow: 0 8px 18px rgba(255, 168, 40, 0.2);
    }
    .story-view:hover {
        transform: translateY(-1px);
    }
    .chat-card {
        flex-basis: 230px;
        height: auto;
    }
    .chat-card:focus-visible {
        outline: 3px solid var(--en-blue);
        outline-offset: 3px;
    }
    .chat-card img {
        height: 498px;
        flex: 0 0 498px;
        object-fit: contain;
        background: #fff;
    }
    .chat-card-caption {
        min-height: 66px;
    }
    .chat-meta-link {
        color: var(--en-deep);
        text-decoration: underline;
        text-decoration-color: rgba(31, 83, 111, 0.25);
        text-underline-offset: 2px;
    }
    .chat-meta-link:hover {
        text-decoration-color: currentColor;
    }
    .chat-card-caption strong .chat-meta-link {
        font-size: 12px;
    }
    .chat-card-caption span {
        display: flex;
        flex-wrap: wrap;
        gap: 0 4px;
    }
    .chat-card-caption span .chat-meta-link {
        font-size: 10px;
    }
    .story-lightbox {
        position: fixed;
        z-index: 10001;
        inset: 0;
        display: none;
        place-items: center;
        overflow: auto;
        padding: 26px 78px;
        background: rgba(25, 33, 43, 0.9);
        backdrop-filter: blur(8px);
    }
    .story-lightbox.open {
        display: grid;
    }
    .story-lightbox-dialog {
        position: relative;
        width: min(760px, 100%);
        max-height: calc(100vh - 52px);
        overflow: auto;
        padding: 30px;
        border-radius: 28px;
        background: #f4f8fb;
        box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35);
    }
    .story-lightbox-head {
        display: flex;
        justify-content: space-between;
        gap: 20px;
        padding-bottom: 20px;
        border-bottom: 1px solid var(--en-line);
    }
    .story-lightbox-kind {
        display: inline-flex;
        padding: 7px 10px;
        border-radius: 999px;
        background: #fff5e4;
        color: #a36b12;
        font-size: 10px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }
    .story-lightbox-title {
        margin-top: 14px;
        font-size: 30px;
        line-height: 1.1;
    }
    .story-lightbox-reviewer {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 8px 14px;
        margin-top: 15px;
        font-size: 13px;
        color: var(--en-muted);
    }
    .story-lightbox-reviewer strong {
        color: var(--en-heading);
    }
    .story-stars {
        color: #e69a18;
        font-size: 17px;
        letter-spacing: 2px;
    }
    .story-lightbox-dialog .story-meta {
        margin-top: 20px;
        padding-top: 18px;
    }
    .story-lightbox-dialog .story-facts {
        margin-top: 20px;
    }
    .story-lightbox-dialog .story-text {
        margin-top: 20px;
        font-size: 15px;
    }
    .story-lightbox-dialog .story-result {
        margin-top: 20px;
        padding: 16px;
        border-radius: 16px;
        background: #e8f5fa;
    }
    .story-lightbox-dialog .story-result strong {
        font-size: 14px;
    }
    .story-lightbox-close,
    .story-lightbox-nav {
        position: fixed;
        z-index: 2;
        width: 46px;
        height: 46px;
        border: 1px solid rgba(255, 255, 255, 0.3);
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.12);
        color: #fff;
        cursor: pointer;
    }
    .story-lightbox-close {
        top: 22px;
        right: 24px;
        font-size: 28px;
    }
    .story-lightbox-nav {
        top: 50%;
        transform: translateY(-50%);
        font-size: 28px;
    }
    .story-lightbox-prev {
        left: 24px;
    }
    .story-lightbox-next {
        right: 24px;
    }

    .chat-card {
        flex-basis: 228px;
        height: auto;
    }
    .chat-card img {
        height: 350px;
        flex: 0 0 350px;
        object-fit: cover;
        object-position: top;
        background: #fff;
    }

    .story-card-top {
        justify-content: flex-start;
        gap: 7px;
        margin-bottom: 14px;
    }
    .story-client-name {
        font-size: 13px;
        line-height: 1.2;
        color: var(--en-heading);
    }
    .story-review-date {
        font-size: 11px;
        color: var(--en-muted);
    }
    .story-review-stars {
        font-size: 14px;
        line-height: 1;
        color: #e69a18;
        letter-spacing: 1px;
    }
    .story-view {
        background: #fff;
        color: var(--en-blue);
        border: 1px solid #a9cbdc;
        box-shadow: none;
    }
    .story-view:hover {
        background: #f4f8fb;
        border-color: var(--en-blue);
    }
    .direction {
        padding: 0 26px 26px;
        overflow: hidden;
    }
    .direction-image {
        display: block;
        width: calc(100% + 52px);
        max-width: none;
        height: 220px;
        margin: 0 -26px 22px;
        object-fit: cover;
        object-position: center;
        border-radius: 23px 23px 0 0;
    }

    .story-filter input {
        width: 100%;
        min-height: 44px;
        border: 1px solid var(--en-line);
        border-radius: 14px;
        background: #f8fbfd;
        color: var(--en-body);
        padding: 11px 13px;
        font-size: 13px;
        outline: none;
    }
    .story-filter input:focus {
        border-color: var(--en-blue);
        box-shadow: 0 0 0 3px rgba(122, 175, 202, 0.12);
    }
    .chat-carousel {
        position: relative;
    }
    .chat-carousel:not(.has-overflow) .chat-scroll {
        display: none;
    }
    .lightbox-label {
        color: #000;
    }
    .lightbox-value {
        color: var(--en-deep);
        text-decoration: none;
        text-underline-offset: 3px;
    }
    .lightbox-value:hover,
    .lightbox-value:focus-visible {
        text-decoration: underline;
    }
    .lightbox-client-text {
        color: #000;
    }
}


@media (max-width: 720px) {
    .reviews {
        .hero-shot.one {
            width: 43%;
            height: 360px;
            left: 0;
            top: 6%;
        }
        .hero-shot.three {
            width: 44%;
            height: 375px;
            left: 28%;
            top: 0;
        }
        .hero-shot.two {
            width: 43%;
            height: 350px;
            right: 0;
            top: 9%;
        }
        .story-card {
            flex-basis: calc(100vw - 40px);
            height: 360px;
            min-height: 360px;
        }
        .chat-card {
            flex-basis: min(72vw, 270px);
        }
        .chat-card img {
            height: clamp(500px, 156vw, 585px);
            flex-basis: clamp(500px, 156vw, 585px);
        }
        .story-lightbox {
            padding: 20px;
        }
        .story-lightbox-dialog {
            width: min(100%, 520px);
            max-height: calc(100vh - 40px);
            padding: 22px;
            border-radius: 22px;
        }
        .story-lightbox-title {
            font-size: 24px;
        }
        .story-lightbox-nav {
            display: none;
        }

        .chat-card {
            flex-basis: 228px;
        }
        .chat-card img {
            height: 350px;
            flex-basis: 350px;
        }

        .direction-image {
            height: 200px;
        }
    }
}
@media (max-width: 480px) {
    .reviews {
        .hero-shot.one {
            height: 320px;
        }
        .hero-shot.three {
            height: 335px;
        }
        .hero-shot.two {
            height: 310px;
        }
        .chat-card {
            flex-basis: 72vw;
        }
        .chat-card img {
            height: 500px;
            flex-basis: 500px;
        }
    }
}



@media (max-width: 1280px) {
    .reviews {
        .desktop-nav {
            gap: 28px;
        }
        .logo-text {
            display: none;
        }
        .header-main {
            grid-template-columns: 180px 1fr auto;
        }
        .header-phone {
            display: none;
        }
    }
}
@media (max-width: 1180px) {
    .reviews {
        .desktop-nav {
            gap: 18px;
            font-size: 11px;
        }
        .hero-grid {
            grid-template-columns: 1fr minmax(380px, 0.75fr);
            gap: 32px;
        }
        .yandex-panel {
            grid-template-columns: 1fr;
        }
        .yandex-reviews {
            grid-template-columns: repeat(3, 1fr);
        }
    }
}
@media (max-width: 1080px) {
    .reviews {
        .faq-layout {
            grid-template-columns: 1fr;
            gap: 28px;
        }
    }
}
@media (max-width: 992px) {
    .reviews {
        h1 {
            font-size: 44px;
        }
        h2 {
            font-size: 32px;
        }
        .desktop-header,
        .headerfixed {
            display: none;
        }
        .mobile-header {
            display: flex;
            position: sticky;
            z-index: 999;
            top: 0;
            height: 70px;
            padding: 10px;
            background: #fff;
            align-items: center;
            justify-content: space-between;
        }
        .mobile-header .logo img {
            width: 150px;
            height: 50px;
        }
        .mobile-icons {
            gap: 8px;
        }
        .mobile-icon-btn {
            display: grid;
            place-items: center;
            width: 40px;
            height: 40px;
            padding: 0;
            border: 0;
            background: #fff;
            color: #888;
        }
        .mobile-icon-btn svg {
            width: 19px;
            height: 19px;
            fill: none;
            stroke: currentColor;
            stroke-width: 1.8;
        }
        .mobile-menu {
            position: fixed;
            z-index: 998;
            top: 70px;
            left: 0;
            right: 0;
            display: block;
            padding: 16px 20px 22px;
            background: #fff;
            box-shadow: 0 18px 28px rgba(66, 76, 92, 0.12);
            transform: translateY(-130%);
            transition: transform 0.22s ease;
        }
        .mobile-menu.open {
            transform: translateY(0);
        }
        .mobile-menu nav {
            display: grid;
        }
        .mobile-menu a {
            padding: 13px 2px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            font-weight: 700;
            text-transform: uppercase;
            color: #333;
        }
        .hero-grid {
            grid-template-columns: 1fr;
        }
        .hero-collage {
            min-height: 560px;
            max-width: 680px;
            width: 100%;
            margin: auto;
        }
        .hero-proof,
        .directions {
            grid-template-columns: repeat(2, 1fr);
        }
        .section-head,
        .cta-grid {
            grid-template-columns: 1fr;
        }
        .yandex-reviews {
            grid-template-columns: 1fr;
        }
        .footer-content-top {
            grid-template-columns: 1fr;
        }
        .footer-contacts {
            justify-self: start;
        }
    }
}
@media (max-width: 720px) {
    :root {
        --en-gutter: 20px;
    }
    .reviews {
        h1 {
            font-size: 34px;
        }
        h2 {
            font-size: 27px;
        }
        h3 {
            font-size: 19px;
        }
        p {
            font-size: 14px;
        }
        .section,
        .cta-section {
            padding: 62px 0;
        }
        /*.breadcrumbs {*/
        /*    padding-top: 24px;*/
        /*}*/
        /*.breadcrumb {*/
        /*    font-size: 13px;*/
        /*}*/
        .hero {
            padding: 18px 0 56px;
        }
        .hero-grid {
            padding: 26px;
            gap: 28px;
            min-height: auto;
        }
        .hero-lead {
            font-size: 16px;
        }
        .hero-actions {
            display: grid;
        }
        .hero-actions .btn {
            width: 100%;
        }
        .hero-proof {
            grid-template-columns: 1fr;
        }
        .hero-collage {
            min-height: 430px;
        }
        .hero-shot {
            border-width: 5px;
            border-radius: 24px;
        }
        .hero-shot.one {
            width: 54%;
            height: 390px;
            left: 0;
        }
        .hero-shot.two {
            width: 54%;
            height: 370px;
            right: 0;
        }
        .hero-yandex {
            left: 7%;
            right: 7%;
            bottom: 1%;
            padding: 13px;
        }
        .section-head {
            gap: 18px;
            margin-bottom: 28px;
        }
        .chat-intro {
            align-items: center;
            margin-bottom: 24px;
        }
        .gallery-count {
            display: none;
        }
        .yandex-panel {
            padding: 20px;
        }
        .yandex-summary {
            padding: 22px;
        }
        .rating-number strong {
            font-size: 54px;
        }
        .chat-gallery {
            gap: 12px;
            margin-inline: -20px;
            padding: 4px 20px 20px;
            scroll-padding-inline: 20px;
        }
        .chat-card {
            flex-basis: min(82vw, 330px);
            height: 560px;
            border-radius: 20px;
        }
        .chat-card:after {
            display: none;
        }
        .directions {
            grid-template-columns: 1fr;
        }
        .faq-item {
            padding: 10px;
        }
        .faq-button {
            padding: 10px 12.5px;
            font-size: 17px;
            line-height: 1.24;
        }
        .faq-panel-inner,
        .faq-panel-inner p {
            font-size: 17px;
            line-height: 1.58;
        }
        .final-cta {
            width: calc(100% - 40px);
            border-radius: 30px;
        }
        .cta-grid {
            padding: 26px;
            gap: 26px;
        }
        .form-grid {
            grid-template-columns: 1fr;
        }
        .field.wide {
            grid-column: auto;
        }
        .review-form {
            padding: 22px;
        }
        .footer-content-top {
            padding: 56px 24px 42px;
        }
        .footer-nav {
            flex-direction: column;
            align-items: flex-start;
            gap: 17px;
        }
        .footer-contacts {
            margin-top: 25px;
        }
        .footer-content-bottom {
            flex-direction: column;
            gap: 20px;
            padding: 16px 24px;
        }
        .lightbox-nav {
            display: none;
        }
    }
}
@media (max-width: 480px) {
    .reviews {
        .hero-grid {
            padding: 24px 20px;
        }
        .hero-collage {
            min-height: 365px;
        }
        .hero-shot.one {
            height: 330px;
        }
        .hero-shot.two {
            height: 315px;
        }
        .hero-yandex {
            left: 2%;
            right: 2%;
        }
        .hero-yandex .ya {
            width: 40px;
            height: 40px;
        }
        .chat-intro h2 {
            max-width: 210px;
        }
        .gallery-arrow {
            width: 42px;
            height: 42px;
        }
        .chat-card {
            flex-basis: 82vw;
            height: 530px;
        }
        .cta-grid {
            padding: 20px;
        }
        .review-form {
            padding: 20px;
        }
    }
}
@media (max-width: 720px) {
    .reviews {
        .story-filter-bar {
            grid-template-columns: 1fr 1fr;
            align-items: stretch;
        }
        .story-filter-reset {
            grid-column: 1/-1;
        }
        .story-card {
            flex-basis: calc(100vw - 40px);
        }
        .lightbox {
            padding: 20px;
        }
        .lightbox-dialog {
            width: min(100%, 520px);
            max-height: calc(100vh - 40px);
            flex-direction: column;
            align-items: stretch;
            overflow: auto;
            padding: 12px;
            border-radius: 22px;
        }
        .lightbox img {
            max-width: 100%;
            max-height: 66vh;
            object-fit: contain;
        }
        .lightbox-copy {
            width: 100%;
            padding: 4px 8px 10px;
        }
        .lightbox-complex {
            font-size: 20px;
        }
        .lightbox-nav {
            display: none;
        }
    }
}
@media (max-width: 480px) {
    .reviews {
        .story-filter-bar {
            grid-template-columns: 1fr;
        }
        .story-filter-reset {
            grid-column: auto;
        }
        .lightbox img {
            max-height: 59vh;
        }
    }
}
@media (max-width: 720px) {
    .reviews {
        .hero {
            padding-top: 8px;
        }
    }
}
@media (max-width: 720px) {
    .reviews {
        .chat-card {
            height: auto;
        }
        .chat-card img {
            height: 560px;
            flex-basis: 560px;
        }
        .chat-card-caption {
            padding: 12px 14px 14px;
        }
    }
}
@media (max-width: 480px) {
    .reviews {
        .chat-card img {
            height: 530px;
            flex-basis: 530px;
        }
    }
}
@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
    .headerfixed,
    .header-dropdown,
    .mobile-menu,
    .faq-panel,
    .faq-button:after {
        transition: none !important;
    }
}

/* End */


/* Start:/local/components/stroy/lead.form/templates/reviews/style.css?1791355778706*/
section.service-page {
    background-color: #f4f8fb
}

.form-btn-group {
    display: flex;
    align-items: baseline;
}

.form-btn-group a {
    margin: 0 0 0 15px;
}

@media (max-width: 769px) {
    .form-btn-group {
        flex-direction: column;
    }
    .form-btn-group a {
        margin: 15px 0 0 0;
    }
}



.btn-form-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 16px 22px;
    border-radius: 15px;
    font-size: 14px;
    line-height: 1;
    font-weight: 700;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease;
    background: #fff;
    color: #5D8AA3;
    border: 1px solid #DCE8F0;
}
/* End */


/* Start:/local/components/stroy/loader/templates/.default/style.css?1779696056896*/
.loader_container {
    display: none;
    position: fixed;
    z-index: 10;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}

.loader_img {
    width: 48px;
    height: 48px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: fixed;
    background: url('/local/templates/stroy-v1/images/loader.png') no-repeat 100% / contain;
}

.loader {
    top: -6px;
    right: -5px;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: inline-block;
    position: absolute;
    border: 10px solid;
    border-color: rgba(255, 255, 255, 0.15) rgba(255, 255, 255, 0.25) rgba(255, 255, 255, 0.35) rgba(255, 255, 255, 0.5);
    box-sizing: border-box;
    animation: rotation 1s
    linear infinite;
}

@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
/* End */
/* /local/templates/stroy-v1/src/scss/individual_pages/reviews.css?179136818457380 */
/* /local/components/stroy/lead.form/templates/reviews/style.css?1791355778706 */
/* /local/components/stroy/loader/templates/.default/style.css?1779696056896 */
