:root {
    --neo-bg: #0a0b10;
    --neo-bg-soft: #12141b;
    --neo-surface: #151922;
    --neo-surface-2: #1a1f29;
    --neo-bg-panel: #262934;
    --neo-bg-panel-2: #2c2f3b;
    --neo-border: rgba(154, 163, 190, 0.16);
    --neo-border-soft: rgba(154, 163, 190, 0.08);
    --neo-border-strong: rgba(88, 239, 22, 0.4);
    --neo-text: #f4f7ff;
    --neo-muted: #b7bfd4;
    --neo-acid: #58ef16;
    --neo-acid-soft: #7dff3b;
    --neo-acid-deep: #43d30b;
    --neo-sidebar-width: 184px;
    --neo-sidebar-compact: 84px;
    --neo-radius: 16px;
    --neo-radius-lg: 20px;
    --neo-shadow: 0 18px 40px rgba(0, 0, 0, 0.34);
}

body {
    background:
        linear-gradient(180deg, #090a0f 0%, #0c0d12 40%, #101219 100%) !important;
    color: var(--neo-text);
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    background:
        linear-gradient(90deg, #090a0f 0, #090a0f 172px, #0d1118 204px, #0d1118 100%);
    z-index: -2;
    pointer-events: none;
}

body::after {
    content: "";
    position: fixed;
    top: 0;
    bottom: 0;
    left: 184px;
    width: 56px;
    background: linear-gradient(90deg, rgba(15, 18, 25, 0.98) 0%, rgba(15, 18, 25, 0.76) 55%, rgba(15, 18, 25, 0) 100%);
    z-index: -1;
    pointer-events: none;
}

.elementor-location-header,
.elementor-location-header .elementor-section,
.elementor-location-header [data-element_type="container"],
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-widget-wrap,
.elementor-location-header .tp-mobile-menu,
.elementor-location-header .tp-mobile-menu .tp-mm-wrapper-inner,
.elementor-location-footer,
.elementor-location-footer .elementor-section,
.elementor-location-footer [data-element_type="container"] {
    background: #090a0f !important;
}

.elementor-location-header .elementor-section {
    border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
    box-shadow: none !important;
}

.elementor-location-footer .elementor-section {
    border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
    box-shadow: none !important;
}

.elementor-334 .elementor-element.elementor-element-4d70e203 {
    width: var(--neo-sidebar-width) !important;
    max-width: var(--neo-sidebar-width) !important;
    background:
        linear-gradient(180deg, rgba(16, 18, 25, 0.98) 0%, rgba(19, 22, 30, 0.98) 100%) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.035);
}

.elementor-334 .elementor-element.elementor-element-1ce1abd7,
.elementor-334 .elementor-element.elementor-element-51049af7,
.elementor-334 .elementor-element.elementor-element-757d87e7 {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
}

body.opening .elementor-334 .elementor-element.elementor-element-4d70e203,
body.sidebar-compact .elementor-334 .elementor-element.elementor-element-4d70e203 {
    width: var(--neo-sidebar-compact) !important;
    max-width: var(--neo-sidebar-compact) !important;
}

.elementor-334 .elementor-element.elementor-element-55b51aba,
.elementor-334 .elementor-element.elementor-element-dc432ba:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap {
    background: #090a0f !important;
}

.elementor-17 .elementor-element.elementor-element-cda7033,
.elementor-17 .elementor-element.elementor-element-94e8253,
.elementor-17 .elementor-element.elementor-element-b5dd501,
.elementor-17 .elementor-element.elementor-element-1c26ff1,
.elementor-17 .elementor-element.elementor-element-3e71466,
.elementor-17 .elementor-element.elementor-element-b9abe2c,
.elementor-17 .elementor-element.elementor-element-8642876,
.elementor-17 .elementor-element.elementor-element-27950a3 {
    background: transparent !important;
}

.elementor-17 .elementor-element.elementor-element-cda7033 > .e-con-inner,
.elementor-17 .elementor-element.elementor-element-94e8253 > .e-con-inner,
.elementor-17 .elementor-element.elementor-element-b5dd501 > .e-con-inner,
.elementor-17 .elementor-element.elementor-element-1c26ff1 > .e-con-inner,
.elementor-17 .elementor-element.elementor-element-3e71466 > .e-con-inner,
.elementor-17 .elementor-element.elementor-element-b9abe2c > .e-con-inner,
.elementor-17 .elementor-element.elementor-element-8642876 > .e-con-inner,
.elementor-17 .elementor-element.elementor-element-27950a3 > .e-con-inner {
    background: linear-gradient(180deg, rgba(20, 24, 33, 0.98), rgba(22, 26, 36, 0.98)) !important;
    border: 1px solid var(--neo-border-soft) !important;
    border-radius: 22px !important;
    box-shadow: none !important;
    overflow: hidden;
}

.elementor-334 .elementor-element.elementor-element-a53ce13 img {
    max-width: 104px;
}

.neo-sidebar {
    width: 100% !important;
    gap: 10px !important;
}

.neo-sidebar__full {
    gap: 10px !important;
}

.neo-card {
    border-radius: 14px !important;
    padding: 0 !important;
    box-shadow: none !important;
    border: 1px solid rgba(255, 255, 255, 0.04) !important;
}

.neo-card--cashback {
    min-height: 74px;
    background:
        radial-gradient(circle at 12% 12%, rgba(92, 255, 76, 0.12), transparent 26%),
        linear-gradient(135deg, #177f73 0%, #166a64 24%, #183346 58%, #242730 100%) !important;
}

.neo-card--cashback::after {
    opacity: 0.62 !important;
    background-position: right center !important;
    background-size: cover !important;
    mix-blend-mode: screen;
}

.neo-card__body {
    min-height: 74px;
    justify-content: center;
    gap: 2px !important;
    padding: 12px 14px !important;
}

.neo-card__eyebrow {
    font-size: 10px !important;
    letter-spacing: 0.04em !important;
    color: #f0fff4 !important;
}

.neo-card__title {
    font-size: 14px !important;
    line-height: 1.05;
    font-weight: 700 !important;
    text-transform: uppercase;
}

.neo-card__subtitle {
    font-size: 10px !important;
    color: #f0fff4 !important;
    text-transform: uppercase;
}

.neo-chips {
    flex-direction: column;
    gap: 10px !important;
}

.neo-chip {
    min-height: 42px;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.04) !important;
    background:
        linear-gradient(90deg, #141820 0%, #171b24 72%, #1d2f27 100%) !important;
    box-shadow: none !important;
    padding: 0 14px !important;
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: 0 !important;
    text-transform: uppercase;
}

.neo-chip--hot {
    color: #beff3d !important;
}

.neo-chip--shop {
    color: #f5fcff !important;
    background:
        linear-gradient(90deg, #23968c 0%, #207972 26%, #1a2834 70%, #171a22 100%) !important;
}

.neo-grid {
    gap: 8px !important;
}

.neo-grid__item {
    min-height: 72px;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.04) !important;
    background: linear-gradient(180deg, #12161f 0%, #141822 100%) !important;
    box-shadow: none !important;
    padding: 10px 8px !important;
}

.neo-grid__item:hover,
.neo-grid__item:focus-visible {
    border-color: rgba(88, 239, 22, 0.36) !important;
    transform: translateY(-1px);
}

.neo-grid__icon,
.neo-mini-icon__icon {
    background: rgba(88, 239, 22, 0.045) !important;
    border: 1px solid rgba(88, 239, 22, 0.24) !important;
}

.neo-grid__label {
    font-size: 11px !important;
    letter-spacing: 0 !important;
    font-weight: 600;
}

.neo-grid__badge {
    background: #ff613a !important;
    color: #fff !important;
    box-shadow: none !important;
}

.neo-mini-icon {
    border-radius: 12px !important;
    background: linear-gradient(180deg, #12161f 0%, #141822 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.04) !important;
    box-shadow: none !important;
}

.elementor-widget-button .elementor-button,
.elementor-334 .elementor-element.elementor-element-4577f7e .elementor-button,
.elementor-334 .elementor-element.elementor-element-5f5ebf7 .elementor-button {
    border-radius: 12px !important;
    min-height: 46px;
    box-shadow: none !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

.elementor-334 .elementor-element.elementor-element-4577f7e .elementor-button {
    background: #272b37 !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.07) !important;
}

.elementor-334 .elementor-element.elementor-element-5f5ebf7 .elementor-button {
    background: #56ea12 !important;
    color: #ffffff !important;
}

.elementor-334 .elementor-element.elementor-element-4577f7e .elementor-button:hover,
.elementor-334 .elementor-element.elementor-element-5f5ebf7 .elementor-button:hover,
.elementor-widget-button .elementor-button:hover {
    filter: brightness(1.04);
    transform: translateY(-1px);
}

.hero-banner {
    border-radius: 18px !important;
    border: 1px solid rgba(88, 239, 22, 0.12) !important;
    background:
        radial-gradient(circle at 26% 55%, rgba(88, 239, 22, 0.035), transparent 16%),
        radial-gradient(circle at 68% 40%, rgba(26, 132, 54, 0.05), transparent 18%),
        linear-gradient(180deg, #030403 0%, #061007 40%, #090b10 100%) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.015) !important;
}

.hero-banner::after {
    box-shadow:
        inset 0 0 110px rgba(0, 0, 0, 0.48),
        inset 0 -40px 80px rgba(7, 9, 14, 0.42) !important;
}

.home .elementor-17 .elementor-element.elementor-element-cda7033 > .e-con-inner {
    background: linear-gradient(180deg, rgba(18, 22, 30, 0.92), rgba(18, 22, 30, 0.88)) !important;
    border: 1px solid rgba(88, 239, 22, 0.08) !important;
    border-radius: 22px !important;
    padding: 14px !important;
}

.home .elementor-17 .elementor-element.elementor-element-94e8253 > .e-con-inner,
.home .elementor-17 .elementor-element.elementor-element-b5dd501 > .e-con-inner,
.home .elementor-17 .elementor-element.elementor-element-1c26ff1 > .e-con-inner,
.home .elementor-17 .elementor-element.elementor-element-3e71466 > .e-con-inner,
.home .elementor-17 .elementor-element.elementor-element-b9abe2c > .e-con-inner,
.home .elementor-17 .elementor-element.elementor-element-8642876 > .e-con-inner,
.home .elementor-17 .elementor-element.elementor-element-27950a3 > .e-con-inner {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.home .elementor-17 .elementor-element.elementor-element-791c7d2 .elementor-heading-title,
.home .elementor-17 .elementor-element.elementor-element-73bd8e3 .elementor-heading-title {
    letter-spacing: 0.02em !important;
}

.home .elementor-17 .swiper-pagination-bullet {
    background: rgba(255, 255, 255, 0.28) !important;
    opacity: 1 !important;
}

.home .elementor-17 .swiper-pagination-bullet-active {
    background: #58ef16 !important;
}

.elementor-17 .elementor-element.elementor-element-0119fbf,
.elementor-17 .elementor-element.elementor-element-dafbdbc,
.elementor-17 .elementor-element.elementor-element-8273493,
.elementor-17 .elementor-element.elementor-element-2ffa7ec {
    padding-left: 36px !important;
    padding-right: 36px !important;
}

.elementor-17 .elementor-element.elementor-element-6d8ee05 > .elementor-widget-container,
.elementor-17 .elementor-element.elementor-element-14283e3 > .elementor-widget-container,
.elementor-17 .elementor-element.elementor-element-3b77093 > .elementor-widget-container,
.elementor-17 .elementor-element.elementor-element-471a139 > .elementor-widget-container,
.elementor-17 .elementor-element.elementor-element-2049fb3 > .elementor-widget-container {
    background: transparent !important;
    padding: 0 !important;
}

.elementor-17 .elementor-element.elementor-element-9c0e61d table.tafe-table .tafe-table-header tr th,
.elementor-17 .elementor-element.elementor-element-2761b57 table.tafe-table .tafe-table-header tr th,
.elementor-17 .elementor-element.elementor-element-7097a8f table.tafe-table .tafe-table-header tr th,
.elementor-17 .elementor-element.elementor-element-318c6fb table.tafe-table .tafe-table-header tr th,
.elementor-17 .elementor-element.elementor-element-057c293 table.tafe-table .tafe-table-header tr th,
.elementor-17 .elementor-element.elementor-element-7782fe5 table.tafe-table .tafe-table-header tr th,
.elementor-17 .elementor-element.elementor-element-72544f9 table.tafe-table .tafe-table-header tr th,
.elementor-17 .elementor-element.elementor-element-13ff728 table.tafe-table .tafe-table-header tr th {
    background: #2a2d38 !important;
    color: #ecf2ff !important;
}

.elementor-17 .elementor-element.elementor-element-9c0e61d table.tafe-table .tafe-table-body tr td,
.elementor-17 .elementor-element.elementor-element-2761b57 table.tafe-table .tafe-table-body tr td,
.elementor-17 .elementor-element.elementor-element-7097a8f table.tafe-table .tafe-table-body tr td,
.elementor-17 .elementor-element.elementor-element-318c6fb table.tafe-table .tafe-table-body tr td,
.elementor-17 .elementor-element.elementor-element-057c293 table.tafe-table .tafe-table-body tr td,
.elementor-17 .elementor-element.elementor-element-7782fe5 table.tafe-table .tafe-table-body tr td,
.elementor-17 .elementor-element.elementor-element-72544f9 table.tafe-table .tafe-table-body tr td,
.elementor-17 .elementor-element.elementor-element-13ff728 table.tafe-table .tafe-table-body tr td {
    background: #242733 !important;
    border-color: rgba(255, 255, 255, 0.05) !important;
}

.neo-section-page {
    background: linear-gradient(180deg, #0d0f15 0%, #101219 100%);
}

.neo-section-page__hero,
.neo-panel,
.neo-section-page__cta {
    background: linear-gradient(180deg, rgba(24, 28, 38, 0.98), rgba(21, 25, 34, 0.98)) !important;
    border: 1px solid var(--neo-border-soft) !important;
    border-radius: 18px !important;
    box-shadow: none !important;
}

.neo-section-page__hero {
    position: relative;
    overflow: hidden;
}

.neo-section-page__hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 80% 18%, rgba(88, 239, 22, 0.05), transparent 22%),
        radial-gradient(circle at 14% 100%, rgba(30, 110, 58, 0.05), transparent 18%);
    pointer-events: none;
}

.elementor-17 .elementor-element.elementor-element-cda7033:not(.elementor-motion-effects-element-type-background),
.elementor-17 .elementor-element.elementor-element-cda7033 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-17 .elementor-element.elementor-element-94e8253:not(.elementor-motion-effects-element-type-background),
.elementor-17 .elementor-element.elementor-element-94e8253 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-17 .elementor-element.elementor-element-b5dd501:not(.elementor-motion-effects-element-type-background),
.elementor-17 .elementor-element.elementor-element-b5dd501 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-17 .elementor-element.elementor-element-1c26ff1:not(.elementor-motion-effects-element-type-background),
.elementor-17 .elementor-element.elementor-element-1c26ff1 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-17 .elementor-element.elementor-element-3e71466:not(.elementor-motion-effects-element-type-background),
.elementor-17 .elementor-element.elementor-element-3e71466 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-17 .elementor-element.elementor-element-b9abe2c:not(.elementor-motion-effects-element-type-background),
.elementor-17 .elementor-element.elementor-element-b9abe2c > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-17 .elementor-element.elementor-element-8642876:not(.elementor-motion-effects-element-type-background),
.elementor-17 .elementor-element.elementor-element-8642876 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-17 .elementor-element.elementor-element-27950a3:not(.elementor-motion-effects-element-type-background),
.elementor-17 .elementor-element.elementor-element-27950a3 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: transparent !important;
}

.neo-section-page__eyebrow,
.neo-panel__eyebrow,
.neo-hero-fact__label,
.neo-panel__list strong,
.neo-section-page__cta h2 {
    color: var(--neo-acid-soft) !important;
}

.neo-section-page__hero h1,
.neo-panel h2,
.neo-section-page__cta h2,
.elementor-heading-title {
    color: #ffffff !important;
}

.neo-section-page__hero p,
.neo-panel p,
.neo-section-page__cta p,
.neo-cta-list li,
.neo-panel__list li,
.neo-hero-fact p {
    color: var(--neo-muted) !important;
}

.neo-hero-fact,
.neo-panel__list li,
.neo-cta-list li {
    background: rgba(18, 21, 29, 0.76) !important;
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.elementor-17 .elementor-element.elementor-element-7496145 .theplus-accordion-wrapper .theplus-accordion-item .plus-accordion-header,
.elementor-17 .elementor-element.elementor-element-7496145 .theplus-accordion-wrapper .theplus-accordion-item .plus-accordion-content {
    background: #252833 !important;
    color: #f0f4ff !important;
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.elementor-17 .elementor-element.elementor-element-7496145 .theplus-accordion-wrapper .theplus-accordion-item .plus-accordion-header.active {
    background: #1b1e28 !important;
}

.elementor-location-footer {
    color: #c7cee0;
}

.elementor-location-footer a,
.elementor-location-footer .elementor-icon-list-text,
.elementor-location-footer .elementor-widget-container p,
.elementor-location-footer .elementor-widget-container span {
    color: #c7cee0 !important;
}

.elementor-location-footer a:hover {
    color: #ffffff !important;
}

@media (max-width: 1024px) {
    body::before {
        background:
            linear-gradient(90deg, #090a0f 0, #090a0f 172px, #0d1118 204px, #0d1118 100%);
    }

    body::after {
        left: 184px;
        width: 36px;
    }

    .elementor-334 .elementor-element.elementor-element-4d70e203 {
        width: var(--neo-sidebar-width) !important;
        max-width: var(--neo-sidebar-width) !important;
    }

    .elementor-17 .elementor-element.elementor-element-0119fbf,
    .elementor-17 .elementor-element.elementor-element-dafbdbc,
    .elementor-17 .elementor-element.elementor-element-8273493,
    .elementor-17 .elementor-element.elementor-element-2ffa7ec {
        padding-left: 22px !important;
        padding-right: 22px !important;
    }
}

@media (max-width: 767px) {
    body::before,
    body::after {
        display: none;
    }

    .neo-card__title {
        font-size: 13px !important;
    }

    .neo-grid {
        gap: 6px !important;
    }

    .neo-grid__item {
        min-height: 68px;
    }

    .hero-banner {
        border-radius: 16px !important;
    }
}
