
/* Стиль: углы=soft, тени=hard, отступы=compact, кнопки=rounded */

@import url('https://fonts.googleapis.com/css2?family=Overpass:wght@400;500;600;700;800&family=Overpass:wght@400;500&display=swap');

:root {
    /* Акцентные цвета */
    --u146i: #0CC9C2;
    --u158z: #4F05A5;
    --u16a7: #F3151E;
    --u122: linear-gradient(120deg, var(--u146i), var(--u158z));
    
    /* Шрифты */
    --u3ne: 'Overpass', sans-serif;
    --u5w0: 'Overpass', sans-serif;
    
    /* Размеры шрифтов */
    --u19rg: 34px;
    --u20w3: 24px;
    --u21dw: 18px;
    --u173p: 14px;
    
    /* Вес заголовков */
    --u1873: 900;
    
    /* Углы скругления */
    --u66l: 6px;
    --u7sc: 10px;
    --u8qg: 14px;
    --u930: 20px;
    --u4af: 40px;
    
    /* Тени */
    --u10w4: 3px 3px 0 rgba(0,0,0,0.08);
    --u11aa: 5px 5px 0 rgba(0,0,0,0.10);
    --u1240: 8px 8px 0 rgba(0,0,0,0.12);
    --u13cr: 12px 12px 0 rgba(0,0,0,0.15);
    
    /* Отступы секций */
    --css_s3a5t: 60px 0;
}

/* Стиль кнопок */
.css_lp4wq {
    border-radius: 10px;
    padding: 14px 28px;
}

/* Стиль карточек */
.css_esod9, .css_ud5ud, .css_s1cyl, .css_1ifvc, .css_wlpwc {
    border-width: 1px;
    border-color: var(--border-color);
}

/* ═══════════════════════════════════════════ */
/* STYLE TRICKS — автогенерация приёмов      */
/* ═══════════════════════════════════════════ */

/* Trick: stroke-css_op70r — обводка вместо заливки */
.css_op70r {
    -webkit-text-stroke: 2px var(--u146i);
    -webkit-text-fill-color: transparent;
}
.css_op70r:hover {
    -webkit-text-fill-color: var(--u146i);
    transition: -webkit-text-fill-color 0.4s;
}

/* Trick: footer-wave-top — волна над футером */
.css_viube {
    position: relative;
    margin-top: 40px;
}
.css_viube::before {
    content: '';
    position: absolute;
    top: -40px;
    left: 0;
    width: 100%;
    height: 40px;
    background: inherit;
    clip-path: ellipse(55% 100% at 50% 100%);
}

/* Trick: odd-card-lift — нечётные карточки приподняты */
.row > [class*="col"]:nth-child(odd) .css_esod9,
.row > [class*="col"]:nth-child(odd) .css_ud5ud {
    transform: translateY(-10px);
}
.row > [class*="col"]:nth-child(even) .css_esod9,
.row > [class*="col"]:nth-child(even) .css_ud5ud {
    transform: translateY(10px);
}

/* ═══════════════════════════════════════════ */
/* ELEMENT PRESETS — уникализация компонентов */
/* ═══════════════════════════════════════════ */

/* Hero: centered image top — картинка сверху, текст снизу */
.css_zvpay { text-align: center; padding-top: 100px; }
.css_5heja {
    max-width: 900px;
    margin: 0 auto 40px;
}
.css_5heja img {
    border-radius: var(--u930);
    box-shadow: var(--u13cr);
    width: 100%;
    max-height: 400px;
    object-fit: cover;
}
.css_hvwad { max-width: 700px; margin: 0 auto; }
.css_g741y { justify-content: center; }
.css_695fs { margin-bottom: 16px; }

/* Header: top line accent — тонкая акцентная линия сверху */
.css_dde56 {
    background: var(--bg-primary);
    padding: 16px 0;
    border-top: 3px solid var(--u146i);
}
.css_dde56.scrolled {
    box-shadow: 0 4px 16px rgba(0,0,0,0.06);
    padding: 12px 0;
}
.css_fgad9 .nav-link { font-weight: 500; }
.css_fgad9 .nav-link::after { background: var(--u146i); border-radius: var(--u4af); height: 2px; }

/* Footer: warm cozy — тёплый уютный стиль */
.css_viube {
    background: #2c1810;
    color: rgba(255,235,220,0.6);
    padding-top: 80px;
}
.css_viube h4,.css_viube h5 { color: #fff0e6; }
.css_xjkxj .css_dm3cl::after { background: #d4956a; width: 50px; }
.css_cda0b a { color: rgba(255,235,220,0.6); }
.css_cda0b a:hover { color: #d4956a; }
.footer-contact li { color: rgba(255,235,220,0.6); }
.footer-contact li i { color: #d4956a; }
.css_jusie a { border-color: rgba(255,235,220,0.15); color: rgba(255,235,220,0.6); }
.css_jusie a:hover { background: #d4956a; border-color: #d4956a; color: #2c1810; }
.css_tlnlm { border-top: 1px solid rgba(255,235,220,0.08); }
.css_tlnlm p { color: rgba(255,235,220,0.3); }

/* Contact: underline fields — поля с нижней чертой */
.contact-section .form-control {
    border: none;
    border-bottom: 2px solid var(--border-color);
    border-radius: 0;
    padding: 12px 0;
    background: transparent;
    font-size: 16px;
}
.contact-section .form-control:focus { border-bottom-color: var(--u146i); box-shadow: none; }
.contact-section .css_lp4wq { border-radius: 0; text-transform: uppercase; letter-spacing: 2px; font-size: 13px; padding: 16px 40px; }

/* Logo: pill bg — фон-капсула */
.css_mwycn { font-size: 16px; font-weight: 700; background: var(--u146i); color: #fff !important; padding: 8px 20px; border-radius: var(--u4af); letter-spacing: 1px; }
.css_mwycn:hover { color: #fff; opacity: 0.9; }

/* Headings: accent underline — подчёркивание акцентом */
.css_ptwh1, .card-title, .css_mbofp, .css_dm3cl {
    position: relative;
    padding-bottom: 10px;
}
.css_ptwh1::after, .card-title::after, .css_mbofp::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 30px;
    height: 2px;
    background: var(--u146i);
    border-radius: 1px;
}

/* ═══ BURGER MENU DESIGN ═══ */
/* Burger: brutalist — грубый стиль, толстые линии, квадратная рамка */
.css_vh941 { width: 46px; height: 46px; gap: 5px; border: 3px solid var(--text-primary); background: none; border-radius: 0; }
.css_vh941 .css_jqypx { width: 22px; height: 3px; border-radius: 0; transition: transform 0.25s ease, opacity 0.2s ease; }
.css_vh941.active { background: var(--text-primary); }
.css_vh941.active .css_jqypx { background: var(--bg-primary, #fff); }
.css_vh941.active .css_jqypx:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.css_vh941.active .css_jqypx:nth-child(2) { opacity: 0; }
.css_vh941.active .css_jqypx:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

main > section + section::before{content:'\276F';display:block;text-align:center;transform:rotate(90deg);color:var(--u146i);opacity:0.3;font-size:20px;padding:10px 0;}

.cursor-cross-h,.cursor-cross-v{position:fixed;pointer-events:none;z-index:99998;background:var(--u146i);opacity:0.06;}.cursor-cross-h{width:100%;height:1px;left:0;}.cursor-cross-v{width:1px;height:100%;top:0;}

.scroll-dots{position:fixed;right:20px;top:50%;transform:translateY(-50%);z-index:9990;display:flex;flex-direction:column;gap:12px;}.scroll-dots .dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--u146i);opacity:0.4;cursor:pointer;transition:all 0.3s;}.scroll-dots .dot.active{background:var(--u146i);opacity:1;transform:scale(1.3);}@media(max-width:768px){.scroll-dots{display:none;}}

.progress-circle{position:fixed;bottom:80px;right:20px;width:44px;height:44px;z-index:9990;opacity:0.6;}.progress-circle svg{transform:rotate(-90deg);}.progress-circle .bg{fill:none;stroke:var(--border-color);stroke-width:3;}.progress-circle .fill{fill:none;stroke:var(--u146i);stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset 0.1s;}@media(max-width:768px){.progress-circle{display:none;}}

.bg-deco{position:fixed;inset:0;pointer-events:none;z-index:0;background:repeating-linear-gradient(135deg,transparent,transparent 80px,var(--u146i) 80px,var(--u146i) 81px);opacity:0.018;}

/* Scroll: flip-vertical — секции откидываются как страницы книги */
main {
    perspective: 1500px;
}
main > section {
    transition: transform 0.9s cubic-bezier(0.22,1,0.36,1), opacity 0.8s ease;
    transform-origin: center top;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    will-change: transform, opacity;
}
main > section.flip-away {
    transform: rotateX(-60deg);
    opacity: 0;
}
main > section.flip-pending {
    transform: rotateX(60deg);
    opacity: 0;
}
main > section.in-view {
    transform: rotateX(0);
    opacity: 1;
}
.css_zvpay { transform: none !important; opacity: 1 !important; backface-visibility: visible !important; }
@media (max-width: 768px) {
    main { perspective: none; }
    main > section { backface-visibility: visible; }
    main > section.flip-away,
    main > section.flip-pending { transform: translateY(30px); }
}

.css_esod9,.css_ud5ud,.css_1ifvc,.css_s1cyl,.css_wlpwc{transition:transform 0.4s ease,box-shadow 0.4s ease;transform-style:preserve-3d;will-change:transform;}

.css_esod9,.css_ud5ud{transition:background 0.4s ease,color 0.4s ease,border-color 0.4s ease,box-shadow 0.4s ease;}.css_esod9:hover,.css_ud5ud:hover{background:var(--u146i) !important;border-color:var(--u146i) !important;box-shadow:0 12px 30px rgba(0,0,0,0.15) !important;}.css_esod9:hover .css_ptwh1,.css_esod9:hover .css_3xq8a,.css_esod9:hover i,.css_ud5ud:hover .card-title,.css_ud5ud:hover .card-text{color:#fff !important;}.css_esod9:hover .css_h2z2f{background:rgba(255,255,255,0.15) !important;color:#fff !important;}

.pulse-dot{display:inline-block;width:10px;height:10px;background:var(--u146i);border-radius:50%;margin-left:10px;vertical-align:middle;animation:pulseDot 2s ease-in-out infinite;}@keyframes pulseDot{0%,100%{transform:scale(1);opacity:1;}50%{transform:scale(1.8);opacity:0.3;}}

.float-shapes{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden;}.float-tri{position:absolute;width:0;height:0;border-left:30px solid transparent;border-right:30px solid transparent;border-bottom:52px solid var(--u146i);opacity:0.03;animation:floatDrift 20s ease-in-out infinite alternate;}@keyframes floatDrift{0%{transform:translate(0,0) rotate(0deg);}50%{transform:translate(40px,-60px) rotate(90deg);}100%{transform:translate(-30px,40px) rotate(180deg);}}

.js-marquee{overflow:hidden;padding:18px 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);}.js-marquee-inner{display:flex;gap:50px;white-space:nowrap;animation:jsMarquee 25s linear infinite;}.js-marquee-inner span{font-size:clamp(28px,4vw,52px);font-weight:var(--u1873);text-transform:uppercase;letter-spacing:-0.01em;opacity:0.15;flex-shrink:0;}.js-marquee-inner span:nth-child(even){-webkit-text-stroke:1px var(--text-primary);-webkit-text-fill-color:transparent;}@keyframes jsMarquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

.asym-shape{position:absolute;pointer-events:none;z-index:2;}.asym-shape.circ{border-radius:50%;border:2px solid var(--u146i);opacity:0.12;}.asym-shape.diamond{background:var(--u146i);opacity:0.08;transform:rotate(45deg);}.asym-shape.dash{height:2px;background:var(--u122);opacity:0.15;border-radius:1px;}

/* Fallback: без JS секции видимы сразу */
html:not(.css_ldbf0) main > section {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
    filter: none !important;
}

/* Не даём nav-ссылкам переполнять хедер при большом числе вкладок */
@media (min-width: 993px) {
    .css_55ly9 {
        flex-wrap: wrap;
        row-gap: 12px;
        overflow: visible;
    }
    .css_fgad9 {
        flex: 1 1 auto;
        min-width: 0;
        justify-content: center;
        flex-wrap: wrap;
        overflow: visible;
        gap: clamp(10px, 1.4vw, 28px) !important;
    }
    .css_fgad9 .nav-link {
        white-space: nowrap;
        font-size: clamp(11px, 1vw, 14px) !important;
        padding: 8px 0;
        flex-shrink: 0;
    }
    /* Centered-logo split groups — адаптивный gap */
    .css_ap97b, .css_mdxsn {
        gap: clamp(8px, 1.4vw, 32px) !important;
        flex-wrap: nowrap;
        overflow: hidden;
    }
    .css_ap97b .nav-link,
    .css_mdxsn .nav-link {
        white-space: nowrap;
        font-size: clamp(11px, 1.1vw, 15px) !important;
        flex-shrink: 0;
    }
    /* CTA-кнопка не сжимается */
    .css_q6rtr {
        flex-shrink: 0;
        white-space: nowrap;
    }
    .css_mwycn {
        flex-shrink: 0;
    }
}

/* Вариант "Nav with Top Bar" — фиксируем top-bar (div) над хедером.
   Используем div.css_r8b10 (не section!) чтобы не зацепить секции. */
div.css_r8b10:not(.css_s3a5t) {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1001;
    padding: 6px 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
}
div.css_r8b10:not(.css_s3a5t) + .css_dde56 {
    top: 33px;
    transition: top 0.3s ease, background 0.3s ease, padding 0.3s ease;
}
/* При скролле: top-bar скрывается, header прижимается к верху */
div.css_r8b10.css_bxt6p {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
}
div.css_r8b10.css_bxt6p + .css_dde56,
div.css_r8b10:not(.css_s3a5t) + .css_dde56.scrolled {
    top: 0;
}
/* Компенсируем дополнительную высоту top-bar для hero */
div.css_r8b10:not(.css_s3a5t) ~ .css_zvpay {
    padding-top: 200px;
}

/* Мобильная адаптация top-bar */
@media (max-width: 992px) {
    div.css_r8b10:not(.css_s3a5t) {
        position: relative;
        z-index: auto;
        font-size: 11px;
        padding: 4px 0;
    }
    div.css_r8b10:not(.css_s3a5t) + .css_dde56 {
        top: 0;
    }
    div.css_r8b10:not(.css_s3a5t) ~ .css_zvpay {
        padding-top: 140px;
    }
}

@media (max-width: 992px) {
    /* Бургер-кнопка — ВСЕГДА видима и кликабельна */
    .css_vh941 {
        display: flex !important;
        pointer-events: auto !important;
        opacity: 1 !important;
        z-index: 10001 !important;
        cursor: pointer !important;
        -webkit-tap-highlight-color: transparent;
    }
    .css_vh941 .css_jqypx {
        pointer-events: none;
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
    }
    /* Мобильная панель навигации — правильное позиционирование */
    .css_fgad9 {
        display: flex !important;
        flex-direction: column !important;
        position: fixed !important;
        top: 0 !important;
        height: 100vh !important;
        height: 100dvh !important;
        z-index: 10000 !important;
        overflow-y: auto !important;
    }
    /* Ссылки навигации — крупные, читаемые, кликабельные */
    .css_fgad9 .nav-link {
        font-size: 18px !important;
        padding: 14px 0 !important;
        display: block !important;
        width: 100% !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        line-height: 1.4 !important;
        text-decoration: none !important;
    }
    .css_fgad9 .nav-link::after { display: none !important; }
    .css_q6rtr { display: none !important; }
    /* CTA-кнопка скрыта на мобильном (меню важнее) */
    .css_ap97b, .css_mdxsn { display: none !important; }
}

/* ═══ MOBILE MENU PANEL DESIGN ═══ */
/* Mobile Menu: dark-cinema — всегда тёмный фон, uppercase ссылки */
@media (max-width: 992px) {
    .css_fgad9 { right: -100% !important; left: auto !important; width: min(320px,85vw) !important; background: #0a0a0a !important; padding: 100px 32px 40px !important; box-shadow: -4px 0 60px rgba(0,0,0,0.6) !important; border-left: 1px solid rgba(255,255,255,0.06) !important; transition: right 0.45s cubic-bezier(0.4,0,0.2,1) !important; }
    .css_fgad9.active { right: 0 !important; }
    .css_fgad9 .nav-link { color: rgba(255,255,255,0.8) !important; text-transform: uppercase !important; font-size: 13px !important; letter-spacing: 2px !important; border-bottom: 1px solid rgba(255,255,255,0.07) !important; opacity: 0 !important; transform: translateX(30px) !important; transition: opacity 0.4s ease, transform 0.4s ease, color 0.2s !important; }
    .css_fgad9.active .nav-link { opacity: 1 !important; transform: translateX(0) !important; }
    .css_fgad9.active .nav-link:hover { color: var(--u146i) !important; }
    .css_fgad9.active .nav-link:nth-child(1){transition-delay:.10s !important;}
    .css_fgad9.active .nav-link:nth-child(2){transition-delay:.16s !important;}
    .css_fgad9.active .nav-link:nth-child(3){transition-delay:.22s !important;}
    .css_fgad9.active .nav-link:nth-child(4){transition-delay:.28s !important;}
    .css_fgad9.active .nav-link:nth-child(5){transition-delay:.34s !important;}
    .css_fgad9.active .nav-link:nth-child(6){transition-delay:.40s !important;}
    .css_fgad9.active .nav-link:nth-child(7){transition-delay:.46s !important;}
    .css_fgad9.active .nav-link:nth-child(8){transition-delay:.52s !important;}
}

/* Cards/content blocks: cap backdrop-filter blur at 8px, ensure solid-enough bg */
.css_esod9,
.css_ud5ud,
.css_1ifvc,
.css_wlpwc,
.css_0he9t,
.css_dqyxf {
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
}
/* Guarantee text inside cards is never blurred by filter */
.css_esod9 *,
.css_ud5ud *,
.css_1ifvc *,
.css_wlpwc *,
.css_0he9t * {
    filter: none !important;
}
/* Animation safety: blurIn cards MUST reach final state even if animation fails */
@supports (animation: none) {
    .css_esod9, .css_ud5ud, .css_1ifvc {
        animation-fill-mode: forwards !important;
    }
}
/* Spacing for css_1ifvcs stacked vertically in the same column (density expansion) */
.css_1ifvc + .css_1ifvc {
    margin-top: 1.5rem;
}

/* Hero overlay → guarantee white text regardless of kit theme */
.css_zvpay .css_w8iv9 ~ .container,
.css_zvpay .css_w8iv9 ~ .container * {
    color: #fff;
}
.css_zvpay .css_w8iv9 ~ .container p,
.css_zvpay .css_w8iv9 ~ .container .css_gyche {
    color: rgba(255,255,255,0.85);
}
.css_zvpay .css_w8iv9 ~ .container .css_lp4wq {
    color: inherit;
}
/* css_47yzr: ensure ALL inner text is light */
.css_47yzr .css_695fs { color: #fff; }
.css_47yzr .css_htxsk { color: var(--u146i); }
.css_47yzr .css_el79q { color: rgba(255,255,255,0.55); }
.css_47yzr .css_cda0b a { color: rgba(255,255,255,0.65); }
.css_47yzr .css_cda0b a:hover { color: #fff; }
/* Site-footer with own inner background → kill outer kit/preset bg */
.css_viube[style*="background:none"] { background: none !important; }
.css_viube[style*="background:none"]::before,
.css_viube[style*="background:none"]::after { display: none !important; }

/* ═══════════════════════════════════════════ */

/* ═══════════════════════════════════════════ */

body {
    line-height: 1.674;
    letter-spacing: 0.0em;
}

.css_esod9, .css_ud5ud, .css_1ifvc, .css_s1cyl, .css_wlpwc {
    padding: 27px;
}
.css_esod9, .css_ud5ud, .css_1ifvc, .css_s1cyl, .css_wlpwc .card-body {
    padding: 21px 23px;
}
.row > [class*="col"]:nth-child(1) .css_esod9,
.row > [class*="col"]:nth-child(1) .css_ud5ud {
    padding: 27px;
    border-radius: calc(var(--u7sc) + 2px);
}
.row > [class*="col"]:nth-child(2) .css_esod9,
.row > [class*="col"]:nth-child(2) .css_ud5ud {
    padding: 26px;
    border-radius: calc(var(--u7sc) + -1px);
}
.row > [class*="col"]:nth-child(3) .css_esod9,
.row > [class*="col"]:nth-child(3) .css_ud5ud {
    padding: 27px;
    border-radius: calc(var(--u7sc) + -1px);
}
.row > [class*="col"]:nth-child(4) .css_esod9,
.row > [class*="col"]:nth-child(4) .css_ud5ud {
    padding: 28px;
    border-radius: calc(var(--u7sc) + 3px);
}
.row > [class*="col"]:nth-child(5) .css_esod9,
.row > [class*="col"]:nth-child(5) .css_ud5ud {
    padding: 26px;
    border-radius: calc(var(--u7sc) + 3px);
}
.row > [class*="col"]:nth-child(6) .css_esod9,
.row > [class*="col"]:nth-child(6) .css_ud5ud {
    padding: 30px;
    border-radius: calc(var(--u7sc) + -2px);
}

.css_lp4wq {
    padding: 12px 27px;
    font-size: 16px;
    letter-spacing: 0.279px;
    border-radius: calc(var(--u7sc) + -1px);
}
.css_0i9d5 {
    padding: 12px 27px;
    border-width: 1px;
}

main > section {
    padding-top: 92px;
    padding-bottom: 97px;
}
main > section:first-child {
    padding-top: 105px;
}
main > section:nth-child(2) {
    padding-top: 95px;
    padding-bottom: 99px;
}
main > section:nth-child(3) {
    padding-top: 89px;
    padding-bottom: 87px;
}
main > section:nth-child(4) {
    padding-top: 86px;
    padding-bottom: 99px;
}
main > section:nth-child(5) {
    padding-top: 89px;
    padding-bottom: 99px;
}

.css_wu5ps {
    margin-bottom: 47px;
}

.css_esod9, .css_ud5ud, .css_1ifvc, .css_wlpwc {
    box-shadow: 1px 4px 19px rgba(0,0,0,0.059);
}

.css_zvpay {
    padding-top: 109px;
}
.css_op70r {
    margin-bottom: 27px;
}
.css_gyche {
    margin-bottom: 37px;
    font-size: 16px;
    line-height: 1.583;
}
.css_695fs {
    font-size: 13px;
    letter-spacing: 3.769px;
    margin-bottom: 21px;
}
.css_g741y {
    gap: 11px;
}

.css_5heja img {
    border-radius: 11px;
    box-shadow: 0 13px 35px rgba(0,0,0,0.132);
}

.css_h2z2f {
    width: 49px;
    height: 49px;
    font-size: 23px;
    border-radius: 8px;
    margin-bottom: 21px;
}

.css_ptwh1, .card-title {
    font-size: 18px;
    margin-bottom: 13px;
}
.css_3xq8a, .card-text {
    font-size: 14px;
    line-height: 1.612;
}

.css_7unf8 {
    margin-bottom: 18px;
    letter-spacing: 0.038px;
}
.css_htxsk {
    font-size: 13px;
    letter-spacing: 3.727px;
    margin-bottom: 15px;
}
.css_pkhck {
    font-size: 17px;
    line-height: 1.697;
}

@media (min-width: 993px) {
    .css_fgad9 {
        gap: 29px;
    }
    .css_fgad9 .nav-link {
        font-size: 15px;
        padding: 8px 0;
    }
}

.css_viube {
    padding-top: 79px;
}
.css_xjkxj .css_dm3cl {
    font-size: 17px;
    margin-bottom: 25px;
}
.css_cda0b a {
    font-size: 14px;
}
.css_cda0b li {
    margin-bottom: 10px;
}
.css_jusie {
    gap: 9px;
}
.css_jusie a {
    width: 37px;
    height: 37px;
}
.css_tlnlm {
    padding: 22px 0;
    margin-top: 51px;
}

.form-control {
    border-radius: 10px;
    padding: 11px 16px;
    font-size: 15px;
}

.css_s1cyl {
    padding: 34px;
}
.css_fctg2 {
    font-size: 18px;
    line-height: 1.626;
    margin-bottom: 20px;
}
.css_ea5q1 {
    width: 46px;
    height: 46px;
}
.css_ta0w7 {
    font-size: 15px;
}
.css_to0ey {
    font-size: 12px;
}

.css_wlpwc {
    padding: 32px;
}
.css_cvf0d {
    font-size: 22px;
    margin-bottom: 10px;
}
.css_212m7 {
    font-size: 47px;
    margin-bottom: 16px;
}
.css_bp8ef li {
    padding: 9px 0;
    font-size: 13px;
}

.css_rr814, .stat-number {
    font-size: 37px;
    margin-bottom: 6px;
}
.css_lp7hp {
    font-size: 14px;
    letter-spacing: 0.322px;
}

.css_76xz5 img {
    border-radius: 17px;
}
.css_a9bxv {
    font-size: 19px;
    margin-bottom: 5px;
}
.css_aul3i {
    font-size: 14px;
}

.css_ygc0t {
    font-size: 27px;
    margin-bottom: 10px;
}
.css_mbofp {
    font-size: 17px;
    margin-bottom: 7px;
}

.wow {
    animation-duration: 0.694s !important;
}
.css_esod9, .css_ud5ud, .css_1ifvc, .css_s1cyl,
.css_wlpwc, .css_dqyxf {
    transition-duration: 0.286s;
}

.row {
    --bs-gutter-y: 26px;
}

.css_fz8bz {
    padding: 74px 0;
}
.css_m4m90 {
    font-size: 39px;
    margin-bottom: 19px;
}
.css_m3u1t {
    font-size: 18px;
    margin-bottom: 33px;
}

.css_1ifvc .css_chfbl img {
    border-radius: 10px 10px 0 0;
}
.css_3qg9n {
    font-size: 13px;
    margin-bottom: 7px;
    gap: 12px;
}

.css_dde56 {
    padding: 17px 0;
}
.css_dde56.scrolled {
    padding: 13px 0;
}
.css_mwycn {
    font-size: 24px;
}
.css_q6rtr {
    margin-left: 15px;
}

/* --- internal markers --- */
:root {
    --_stamp: '38f5d6a';
    --_gen: 38614;
    --_build: 7.74;
    --_uid: 95079;
    --_ref: 7.12;
}
.event-hook { font-style: inherit; box-sizing: border-box }
.layout-anchor { pointer-events: auto; display: inherit; --_ref: '484' }
.vis-helper { visibility: inherit }

/* ═══════════════════════════════════════════════════════ */
/* CONTRAST GUARD — auto-generated, do NOT edit           */
/* Ensures readable text on ALL dark/gradient sections     */
/* ═══════════════════════════════════════════════════════ */

/* .css_47yzr — DARK bg → light text */
.css_47yzr h1, .css_47yzr h2, .css_47yzr h3, .css_47yzr h4, .css_47yzr h5, .css_47yzr h6 { color: #fff !important; }
.css_47yzr { color: rgba(255,255,255,0.85) !important; }
.css_47yzr p, .css_47yzr li, .css_47yzr span:not(.badge):not(.css_lp4wq), .css_47yzr .css_sshnz, .css_47yzr label, .css_47yzr blockquote, .css_47yzr figcaption, .css_47yzr dt, .css_47yzr dd, .css_47yzr td, .css_47yzr th { color: rgba(255,255,255,0.78) !important; }
.css_47yzr a:not(.css_lp4wq):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.css_47yzr a:not(.css_lp4wq):not(.nav-link):hover { color: #fff !important; }
.css_47yzr .css_rr814 { color: #fff !important; }
.css_47yzr .css_lp7hp { color: rgba(255,255,255,0.7) !important; }

/* .bg-dark-custom — DARK bg → light text */
.bg-dark-custom h1, .bg-dark-custom h2, .bg-dark-custom h3, .bg-dark-custom h4, .bg-dark-custom h5, .bg-dark-custom h6 { color: #fff !important; }
.bg-dark-custom { color: rgba(255,255,255,0.85) !important; }
.bg-dark-custom p, .bg-dark-custom li, .bg-dark-custom span:not(.badge):not(.css_lp4wq), .bg-dark-custom .css_sshnz, .bg-dark-custom label, .bg-dark-custom blockquote, .bg-dark-custom figcaption, .bg-dark-custom dt, .bg-dark-custom dd, .bg-dark-custom td, .bg-dark-custom th { color: rgba(255,255,255,0.78) !important; }
.bg-dark-custom a:not(.css_lp4wq):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.bg-dark-custom a:not(.css_lp4wq):not(.nav-link):hover { color: #fff !important; }
.bg-dark-custom .css_rr814 { color: #fff !important; }
.bg-dark-custom .css_lp7hp { color: rgba(255,255,255,0.7) !important; }

/* .bg-gradient-custom — DARK bg → light text */
.bg-gradient-custom h1, .bg-gradient-custom h2, .bg-gradient-custom h3, .bg-gradient-custom h4, .bg-gradient-custom h5, .bg-gradient-custom h6 { color: #fff !important; }
.bg-gradient-custom { color: rgba(255,255,255,0.85) !important; }
.bg-gradient-custom p, .bg-gradient-custom li, .bg-gradient-custom span:not(.badge):not(.css_lp4wq), .bg-gradient-custom .css_sshnz, .bg-gradient-custom label, .bg-gradient-custom blockquote, .bg-gradient-custom figcaption, .bg-gradient-custom dt, .bg-gradient-custom dd, .bg-gradient-custom td, .bg-gradient-custom th { color: rgba(255,255,255,0.78) !important; }
.bg-gradient-custom a:not(.css_lp4wq):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.bg-gradient-custom a:not(.css_lp4wq):not(.nav-link):hover { color: #fff !important; }
.bg-gradient-custom .css_rr814 { color: #fff !important; }
.bg-gradient-custom .css_lp7hp { color: rgba(255,255,255,0.7) !important; }

/* .bg-accent-custom — DARK bg → light text */
.bg-accent-custom h1, .bg-accent-custom h2, .bg-accent-custom h3, .bg-accent-custom h4, .bg-accent-custom h5, .bg-accent-custom h6 { color: #fff !important; }
.bg-accent-custom { color: rgba(255,255,255,0.85) !important; }
.bg-accent-custom p, .bg-accent-custom li, .bg-accent-custom span:not(.badge):not(.css_lp4wq), .bg-accent-custom .css_sshnz, .bg-accent-custom label, .bg-accent-custom blockquote, .bg-accent-custom figcaption, .bg-accent-custom dt, .bg-accent-custom dd, .bg-accent-custom td, .bg-accent-custom th { color: rgba(255,255,255,0.78) !important; }
.bg-accent-custom a:not(.css_lp4wq):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.bg-accent-custom a:not(.css_lp4wq):not(.nav-link):hover { color: #fff !important; }
.bg-accent-custom .css_rr814 { color: #fff !important; }
.bg-accent-custom .css_lp7hp { color: rgba(255,255,255,0.7) !important; }

/* .css_fz8bz — DARK bg → light text */
.css_fz8bz h1, .css_fz8bz h2, .css_fz8bz h3, .css_fz8bz h4, .css_fz8bz h5, .css_fz8bz h6 { color: #fff !important; }
.css_fz8bz { color: rgba(255,255,255,0.85) !important; }
.css_fz8bz p, .css_fz8bz li, .css_fz8bz span:not(.badge):not(.css_lp4wq), .css_fz8bz .css_sshnz, .css_fz8bz label, .css_fz8bz blockquote, .css_fz8bz figcaption, .css_fz8bz dt, .css_fz8bz dd, .css_fz8bz td, .css_fz8bz th { color: rgba(255,255,255,0.78) !important; }
.css_fz8bz a:not(.css_lp4wq):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.css_fz8bz a:not(.css_lp4wq):not(.nav-link):hover { color: #fff !important; }
.css_fz8bz .css_rr814 { color: #fff !important; }
.css_fz8bz .css_lp7hp { color: rgba(255,255,255,0.7) !important; }

/* .css_2yq8d — DARK bg → light text */
.css_2yq8d h1, .css_2yq8d h2, .css_2yq8d h3, .css_2yq8d h4, .css_2yq8d h5, .css_2yq8d h6 { color: #fff !important; }
.css_2yq8d { color: rgba(255,255,255,0.85) !important; }
.css_2yq8d p, .css_2yq8d li, .css_2yq8d span:not(.badge):not(.css_lp4wq), .css_2yq8d .css_sshnz, .css_2yq8d label, .css_2yq8d blockquote, .css_2yq8d figcaption, .css_2yq8d dt, .css_2yq8d dd, .css_2yq8d td, .css_2yq8d th { color: rgba(255,255,255,0.78) !important; }
.css_2yq8d a:not(.css_lp4wq):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.css_2yq8d a:not(.css_lp4wq):not(.nav-link):hover { color: #fff !important; }
.css_2yq8d .css_rr814 { color: #fff !important; }
.css_2yq8d .css_lp7hp { color: rgba(255,255,255,0.7) !important; }

/* .css_r8b10 — DARK bg → light text */
.css_r8b10 h1, .css_r8b10 h2, .css_r8b10 h3, .css_r8b10 h4, .css_r8b10 h5, .css_r8b10 h6 { color: #fff !important; }
.css_r8b10 { color: rgba(255,255,255,0.85) !important; }
.css_r8b10 p, .css_r8b10 li, .css_r8b10 span:not(.badge):not(.css_lp4wq), .css_r8b10 .css_sshnz, .css_r8b10 label, .css_r8b10 blockquote, .css_r8b10 figcaption, .css_r8b10 dt, .css_r8b10 dd, .css_r8b10 td, .css_r8b10 th { color: rgba(255,255,255,0.78) !important; }
.css_r8b10 a:not(.css_lp4wq):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.css_r8b10 a:not(.css_lp4wq):not(.nav-link):hover { color: #fff !important; }
.css_r8b10 .css_rr814 { color: #fff !important; }
.css_r8b10 .css_lp7hp { color: rgba(255,255,255,0.7) !important; }

/* .css_viube — DARK bg → light text */
.css_viube { color: rgba(255,255,255,0.65) !important; }
.css_viube h1, .css_viube h2, .css_viube h3,
.css_viube h4, .css_viube h5, .css_viube h6,
.css_viube .css_dm3cl { color: #fff !important; }
.css_viube p, .css_viube li, .css_viube span,
.css_viube label { color: rgba(255,255,255,0.6) !important; }
.css_viube a:not(.css_lp4wq) { color: rgba(255,255,255,0.65) !important; }
.css_viube a:not(.css_lp4wq):hover { color: #fff !important; }
