@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Display:wght@400;500;600;700;800&family=Inter:wght@400;500&display=swap');

:root {
    --bg-primary: #f9f9f9;
    --bg-secondary: #f0eff0;
    --bg-card: #fefefe;
    --bg-card-hover: #f1f1f1;
    --text-primary: #161218;
    --text-secondary: #615a65;
    --text-muted: #8b7397;
    --border-color: #e4e4e4;
    --border-light: #cfcecf;
    --footer-dark-bg: #1d181c;
    --m14o1: #af3084;
    --m15cf: #c03d52;
    --m16ez: #814ace;
    --m1ix: linear-gradient(160deg, var(--m14o1), var(--m15cf));
    --m1ix-alt: linear-gradient(160deg, var(--m15cf), var(--m16ez));
    --accent-glow: 0 4px 20px rgba(175, 48, 132, 0.25);
}

:root {
    --m14o1: #af3084;
    --m15cf: #c03d52;
    --m16ez: #814ace;
    --m1ix: linear-gradient(160deg, var(--m14o1), var(--m15cf));
    --m3d8: 'Noto Sans Display', sans-serif;
    --m5vu: 'Inter', sans-serif;
    --m19ci: 64px;
    --m20om: 44px;
    --m21zg: 30px;
    --m17dt: 18px;
    --m18rf: 800;
    --m6m9: 6px;
    --m7d9: 10px;
    --m8ox: 14px;
    --m9gf: 20px;
    --m4yz: 40px;
    --m10aq: 0 4px 12px rgba(0,0,0,0.1);
    --m11jm: 0 8px 24px rgba(0,0,0,0.14);
    --m12qq: 0 16px 40px rgba(0,0,0,0.18);
    --m13ug: 0 24px 60px rgba(0,0,0,0.22);
    --ueib3: 40px 0;
}
.bd3nu {
    border-radius: 10px;
    padding: 14px 28px;
}
.mrcgim, .bv0f, .nvkm, .csmds, .gcddg5 {
    border-width: 1px;
    border-color: #af308433;
}

.upmm5 {
    position: relative;
    margin-top: 30px;
}
.upmm5::before {
    content: '';
    position: absolute;
    top: -30px;
    left: 0;
    width: 100%;
    height: 60px;
    background: inherit;
    border-radius: 50% 50% 0 0;
}

.mrcgim, .bv0f, .csmds, .gcddg5, .nvkm {
    border-left: 4px solid var(--m14o1);
    border-bottom: 4px solid var(--m15cf, var(--m14o1));
    border-radius: 0;
}

.nvkm {
    position: relative;
    padding-top: 50px;
}
.nvkm::before {
    content: '\201C';
    position: absolute;
    top: 10px;
    left: 20px;
    font-size: 72px;
    line-height: 1;
    color: var(--m14o1);
    opacity: 0.2;
    font-family: Georgia, serif;
}

.amdrb img, .about-image img {
    transform: rotate(2deg) scale(1.02);
    transition: transform 0.5s ease;
}
.amdrb:hover img, .about-image:hover img {
    transform: rotate(0deg) scale(1);
}

.about-section p:first-of-type::first-letter {
    font-size: 3.2em;
    float: left;
    line-height: 0.8;
    margin-right: 10px;
    margin-top: 6px;
    font-weight: 800;
    color: var(--m14o1);
}

.dxvw {
    position: relative;
    overflow: hidden;
    padding-right: 28px;
    transition: padding-right 0.3s;
}
.dxvw::after {
    content: '\2192';
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
    transition: right 0.3s;
}
.dxvw:hover {
    padding-right: 40px;
}
.dxvw:hover::after {
    right: 16px;
}

.obv7v {
    min-height: 100vh;
    background-size: cover;
    background-position: center;
}
.obv7v .hero-bg { opacity: 0.5 !important; }
.obv7v .ffkt {
    background: linear-gradient(180deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.7) 100%) !important;
}
.obv7v .kgk4 { text-align: center; }
.obv7v .tyjn { color: #fff; text-shadow: 0 2px 20px rgba(0,0,0,0.3); }
.obv7v .tlii { color: rgba(255,255,255,0.85); }
.obv7v .anup { background: rgba(255,255,255,0.15); color: #fff !important; backdrop-filter: blur(8px); }
.obv7v .ezx8dy { border-color: rgba(255,255,255,0.5); color: #fff; }
.obv7v .azqmbf { justify-content: center; }

.zepplu { background: transparent; padding: 20px 0; }
.zepplu.scrolled {
    background: rgba(255,255,255,0.85);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: 0 1px 0 var(--border-color);
    padding: 14px 0;
}

.vb0z {
    background: transparent;
    padding: 0 20px 40px;
}
.vb0z > .container {
    background: var(--footer-dark-bg);
    border-radius: var(--m9gf);
    padding: 60px 40px 30px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.15);
}
.vb0z h4,.vb0z h5 { color: #fff; }
.vb0z .bu2t4q .iset::after { background: var(--m14o1); }
.fmat { border-top: 1px solid rgba(255,255,255,0.08); margin-top: 40px; }
.fmat p { color: rgba(255,255,255,0.3); }

.contact-section { position: relative; }
.contact-section::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: var(--bg-secondary);
    z-index: 0;
}
.contact-section .container { position: relative; z-index: 1; }
.contact-section .wruukj { background: var(--bg-card, #fff); padding: 40px; border-radius: var(--m8ox); box-shadow: var(--m11jm); }

.cg5si { font-size: 24px; font-weight: 800; background: var(--m1ix); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }

.ah2zz, .card-title, .en8lwb, .iset {
    position: relative;
    padding-bottom: 10px;
}
.ah2zz::after, .card-title::after, .en8lwb::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 30px;
    height: 2px;
    background: var(--m14o1);
    border-radius: 1px;
}

.amdrb img {
    border: 3px solid var(--m14o1);
    outline: 3px solid var(--m14o1);
    outline-offset: 6px;
    border-radius: var(--m7d9);
}

.bv0f img, .mrcgim img, .csmds img, .portfolio-item img {
    transition: transform 0.4s ease;
    border-radius: var(--m7d9);
}
.bv0f:hover img, .mrcgim:hover img, .csmds:hover img, .portfolio-item:hover img {
    transform: scale(1.08) rotate(-2deg);
}

.csep { width: 40px; height: 40px; gap: 6px; border: none; background: none; border-radius: 0; }
.csep .fcat { width: 24px; height: 2px; border-radius: 1px; transition: transform 0.4s cubic-bezier(0.68,-0.6,0.32,1.6), opacity 0.3s ease; }
.csep.active .fcat:nth-child(1) { transform: translateY(8px) rotate(135deg); }
.csep.active .fcat:nth-child(2) { opacity: 0; transform: scaleX(0); }
.csep.active .fcat:nth-child(3) { transform: translateY(-8px) rotate(-135deg); }

main > section + section::before{content:'\2193';display:block;text-align:center;color:var(--m14o1);opacity:0.25;font-size:22px;padding:10px 0;}

.trail-dot{position:fixed;width:6px;height:6px;background:var(--m14o1);border-radius:50%;pointer-events:none;z-index:99999;opacity:0;transition:opacity 0.5s;}

.scroll-prog-v{position:fixed;right:0;top:0;width:4px;height:100vh;z-index:9990;background:var(--border-color);}.scroll-prog-v .fill{width:100%;background:var(--m1ix);transition:height 0.05s;}@media(max-width:768px){.scroll-prog-v{display:none;}}

.progress-header{position:fixed;top:0;left:0;height:2px;z-index:100000;background:var(--m14o1);width:0;opacity:0.8;}

.mrcgim,.bv0f,.portfolio-item{opacity:0;animation:scaleIn 0.4s ease forwards;}.row>[class*="col"]:nth-child(1)>*{animation-delay:0.03s;}.row>[class*="col"]:nth-child(2)>*{animation-delay:0.08s;}.row>[class*="col"]:nth-child(3)>*{animation-delay:0.13s;}.row>[class*="col"]:nth-child(4)>*{animation-delay:0.18s;}.row>[class*="col"]:nth-child(5)>*{animation-delay:0.23s;}.row>[class*="col"]:nth-child(6)>*{animation-delay:0.28s;}@keyframes scaleIn{from{opacity:0;transform:scale(0.9);}to{opacity:1;transform:scale(1);}}

@media(prefers-reduced-motion:reduce){.mrcgim,.bv0f,.csmds,.gcddg5,.dfz9,.portfolio-item{opacity:1!important;transform:none!important;animation:none!important;}}

main > section {
    position: sticky;
    top: 0;
    transition: transform 0.1s linear, opacity 0.1s linear;
    transform-origin: center top;
    background: var(--bg-primary);
    border-radius: var(--m9gf) var(--m9gf) 0 0;
}
main > section:nth-child(even):not(.thp6):not(.pblr) { background: var(--bg-secondary, var(--bg-primary)); }
.obv7v { position: relative; border-radius: 0; }
.vb0z { position: relative; border-radius: var(--m9gf) var(--m9gf) 0 0; }
@media (max-width: 768px) { main > section { position: relative; border-radius: 0; } }

.bd3nu,.dxvw,.ezx8dy{position:relative;overflow:hidden;}.btn-ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,0.35);transform:scale(0);animation:rippleAnim 0.6s ease-out;pointer-events:none;}@keyframes rippleAnim{to{transform:scale(4);opacity:0;}}

.eq8w .nav-link::after{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--m14o1);transition:width 0.3s ease,left 0.3s ease;border-radius:1px;}.eq8w .nav-link:hover::after,.eq8w .nav-link.active::after{width:100%;left:0;}

.mrcgim,.bv0f,.csmds,.nvkm,.gcddg5{transition:transform 0.35s ease,box-shadow 0.35s ease;}.mrcgim:hover,.bv0f:hover,.csmds:hover,.nvkm:hover,.gcddg5:hover{transform:translateY(-10px);box-shadow:0 20px 50px rgba(0,0,0,0.12) !important;}

.scroll-hint{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0.5;animation:scrollHintBounce 2s ease-in-out infinite;z-index:10;}.scroll-hint span{display:block;width:24px;height:24px;border-right:2px solid var(--text-primary);border-bottom:2px solid var(--text-primary);transform:rotate(45deg);}@keyframes scrollHintBounce{0%,100%{transform:translateX(-50%) translateY(0);opacity:0.5;}50%{transform:translateX(-50%) translateY(12px);opacity:1;}}

.tyjn{background:linear-gradient(90deg,var(--text-primary) 0%,var(--m14o1) 25%,var(--text-primary) 50%,var(--m14o1) 75%,var(--text-primary) 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmerText 4s linear infinite;}@keyframes shimmerText{to{background-position:200% center;}}

main > section:nth-child(even):not(.thp6):not(.pblr) { position: relative; overflow: clip; }
main > section:nth-child(even):not(.thp6):not(.pblr)::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 200%;
    height: 120px;
    pointer-events: none;
    z-index: 0;
    opacity: 0.04;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 120'%3E%3Cpath fill='currentColor' d='M0,64L48,69.3C96,75,192,85,288,80C384,75,480,53,576,48C672,43,768,53,864,64C960,75,1056,85,1152,80C1248,75,1344,53,1392,42.7L1440,32L1440,120L1392,120C1344,120,1248,120,1152,120C1056,120,960,120,864,120C768,120,672,120,576,120C480,120,384,120,288,120C192,120,96,120,48,120L0,120Z'/%3E%3C/svg%3E") repeat-x;
    background-size: 50% 100%;
    animation: waveDrift 18s linear infinite;
}
@keyframes waveDrift {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}
.obv7v::after { display: none !important; }

main > section:nth-child(even):not(.thp6):not(.pblr) { position: relative; overflow: clip; }
main > section:nth-child(even):not(.thp6):not(.pblr)::before {
    content: '';
    position: absolute;
    inset: -50%;
    pointer-events: none;
    z-index: 0;
    opacity: 0.02;
    background: repeating-conic-gradient(
        var(--m14o1) 0deg 3deg,
        transparent 3deg 15deg
    );
}
.obv7v::before { display: none !important; }

html:not(.mk00hb) main > section {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
    filter: none !important;
}

@media (min-width: 993px) {
    .kshhu {
        flex-wrap: nowrap;
        overflow: visible;
    }
    .eq8w {
        flex: 1 1 auto;
        min-width: 0;
        justify-content: center;
        flex-wrap: nowrap;
        overflow: hidden;
        gap: clamp(10px, 1.8vw, 36px) !important;
    }
    .eq8w .nav-link {
        white-space: nowrap;
        font-size: clamp(11px, 1.1vw, 15px) !important;
        padding: 8px 0;
        flex-shrink: 0;
    }
    .vqpzy, .abfoie {
        gap: clamp(8px, 1.4vw, 32px) !important;
        flex-wrap: nowrap;
        overflow: hidden;
    }
    .vqpzy .nav-link,
    .abfoie .nav-link {
        white-space: nowrap;
        font-size: clamp(11px, 1.1vw, 15px) !important;
        flex-shrink: 0;
    }
    .gxp71n {
        flex-shrink: 0;
        white-space: nowrap;
    }
    .cg5si {
        flex-shrink: 0;
    }
}

div.upmm5:not(.ueib3) {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1001;
    height: 36px;
    min-height: 36px;
    max-height: 36px;
    padding: 6px 0 !important;
    line-height: 1.5;
    overflow: hidden;
    box-sizing: border-box;
    transition: transform 0.3s ease, opacity 0.3s ease;
}
div.upmm5:not(.ueib3) + .zepplu {
    top: 36px;
    background: var(--bg-primary, #ffffff);
    transition: top 0.3s ease, background 0.3s ease, padding 0.3s ease;
}

body:has(> div.upmm5:not(.ueib3)) {
    padding-top: 36px;
}
div.upmm5.khgf1n {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
}
div.upmm5.khgf1n + .zepplu,
div.upmm5:not(.ueib3) + .zepplu.scrolled {
    top: 0;
}
div.upmm5:not(.ueib3) ~ .obv7v,
div.upmm5:not(.ueib3) ~ main > .obv7v,
div.upmm5:not(.ueib3) ~ section.obv7v {
    padding-top: 200px !important;
}

@media (max-width: 992px) {
    div.upmm5:not(.ueib3) {
        position: relative;
        z-index: auto;
        font-size: 11px;
        height: auto;
        min-height: 0;
        max-height: none;
        padding: 4px 0 !important;
        overflow: visible;
    }
    div.upmm5:not(.ueib3) + .zepplu {
        top: 0;
    }
    
    body:has(> div.upmm5:not(.ueib3)) {
        padding-top: 0;
    }
    div.upmm5:not(.ueib3) ~ .obv7v,
    div.upmm5:not(.ueib3) ~ main > .obv7v,
    div.upmm5:not(.ueib3) ~ section.obv7v {
        padding-top: 140px !important;
    }
}

@media (max-width: 992px) {
    .csep {
        display: flex !important;
        pointer-events: auto !important;
        opacity: 1 !important;
        z-index: 10001 !important;
        cursor: pointer !important;
        -webkit-tap-highlight-color: transparent;
    }
    .csep .fcat {
        pointer-events: none;
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
    }
    .eq8w {
        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;
    }
    .eq8w .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;
    }
    .eq8w .nav-link::after { display: none !important; }
    .gxp71n { display: none !important; }
    .vqpzy, .abfoie { display: none !important; }
}

@media (max-width: 992px) {
    .eq8w { left: -100% !important; right: auto !important; width: min(300px,80vw) !important; background: var(--bg-primary) !important; padding: 100px 28px 40px !important; box-shadow: 8px 0 40px rgba(0,0,0,0.2) !important; border-right: 2px solid var(--border-color) !important; transition: left 0.4s cubic-bezier(0.4,0,0.2,1) !important; }
    .eq8w.active { left: 0 !important; }
    .eq8w .nav-link { opacity: 0 !important; transform: translateX(-20px) !important; transition: opacity 0.3s ease, transform 0.3s ease !important; border-bottom: 1px solid var(--border-color) !important; }
    .eq8w.active .nav-link { opacity: 1 !important; transform: translateX(0) !important; }
    .eq8w.active .nav-link:nth-child(1){transition-delay:.06s !important;}
    .eq8w.active .nav-link:nth-child(2){transition-delay:.12s !important;}
    .eq8w.active .nav-link:nth-child(3){transition-delay:.18s !important;}
    .eq8w.active .nav-link:nth-child(4){transition-delay:.24s !important;}
    .eq8w.active .nav-link:nth-child(5){transition-delay:.30s !important;}
    .eq8w.active .nav-link:nth-child(6){transition-delay:.36s !important;}
    .eq8w.active .nav-link:nth-child(7){transition-delay:.42s !important;}
    .eq8w.active .nav-link:nth-child(8){transition-delay:.48s !important;}
}

.mrcgim,
.bv0f,
.csmds,
.gcddg5,
.su6g,
.dfz9 {
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
}
.mrcgim *,
.bv0f *,
.csmds *,
.gcddg5 *,
.su6g * {
    filter: none !important;
}
@supports (animation: none) {
    .mrcgim, .bv0f, .csmds {
        animation-fill-mode: forwards !important;
    }
}
.csmds + .csmds {
    margin-top: 1.5rem;
}

.obv7v .ffkt ~ .container,
.obv7v .ffkt ~ .container * {
    color: #fff;
}
.obv7v .ffkt ~ .container p,
.obv7v .ffkt ~ .container .tlii {
    color: rgba(255,255,255,0.85);
}
.obv7v .ffkt ~ .container .bd3nu {
    color: inherit;
}
.vb0z[style*="background:none"] { background: none !important; }
.vb0z[style*="background:none"]::before,
.vb0z[style*="background:none"]::after { display: none !important; }

.swiper:not(.swiper-initialized) { overflow: hidden; }
.swiper:not(.swiper-initialized) .swiper-wrapper {
    display: flex; flex-wrap: nowrap;
}
.swiper:not(.swiper-initialized) .swiper-slide {
    flex-shrink: 0; width: 100%;
}

.flip-swiper .swiper-button-next,
.flip-swiper .swiper-button-prev {
    width: 32px; height: 32px;
    background: var(--bg-card, #fff);
    border-radius: 50%;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.flip-swiper .swiper-button-next::after,
.flip-swiper .swiper-button-prev::after {
    font-size: 14px;
    color: var(--text-primary, #1a1a2e);
}
.flip-swiper .swiper-button-next { right: 0; }
.flip-swiper .swiper-button-prev { left: 0; }

.mrcgim, .su6g, .bv0f, .csmds,
.gcddg5, .dfz9, .nvkm, .counter-item,
.card { overflow: hidden; }

.mrcgim h1, .mrcgim h2, .mrcgim h3, .mrcgim h4, .mrcgim h5, .mrcgim h6,
.su6g h1, .su6g h2, .su6g h3, .su6g h4,
.bv0f h1, .bv0f h2, .bv0f h3, .bv0f h4,
.counter-item h1, .counter-item h2, .counter-item h3, .counter-item h4,
.card h1, .card h2, .card h3, .card h4, .card h5, .card h6 {
    overflow-wrap: break-word;
    word-break: break-word;
    hyphens: auto;
}

.mrcgim p, .mrcgim span, .mrcgim li,
.su6g p, .bv0f p, .counter-item p,
.card p, .card span, .card li {
    overflow-wrap: break-word;
    word-break: break-word;
}

.ap4a, .fr7huz, .counter-suffix {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

.mrcgim .stat-number, .mrcgim [class*="number"],
.counter-item .stat-number {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

body {
    line-height: 1.662;
    letter-spacing: 0.005em;
}

.mrcgim, .bv0f, .csmds, .nvkm, .gcddg5 {
    padding: 31px;
}
.mrcgim, .bv0f, .csmds, .nvkm, .gcddg5 .card-body {
    padding: 24px 19px;
}
.row > [class*="col"]:nth-child(1) .mrcgim,
.row > [class*="col"]:nth-child(1) .bv0f {
    padding: 32px;
    border-radius: calc(var(--m7d9) + -1px);
}
.row > [class*="col"]:nth-child(2) .mrcgim,
.row > [class*="col"]:nth-child(2) .bv0f {
    padding: 33px;
    border-radius: calc(var(--m7d9) + 0px);
}
.row > [class*="col"]:nth-child(3) .mrcgim,
.row > [class*="col"]:nth-child(3) .bv0f {
    padding: 30px;
    border-radius: calc(var(--m7d9) + 1px);
}
.row > [class*="col"]:nth-child(4) .mrcgim,
.row > [class*="col"]:nth-child(4) .bv0f {
    padding: 33px;
    border-radius: calc(var(--m7d9) + -1px);
}
.row > [class*="col"]:nth-child(5) .mrcgim,
.row > [class*="col"]:nth-child(5) .bv0f {
    padding: 34px;
    border-radius: calc(var(--m7d9) + 2px);
}
.row > [class*="col"]:nth-child(6) .mrcgim,
.row > [class*="col"]:nth-child(6) .bv0f {
    padding: 32px;
    border-radius: calc(var(--m7d9) + 2px);
}

.bd3nu {
    padding: 12px 27px;
    font-size: 16px;
    letter-spacing: 0.289px;
    border-radius: calc(var(--m7d9) + 2px);
}
.ezx8dy {
    padding: 11px 28px;
    border-width: 1px;
}

main > section {
    padding-top: 74px;
    padding-bottom: 70px;
}
main > section:first-child {
    padding-top: 87px;
}
main > section:nth-child(3) {
    padding-top: 81px;
    padding-bottom: 82px;
}
main > section:nth-child(6) {
    padding-top: 73px;
    padding-bottom: 70px;
}

.sviv {
    margin-bottom: 50px;
}

.mrcgim, .bv0f, .csmds, .gcddg5 {
    box-shadow: 0px 4px 20px rgba(0,0,0,0.09);
}

.obv7v {
    padding-top: 114px;
}
.tyjn {
    margin-bottom: 24px;
}
.tlii {
    margin-bottom: 39px;
    font-size: 17px;
    line-height: 1.652;
}
.anup {
    font-size: 11px;
    letter-spacing: 3.098px;
    margin-bottom: 25px;
}
.azqmbf {
    gap: 16px;
}

.amdrb img {
    border-radius: 9px;
    box-shadow: 0 17px 37px rgba(0,0,0,0.116);
}

.kpyu {
    width: 52px;
    height: 52px;
    font-size: 24px;
    border-radius: 15px;
    margin-bottom: 21px;
}

.ah2zz, .card-title {
    font-size: 19px;
    margin-bottom: 7px;
}
.bbpfe, .card-text {
    font-size: 15px;
    line-height: 1.642;
}

.rs24x {
    margin-bottom: 18px;
    letter-spacing: 0.011px;
}
.hy2tu {
    font-size: 14px;
    letter-spacing: 2.494px;
    margin-bottom: 15px;
}
.udgo {
    font-size: 16px;
    line-height: 1.667;
}

@media (min-width: 993px) {
    .eq8w {
        gap: 27px;
    }
    .eq8w .nav-link {
        font-size: 13px;
        padding: 8px 0;
    }
}

.vb0z {
    padding-top: 71px;
}
.bu2t4q .iset {
    font-size: 17px;
    margin-bottom: 20px;
}
.ijs6n9 a {
    font-size: 13px;
}
.ijs6n9 li {
    margin-bottom: 11px;
}
.craas5 {
    gap: 12px;
}
.craas5 a {
    width: 35px;
    height: 35px;
}
.fmat {
    padding: 20px 0;
    margin-top: 53px;
}

.form-control {
    border-radius: 8px;
    padding: 14px 13px;
    font-size: 14px;
}

.nvkm {
    padding: 30px;
}
.xehui {
    font-size: 18px;
    line-height: 1.619;
    margin-bottom: 24px;
}
.ds0m0b {
    width: 45px;
    height: 45px;
}
.hm1i {
    font-size: 14px;
}
.zikeci {
    font-size: 13px;
}

.gcddg5 {
    padding: 35px;
}
.ko8g1 {
    font-size: 22px;
    margin-bottom: 11px;
}
.uu8sx {
    font-size: 43px;
    margin-bottom: 23px;
}
.mh0nj li {
    padding: 12px 0;
    font-size: 14px;
}

.ap4a, .stat-number {
    font-size: 44px;
    margin-bottom: 6px;
}
.fr7huz {
    font-size: 15px;
    letter-spacing: 0.717px;
}

.nbt6 img {
    border-radius: 9px;
}
.rkk4kk {
    font-size: 17px;
    margin-bottom: 3px;
}
.ypji {
    font-size: 13px;
}

.ay32f {
    font-size: 34px;
    margin-bottom: 10px;
}
.en8lwb {
    font-size: 19px;
    margin-bottom: 10px;
}

.wow {
    animation-duration: 0.516s !important;
}
.mrcgim, .bv0f, .csmds, .nvkm,
.gcddg5, .dfz9 {
    transition-duration: 0.243s;
}

.row {
    --bs-gutter-y: 32px;
}

.thp6 {
    padding: 78px 0;
}
.qq60 {
    font-size: 34px;
    margin-bottom: 12px;
}
.tux85 {
    font-size: 16px;
    margin-bottom: 23px;
}

.csmds .atz70g img {
    border-radius: 9px 9px 0 0;
}
.uqpz4c {
    font-size: 13px;
    margin-bottom: 6px;
    gap: 9px;
}

.zepplu {
    padding: 18px 0;
}
.zepplu.scrolled {
    padding: 13px 0;
}
body:not(:has(.obv7v)) .zepplu:not(.scrolled) {
    background: rgba(255,255,255,0.92);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: 0 1px 0 var(--border-color);
}
body:not(:has(.obv7v)) .zepplu:not(.scrolled) .nav-link {
    color: var(--text-primary) !important;
}
body:not(:has(.obv7v)) .zepplu:not(.scrolled) .nav-link:hover,
body:not(:has(.obv7v)) .zepplu:not(.scrolled) .nav-link.active {
    color: var(--m14o1) !important;
    opacity: 1;
}
body:not(:has(.obv7v)) .zepplu:not(.scrolled) .csep .fcat {
    background: var(--text-primary);
}

/* Header contrast: светлый текст только когда шапка реально над тёмным hero (.over-hero ставит bundle.js).
   Иначе — тёмная типографика, чтобы не было белого на белом при «липких» секциях или скролле без класса scrolled. */
.zepplu:not(.over-hero):not(.scrolled) .nav-link {
    color: var(--text-secondary) !important;
}
.zepplu:not(.over-hero):not(.scrolled) .nav-link:hover,
.zepplu:not(.over-hero):not(.scrolled) .nav-link.active {
    color: var(--m14o1) !important;
    opacity: 1;
}
.zepplu:not(.over-hero):not(.scrolled) .cg5si {
    background: var(--m1ix);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent !important;
    background-clip: text;
    color: transparent !important;
}
.zepplu:not(.over-hero):not(.scrolled) .ezx8dy {
    color: var(--m14o1) !important;
    border-color: var(--m14o1) !important;
    background: transparent !important;
}
.zepplu:not(.over-hero):not(.scrolled) .ezx8dy:hover {
    background: var(--m14o1) !important;
    color: #fff !important;
    border-color: var(--m14o1) !important;
}
.zepplu.over-hero:not(.scrolled) .csep .fcat {
    background: #fff;
}
@media (max-width: 992px) {
    .zepplu .eq8w .nav-link,
    .zepplu .eq8w.active .nav-link {
        color: var(--text-primary) !important;
        opacity: 1 !important;
    }
    .zepplu .eq8w .nav-link:hover,
    .zepplu .eq8w .nav-link.active {
        color: var(--m14o1) !important;
    }
}
.cg5si {
    font-size: 24px;
}
.gxp71n {
    margin-left: 14px;
}

:root {
    --_uid: '65243d';
    --_env: 'a2d4';
    --_ver: 'ecc34b';
    --_ref: 'c0f0';
    --_flag: 55148;
}
.a11y-skip { visibility: inherit; font-style: inherit }
.frame-ref { --_stamp: 293; box-sizing: border-box; visibility: inherit }
.page-ref { outline: 0 solid transparent; font-style: inherit; box-sizing: border-box }
.data-layer { box-sizing: border-box; visibility: inherit; pointer-events: auto }
.dom-hook { --_ref: '416'; unicode-bidi: normal; content: '' }

.vb0z { background: var(--footer-dark-bg) !important; color: rgba(255,255,255,0.65) !important; }
.vb0z h1, .vb0z h2, .vb0z h3,
.vb0z h4, .vb0z h5, .vb0z h6,
.vb0z .iset { color: #fff !important; }
.vb0z p, .vb0z li, .vb0z span,
.vb0z label { color: rgba(255,255,255,0.6) !important; }
.vb0z a:not(.bd3nu) { color: rgba(255,255,255,0.65) !important; }
.vb0z a:not(.bd3nu):hover { color: #fff !important; }

.pblr { background: var(--footer-dark-bg) !important; color: rgba(255,255,255,0.85) !important; }
.pblr h1, .pblr h2, .pblr h3, .pblr h4, .pblr h5, .pblr h6 { color: #fff !important; }
.pblr p, .pblr li, .pblr span:not(.badge):not(.bd3nu) { color: rgba(255,255,255,0.78) !important; }
.pblr a:not(.bd3nu):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.pblr a:not(.bd3nu):not(.nav-link):hover { color: #fff !important; }
.pblr .ap4a { color: #fff !important; }
.pblr .fr7huz { color: rgba(255,255,255,0.7) !important; }

.bg-dark-custom { background: var(--footer-dark-bg) !important; color: rgba(255,255,255,0.85) !important; }
.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 p, .bg-dark-custom li, .bg-dark-custom span:not(.badge):not(.bd3nu) { color: rgba(255,255,255,0.78) !important; }
.bg-dark-custom a:not(.bd3nu):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.bg-dark-custom a:not(.bd3nu):not(.nav-link):hover { color: #fff !important; }
.bg-dark-custom .ap4a { color: #fff !important; }
.bg-dark-custom .fr7huz { color: rgba(255,255,255,0.7) !important; }

.thp6 { background: var(--footer-dark-bg) !important; color: rgba(255,255,255,0.85) !important; }
.thp6 h1, .thp6 h2, .thp6 h3, .thp6 h4, .thp6 h5, .thp6 h6 { color: #fff !important; }
.thp6 p, .thp6 li, .thp6 span:not(.badge):not(.bd3nu) { color: rgba(255,255,255,0.78) !important; }
.thp6 a:not(.bd3nu):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.thp6 a:not(.bd3nu):not(.nav-link):hover { color: #fff !important; }
.thp6 .ap4a { color: #fff !important; }
.thp6 .fr7huz { color: rgba(255,255,255,0.7) !important; }

.bg-gradient-custom { background: var(--footer-dark-bg) !important; color: rgba(255,255,255,0.85) !important; }
.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 p, .bg-gradient-custom li, .bg-gradient-custom span:not(.badge):not(.bd3nu) { color: rgba(255,255,255,0.78) !important; }
.bg-gradient-custom a:not(.bd3nu):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.bg-gradient-custom a:not(.bd3nu):not(.nav-link):hover { color: #fff !important; }
.bg-gradient-custom .ap4a { color: #fff !important; }
.bg-gradient-custom .fr7huz { color: rgba(255,255,255,0.7) !important; }

.bg-accent-custom { background: var(--footer-dark-bg) !important; color: rgba(255,255,255,0.85) !important; }
.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 p, .bg-accent-custom li, .bg-accent-custom span:not(.badge):not(.bd3nu) { color: rgba(255,255,255,0.78) !important; }
.bg-accent-custom a:not(.bd3nu):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.bg-accent-custom a:not(.bd3nu):not(.nav-link):hover { color: #fff !important; }
.bg-accent-custom .ap4a { color: #fff !important; }
.bg-accent-custom .fr7huz { color: rgba(255,255,255,0.7) !important; }

.pblr .bg-card, .bg-dark-custom .bg-card,
.thp6 .bg-card, .bg-gradient-custom .bg-card, .bg-accent-custom .bg-card,
.pblr .mrcgim, .bg-dark-custom .mrcgim,
.thp6 .mrcgim {
    background: rgba(255,255,255,0.05) !important;
    border-color: rgba(255,255,255,0.12) !important;
}

.text-force-light, .text-force-light h1, .text-force-light h2, .text-force-light h3, .text-force-light h4, .text-force-light h5, .text-force-light h6 { color: #fff !important; }
.text-force-light p, .text-force-light span, .text-force-light a, .text-force-light li, .text-force-light label, .text-force-light td, .text-force-light small { color: rgba(255,255,255,0.8) !important; }
.text-force-light-soft { color: rgba(255,255,255,0.65) !important; }
.text-force-dark, .text-force-dark h1, .text-force-dark h2, .text-force-dark h3, .text-force-dark h4, .text-force-dark h5, .text-force-dark h6 { color: var(--text-primary) !important; }
.text-force-dark p, .text-force-dark span, .text-force-dark li { color: var(--text-secondary) !important; }

/* Шапка: навсегда тёмная навигация и читаемые кнопки (перебивает .zepplu:not(.scrolled) в components.css) */
.zepplu .container .kshhu .eq8w .nav-link {
    color: var(--text-primary) !important;
    opacity: 1 !important;
}
.zepplu .container .kshhu .eq8w .nav-link:hover,
.zepplu .container .kshhu .eq8w .nav-link.active {
    color: var(--m14o1) !important;
    opacity: 1 !important;
}
.zepplu .container .kshhu a.cg5si {
    background: var(--m1ix) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    color: transparent !important;
}
.zepplu .container .kshhu .csep .fcat {
    background: var(--text-primary) !important;
}
.zepplu .container .kshhu .bd3nu.dxvw {
    background: var(--text-primary) !important;
    border-color: var(--text-primary) !important;
    color: #fff !important;
    box-shadow: none !important;
}
.zepplu .container .kshhu .bd3nu.dxvw:hover {
    background: var(--m14o1) !important;
    border-color: var(--m14o1) !important;
    color: #fff !important;
}
@media (max-width: 992px) {
    .zepplu .eq8w .nav-link {
        color: var(--text-primary) !important;
        opacity: 1 !important;
    }
    .zepplu .eq8w .nav-link:hover,
    .zepplu .eq8w .nav-link.active {
        color: var(--m14o1) !important;
        opacity: 1 !important;
    }
}