

/* Start:/local/components/classnyisait/exit.popup/templates/.default/style.css?17804219615144*/
.bx-exit-popup-root {
    display: none;
}

.bx-exit-popup {
    display: none;
}

.bx-exit-popup__dialog {
    position: relative;
    width: 100%;
    min-height: 360px;
    display: grid;
    grid-template-columns: minmax(240px, 360px) minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 28px;
    background: #1a1a1a;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.45);
    color: #f7f1ea;
}

.bx-exit-popup-fancybox .fancybox-bg {
    background: rgba(12, 12, 12, 0.72);
    opacity: 1;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.bx-exit-popup-fancybox .fancybox-content {
    width: min(100vw - 48px, 920px) !important;
    max-width: min(100vw - 48px, 920px) !important;
    padding: 0;
    background: transparent;
    overflow: visible;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.bx-exit-popup-fancybox .fancybox-slide {
    padding: 24px;
}

.bx-exit-popup__close {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 3;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    color: #ffffff;
    cursor: pointer;
    font-size: 28px;
    line-height: 1;
}

.bx-exit-popup__close:hover,
.bx-exit-popup__close:focus-visible,
.bx-exit-popup-fancybox .fancybox-close-small:hover,
.bx-exit-popup-fancybox .fancybox-close-small:focus-visible {
    background: rgba(255, 255, 255, 0.18);
}

.bx-exit-popup-fancybox .fancybox-close-small {
    display: none;
    top: 14px;
    right: 14px;
    width: 40px;
    height: 40px;
    padding: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    color: #ffffff;
}

.bx-exit-popup-fancybox .fancybox-infobar,
.bx-exit-popup-fancybox .fancybox-toolbar,
.bx-exit-popup-fancybox .fancybox-navigation,
.bx-exit-popup-fancybox .fancybox-caption {
    display: none !important;
}

.bx-exit-popup__hero {
    min-height: 100%;
    background-color: #232323;
    background-image:
        linear-gradient(180deg, rgba(8, 8, 8, 0.05), rgba(8, 8, 8, 0.45)),
        var(--bx-exit-popup-hero-image, linear-gradient(135deg, #333333, #101010));
    background-size: cover;
    background-position: center;
}

.bx-exit-popup__content {
    position: relative;
    padding: 44px 44px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 18px;
}

.bx-exit-popup__eyebrow {
    margin: 0;
    color: #cab9a0;
    font-size: 12px;
    line-height: 1.3;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.bx-exit-popup__title {
    margin: 0;
    font-size: 36px;
    line-height: 1.08;
    color: #ffffff;
}

.bx-exit-popup__subtitle {
    margin: 0;
    max-width: 440px;
    color: #ddd5cb;
    font-size: 16px;
    line-height: 1.65;
}

.bx-exit-popup__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 8px;
}

.bx-exit-popup__button {
    min-height: 52px;
    padding: 14px 20px;
    border-radius: 999px;
    border: 1px solid transparent;
    font: inherit;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.bx-exit-popup__button--primary {
    background: #efe4d4;
    color: #171717;
}

.bx-exit-popup__button--primary:hover,
.bx-exit-popup__button--primary:focus-visible {
    background: #ffffff;
}

.bx-exit-popup__button--secondary {
    background: transparent;
    color: #f7f1ea;
    border-color: rgba(255, 255, 255, 0.22);
}

.bx-exit-popup__button--secondary:hover,
.bx-exit-popup__button--secondary:focus-visible {
    border-color: rgba(255, 255, 255, 0.45);
    background: rgba(255, 255, 255, 0.08);
}

.bx-exit-popup__button:focus-visible,
.bx-exit-popup__close:focus-visible,
.bx-exit-popup-fancybox .fancybox-close-small:focus-visible {
    outline: 2px solid #efe4d4;
    outline-offset: 2px;
}

@media (max-width: 767px) {
    .bx-exit-popup__dialog {
        width: 100vw;
        max-height: 70vh;
        grid-template-columns: 1fr;
        border-radius: 24px 24px 0 0;
    }

    .bx-exit-popup-fancybox .fancybox-slide {
        padding: 0;
        align-items: flex-end;
        display: flex;
    }

    .bx-exit-popup-fancybox .fancybox-content {
        width: 100vw !important;
        max-width: 100vw !important;
        align-items: flex-end;
    }

    html.bx-exit-popup-open [id^="carrotquest-"] {
        display: none !important;
    }

    .bx-exit-popup__hero {
        min-height: 180px;
    }

    .bx-exit-popup__content {
        padding: 28px 20px 24px;
    }

    .bx-exit-popup__title {
        font-size: 28px;
    }

    .bx-exit-popup__subtitle {
        font-size: 15px;
        line-height: 1.55;
    }

    .bx-exit-popup__actions {
        flex-direction: column;
    }

    .bx-exit-popup__button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bx-exit-popup-fancybox .fancybox-bg,
    .bx-exit-popup-fancybox .fancybox-slide,
    .bx-exit-popup-fancybox .fancybox-content {
        transition: none !important;
    }
}

/* End */


/* Start:/local/templates/main_en/components/bitrix/news.detail/distr_page/style.css?178042196224095*/
/* ===== Distribution grid (product cards below the banner) ===== */
.distribution-grid__img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: contain;
    left: 0;
    top: 0;
}
.distribution-benefit--two-row .distribution-grid__img {
    object-fit: cover;
    object-position: center;
}
.distribution-grid__img.distribution-grid__img--contain {
    width: auto;
    height: auto;
    left: 50%;
    top: 40%;
    transform: translate(-50%, -50%);
    max-height: 62%;
}

/* ===== Banner container (shared) ===== */
.main-slider__item,
.main-section-wrap,
.main-slider {
    height: auto;
}
.main-slider__item {
    padding: 220px 0 100px 0 !important;
}
.main-slider {
    position: relative;
    left: 0;
    height: auto !important;
}
.main-section-wrap {
    position: relative;
}
.main-slider__description--custom.d-block {
    font-size: 1.6rem;
}
.page-header--main[style="opacity: 0;"] {
    display: none !important;
}
.main-slider__pic:after {
    display: none !important;
}

@media (min-width: 1200px) {
    .main-slider.main-section--distribution {
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 1920 / 980;
    }

    .main-slider.main-section--distribution .main-slider__item {
        height: 100% !important;
        min-height: 0 !important;
        box-sizing: border-box;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: clamp(120px, 10vw, 180px) 0 clamp(72px, 6vw, 110px) !important;
        overflow: hidden;
    }

    .main-slider.main-section--distribution .main-slider__pic {
        position: absolute;
        inset: 0;
        overflow: hidden;
    }

    .main-slider.main-section--distribution .main-slider__pic picture,
    .main-slider.main-section--distribution .main-slider__pic img {
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover !important;
        object-position: center center !important;
    }
}

/* ===== Distribution banner ===== */
.distr-banner {
    width: 100%;
    max-width: 1450px;
    margin: 0 auto;
    padding: 0 ;
    text-align: center;
    color: #fff;
    font-family: GothamPro, sans-serif;
}
.distr-banner__title {
    font-family: GothamPro, sans-serif;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    margin: 0 0 24px;
    padding: 0;
    color: #fff;
}
@media (min-width: 1600px) {
    .distr-banner__title {
        font-size: 56px;
    }
}
.distr-banner__subtitle {
    font-family: GothamPro, sans-serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.4;
    margin: 0 auto 48px;
    max-width: 720px;
    color: #fff;
}
.distr-banner__features {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    font-family: GothamPro, sans-serif;
}
.distr-banner__feature {
    flex: 0 0 auto;
    min-width: 230px;
    padding: 18px 28px;
    border: 1px solid #fff;
    color: #fff;
    font-family: GothamPro, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-align: center;
    background: transparent;
    box-sizing: border-box;
}

/* ===== Entrance animation (site's doc-ready pattern, staggered) ===== */
.distr-banner__title,
.distr-banner__subtitle,
.distr-banner__feature {
    opacity: 0;
    transform: translateY(30px);
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transition: opacity .7s ease-in-out, transform .7s ease-in-out;
    -webkit-transition: opacity .7s ease-in-out, -webkit-transform .7s ease-in-out;
    will-change: opacity, transform;
}
.distr-banner__title {
    transform: translateX(-60px);
    -webkit-transform: translateX(-60px);
    -ms-transform: translateX(-60px);
}
.doc-ready .distr-banner__title {
    opacity: 1;
    transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
}
.doc-ready .distr-banner__subtitle {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transition-delay: .35s;
    -webkit-transition-delay: .35s;
}
.doc-ready .distr-banner__feature {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
}
.doc-ready .distr-banner__feature:nth-child(1) {
    transition-delay: .55s;
    -webkit-transition-delay: .55s;
}
.doc-ready .distr-banner__feature:nth-child(2) {
    transition-delay: .7s;
    -webkit-transition-delay: .7s;
}
.doc-ready .distr-banner__feature:nth-child(3) {
    transition-delay: .85s;
    -webkit-transition-delay: .85s;
}

/* =========================== Responsive =========================== */
@media (max-width: 1320px) {
    .main-slider__item {
        padding: 100px 0 100px 0;
    }
}

@media (max-width: 991px) {
    html  .main-slider {
        padding: 0 !important;
    }
    .distr-banner__title {
        font-size: 38px;
    }
    .distr-banner__subtitle {
        font-size: 18px;
        margin-bottom: 40px;
    }
    .distr-banner__features {
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }
    .distr-banner__feature {
        width: 100%;
        max-width: 420px;
    }
}

@media (max-width: 575px) {
    .main-slider__description--custom.d-block {
        font-size: 1.2rem;
    }
    .distr-banner__title {
        font-size: 28px;
        letter-spacing: 0.01em;
        margin-bottom: 20px;
    }
    .distr-banner__subtitle {
        font-size: 16px;
        margin-bottom: 32px;
    }
    .distr-banner__feature {
        font-size: 14px;
        padding: 16px 24px;
        letter-spacing: 0.06em;
        max-width: 320px;
    }
   html .main-slider__pic,
   html .main-slider__pic img,
   html .main-slider__pic picture {
   position: absolute !important;
    }
  html  .main-slider, html .main-slider__item{
        height: 100vh !important;
        min-height: 500px !important;
}
}

@media (max-width: 405px) {
    .main-slider__description--custom.d-block {
        font-size: 0.9rem !important;
    }
}

/* Mobile-first product grid tweaks */
@media only screen and (min-width: 641px) {
    .distribution-grid__img.distribution-grid__img--contain {
        top: 30%;
        transform: translate(-50%, -50%);
        max-height: 55%;
    }

}
@media only screen and (min-width: 1300px) {
    .distribution-grid__img.distribution-grid__img--contain {
        top: 36%;
        max-height: initial;
    }
}
li:empty,
li.disabled
{
    display: none;
}

/* ======================================================================
 * /distribution/ enhancements: progress bar, sticky CTA, anchor nav
 * ====================================================================== */

/* ---------- Reading progress bar ---------- */
.distr-progress-bar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: #5c5c5c;
    transform: scaleX(0);
    transform-origin: left center;
    z-index: 9998;
    pointer-events: none;
    transition: transform .1s linear;
}
@media (prefers-reduced-motion: reduce) {
    .distr-progress-bar { transition: none; }
}

/* ---------- Sticky mobile CTA ---------- */
.distr-sticky-cta {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    padding: calc(12px + env(safe-area-inset-top)) 16px 12px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 4px 20px rgba(0,0,0,.08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 9990;
    transform: translateY(-110%);
    transition: transform .35s cubic-bezier(.2,.8,.2,1);
}
.distr-sticky-cta.is-visible {
    transform: translateY(0);
}
.distr-sticky-cta__btn,
.distr-sticky-cta__btn:link,
.distr-sticky-cta__btn:visited {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    height: 52px;
    background: #000;
    color: #fff;
    text-decoration: none;
    font-family: 'GothamPro', Candara, sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    border-radius: 4px;
    transition: background-color .2s ease, transform .15s ease;
}
.distr-sticky-cta__btn:hover { background: #2D2D2D; }
.distr-sticky-cta__btn:active { transform: scale(.98); }
.distr-sticky-cta__btn svg { flex-shrink: 0; }

@media (min-width: 980px) {
    .distr-sticky-cta { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .distr-sticky-cta { transition: none; }
    .distr-sticky-cta__btn { transition: none; }
}

/* ---------- Anchor navigation (desktop) ---------- */
.distr-anchor-nav {
    position: fixed;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 50;
    display: none;
}
@media (min-width: 1280px) {
    .distr-anchor-nav { display: block; }
}
.distr-anchor-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.distr-anchor-nav a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 0;
    color: #2D2D2D;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    line-height: 1;
    letter-spacing: .02em;
    cursor: pointer;
}
.distr-anchor-nav .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #C8C4C3;
    transition: background-color .25s ease, transform .25s ease;
    flex-shrink: 0;
}
.distr-anchor-nav .lbl {
    opacity: 0;
    transform: translateX(8px);
    transition: opacity .25s ease, transform .25s ease;
    white-space: nowrap;
    background: rgba(255,255,255,.9);
    padding: 4px 8px;
    border-radius: 3px;
    pointer-events: none;
}
.distr-anchor-nav a:hover .lbl,
.distr-anchor-nav a:focus-visible .lbl {
    opacity: 1;
    transform: translateX(0);
}
.distr-anchor-nav a:hover .dot { background: #5c5c5c; }
.distr-anchor-nav a.is-active .dot {
    background: #000;
    transform: scale(1.4);
}
@media (prefers-reduced-motion: reduce) {
    .distr-anchor-nav .dot,
    .distr-anchor-nav .lbl { transition: none; }
}

/* ---------- A11y: prefers-reduced-motion (global override) ---------- */
@media (prefers-reduced-motion: reduce) {
    .js-scroll-animate,
    .js-scroll-animate.animation,
    .js-scroll-animate.animation.animate-in {
        transition: none !important;
        transform: none !important;
        opacity: 1 !important;
    }
}

/* ---------- A11y: visible focus for keyboard navigation ---------- */
/* Brand-glow focus — мягкое многослойное свечение в фирменном коричневом
   вместо стандартной чёрной обводки. Аналог glow-эффекта расширения Claude. */
:focus-visible {
    outline: none;
    border-radius: 4px;
    box-shadow:
        0 0 0 2px rgba(139, 111, 71, 0.55),
        0 0 10px rgba(139, 111, 71, 0.45),
        0 0 20px rgba(139, 111, 71, 0.25),
        0 0 30px rgba(139, 111, 71, 0.12);
    transition: box-shadow .2s ease;
}
.btn:focus-visible,
.text-input:focus-visible,
button:focus-visible,
a:focus-visible,
.faq-section__question:focus-visible {
    outline: none;
    box-shadow:
        0 0 0 2px rgba(139, 111, 71, 0.55),
        0 0 10px rgba(139, 111, 71, 0.45),
        0 0 20px rgba(139, 111, 71, 0.25),
        0 0 30px rgba(139, 111, 71, 0.12);
}
/* Active focus — глобальный CSS-bundle перебивает наш файл по порядку,
   поэтому используем !important на ключевых свойствах. */
.text-input:focus,
input.text-input:focus,
.calculator-form input:focus,
.main-form input:focus,
.main-form textarea:focus,
.main-form select:focus {
    outline: none !important;
    border-color: rgba(139, 111, 71, 0.55) !important;
    box-shadow:
        0 0 0 2px rgba(139, 111, 71, 0.55),
        0 0 10px rgba(139, 111, 71, 0.45),
        0 0 20px rgba(139, 111, 71, 0.25),
        0 0 30px rgba(139, 111, 71, 0.12) !important;
    transition: box-shadow .2s ease, border-color .2s ease;
}

/* ---------- Order success: animated reveal ---------- */
.order-section__success[role="status"] {
    transition: opacity .4s ease, transform .4s ease;
}
@media (prefers-reduced-motion: reduce) {
    .order-section__success[role="status"] { transition: none; }
}

/* ==========================================================================
 * /distribution/ — scroll-in motion design
 * Базовые пресеты (.js-scroll-animate + .animation → .animate-in)
 * + индивидуальные «характеры» для каждой секции.
 * ========================================================================== */

/* ---------- Base preset: fade-up (default) ----------
   !important нужен — в проекте есть глобальный сброс/переопределение
   opacity на .js-scroll-animate из легаси-стилей, который иначе побеждает
   в каскаде (наблюдалось: opacity computed = 1 без animate-in). */
.js-scroll-animate.animation {
    opacity: 0 !important;
    transform: translateY(24px) !important;
    transition: opacity .65s cubic-bezier(.2,.7,.2,1),
                transform .65s cubic-bezier(.2,.7,.2,1) !important;
    will-change: transform, opacity;
}
.js-scroll-animate.animation.animate-in {
    opacity: 1 !important;
    transform: none !important;
}

/* ---------- Modifier: fade-in-left (slide from left) ---------- */
.js-scroll-animate.js-fade-in-left.animation {
    transform: translate3d(-40px, 0, 0) !important;
}
.js-scroll-animate.js-fade-in-left.animation.animate-in {
    transform: none !important;
}

/* ---------- Modifier: fade-in-right (slide from right) ---------- */
.js-scroll-animate.js-fade-in-right.animation {
    transform: translate3d(40px, 0, 0) !important;
}
.js-scroll-animate.js-fade-in-right.animation.animate-in {
    transform: none !important;
}

/* ---------- Modifier: fade-in-bottom (slide from bottom) ---------- */
.js-scroll-animate.js-fade-in-bottom.animation {
    transform: translate3d(0, 40px, 0) !important;
}
.js-scroll-animate.js-fade-in-bottom.animation.animate-in {
    transform: none !important;
}

/* ---------- Modifier: scale-in (subtle zoom) ---------- */
.js-scroll-animate.js-scale-in.animation {
    transform: scale(.96);
    transition: opacity .7s cubic-bezier(.2,.7,.2,1),
                transform .7s cubic-bezier(.2,.7,.2,1);
}
.js-scroll-animate.js-scale-in.animation.animate-in {
    transform: none;
}

/* ---------- Modifier: blur-in (soft focus reveal) ---------- */
.js-scroll-animate.js-blur-in.animation {
    opacity: 0;
    transform: translateY(12px);
    filter: blur(10px);
    transition: opacity .9s ease,
                transform .9s ease,
                filter .9s ease;
}
.js-scroll-animate.js-blur-in.animation.animate-in {
    opacity: 1;
    transform: none;
    filter: blur(0);
}

/* ==========================================================================
 * Section-by-section choreography
 * ========================================================================== */

/* Distribution grid — stagger по nth-child. Transform НЕ трогаем —
   Masonry/Isotope уже использует его для позиционирования. Только opacity. */
.distribution-grid .distribution-grid__item.js-scroll-animate.animation {
    opacity: 0 !important;
    transform: none !important;
    transition: opacity .7s cubic-bezier(.2,.7,.2,1) !important;
}
.distribution-grid .distribution-grid__item.js-scroll-animate.animation.animate-in {
    opacity: 1 !important;
}
.distribution-grid .distribution-grid__item:nth-child(1).animation.animate-in { transition-delay: 0ms; }
.distribution-grid .distribution-grid__item:nth-child(2).animation.animate-in { transition-delay: 80ms; }
.distribution-grid .distribution-grid__item:nth-child(3).animation.animate-in { transition-delay: 160ms; }
.distribution-grid .distribution-grid__item:nth-child(4).animation.animate-in { transition-delay: 240ms; }
.distribution-grid .distribution-grid__item:nth-child(5).animation.animate-in { transition-delay: 320ms; }
.distribution-grid .distribution-grid__item:nth-child(6).animation.animate-in { transition-delay: 400ms; }
.distribution-grid .distribution-grid__item:nth-child(7).animation.animate-in { transition-delay: 480ms; }
.distribution-grid .distribution-grid__item:nth-child(8).animation.animate-in { transition-delay: 560ms; }

/* «WHEN USED CORRECTLY…» — строгий заголовок с blur-in, колонки навстречу */
section.vertical-section h2.center-text.mw-900.js-scroll-animate.animation {
    opacity: 0;
    transform: translateY(16px);
    filter: blur(6px);
    transition: opacity .8s ease, transform .8s ease, filter .8s ease;
}
section.vertical-section h2.center-text.mw-900.js-scroll-animate.animation.animate-in {
    opacity: 1;
    transform: none;
    filter: blur(0);
}
section.vertical-section .text-with-icon__item.js-scroll-animate.animation {
    opacity: 0 !important;
    transition: opacity .7s cubic-bezier(.2,.7,.2,1),
                transform .7s cubic-bezier(.2,.7,.2,1) !important;
    transition-delay: .15s !important;
}
section.vertical-section .text-with-icon__item.js-fade-in-left.animation {
    transform: translate3d(-32px, 0, 0) !important;
}
section.vertical-section .text-with-icon__item.js-fade-in-right.animation {
    transform: translate3d(32px, 0, 0) !important;
}
section.vertical-section .text-with-icon__item.js-scroll-animate.animation.animate-in {
    opacity: 1 !important;
    transform: none !important;
}

/* 10 YEARS AS A LEADER — картинка и текст навстречу */
.premium-promo .premium-promo__pic.js-scroll-animate.animation {
    transition: opacity .75s cubic-bezier(.2,.7,.2,1),
                transform .75s cubic-bezier(.2,.7,.2,1);
    transition-delay: .1s;
}
.premium-promo .premium-promo__text.js-scroll-animate.animation {
    transition: opacity .75s cubic-bezier(.2,.7,.2,1),
                transform .75s cubic-bezier(.2,.7,.2,1);
    transition-delay: .2s;
}

/* Premium segment — на мобиле убираем лишние 40px серого фона под изображением */
@media only screen and (max-width: 47.8125rem) {
    .premium-promo .premium-promo__pic::after {
        top: 0;
        height: 100%;
    }
}

/* Distributors Worldwide — заголовок + субтитр fade-up, легенда/карта со сдвигом */
.distributors-map .distributors-map__head.js-scroll-animate.animation {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .65s cubic-bezier(.2,.7,.2,1),
                transform .65s cubic-bezier(.2,.7,.2,1);
}
.distributors-map .distributors-map__head.js-scroll-animate.animation.animate-in {
    opacity: 1;
    transform: none;
}
.distributors-map .distributors-map__area.js-scroll-animate.animation,
.distributors-map__legend.js-scroll-animate.animation {
    opacity: 0 !important;
    transform: translateY(16px) !important;
    transition: opacity .75s cubic-bezier(.2,.7,.2,1),
                transform .75s cubic-bezier(.2,.7,.2,1) !important;
    transition-delay: .1s !important;
}
.distributors-map .distributors-map__area.js-scroll-animate.animation.animate-in,
.distributors-map__legend.js-scroll-animate.animation.animate-in {
    opacity: 1 !important;
    transform: none !important;
}

/* Certificates — мягкий fade-up для заголовка */
.certificates-slider .certificates-slider__head.js-scroll-animate.animation {
    opacity: 0 !important;
    transform: translateY(22px) !important;
    transition: opacity .7s cubic-bezier(.2,.7,.2,1),
                transform .7s cubic-bezier(.2,.7,.2,1) !important;
}
.certificates-slider .certificates-slider__head.js-scroll-animate.animation.animate-in {
    opacity: 1 !important;
    transform: none !important;
}

/* FAQ — заголовок и элементы со stagger */
.faq-section .faq-section__title.js-scroll-animate.animation {
    opacity: 0 !important;
    transform: translateY(18px) !important;
    transition: opacity .65s cubic-bezier(.2,.7,.2,1),
                transform .65s cubic-bezier(.2,.7,.2,1) !important;
}
.faq-section .faq-section__title.js-scroll-animate.animation.animate-in {
    opacity: 1 !important;
    transform: none !important;
}
.faq-section .faq-section__item.js-scroll-animate.animation {
    opacity: 0 !important;
    transform: translateY(14px) !important;
    transition: opacity .55s cubic-bezier(.2,.7,.2,1),
                transform .55s cubic-bezier(.2,.7,.2,1) !important;
}
.faq-section .faq-section__item.js-scroll-animate.animation.animate-in {
    opacity: 1 !important;
    transform: none !important;
}
.faq-section .faq-section__item:nth-child(1).animation.animate-in { transition-delay: 60ms; }
.faq-section .faq-section__item:nth-child(2).animation.animate-in { transition-delay: 120ms; }
.faq-section .faq-section__item:nth-child(3).animation.animate-in { transition-delay: 180ms; }
.faq-section .faq-section__item:nth-child(4).animation.animate-in { transition-delay: 240ms; }
.faq-section .faq-section__item:nth-child(5).animation.animate-in { transition-delay: 300ms; }

/* Become a Partner — форма выезжает снизу с лёгким scale, через 200ms */
.order-section h2.center-text.js-scroll-animate.animation {
    transition: opacity .65s ease, transform .65s ease;
}
.order-section .js-scroll-animate.js-fade-in-bottom.animation {
    transform: translate3d(0, 50px, 0) scale(.985);
    transition: opacity .8s cubic-bezier(.2,.7,.2,1),
                transform .8s cubic-bezier(.2,.7,.2,1);
    transition-delay: .15s;
}
.order-section .js-scroll-animate.js-fade-in-bottom.animation.animate-in {
    transform: none;
}

@media only screen and (max-width: 47.8125rem) {
    body .order-section {
        padding-bottom: calc(148px + env(safe-area-inset-bottom, 0px)) !important;
    }
}

/* Profit Calculator — текст слева, калькулятор справа со scale-in */
.calculator-section .calculator-section__row.js-scroll-animate.animation {
    opacity: 1;
    transform: none;
}
.calculator-section .calculator-section__row.js-scroll-animate.animation .calculator-section__text {
    opacity: 0;
    transform: translate3d(-32px, 0, 0);
    transition: opacity .7s cubic-bezier(.2,.7,.2,1),
                transform .7s cubic-bezier(.2,.7,.2,1);
}
.calculator-section .calculator-section__row.js-scroll-animate.animation.animate-in .calculator-section__text {
    opacity: 1;
    transform: none;
}
.calculator-section .calculator-section__row.js-scroll-animate.animation .calculator {
    opacity: 0;
    transform: translate3d(32px, 0, 0) scale(.985);
    transition: opacity .8s cubic-bezier(.2,.7,.2,1) .15s,
                transform .8s cubic-bezier(.2,.7,.2,1) .15s;
}
.calculator-section .calculator-section__row.js-scroll-animate.animation.animate-in .calculator {
    opacity: 1;
    transform: none;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .js-scroll-animate.animation,
    .js-scroll-animate.animation.animate-in,
    [class*="js-fade-in-"].animation,
    [class*="js-fade-in-"].animation.animate-in,
    .js-scale-in.animation,
    .js-scale-in.animation.animate-in,
    .js-blur-in.animation,
    .js-blur-in.animation.animate-in {
        opacity: 1 !important;
        transform: none !important;
        filter: none !important;
        transition: none !important;
        transition-delay: 0ms !important;
    }
}

.main-slider__pic img, .main-slider__pic picture {
    -o-object-position: center!important;
    object-position: center!important;
}


/* End */


/* Start:/local/components/bx/section.partners/templates/distr/style.css?178042196110081*/
.mob-css-slider__item {display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex;-webkit-flex-shrink: 0;-ms-flex-negative: 0;flex-shrink: 0;margin-right: 20px;scroll-snap-align: start;}  .mob-css-slider::-webkit-scrollbar-track {background-color: transparent;}  .mob-css-slider::-webkit-scrollbar {display: none;width: 0;background-color: transparent;}  .mob-css-slider::-webkit-scrollbar-thumb {background-color: transparent;}  .mob-css-slider::-webkit-scrollbar * {background: transparent;}  .title-wrap {position: relative;}  .title-wrap__image {position: absolute;top: -56px;width: 435px;left: -52px;height: auto;z-index: 1;}  /*start coop-card*/  .coop-card {width: 246px;min-height: 320px;}  .coop-card__head {position: relative;}  .coop-card__image {width: 120px;height: 120px;border-radius: 50%;background-color: #ffffff;display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex;-webkit-box-align: center;-webkit-align-items: center;-ms-flex-align: center;align-items: center;-webkit-box-pack: center;-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;}  .coop-card__title {font-weight: 700;font-size: 16px;line-height: 120%;letter-spacing: 0.02em;text-transform: uppercase;color: #000000;margin-top: 20px;}  .coop-card__descr p {font-weight: 400;font-size: 14px;line-height: 22px;letter-spacing: 0.01em;color: #2D2D2D;}  .coop-card__label {position: absolute;right: 0;top: 20px;font-weight: 700;font-size: 14px;line-height: 13px;text-align: right;letter-spacing: 0.36em;text-transform: uppercase;color: #5c5c5c;}  /*end coop-card*/  .def-sub-title {font-weight: 400;font-size: 14px;line-height: 22px;letter-spacing: 0.01em;color: #2D2D2D;margin-bottom: 23px;position: relative;z-index: 2;}  /*start-anim-block*//*start-anim-block*/  @media only screen and (min-width: 640px) {  .mob-css-slider {margin: 0 -20px -20px -20px;padding: 10px 20px;scroll-padding: 20px;}  }  @media only screen and (min-width: 980px) {  .mob-css-slider {-webkit-transition: -webkit-transform .5s ease-in-out;transition: -webkit-transform .5s ease-in-out;-o-transition: transform .5s ease-in-out;transition: transform .5s ease-in-out;transition: transform .5s ease-in-out, -webkit-transform .5s ease-in-out;}  .mob-css-slider--no-offset-lg .mob-css-slider__item {margin-right: 0;}  .title-wrap__image {top: -75px;width: 100%;left: -60px;z-index: 1;}  .coop-card {width: 100%;padding-bottom: 20px;}  .coop-card__head {min-height: 144px;}  .coop-card__image {width: 224px;height: 224px;position: absolute;left: 0;top: 0;}  .coop-card__image svg {width: 80px;height: 80px;}  .coop-card__content {padding-left: 110px;position: relative;z-index: 2;}  .coop-card__title {font-size: 24px;padding-bottom: 30px;line-height: 34px;}  .coop-card__descr {max-width: 396px;}  .coop-card__label {right: -22px;}  .def-sub-title {margin-bottom: 40px;font-size: 18px;line-height: 28px;max-width: 505px;}  .td-block {display: grid;grid-template-columns: repeat(2, 1fr);grid-column-gap: 20px;}  .coop-list__item {margin-bottom: 40px;}  .coop-list__item.animate-in .coop-card__title, .coop-list__item.animate-in .coop-card__descr {-webkit-transform: translateY(0) !important;-ms-transform: translateY(0) !important;transform: translateY(0) !important;opacity: 1 !important;}  .coop-list__item.animation .coop-card__title {-webkit-transform-origin: left top;-ms-transform-origin: left top;transform-origin: left top;-webkit-transition: all .6s ease-in-out .1s;-o-transition: all .6s ease-in-out .1s;transition: all .6s ease-in-out .1s;-webkit-transform: translateX(0);-ms-transform: translateX(0);transform: translateX(0);opacity: 0;}  .coop-list__item.animation .coop-card__descr {-webkit-transition: all .5s ease-in-out 0.1s;-o-transition: all .5s ease-in-out 0.1s;transition: all .5s ease-in-out 0.1s;-webkit-transform: translateX(-100px);-ms-transform: translateX(-100px);transform: translateX(-100px);opacity: 0;}  .title-wrap__image.animate-in {-webkit-transform: translateY(0) !important;-ms-transform: translateY(0) !important;transform: translateY(0) !important;opacity: 1 !important;}  .title-wrap__image.animation {-webkit-transition: all .5s ease-in-out .2s;-o-transition: all .5s ease-in-out .2s;transition: all .5s ease-in-out .2s;-webkit-transform: translateX(-100px);-ms-transform: translateX(-100px);transform: translateX(-100px);opacity: 0;}  .animation .coop-card__image {-webkit-transform-style: preserve-3d;transform-style: preserve-3d;-webkit-transition: -webkit-transform 1s;transition: -webkit-transform 1s;-o-transition: transform 1s;transition: transform 1s;transition: transform 1s, -webkit-transform 1s;overflow: visible;-webkit-transform: rotateY(180deg);transform: rotateY(180deg);}  .animation .coop-card__image:after {content: '';position: absolute;top: 0;width: 100%;height: 100%;border-radius: 50%;left: 0;bottom: 0;-webkit-backface-visibility: hidden;backface-visibility: hidden;-webkit-transform: rotateY(180deg);transform: rotateY(180deg);background: #5c5c5c;color: #fff;background-image: url(/local/templates/main_en/img/logo_bx_white.svg);background-repeat: no-repeat;background-position: center;background-size: 80%;}  .animate-in .coop-card__image {-webkit-transform: rotateY(0);transform: rotateY(0);}  section.vertical-section.cooperation-section {margin: 155px 0 90px;}  }  /*min-width 980*/  @media only screen and (min-width: 1360px) {  .title-wrap__image {width: 800px;left: -123px;top: -142px;}  }  @media only screen and (max-width: 979.33333px) {  .mob-css-slider {display: -webkit-box;display: -ms-flexbox;display: -webkit-flex;display: flex;-ms-flex-wrap: nowrap;-webkit-flex-wrap: nowrap;flex-wrap: nowrap;height: auto !important;overflow: auto;margin: 0 -50px -20px -50px;padding: 10px 50px 10px 50px;-ms-scroll-snap-type: x mandatory;-webkit-scroll-snap-type: x mandatory;scroll-snap-type: x mandatory;scroll-padding: 50px;}  .mob-css-slider__item:last-child:after {content: "";display: block;-webkit-flex-shrink: 0;-ms-flex-negative: 0;flex-shrink: 0;position: relative;width: 20px;height: 100%;background: transparent;}  .hide-tab {display: none;}  }  .icn-list-section {margin: 80px 0;}  @media only screen and (min-width: 980px) {  .icn-list-section {position: relative;}  .icn-list-section__inner {position: absolute; /*top: -262px;*/top: -287px;z-index: 3;width: 100%;}  .icn-list {display: grid;grid-template-columns: minmax(100px, 398px) minmax(100px, 344.5px) minmax(100px, 344.5px);grid-column-gap: 30px;}  .visible-tab {display: none;}  /*slider*/ .main-slider__item {flex-direction: row-reverse;}  /*slider*/  }  .main-slider__description.main-slider__description--custom.d-block {font-weight: 400;font-size: 22px;line-height: 140%;letter-spacing: 0.01em;color: #6A4F3B;max-width: 505px;}  .icn-card__descr p {margin-bottom: 0;font-weight: 400;font-size: 14px;line-height: 22px;letter-spacing: 0.01em;color: #6A4F3B;}  @media only screen and (min-width: 980px) {  .banner-box {display: flex;min-height: 100vh;align-items: center;padding: 43px 0 75px 0;}  .banner-box__img {position: absolute;right: 0;top: calc(50% - 24px);transform: translateY(-50%);}  .main-slider__title.main-slider__title--large {padding-bottom: 35px;}  .main-slider .btn {margin-top: 40px;}  .main-slider__text {width: 75%;}  .icn-card {flex-direction: column;}  .icn-card__image {padding-right: 0;margin-bottom: 14px;padding-bottom: 10px;border-bottom: 1px solid #C3B69F;}  .icn-card__descr {padding-left: 0;border: none;}  .main-slider__text {padding-left: 100px;}  .icn-list-section__inner {padding-left: 60px;padding-top: 30px;}  .banner-box__img  {width: 60%;}  .icn-list {grid-column-gap: 10px}  .icn-card__descr p {font-size: 12px;}  }  @media only screen and (min-width: 1220px) {  .banner-box__img  {width: initial;}  .icn-list {grid-column-gap: 30px}  .icn-card__descr p {font-size: 14px;}  }  @media only screen and (min-width: 1400px) {  .page-header.page-header--main {padding-top: 43px;}  .main-slider__text {padding-left: 170px;}  .icn-list-section__inner {padding-left: 108px;}  }  @media only screen and (max-width: 979.3333333px) {  .cooperation-section {margin-top: 85px;}  /*.fake-image {*//*    display: none;*//*}*/ .banner-box {flex-direction: column-reverse;display: flex;}  img.--object-pos-left-center.banner-box__img {position: absolute;}  .page-header.page-header--main {padding: 40px 0;}  .banner-box__right {padding-top: 62px;}  .main-slider__description.main-slider__description--custom.d-block {font-size: 14px;line-height: 22px;}  .main-slider {min-height: calc(100vh - 100px) !important;padding-bottom: 100px;height: auto!important;display: flex;flex-direction: column;justify-content: center;}  }  .banner-box__img {right: -100%;transition: all 1.2s ease-in-out .1s;}  .page-loaded .swiper-slide-active .banner-box__img {right: 0;}  .icn-list__item {transition: all 1.2s ease-in-out .1s;opacity: 0;transform: translateX(100px);}  .icn-list__item:nth-child(1) {transition: all 1.2s ease-in-out .1s;}  .icn-list__item:nth-child(2) {transition: all 1.2s ease-in-out .15s;}  .icn-list__item:nth-child(3) {transition: all 1.2s ease-in-out .2s;}  .page-loaded .icn-list__item {opacity: 1;transform: translateX(0) !important;}

/* ---------- Hover-state for 6 benefit cards (Become our partner) ---------- */
.coop-card { transition: transform .35s cubic-bezier(.2,.8,.2,1); }
.coop-card__image { transition: box-shadow .35s ease; }
@media (min-width: 980px) {
    .coop-card:hover { transform: translateY(-6px); }
    .coop-card:hover .coop-card__image { box-shadow: 0 12px 30px rgba(0,0,0,.08); }
}
@media (prefers-reduced-motion: reduce) {
    .coop-card,
    .coop-card__image { transition: none; }
    .coop-card:hover { transform: none; }
    .coop-card:hover .coop-card__image { box-shadow: none; }
}

@media only screen and (max-width: 979.33333px) {
    /* Give mobile scroll container extra top room so circular icons
       are not clipped by the horizontal scroller during swipe on Android. */
    .cooperation-section .mob-css-slider {
        padding-top: 24px;
    }
}

/* End */


/* Start:/local/components/classnyisait/global.presence/templates/.default/style.css?17804219614964*/
/* Global Presence — classnyisait:global.presence
 * Minimal gallery style (ported from balcon2:section.our_projects).
 * Tall portrait cards, big+small horizontal rhythm, no frames/shadows.
 * BEM: .global-presence__*, .event-card__*.
 */

/* ---- Section wrapper ---- */
.global-presence {
    position: relative;
    padding: 80px 0 60px;
    background: #FFFFFF;
    color: #000;
    overflow: hidden;
}

.global-presence__head {
    margin-bottom: 40px;
    text-align: center;
}

.global-presence__title {
    margin: 0;
    font-family: 'GothamPro', Candara, 'Segoe UI', sans-serif;
    font-size: 42px;
    line-height: 1.15;
    font-weight: 700;
    color: #000;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.global-presence__subtitle {
    margin: 12px 0 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #575756;
}

@media (max-width: 1200px) {
    .global-presence__title { font-size: 32px; }
}
@media (max-width: 767px) {
    .global-presence         { padding: 50px 0 40px; }
    .global-presence__title  { font-size: 24px; }
    .global-presence__subtitle { font-size: 14px; }
    .global-presence__head   { margin-bottom: 24px; }
}

/* ---- Ticker viewport ---- */
.global-presence__viewport {
    position: relative;
    overflow: hidden;
    user-select: none;
    -webkit-user-select: none;
    touch-action: pan-y pinch-zoom;
}

/* Edge-to-edge feel — cancel the .page-width padding so the slider
   can bleed into the gutters like balcon2 (.container-fluid vibe). */
.global-presence .page-width {
    max-width: none;
    padding: 0;
}
.global-presence__head {
    padding: 0 20px;
}

/* Pre-init fallback (FOUC protection) */
.global-presence__carousel:not(.swiper-container-initialized) {
    overflow: hidden;
}
.global-presence__carousel:not(.swiper-container-initialized) .global-presence__track {
    display: flex;
    gap: 12px;
    list-style: none;
    padding: 0 20px;
    margin: 0;
}
.global-presence__carousel.swiper-container-initialized .global-presence__track {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Per-slide widths drive the big+small rhythm via slidesPerView:'auto'. */
.global-presence__carousel .swiper-slide {
    height: auto;
    width: 25vw;
    max-width: 460px;
    box-sizing: border-box;
}
.global-presence__carousel .swiper-slide.swiper-slide-big {
    width: 60vw;
    max-width: 900px;
}
@media (max-width: 1199px) {
    .global-presence__carousel .swiper-slide            { width: 33vw; max-width: 360px; }
    .global-presence__carousel .swiper-slide.swiper-slide-big { width: 66vw; max-width: 640px; }
}
@media (max-width: 767px) {
    .global-presence__carousel .swiper-slide            { width: 60vw; max-width: 240px; }
    .global-presence__carousel .swiper-slide.swiper-slide-big { width: 76vw; max-width: 360px; }
}

/* ---- Card — frameless, image-first ---- */
.event-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
}

/* Fixed media height — same across small and big slides; only width differs.
   Images fill via object-fit:cover, so the ratio mismatch is always hidden. */
.event-card__media {
    position: relative;
    width: 100%;
    height: 600px;
    overflow: hidden;
    background: #EFECEB;
}
@media (max-width: 1199px) {
    .event-card__media { height: 500px; }
}
@media (max-width: 767px) {
    .event-card__media { height: 400px; }
}

.event-card__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 600ms ease;
}
.event-card:hover .event-card__img {
    transform: scale(1.03);
}

/* ---- Caption (below media, no chrome) ---- */
.event-card__caption {
    display: flex;
    flex-direction: column;
    padding: 16px 2px 0;
}

.event-card__name {
    margin: 0;
    font-family: 'GothamPro', Candara, 'Segoe UI', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 1.4;
    color: #000;
    text-transform: uppercase;
}

.event-card__meta {
    margin: 4px 0 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    line-height: 1.4;
    color: #737373;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
}

.event-card__country { color: #2D2D2D; font-weight: 500; }
.event-card__city    { color: #737373; }
.event-card__year    { color: #737373; font-weight: 400; }
.event-card__dot     { margin: 0 6px; color: #C8C4C3; }

@media (max-width: 767px) {
    .event-card__caption { padding: 10px 2px 0; }
    .event-card__name    { font-size: 12px; }
    .event-card__meta    { font-size: 11px; }
}

/* ---- Reduced motion ---- */
@media (prefers-reduced-motion: reduce) {
    .event-card__img {
        transition: none !important;
    }
    .event-card:hover .event-card__img { transform: none; }
}

/* End */


/* Start:/local/templates/main_en/components/bitrix/news.list/section.our_products/style.css?17767558437493*/
.p-item {padding-left: 20px;padding-right: 20px;background-color: #ffffff;border-bottom: 1px solid transparent;position: relative;margin-bottom: 20px;}  .p-item__title {font-weight: 700;font-size: 20px;line-height: 120%;letter-spacing: 0.02em;text-transform: uppercase;color: #000000;padding: 0;margin-bottom: 10px;margin-top: 20px;}  .p-item__title:hover a {color: #5c5c5c !important;}  .p-item__title a {display: block;cursor: pointer;}  .p-item__caption {font-weight: 700;font-size: 14px;line-height: 13px;letter-spacing: 0.36em;text-transform: uppercase;color: #5c5c5c;margin-bottom: 20px;}  .p-item__head {display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex;-webkit-box-orient: vertical;-webkit-box-direction: reverse;-webkit-flex-direction: column-reverse;-ms-flex-direction: column-reverse;flex-direction: column-reverse;}  .p-item__head-img {position: relative;z-index: 1;}  .p-item__bg {position: absolute;height: 120px;width: 200px;left: 0;top: 0;}  .p-item__img {position: relative;z-index: 1;display: block;}  .p-item:nth-child(even) .p-item__img {margin-left: auto;}  .p-item:nth-child(even) .p-item__bg {left: initial;right: 0;}  .p-item__descr p {font-weight: 400;font-size: 14px;line-height: 22px;letter-spacing: 0.01em;color: #2D2D2D;}  .p-item:before {content: "";position: absolute;width: 100%;background-color: #f7f5f5;height: 20px;left: 0;}  .p-item__descr {position: relative;}  .p-grid__item { /*min-width-lg*/}  .our-products-section__title {margin-bottom: 40px;}  .big-btn-block__btn {padding: 24px 37px 24px 30px;}  .big-btn-block__btn .btn__icon {margin-left: 26px;-webkit-flex-shrink: 0;-ms-flex-negative: 0;flex-shrink: 0;}  /*start-anim-block*/  .p-item.animate-in {-webkit-transform: translateY(0) !important;-ms-transform: translateY(0) !important;transform: translateY(0) !important;opacity: 1 !important;}  .p-item.animate-in .p-item__bg {-webkit-transform: scaleX(1) !important;-ms-transform: scaleX(1) !important;transform: scaleX(1) !important;opacity: 1 !important;}  .p-item.animate-in .p-item__img {-webkit-transform: translateY(0) !important;-ms-transform: translateY(0) !important;transform: translateY(0) !important;opacity: 1 !important;}  .p-item.animate-in .p-item__title {-webkit-transform: translateX(0) !important;-ms-transform: translateX(0) !important;transform: translateX(0) !important;opacity: 1 !important;}  .p-item.animation .p-item__bg {-webkit-transform-origin: left top;-ms-transform-origin: left top;transform-origin: left top;-webkit-transition: all .6s ease-in-out .1s;-o-transition: all .6s ease-in-out .1s;transition: all .6s ease-in-out .1s;-webkit-transform: scaleX(0);-ms-transform: scaleX(0);transform: scaleX(0);opacity: 0;}  .p-item.animation .p-item__title {-webkit-transition: all .5s ease-in-out 0.1s;-o-transition: all .5s ease-in-out 0.1s;transition: all .5s ease-in-out 0.1s;-webkit-transform: translateX(100px);-ms-transform: translateX(100px);transform: translateX(100px);opacity: 0;}  .p-item.animation .p-item__img {-webkit-transition: all .5s ease-in-out 0.1s;-o-transition: all .5s ease-in-out 0.1s;transition: all .5s ease-in-out 0.1s;-webkit-transform: translateY(100px);-ms-transform: translateY(100px);transform: translateY(100px);opacity: 0;}  .p-item.animation:nth-child(odd) {-webkit-transform: translateY(100px);-ms-transform: translateY(100px);transform: translateY(100px);-webkit-transition: all .5s ease-in-out;-o-transition: all .5s ease-in-out;transition: all .5s ease-in-out;}  .p-item.animation:nth-child(even) {-webkit-transform: translateY(150px);-ms-transform: translateY(150px);transform: translateY(150px);-webkit-transition: all .6s ease-in-out;-o-transition: all .6s ease-in-out;transition: all .6s ease-in-out;}  .def-title-block--big-caption.animate-in {-webkit-transform: translateY(0) !important;-ms-transform: translateY(0) !important;transform: translateY(0) !important;opacity: 1 !important;}  .def-title-block--big-caption.animation {-webkit-transition: all .5s ease-in-out .2s;-o-transition: all .5s ease-in-out .2s;transition: all .5s ease-in-out .2s;-webkit-transform: translateX(-100px);-ms-transform: translateX(-100px);transform: translateX(-100px);opacity: 0;}  /*start-anim-block*/  @media only screen and (min-width: 1200px) {  .p-item__title {font-size: 32px;line-height: 120%;}  .p-item__head {-webkit-box-orient: horizontal;-webkit-box-direction: normal;-webkit-flex-direction: row;-ms-flex-direction: row;flex-direction: row;-webkit-box-pack: justify;-webkit-justify-content: space-between;-ms-flex-pack: justify;justify-content: space-between;}  .p-item__head-img {width: 220px;-webkit-flex-shrink: 0;-ms-flex-negative: 0;flex-shrink: 0;}  .p-item__bg {width: 300px;height: 180px;left: initial;right: 0;}  .p-item__img {width: 220px;height: 220px;}  .p-item:nth-child(even) .p-item__img {left: -30px;position: relative;}  .p-item:nth-child(even) .p-item__bg {left: -30px;right: initial;}  .p-item {padding-left: 30px;padding-right: 30px;}  .p-item:before {height: 30px;}  .p-item__head-text {padding-top: 35px;}  .p-item__descr p {margin: 30px 0 0;}  .p-grid__row {display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex;}  .p-grid {margin: 0 -10px;}  .p-grid__item {margin: 0 10px 20px;padding-bottom: 30px;}  .p-grid__item .p-item__head-text {z-index: 2;}  .p-grid__item--1 {width: 48.2%;}  .p-grid__item--2 {width: 39.5%;}  .p-grid__item--2 .p-item__head {-webkit-box-orient: horizontal;-webkit-box-direction: reverse;-webkit-flex-direction: row-reverse;-ms-flex-direction: row-reverse;flex-direction: row-reverse;}  .p-grid__item--2 .p-item__head-text {position: relative;left: -50px;}  .p-grid__item--2 .p-item__descr {padding-left: 30px;margin-top: -18px;}  .p-grid__item--3 {width: 41.8%;}  .p-grid__item--3 .p-item__head {margin: 0 -30px;}  .p-grid__item--3 .p-item__head-img {right: initial;position: relative;}  .p-grid__item--3 .p-item__bg {left: 0;right: initial;}  .p-grid__item--3 .p-item__head {-webkit-box-orient: horizontal;-webkit-box-direction: reverse;-webkit-flex-direction: row-reverse;-ms-flex-direction: row-reverse;flex-direction: row-reverse;}  .p-grid__item--3 .p-item__head-text {position: relative;left: -25px;}  .p-grid__item--3 .p-item__caption {text-align: right;}  .p-grid__item--3 .p-item__img {position: absolute;left: 0;top: 0;z-index: 2;display: block;}  .p-grid__item--3 .p-item__descr {padding-top: 45px;padding-left: 30px;}  .p-grid__item--4 {width: 44.9%;}  .p-grid__item--4 .p-item__bg {right: 0 !important;left: initial !important;}  .p-grid__item--4 .p-item__img {left: 10px !important;}  .p-grid__item--4 .p-item__head-text {position: relative;right: -25px;}  .p-grid__item--4 .p-item__descr {padding-left: 30px;padding-top: 20px;}  .p-grid__item--5 {width: 48.1%;}  .p-grid__item--5 .p-item__head-text {max-width: 253px;padding-top: 42px;position: relative;left: 8px;}  .p-grid__item--6 {width: 39.5%;}  .p-grid__item--6 .p-item__bg {right: -2px !important;left: initial !important;}  .p-grid__item--6 .p-item__img {right: -2px !important;left: initial !important;}  .p-grid__item--6 .p-item__head-text {position: relative;right: -29px;top: 9px;}  .p-grid__item--6 .p-item__descr {padding-left: 30px;}  .p-grid__item--2:after, .p-grid__item--3:after, .p-grid__item--4:after, .p-grid__item--6:after {content: "";display: block;height: 100%;left: 0;width: 30px;background-color: #f7f5f5;top: 0;position: absolute;}  .p-grid__item--4 .p-item__bg {right: -8px !important;}  }

/* End */


/* Start:/local/components/classnyisait/reviews.slider/templates/.default/style.css?17804219629896*/
/* Reviews Slider — classnyisait:reviews.slider
 * Изолированные стили. Никаких глобальных селекторов.
 * Используем BEM: .reviews-slider__*, .review-card__*.
 */

/* ---- Section wrapper — прохладный mesh-фон с brand-акцентами ---- */
.reviews-slider {
    position: relative;
    padding: 72px 0;
    color: #2D2D2D;
    background:
        radial-gradient(1100px 550px at 18% 12%, rgba(127, 188, 24, 0.12), transparent 60%),
        radial-gradient(950px 600px at 88% 92%, rgba(166, 133, 88, 0.14), transparent 60%),
        radial-gradient(700px 400px at 60% 40%, rgba(255, 255, 255, 0.40), transparent 65%),
        linear-gradient(135deg, #eef1ec 0%, #e4e9de 45%, #d3dbc9 100%);
    overflow: hidden;
}

/* Soft decorative blobs — тонкие brand-сферы, подсвечивают glass-карточки */
.reviews-slider::before,
.reviews-slider::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
    border-radius: 50%;
    filter: blur(90px);
}

.reviews-slider::before {
    top: -140px;
    right: -160px;
    width: 420px;
    height: 420px;
    background: radial-gradient(circle, #7FBC18 0%, transparent 70%);
    opacity: 0.22;
}

.reviews-slider::after {
    bottom: -160px;
    left: -160px;
    width: 440px;
    height: 440px;
    background: radial-gradient(circle, #A68558 0%, transparent 70%);
    opacity: 0.28;
}

.reviews-slider > * {
    position: relative;
    z-index: 1;
}

.reviews-slider__head {
    margin-bottom: 32px;
    text-align: center;
}

.reviews-slider__title {
    margin: 0;
    font-size: 34px;
    line-height: 1.2;
    font-weight: 600;
    color: #2D2D2D;
    letter-spacing: -0.01em;
}

/* ---- Swiper viewport (wrapper): overflow visible — чтобы стрелки могли выйти за край карусели ---- */
.reviews-slider__viewport {
    position: relative;
    padding: 8px 0 48px;
}

/* Pre-init защита от FOUC: до инициализации Swiper показываем только 1-й слайд */
.reviews-slider__viewport:not(.reviews-slider__viewport--initialized) .reviews-slider__track {
    display: flex;
    gap: 24px;
    overflow: hidden;
    list-style: none;
    padding: 0;
    margin: 0;
}
.reviews-slider__viewport:not(.reviews-slider__viewport--initialized) .reviews-slider__slide {
    flex: 0 0 100%;
}

/* Когда Swiper инициализирован — он управляет layout'ом внутри .reviews-slider__carousel */
.reviews-slider__carousel .reviews-slider__track {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* ---- Равная высота слайдов: slide-box — flex-контейнер, карточка растягивается ---- */
.reviews-slider__carousel .swiper-slide {
    height: auto;
    display: flex;
}

.reviews-slider__slide {
    box-sizing: border-box;
}

/* ---- Card — glassmorphism ---- */
.review-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
    min-height: 360px;
    padding: 28px 24px 24px;

    /* Полупрозрачный фон + backdrop blur */
    background: rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(24px) saturate(180%);
    -webkit-backdrop-filter: blur(24px) saturate(180%);

    /* Тонкая светлая граница + inner highlight сверху */
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-radius: 20px;


    box-sizing: border-box;
    transition: transform 300ms ease, box-shadow 300ms ease;
}



/* Fallback для браузеров без backdrop-filter (старый Firefox) */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .review-card {
        background: rgba(255, 255, 255, 0.92);
    }
}

/* ---- Avatar ---- */
.review-card__avatar-wrap {
    margin-bottom: 16px;
}

.review-card__avatar {
    display: block;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    object-fit: cover;
    background: rgba(239, 236, 235, 0.8);
    box-shadow: 0 4px 12px rgba(31, 38, 135, 0.08);
}

.review-card__avatar--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #A68558 0%, #8B6F47 100%);
    color: #FFFFFF;
    font-size: 26px;
    font-weight: 600;
    text-transform: uppercase;
}

/* ---- Name / Location ---- */
.review-card__name {
    margin: 0 0 4px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.3;
    color: #2D2D2D;
}

.review-card__location {
    margin: 0 0 16px;
    font-size: 14px;
    color: #8B6F47;
    line-height: 1.4;
}

.review-card__dot {
    margin: 0 6px;
    color: #B8A488;
}

/* ---- Text (clamp 6 lines) ---- */
.review-card__text {
    margin: 0;
    font-size: 15px;
    line-height: 1.55;
    color: #4A4A4A;

    display: -webkit-box;
    -webkit-line-clamp: 6;
    line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1 1 auto;
}

/* ---- Navigation arrows ---- */
.reviews-slider__arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-top: -24px;
    padding: 0;
    background: #FFFFFF;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(139, 111, 71, 0.25);
    border-radius: 50%;
    color: #8B6F47;
    cursor: pointer;
    box-shadow: 0 6px 20px rgba(31, 38, 135, 0.18);
    transition: background-color 200ms ease, color 200ms ease, transform 200ms ease, box-shadow 200ms ease;
}

.reviews-slider__arrow:hover,
.reviews-slider__arrow:focus-visible {
    background: #8B6F47;
    color: #FFFFFF;
    outline: none;
    transform: scale(1.05);
}

.reviews-slider__arrow:focus-visible {
    box-shadow: 0 0 0 3px rgba(139, 111, 71, 0.35);
}

.reviews-slider__arrow--prev {
    left: -60px;
}

.reviews-slider__arrow--next {
    right: -60px;
}

.reviews-slider__arrow[aria-disabled="true"],
.reviews-slider__arrow.swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
    pointer-events: none;
}

/* ---- Pagination (Swiper-driven) ---- */
.reviews-slider__pagination.swiper-pagination {
    position: absolute;
    bottom: 8px;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    gap: 8px;
    line-height: 0;
}

.reviews-slider__pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: rgba(139, 111, 71, 0.25);
    opacity: 1;
    border-radius: 50%;
    transition: background-color 200ms ease, transform 200ms ease;
    cursor: pointer;
}

.reviews-slider__pagination .swiper-pagination-bullet-active {
    background: #8B6F47;
    transform: scale(1.25);
}

/* ---- Breakpoints (soft — main layout handled by Swiper breakpoints in script.js) ---- */
@media (max-width: 765px) {
    /* Fullbleed на мобильной точке перехода — растягиваем секцию на всю ширину
       viewport, обнуляя любые родительские отступы (.page-wrap padding-left,
       DevTools device frame и т.п.). На этом breakpoint стрелок нет (display: none),
       так что их позиция не ломается. */
    .reviews-slider {
        width: 100vw;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding: 40px 0;
    }
    .reviews-slider__title {
        font-size: 26px;
    }
    .review-card {
        min-height: 300px;
        padding: 24px 20px 20px;
        border-radius: 18px;
    }
    /* На мобильных стрелок нет — работают свайп и пагинация точками */
    .reviews-slider__arrow {
        display: none;
    }
}

/* ---- Reduced motion ---- */
@media (prefers-reduced-motion: reduce) {
    .reviews-slider__arrow,
    .reviews-slider__pagination .swiper-pagination-bullet,
    .review-card {
        transition: none !important;
    }
    .review-card:hover {
        transform: none;
    }
}

/* ---- Scroll-in animation: stagger heading → carousel ----
   Стиль секции: тёплое soft-fade-up на заголовке, чуть позже —
   ленивый scale-in карусели (как будто стопка карточек выдвигается). */
.reviews-slider__head.js-scroll-animate.animation,
.reviews-slider__viewport.js-scroll-animate.animation {
    will-change: transform, opacity;
}

.reviews-slider__head.js-scroll-animate.animation {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .65s cubic-bezier(.2,.7,.2,1), transform .65s cubic-bezier(.2,.7,.2,1);
}
.reviews-slider__head.js-scroll-animate.animation.animate-in {
    opacity: 1;
    transform: none;
}

.reviews-slider__viewport.js-scroll-animate.animation {
    opacity: 0;
    transform: translateY(28px) scale(.985);
    transform-origin: 50% 30%;
    transition: opacity .75s cubic-bezier(.2,.7,.2,1) .18s,
                transform .75s cubic-bezier(.2,.7,.2,1) .18s;
}
.reviews-slider__viewport.js-scroll-animate.animation.animate-in {
    opacity: 1;
    transform: none;
}

@media (prefers-reduced-motion: reduce) {
    .reviews-slider__head.js-scroll-animate.animation,
    .reviews-slider__viewport.js-scroll-animate.animation,
    .reviews-slider__head.js-scroll-animate.animation.animate-in,
    .reviews-slider__viewport.js-scroll-animate.animation.animate-in {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}
@media only screen and (max-width: 991px) {
.pl-mob-0 {
    padding-left: 0 !important;
}  .pr-mob-0 {
    padding-right: 0 !important;
}
}

/* End */


/* Start:/local/components/classnyisait/certificates.slider/templates/.default/style.css?178042196118421*/
/* Certificates Slider — classnyisait:certificates.slider
 * Изолированные стили. BEM: .certificates-slider__*, .cert-card__*, .cert-lightbox__*
 * Glassmorphism: backdrop-filter + translucent background + soft shadows.
 */

/* ---- Section ---- */
.certificates-slider {
    position: relative;
    padding: 72px 0;
    color: #2D2D2D;
    background: radial-gradient(1200px 600px at 10% 0%, rgba(139, 111, 71, 0.12), transparent 60%),
    radial-gradient(900px 500px at 100% 100%, rgba(184, 164, 136, 0.18), transparent 60%),
    linear-gradient(135deg, #f6f2ea 0%, #ece3d0 50%, #e1d4b7 100%);
    overflow: hidden;
}

/* Soft decorative blobs for glass to pick up color */
.certificates-slider::before,
.certificates-slider::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.55;
}

.certificates-slider::before {
    top: -120px;
    left: -120px;
    width: 360px;
    height: 360px;
    background: radial-gradient(circle, #c9a56a 0%, transparent 70%);
}

.certificates-slider::after {
    bottom: -120px;
    right: -120px;
    width: 420px;
    height: 420px;
    background: radial-gradient(circle, #8B6F47 0%, transparent 70%);
    opacity: 0.35;
}

.certificates-slider > .page-width {
    position: relative;
    z-index: 1;
}

.certificates-slider__head {
    margin-bottom: 36px;
    text-align: center;
}

.certificates-slider__title {
    margin: 0 0 10px;
    font-size: 34px;
    line-height: 1.2;
    font-weight: 600;
    color: #2D2D2D;
    letter-spacing: -0.01em;
}

.certificates-slider__subtitle {
    margin: 0;
    font-size: 16px;
    line-height: 1.5;
    color: #5a5148;
}

/* ---- Swiper viewport ---- */
/* Боковой padding резервирует место для круглых стрелок,
 * чтобы они не перекрывали карточки и не обрезались. */
.certificates-slider__viewport {
    position: relative;
    padding: 8px 60px 52px;
}

/* Pre-init fallback: до инициализации Swiper показываем только первую карточку */
.certificates-slider__viewport:not(.swiper-container-initialized) .certificates-slider__track {
    display: flex;
    gap: 24px;
    overflow: hidden;
    list-style: none;
    padding: 0;
    margin: 0;
    align-items: stretch;
}

.certificates-slider__viewport:not(.swiper-container-initialized) .certificates-slider__slide {
    flex: 0 0 100%;
    display: flex;
}

/* After init: equal-height slides */
.certificates-slider__viewport.swiper-container-initialized .certificates-slider__track {
    list-style: none;
    padding: 0;
    margin: 0;
    align-items: stretch;
}

.certificates-slider__viewport.swiper-container-initialized .certificates-slider__slide {
    height: auto;
    display: flex;
}

/* Safety: force flex on slides regardless of init state */
.certificates-slider__slide {
    box-sizing: border-box;
    height: auto;
}

/* ---- Card (Glass) ---- */
.cert-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border-radius: 20px;
    overflow: hidden;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.38);
    backdrop-filter: blur(22px) saturate(180%);
    -webkit-backdrop-filter: blur(22px) saturate(180%);
    border: 1px solid rgba(255, 255, 255, 0.55);
    box-shadow: 0 10px 30px rgba(67, 51, 30, 0.12),
    0 2px 6px rgba(67, 51, 30, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.75);
    transition: transform 260ms ease, box-shadow 260ms ease, background-color 260ms ease;
}

.cert-card:hover {
    transform: translateY(-4px);
    background: rgba(255, 255, 255, 0.5);
    box-shadow: 0 18px 44px rgba(67, 51, 30, 0.18),
    0 4px 10px rgba(67, 51, 30, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

/* ---- Trigger (button wrapping preview image) ----
   Глубокий тёплый фон-«подложка» + spotlight на mousemove.
   Переменные --cert-mx/--cert-my задаются в JS (cert-card spotlight). */
.cert-card__trigger {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    background:
        radial-gradient(circle at var(--cert-mx, 50%) var(--cert-my, 0%),
            rgba(255, 232, 190, 0.28) 0%,
            rgba(201, 165, 106, 0.15) 25%,
            transparent 55%),
        radial-gradient(120% 100% at 0% 0%, rgba(139, 111, 71, 0.30), transparent 60%),
        radial-gradient(120% 100% at 100% 100%, rgba(31, 23, 13, 0.55), transparent 60%),
        linear-gradient(135deg, #3d362b 0%, #2a251d 55%, #1f1913 100%);
    border: 0;
    aspect-ratio: 3 / 4;
    cursor: pointer;
    overflow: hidden;
    perspective: 900px;
    perspective-origin: 50% 50%;
    transition: transform 400ms cubic-bezier(.22,.61,.36,1),
                box-shadow 400ms cubic-bezier(.22,.61,.36,1);
}

/* Мягкое «стекло» + винтажный bottom-hairline */
.cert-card__trigger::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at var(--cert-mx, 50%) var(--cert-my, 50%),
            rgba(255, 255, 255, 0.12) 0%,
            transparent 45%);
    opacity: 0;
    transition: opacity 260ms ease;
    mix-blend-mode: screen;
}

.cert-card__trigger::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.6),
                inset 0 0 0 1px rgba(201, 165, 106, 0.08);
    border-radius: inherit;
}

.cert-card__trigger:hover {
    transform: translateZ(0);
    box-shadow: 0 12px 28px rgba(31, 23, 13, 0.22) inset;
}

.cert-card__trigger:hover::before {
    opacity: 1;
}

.cert-card__trigger:focus-visible {
    outline: 2px solid #8B6F47;
    outline-offset: -2px;
}

.cert-card__preview {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 40px;
    box-sizing: border-box;
    transform-origin: 50% 50%;
    transform:
        rotateX(var(--cert-rx, 0deg))
        rotateY(var(--cert-ry, 0deg))
        translate3d(var(--cert-tx, 0), var(--cert-ty, 0), 0)
        scale(1);
    transition: transform 420ms cubic-bezier(.22,.61,.36,1);
    will-change: transform;
    backface-visibility: hidden;
}
.cert-card__trigger.is-tilting .cert-card__preview {
    transform:
        rotateX(var(--cert-rx, 0deg))
        rotateY(var(--cert-ry, 0deg))
        translate3d(var(--cert-tx, 0), var(--cert-ty, 0), 0)
        scale(1.04);
    transition: transform 80ms linear;
}

.cert-card__pdf-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    display: inline-flex;
    align-items: center;
    padding: 5px 10px;
    background: rgba(139, 111, 71, 0.85);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    color: #FFFFFF;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.06em;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    box-shadow: 0 4px 12px rgba(67, 51, 30, 0.2);
    pointer-events: none;
}

/* ---- Caption ---- */
.cert-card__caption {
    padding: 18px 20px 22px;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.35) 0%, rgba(255, 255, 255, 0.15) 100%);
    border-top: 1px solid rgba(255, 255, 255, 0.55);
}

.cert-card__title {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    color: #2D2D2D;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    padding: 0;
    min-height: calc(15px * 1.4 * 2); /* reserve ~2 lines for visual parity */
}

.cert-card__meta {
    margin: 0;
    font-size: 13px;
    line-height: 1.4;
    color: #6F5636;
    margin-top: auto;
}

.cert-card__dot {
    margin: 0 4px;
    color: #B8A488;
}

/* ---- Navigation arrows ---- */
.certificates-slider__arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    margin-top: -23px;
    padding: 0;
    background: rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(14px) saturate(180%);
    -webkit-backdrop-filter: blur(14px) saturate(180%);
    border: 1px solid rgba(255, 255, 255, 0.7);
    border-radius: 50%;
    color: #2D2D2D;
    cursor: pointer;
    box-shadow: 0 6px 18px rgba(67, 51, 30, 0.15),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
    transition: background-color 200ms ease, color 200ms ease, transform 200ms ease;
}

.certificates-slider__arrow:hover,
.certificates-slider__arrow:focus-visible {
    background: #8B6F47;
    color: #FFFFFF;
    outline: none;
    border-color: rgba(255, 255, 255, 0.3);
}

.certificates-slider__arrow:focus-visible {
    box-shadow: 0 0 0 3px rgba(139, 111, 71, 0.35);
}

.certificates-slider__arrow--prev {
    left: 6px;
}

.certificates-slider__arrow--next {
    right: 6px;
}

.certificates-slider__arrow[aria-disabled="true"],
.certificates-slider__arrow.swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
    pointer-events: none;
}

/* ---- Pagination ---- */
.certificates-slider__pagination.swiper-pagination {
    position: absolute;
    bottom: 8px;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    gap: 8px;
    line-height: 0;
}

.certificates-slider__pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: rgba(139, 111, 71, 0.25);
    opacity: 1;
    border-radius: 50%;
    transition: background-color 200ms ease, transform 200ms ease;
    cursor: pointer;
}

.certificates-slider__pagination .swiper-pagination-bullet-active {
    background: #8B6F47;
    transform: scale(1.3);
}

/* ---- Breakpoints ---- */
@media (max-width: 765px) {
    .certificates-slider {
        padding: 48px 0;
    }

    .certificates-slider__title {
        font-size: 26px;
    }

    .certificates-slider__subtitle {
        font-size: 14px;
    }

    .certificates-slider__viewport {
        padding: 8px 48px 44px;
    }

    .certificates-slider__arrow {
        width: 40px;
        height: 40px;
        margin-top: -20px;
    }

    .certificates-slider__arrow--prev {
        left: 4px;
    }

    .certificates-slider__arrow--next {
        right: 4px;
    }

    .cert-card {
        border-radius: 16px;
    }

    .cert-card__title {
        font-size: 14px;
    }

    .cert-card__caption {
        padding: 14px 16px 16px;
    }
}

/* ---- Reduced motion ---- */
@media (prefers-reduced-motion: reduce) {
    .cert-card,
    .certificates-slider__arrow,
    .certificates-slider__pagination .swiper-pagination-bullet,
    .cert-card__trigger,
    .cert-card__preview {
        transition: none !important;
    }

    .cert-card:hover {
        transform: none;
    }

    .cert-card:hover .cert-card__preview {
        transform: none;
    }
}

/* ================================================================
   CUBE EFFECT — ported from balconstudio-com:news.detail
   Enabled via JS when EffectCube module is available. Swiper's cube
   effect needs a fixed-size square-ish viewport and one-slide-at-a-time
   layout; arrows and pagination stay outside the rotating cube.
   ================================================================ */
.certificates-slider--cube {
    /* Fix a single-slide viewport; cube rotates in 3D around this box */
    width: 1014px;
    height: 740px;
    margin: 0 auto;
    padding: 20px 0 60px;
    overflow: visible;
    perspective: 1200px;
}

.certificates-slider--cube .certificates-slider__track {
    /* Cube needs slides stacked; Swiper applies its own 3D transforms */
    transform-style: preserve-3d;
}

.certificates-slider--cube .certificates-slider__slide,
.certificates-slider--cube .swiper-slide {
    width: 100%;
    height: 100%;
    box-shadow: none;
    backface-visibility: hidden;
    transform-style: preserve-3d;
}

/* Cube effect + glass-card = visual mismatch (glass blur renders wrong
   behind 3D transforms). Swap to solid card for cube mode only. */
.certificates-slider--cube .cert-card {
    background: #FFFFFF;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border: 1px solid #EFECEB;
    height: 100%;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.18);
}

/* Arrows position relative to cube bounds */
.certificates-slider--cube .certificates-slider__arrow--prev {
    left: -68px;
}

.certificates-slider--cube .certificates-slider__arrow--next {
    right: -68px;
}

/* Swiper's own cube shadow wrapper — ensure it sits behind the cube */
.certificates-slider--cube .swiper-cube-shadow {
    z-index: -1;
}

@media (max-width: 991px) {
    .certificates-slider--cube .certificates-slider__arrow--prev {
        left: -20px;
    }

    .certificates-slider--cube .certificates-slider__arrow--next {
        right: -20px;
    }
}



    .certificates-slider--cube .certificates-slider__arrow {

        margin: 0;
    }


}

/* ---- Fallback for browsers without backdrop-filter ---- */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .cert-card {
        background: rgba(255, 255, 255, 0.85);
    }

    .cert-card__pdf-badge {
        background: #8B6F47;
    }

    .certificates-slider__arrow {
        background: #FFFFFF;
    }
}

/* ============ LIGHTBOX ============ */

.cert-lightbox {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 40px 24px;
    background: rgba(18, 16, 14, 0.78);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    animation: certLightboxFadeIn 200ms ease-out;
}

.cert-lightbox[data-open="true"] {
    display: flex;
}

@keyframes certLightboxFadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.cert-lightbox__dialog {
    position: relative;
    max-width: min(90vw, 900px);
    max-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    outline: none;
}

.cert-lightbox__image-wrap {
    position: relative;
    max-width: 100%;
    max-height: calc(100vh - 220px);
    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 16px;
    overflow: hidden;

}

.cert-lightbox__image {
    display: block;
    max-width: 100%;
    max-height: calc(100vh - 220px);
    object-fit: contain;

}

.cert-lightbox__caption {
    max-width: min(90vw, 700px);
    text-align: center;
    color: #FFFFFF;
    font-size: 15px;
    line-height: 1.5;
    margin: 0;
}

.cert-lightbox__actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
}

.cert-lightbox__pdf-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: #ffffff;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 10px;
    transition: background-color 200ms ease;
}

.cert-lightbox__pdf-btn:hover,
.cert-lightbox__pdf-btn:focus-visible {
    background: #ffffff;
    outline: none;
}

.cert-lightbox__pdf-btn:focus-visible {
    box-shadow: 0 0 0 3px rgba(139, 111, 71, 0.5);
}

.cert-lightbox__pdf-size {
    opacity: 0.8;
    font-weight: 400;
    font-size: 13px;
}

/* Close button */
.cert-lightbox__close {
    position: absolute;
    top: -48px;
    right: 0;
    width: 40px;
    height: 40px;
    padding: 0;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    color: #FFFFFF;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 200ms ease, border-color 200ms ease;
}

.cert-lightbox__close:hover,
.cert-lightbox__close:focus-visible {
    background: rgba(255, 255, 255, 0.25);
    border-color: rgba(255, 255, 255, 0.6);
    outline: none;
}

.cert-lightbox__close:focus-visible {
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.4);
}

/* Prev/Next in lightbox */
.cert-lightbox__nav {
    position: absolute;
    top: 50%;
    width: 48px;
    height: 48px;
    margin-top: -24px;
    padding: 0;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    color: #FFFFFF;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 200ms ease;
}

.cert-lightbox__nav:hover,
.cert-lightbox__nav:focus-visible {
    background: rgba(255, 255, 255, 0.3);
    outline: none;
}

.cert-lightbox__nav:focus-visible {
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.5);
}

.cert-lightbox__nav--prev {
    left: -64px;
}

.cert-lightbox__nav--next {
    right: -64px;
}

@media (max-width: 1023px) {
    .cert-lightbox__nav--prev {
        left: 8px;
    }

    .cert-lightbox__nav--next {
        right: 8px;
    }

    .cert-lightbox__close {
        top: -48px;
        right: 8px;
    }
}

@media (max-width: 767px) {
    .cert-lightbox {
        padding: 24px 16px 32px;
    }

    .cert-lightbox__dialog {
        max-width: 100%;
        gap: 14px;
    }

    .cert-lightbox__image-wrap,
    .cert-lightbox__image {
        max-height: calc(100vh - 300px);
    }

    .cert-lightbox__actions {
        padding-bottom: env(safe-area-inset-bottom, 0px);
    }
}

@media (prefers-reduced-motion: reduce) {
    .cert-lightbox {
        animation: none;
    }
}

/* Body scroll lock while lightbox is open */
.cert-lightbox-open {
    overflow: hidden;
}

@media only screen and (max-width: 991px) {
    .certificates-slider__arrow {
        display: none;
    }

    .certificates-slider__pagination.swiper-pagination {
        bottom: -35px !important;
    }

    .certificates-slider--cube {

        width: min(420px, 90vw);
        height: min(420px, 80vh);

    }
}



@media only screen and (min-width: 991px) {
    .certificates-slider__pagination.swiper-pagination {
        bottom: -55px !important;
    }
}

/* End */


/* Start:/local/components/classnyisait/distributors.map/templates/.default/style.css?178042196122373*/
/* Distributors Map — classnyisait:distributors.map */

.distributors-map {
    padding: 60px 0 0;
    background: #fff;
}
.distributors-map__balloon.distributors-map__balloon--tier-2 {
    overflow: auto;
    height: 309px;
}
@media (max-width: 767px) {
    .distributors-map { padding: 36px 0 45px; }
}

.distributors-map__head {
    text-align: center;
    max-width: 820px;
    margin: 0 auto 32px;
}

@media (max-width: 767px) {
    .distributors-map__head { margin-bottom: 20px; }
}

.distributors-map__title {
    font-family: 'GothamPro', Candara, Segoe, 'Segoe UI', 'Helvetica Neue', Helvetica, sans-serif;
    font-weight: 700;
    font-size: 42px;
    line-height: 52px;
    color: #000;
    margin: 0 0 12px;
    text-transform: uppercase;
    letter-spacing: .02em;
}

@media (max-width: 1600px) {
    .distributors-map__title { font-size: 34px; line-height: 1.2; }
}
@media (max-width: 1200px) {
    .distributors-map__title { font-size: 32px; line-height: 46px; }
}
@media (max-width: 767px) {
    .distributors-map__title { font-size: 28px; line-height: 42px; }
}
@media (max-width: 500px) {
    .distributors-map__title { font-size: 24px; line-height: 34px; }
}

.distributors-map__subtitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    color: #575756;
    margin: 0;
}

.distributors-map__legend {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 28px;
    justify-content: center;
    margin: 0 auto 24px;
    padding: 0;
    list-style: none;
    max-width: 860px;
}

@media (max-width: 767px) {
    .distributors-map__legend { gap: 10px 18px; margin-bottom: 18px; }
}

.distributors-map__legend-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #000;
}

.distributors-map__legend-item::before {
    content: '';
    width: 14px;
    height: 14px;
    border-radius: 50%;
    flex-shrink: 0;
}

.distributors-map__legend-item--tier-1::before { background: #7FBC18; }
.distributors-map__legend-item--tier-2::before { background: #2D2D2D; }
.distributors-map__legend-item--tier-3::before { background: #EFECEB; border: 1px solid #737373; }

.distributors-map__canvas-wrap {
    position: relative;
    width: 100%;
    height: 790px;
    min-height: 400px;
    overflow: hidden;
    background: #F5F2F0;
}

/* ===== Brand map style (enabled via CUSTOM_STYLE="Y" parameter) =====
   Muted, cream-toned map — distinctly different from the default Yandex
   blue-and-green so the brand identity reads at a glance, but still
   readable enough to navigate. */
/* Фильтр накладываем ТОЛЬКО на слой тайлов карты (ground-pane),
   чтобы маркеры (placemark), кластеры и контролы зума остались в исходных цветах. */
.distributors-map--brand .distributors-map__canvas [class*="ground-pane"] {
    filter: grayscale(.85) sepia(.35) saturate(.6) contrast(.95) brightness(1.05);
}

.distributors-map--brand .distributors-map__canvas-wrap [class*="-copyright"] {
    opacity: .55;
}

/* Whisper-soft vignette — only faint edges */
.distributors-map--brand .distributors-map__canvas-wrap::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 2;
    background: radial-gradient(ellipse at center, transparent 70%, rgba(45,45,45,.06) 100%);
}

@media (max-width: 991px) {
    .distributors-map__canvas-wrap { height: 480px; }
}

@media (max-width: 600px) {
    .distributors-map__canvas-wrap { height: 380px; }
}

.distributors-map__canvas {
    position: absolute;
    inset: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.distributors-map__skeleton {
    position: absolute;
    inset: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 14px;
    background: linear-gradient(135deg, #f5f5f5 0%, #e8e8e8 100%);
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #575756;
    transition: opacity .3s ease;
}

.distributors-map__skeleton--hidden {
    opacity: 0;
    pointer-events: none;
}

.distributors-map__skeleton::before {
    content: '';
    width: 32px;
    height: 32px;
    border: 3px solid #C6C6C6;
    border-top-color: #7FBC18;
    border-radius: 50%;
    animation: distr-map-spin 1s linear infinite;
}

.distributors-map__error {
    position: absolute;
    inset: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 14px;
    background: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #000;
    text-align: center;
    padding: 20px;
}

.distributors-map__error--visible { display: flex; }

.distributors-map__retry {
    display: inline-flex;
    align-items: center;
    padding: 10px 22px;
    border: 1px solid #000;
    border-radius: 999px;
    background: #fff;
    color: #000;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background .2s cubic-bezier(.36,.26,.19,1.03), color .2s cubic-bezier(.36,.26,.19,1.03);
}

.distributors-map__retry:hover {
    background: #000;
    color: #fff;
}

.distributors-map__cluster {
    position: relative;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 1;
    user-select: none;
    transition: transform .2s ease;
    transform: translate(-50%, -50%);
    transform-origin: center center;
    cursor: pointer;
}
.distributors-map__cluster:hover { transform: translate(-50%, -50%) scale(1.08); }

/* Size tiers — JS adds these based on feature count */
.distributors-map__cluster--md { width: 48px; height: 48px; font-size: 15px; }
.distributors-map__cluster--lg { width: 60px; height: 60px; font-size: 17px; }

/* Gentle pulse for tier-1 (active partners) — draws the eye without bling */
.distributors-map__cluster--pulse::after {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    border: 2px solid #7FBC18;
    opacity: 0;
    animation: distr-cluster-pulse 2.2s cubic-bezier(.2,.6,.2,1) infinite;
    pointer-events: none;
}
@keyframes distr-cluster-pulse {
    0%   { opacity: .65; transform: scale(.85); }
    70%  { opacity: 0;   transform: scale(1.35); }
    100% { opacity: 0;   transform: scale(1.35); }
}
@media (prefers-reduced-motion: reduce) {
    .distributors-map__cluster--pulse::after { animation: none; }
}

.distributors-map__cluster-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.distributors-map__cluster-count {
    position: relative;
    z-index: 1;
}

/* ---------- Zoom hint (desktop only) ---------- */
.distributors-map__hint {
    position: absolute;
    left: 50%;
    bottom: 16px;
    transform: translateX(-50%);
    z-index: 3;
    padding: 7px 14px;
    background: rgba(45, 45, 45, .82);
    color: #fff;
    border-radius: 999px;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: .01em;
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s ease;
}
.distributors-map__hint--visible { opacity: 1; }
@media (hover: none), (max-width: 767px) {
    .distributors-map__hint { display: none; }
}

/* ---------- Custom balloon (override ymaps chrome) ---------- */

/* Kill default ymaps balloon background, border, shadow, tail bg */
.distributors-map ymaps[class*="-balloon"]:not([class*="-balloon__content"]):not([class*="-balloon__close"]):not([class*="-balloon__tail"]):not([class*="-balloon__layout"]) {
    background: transparent !important;
    box-shadow: none !important;
}
.distributors-map [class*="-balloon__layout"] {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 0 !important;
}
.distributors-map [class*="-balloon__content"] {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    color: inherit !important;
    font: inherit !important;
}
.distributors-map [class*="-balloon__content"] > ymaps { width: auto !important; }

/* Hide default tail completely — modern cardless style */
.distributors-map [class*="-balloon__tail"] {
    display: none !important;
}

/* Hide default close — we render our own inside the card */
.distributors-map [class*="-balloon__close"] { display: none !important; }

/* ---------- Our card ---------- */

.distributors-map__balloon {
    position: relative;
    min-width: 260px;
    max-width: 320px;
    /* Cap the card height to fit inside the map canvas (640px desktop,
       480px tablet, 380px mobile). Long contact lists scroll inside. */
    max-height: 440px;
    padding: 20px 22px 18px;
    background: #fff;
    border-radius: 14px;
    font-family: 'Montserrat', sans-serif;
    color: #000;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}
.distributors-map__balloon::-webkit-scrollbar { width: 6px; }
.distributors-map__balloon::-webkit-scrollbar-thumb { background: #D6D3D2; border-radius: 3px; }
.distributors-map__balloon::-webkit-scrollbar-thumb:hover { background: #B4B0AE; }


.distributors-map__balloon-close {
    position: absolute;
    top: 8px;
    right: 8px;
    margin: 0;
    width: 32px;
    height: 32px;
    border: 0;
    outline: 0;
    border-radius: 50%;
    background: #F3F3F3;
    color: #2D2D2D;
    cursor: pointer;
    padding: 0;
    font-size: 0;
    line-height: 0;
    transition: background .2s ease, color .2s ease, transform .2s ease;
    z-index: 2;
    -webkit-appearance: none;
            appearance: none;
}
.distributors-map__balloon-close::before,
.distributors-map__balloon-close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 2px;
    background: currentColor;
    border-radius: 1px;
    transform-origin: center;
    transition: background .2s ease;
}
.distributors-map__balloon-close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}
.distributors-map__balloon-close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}
.distributors-map__balloon-close:hover {
    background: #000;
    color: #fff;
    transform: scale(1.08);
}

.distributors-map__balloon-strip {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: #7FBC18;
}

.distributors-map__balloon--tier-1 .distributors-map__balloon-strip { background: #7FBC18; }
.distributors-map__balloon--tier-2 .distributors-map__balloon-strip { background: #2D2D2D; }
.distributors-map__balloon--tier-3 .distributors-map__balloon-strip { background: #C8C4C3; }

.distributors-map__balloon-badge {
    display: inline-block;
    margin-bottom: 8px;
    padding: 4px 10px;
    border-radius: 999px;
    background: #F3F3F3;
    color: #575756;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    line-height: 1;
}

.distributors-map__balloon--tier-1 .distributors-map__balloon-badge { background: rgba(127,188,24,.12); color: #3D5E0A; }
.distributors-map__balloon--tier-2 .distributors-map__balloon-badge { background: rgba(45,45,45,.08); color: #2D2D2D; }

.distributors-map__balloon-name {
    font-family: 'GothamPro', Candara, 'Segoe UI', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.25;
    padding-bottom: 0;
    color: #000;
    margin: 0 0 6px;
    text-transform: uppercase;
    letter-spacing: .01em;
    word-break: break-word;
}

.distributors-map__balloon-loc {
    margin: 0 0 10px;
    font-size: 12px;
    color: #575756;
    line-height: 1.4;
}

.distributors-map__balloon-addr {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    margin: 0 0 10px;
    padding: 10px 12px;
    background: #FAFAF9;
    border-radius: 8px;
    font-size: 12px;
    color: #2D2D2D;
    line-height: 1.4;
}

.distributors-map__balloon-contact {
    margin: 8px 0 0;
    padding: 8px 0 0;
    border-top: 1px solid #EFECEB;
    list-style: none;
    font-size: 13px;
    line-height: 1.5;
}

.distributors-map__balloon-contact li {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 6px 0;
    word-break: break-word;
}

.distributors-map__balloon-contact a {
    color: #2D2D2D;
    text-decoration: none;
    font-weight: 500;
    transition: color .2s ease;
}
.distributors-map__balloon-contact a:hover { color: #5E8E10; text-decoration: underline; }

/* ---------- Fixed-position popup (replaces ymaps balloon) ---------- */
/* Hide the default ymaps balloon entirely — we render our own card as an
   absolute child of .distributors-map__canvas-wrap so its position doesn't
   jump around with the marker. */
.distributors-map [class*="-balloon"]:not(.distributors-map__balloon):not(.distributors-map__balloon-close):not(.distributors-map__balloon-strip):not(.distributors-map__balloon-badge):not(.distributors-map__balloon-name):not(.distributors-map__balloon-loc):not(.distributors-map__balloon-addr):not(.distributors-map__balloon-contact):not(.distributors-map__balloon-ico) {
    display: none !important;
}

.distributors-map__popup {
    position: absolute;
    z-index: 6;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 12px 32px rgba(0,0,0,.18), 0 2px 8px rgba(0,0,0,.08);
    opacity: 0;
    pointer-events: none;
    transition: opacity .22s ease, transform .32s cubic-bezier(.22,.61,.36,1);
    will-change: transform, opacity;
}
.distributors-map__popup[hidden] {
    display: block;
}
.distributors-map__popup:not([hidden]) {
    opacity: 1;
    pointer-events: auto;
}
.distributors-map__popup .distributors-map__balloon {
    position: static;
    max-width: none;
    max-height: none;
    height: 100%;
    box-shadow: none;
    border-radius: inherit;
}

/* Desktop: pinned to bottom-right of the map, slides in from the right */
@media (min-width: 992px) {
    .distributors-map__popup {
        right: 10%;
        bottom: 84px;
        width: 360px;
        max-height: calc(100% - 40px);
        border-radius: 14px;
        transform: translateX(calc(100% + 20px));
    }
    .distributors-map__popup:not([hidden]) {
        transform: translateX(0);
    }
}

/* Tablet / mobile: fills the map canvas area */
@media (max-width: 991px) {
    .distributors-map__popup {
        inset: 0;
        border-radius: 0;
    }
    .distributors-map__popup .distributors-map__balloon {
        max-height: 100%;
        overflow-y: auto;
    }
}

/* ---------- A11y: focus ring ---------- */
.distributors-map__retry:focus-visible,
.distributors-map__balloon-contact a:focus-visible,
.distributors-map__panel-input:focus-visible,
.distributors-map__panel-item:focus-visible {
    outline: 2px solid #2D2D2D;
    outline-offset: 2px;
    border-radius: 4px;
}
.distributors-map__balloon-close,
.distributors-map__balloon-close:focus,
.distributors-map__balloon-close:focus-visible,
button.distributors-map__balloon-close:focus,
button.distributors-map__balloon-close:focus-visible {
    outline: 0 !important;
    box-shadow: none !important;
    border: 0 !important;
}

/* ---------- Map area wrapper: relative parent for panel ---------- */
.distributors-map__area {
    position: relative;
}

/* ---------- Side panel: all cities + live search ---------- */
.distributors-map__panel {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 5;
    width: 360px;
    max-height: calc(100% - 40px);
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 10px 30px rgba(0,0,0,.12), 0 2px 6px rgba(0,0,0,.06);
    font-family: 'Montserrat', sans-serif;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.distributors-map__panel-head {
    flex: 0 0 auto;
    padding: 18px 20px 14px;
    border-bottom: 1px solid #EFECEB;
    background: #fff;
}

.distributors-map__panel-title {
    font-family: 'GothamPro', Candara, 'Segoe UI', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.2;
    color: #000;
    margin: 0 0 12px;
    text-transform: uppercase;
    letter-spacing: .02em;
    padding-bottom: 0;
}

.distributors-map__panel-search {
    position: relative;
    display: flex;
    align-items: center;
}

.distributors-map__panel-search-ico {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    fill: #737373;
    pointer-events: none;
}

.distributors-map__panel-input {
    width: 100%;
    padding: 10px 14px 10px 34px;
    border: 1px solid #E4E0DE;
    border-radius: 999px;
    background: #F5F2F0;
    font-family: inherit;
    font-size: 13px;
    color: #2D2D2D;
    transition: border-color .18s ease, background .18s ease;
    -webkit-appearance: none;
    appearance: none;
}
.distributors-map__panel-input::placeholder { color: #737373; }
.distributors-map__panel-input:hover { border-color: #7FBC18; }
.distributors-map__panel-input:focus { border-color: #7FBC18; background: #fff; outline: none; }

/* WebKit clear button alignment */
.distributors-map__panel-input::-webkit-search-cancel-button {
    -webkit-appearance: none;
    width: 14px;
    height: 14px;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%238A8A8A' d='M10 8.6 4.7 3.3 3.3 4.7 8.6 10l-5.3 5.3 1.4 1.4L10 11.4l5.3 5.3 1.4-1.4L11.4 10l5.3-5.3-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
    cursor: pointer;
}

.distributors-map__panel-body {
    flex: 1 1 auto;
    overflow-y: auto;
    overscroll-behavior: contain;
}
.distributors-map__panel-body::-webkit-scrollbar { width: 8px; }
.distributors-map__panel-body::-webkit-scrollbar-thumb { background: #D6D3D2; border-radius: 4px; }
.distributors-map__panel-body::-webkit-scrollbar-thumb:hover { background: #B4B0AE; }

.distributors-map__panel-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.distributors-map__panel-item {
    position: relative;
    padding: 14px 20px 14px 24px;
    border-bottom: 1px solid #EFECEB;
    cursor: pointer;
    transition: background .18s ease;
}
.distributors-map__panel-item:hover,
.distributors-map__panel-item:focus-visible {
    background: #FAF8F6;
}
.distributors-map__panel-item:last-child { border-bottom: 0; }

/* Left-edge brand strip coloured by tier */
.distributors-map__panel-item::before {
    content: '';
    position: absolute;
    top: 14px;
    bottom: 14px;
    left: 12px;
    width: 3px;
    border-radius: 2px;
    background: #C8C4C3;
}
.distributors-map__panel-item--tier-1::before { background: #7FBC18; }
.distributors-map__panel-item--tier-2::before { background: #2D2D2D; }

.distributors-map__panel-item-kind {
    display: inline-block;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #737373;
    margin-bottom: 4px;
}

.distributors-map__panel-item-name {
    font-family: 'GothamPro', Candara, 'Segoe UI', sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.3;
    color: #000;
    margin: 0 0 4px;
    text-transform: none;
}

.distributors-map__panel-item-loc,
.distributors-map__panel-item-addr {
    margin: 2px 0;
    font-size: 12px;
    line-height: 1.4;
    color: #575756;
}
.distributors-map__panel-item-addr { color: #2D2D2D; }

.distributors-map__panel-item-site {
    display: inline-block;
    margin-top: 4px;
    font-size: 12px;
    color: #5E8E10;
    text-decoration: none;
    word-break: break-all;
}
.distributors-map__panel-item-site:hover { text-decoration: underline; }

.distributors-map__panel-empty {
    padding: 24px 20px;
    text-align: center;
    color: #737373;
    font-size: 13px;
    margin: 0;
}

/* ---------- Mobile: panel flows below map ---------- */
@media (max-width: 991px) {
    .distributors-map__panel {
        position: static;
        width: auto;
        margin: 12px 16px 0;
        max-height: 420px;
    }
}
@media (max-width: 767px) {
    .distributors-map__panel {
        margin: 0;
        border-radius: 0;
        box-shadow: none;
        border-top: 1px solid #EFECEB;
        max-height: 360px;
    }
    .distributors-map__panel-head { padding: 14px 16px 12px; }
    .distributors-map__panel-item { padding: 12px 16px 12px 20px; }
    .distributors-map__panel-body {
        padding-bottom: calc(132px + env(safe-area-inset-bottom, 0px));
        box-sizing: border-box;
    }
}

.distributors-map__balloon-ico {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #F3F3F3;
    color: #7FBC18;
}
.distributors-map__balloon-ico svg {
    width: 12px;
    height: 12px;
    fill: currentColor;
}
.distributors-map__balloon-addr .distributors-map__balloon-ico {
    background: #fff;
    color: #575756;
}

@keyframes distr-map-spin {
    to { transform: rotate(360deg); }
}

@media (max-width: 600px) {
    .distributors-map__canvas-wrap .ymaps-2-1-79-copyright { font-size: 10px; }
}

/* Balloon cramped on phones — 320px default hits edges; relax padding
   and let it stretch with the viewport minus a comfortable gutter. */
@media (max-width: 480px) {
    .distributors-map__balloon {
        min-width: 0;
        max-width: calc(100vw - 32px);
        padding: 16px 16px 14px;
        border-radius: 12px;
    }
    .distributors-map__balloon-name { font-size: 15px; }
    .distributors-map__balloon-addr { padding: 8px 10px; font-size: 11.5px; }
    .distributors-map__balloon-contact { font-size: 12.5px; }
}




@media only screen and (min-width:  991px) {
    .page-width.dff {
        position: absolute;
        top: 0;
        height: 100%;
        width: fit-content;
        left: 1%;
        padding: 84px 0px;
    }
    .distributors-map__panel {
        max-height: 100%;
        position:  initial;
    }
}

/* End */


/* Start:/local/components/classnyisait/faq.section/templates/.default/style.css?17804219614850*/
.faq-section {
    padding: 60px 20px;
    background: #f5f2f0;
}

.faq-section__container {
  max-width: 860px;
  margin: 0 auto;
}

.faq-section__title {
  font-size: 2rem;
  font-weight: 700;
  color: #2D2D2D;
  text-align: center;
  margin: 0 0 40px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.faq-section__list {
  margin: 0;
  padding: 0;
}

.faq-section__item {
  border-bottom: 1px solid #E5E5E5;
}

.faq-section__item:first-child {
  border-top: 1px solid #E5E5E5;
}

/* Question button */
.faq-section__question {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 20px 0;
  border: none;
  background: none;
  cursor: pointer;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4;
  color: #2D2D2D;
  text-align: left;
  gap: 16px;
  transition: color 0.2s ease;
}

.faq-section__question:hover,
.faq-section__question:focus-visible {
  color: #8B6F47;
}

.faq-section__question:focus-visible {
  outline: 2px solid #8B6F47;
  outline-offset: 2px;
  border-radius: 2px;
}

.faq-section__question-text {
  flex: 1;
}

/* Chevron icon */
.faq-section__icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  position: relative;
  transition: transform 0.3s ease;
}

.faq-section__icon::before,
.faq-section__icon::after {
  content: '';
  position: absolute;
  background: currentColor;
  border-radius: 1px;
}

.faq-section__icon::before {
  top: 50%;
  left: 2px;
  right: 2px;
  height: 2px;
  transform: translateY(-50%);
}

.faq-section__icon::after {
  left: 50%;
  top: 2px;
  bottom: 2px;
  width: 2px;
  transform: translateX(-50%);
  transition: transform 0.3s ease, opacity 0.3s ease;
}

/* Expanded state: + becomes - */
.faq-section__question[aria-expanded="true"] .faq-section__icon::after {
  transform: translateX(-50%) rotate(90deg);
  opacity: 0;
}

/* Answer area */
.faq-section__answer {
  overflow: hidden;
  max-height: 0;
  visibility: hidden;
  transition: max-height 0.3s ease, visibility 0.3s ease;
}

.faq-section__answer-inner {
  padding: 5px 0 25px 15px;
  font-size: 1rem;
  line-height: 1.6;
  color: #4A4A4A;
}

.faq-section__answer-inner p {
    margin: 0 0 12px;
}

.faq-section__answer-inner p:last-child {
  margin-bottom: 0;
}

.faq-section__answer-inner ul,
.faq-section__answer-inner ol {
  margin: 0 0 12px;
  padding-left: 24px;
}

.faq-section__answer-inner ul { list-style: disc outside; }
.faq-section__answer-inner ol { list-style: decimal outside; }

.faq-section__answer-inner li {
  margin-bottom: 4px;
  list-style: inherit;
}

.faq-section__answer-inner a {
  color: #8B6F47;
  text-decoration: underline;
}

.faq-section__answer-inner a:hover {
  color: #6B5535;
}

.faq-section__answer-inner strong {
  font-weight: 600;
  color: #2D2D2D;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .faq-section__answer,
  .faq-section__icon::after,
  .faq-section__question {
    transition: none;
  }
}

/* Responsive */
@media (max-width: 768px) {
  .faq-section {
    padding: 40px 16px;
  }

  .faq-section__title {
    font-size: 1.5rem;
    margin-bottom: 28px;
  }

  .faq-section__question {
    font-size: 1rem;
    padding: 16px 0;
  }

  .faq-section__answer-inner {
    font-size: 0.9375rem;
    padding-bottom: 16px;
  }
}

@media (max-width: 480px) {
  .faq-section {
    padding: 32px 12px;
  }

  .faq-section__title {
    font-size: 1.25rem;
    margin-bottom: 24px;
  }
}

/* ---------- Cascade scroll-in animation for FAQ items ---------- */
.faq-section__item.js-scroll-animate { will-change: transform, opacity; }
.faq-section__item.js-scroll-animate.animation { transition: opacity .5s ease, transform .5s ease; }

.faq-section__list .faq-section__item:nth-child(1).animation.animate-in { transition-delay: 0ms; }
.faq-section__list .faq-section__item:nth-child(2).animation.animate-in { transition-delay: 60ms; }
.faq-section__list .faq-section__item:nth-child(3).animation.animate-in { transition-delay: 120ms; }
.faq-section__list .faq-section__item:nth-child(4).animation.animate-in { transition-delay: 180ms; }
.faq-section__list .faq-section__item:nth-child(5).animation.animate-in { transition-delay: 240ms; }
.faq-section__list .faq-section__item:nth-child(6).animation.animate-in { transition-delay: 300ms; }
.faq-section__list .faq-section__item:nth-child(7).animation.animate-in { transition-delay: 360ms; }
.faq-section__list .faq-section__item:nth-child(8).animation.animate-in { transition-delay: 420ms; }

@media (prefers-reduced-motion: reduce) {
    .faq-section__item.js-scroll-animate.animation,
    .faq-section__list .faq-section__item.animation.animate-in {
        transition: none !important;
        transition-delay: 0ms !important;
    }
}

@media only screen and (min-width: 991px) {
    .faq-section__answer-inner p {
        font-size: 16px;
    }
}

/* End */
/* /local/components/classnyisait/exit.popup/templates/.default/style.css?17804219615144 */
/* /local/templates/main_en/components/bitrix/news.detail/distr_page/style.css?178042196224095 */
/* /local/components/bx/section.partners/templates/distr/style.css?178042196110081 */
/* /local/components/classnyisait/global.presence/templates/.default/style.css?17804219614964 */
/* /local/templates/main_en/components/bitrix/news.list/section.our_products/style.css?17767558437493 */
/* /local/components/classnyisait/reviews.slider/templates/.default/style.css?17804219629896 */
/* /local/components/classnyisait/certificates.slider/templates/.default/style.css?178042196118421 */
/* /local/components/classnyisait/distributors.map/templates/.default/style.css?178042196122373 */
/* /local/components/classnyisait/faq.section/templates/.default/style.css?17804219614850 */
