.alert-block {
    right: 1rem;
    top: 1rem;
    left: 1rem;
}

@media(min-width:576px) {
    .alert-block {
        right: 1.5rem;
        top: 1.5rem;
        left: auto;
    }
}

.ds-alert {
    background: var(--ds-white-color);
    box-shadow: 0px 4px 40px 0px rgba(37, 38, 39, 0.22);
    padding: 1.5rem;
    overflow: hidden;
    border: var(--ds-main-border)
}

.ds-alert .purchase-success {
    display: none !important;
}

.ds-alert-text {
    font-size: 12px;
}

@media(min-width:1200px) {
    .ds-alert-text {
        font-size: 14px;
    }
}

@media(min-width:576px) {
    .ds-alert {
        width: 370px;
    }
}

.ds-alert-text a {
    color: var(--ds-links-color);
    text-decoration: underline
}

.ds-alert-text a:hover {
    text-decoration: none
}

.alert-text-item + .alert-text-item {
    margin-top: .5rem
}

.ds-alert [data-bs-dismiss=modal] {
    display: none !important
}

.animated {
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight
}

@keyframes fadeOutUp {
    from {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
}

.fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp
}

@-webkit-keyframes pulsation {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
        opacity: 1
    }
    50% {
        opacity: .5
    }
    to {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0
    }
}

@keyframes pulsation {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
        opacity: 1
    }
    50% {
        opacity: .5
    }
    to {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0
    }
}

@-webkit-keyframes iconOpacity {
    0%,
    100% {
        opacity: 0
    }
    40%,
    80% {
        opacity: .96
    }
    60% {
        opacity: 1
    }
}

@keyframes iconOpacity {
    0%,
    100% {
        opacity: 0
    }
    40%,
    80% {
        opacity: .96
    }
    60% {
        opacity: 1
    }
}

#ds_fixed_contact_button {
    background: var(--ds-primary-color);
    position: fixed;
    right: 15px;
    bottom: 26px;
    width: 50px;
    height: 50px;
    border-radius: 100%;
    cursor: pointer;
    z-index: 1020
}

#ds_fixed_contact_button.clicked {
    z-index: 1041
}

#ds_fixed_contact_substrate {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0);
    z-index: 0;
    display: none
}

#ds_fixed_contact_substrate.active {
    z-index: 1020;
    display: block
}

.ds-fixed-contact-pulsation {
    background: var(--ds-primary-color);
    width: 80px;
    height: 80px;
    border-radius: 50px;
    position: absolute;
    left: -15px;
    top: -15px;
    z-index: -1;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-animation: 2s infinite pulsation;
    animation: 2s infinite pulsation;
    display: none;
}

@media(min-width:420px) {
    #ds_fixed_contact_button {
        right: 30px;
        width: 70px;
        height: 70px
    }
    .ds-fixed-contact-pulsation {
        width: 100px;
        height: 100px
    }
}

.ds-fixed-contact-icon {
    color: var(--ds-white-color);
    width: 100%;
    font-size: 20px;
    overflow: hidden;
    display: none;
}

.ds-fixed-contact-icon .fa-envelope {
    -webkit-animation: 3s infinite iconOpacity;
    animation: 3s infinite iconOpacity;
    width: 20px;
    height: 20px
}

@media(min-width:420px) {
    .ds-fixed-contact-icon {
        font-size: 28px
    }
    .ds-fixed-contact-icon .fa-envelope {
        width: 28px;
        height: 28px
    }
}

.ds-fixed-contact-text {
    font-size: 7px;
    text-transform: uppercase;
    line-height: 9px;
    color: var(--ds-white-color)
}

.ds-fixed-contact-dropdown {
    position: absolute;
    bottom: 60px;
    right: 36px;
    padding: 20px;
    border-radius: 6px;
    background: var(--ds-white-color);
    display: block;
    opacity: 0;
    z-index: -1;
    transform: translateY(20px);
    -webkit-transition: transform .3s, opacity .3s;
    -o-transition: transform.3s, opacity .3s;
    transition: transform .3s, opacity .3s;
    -webkit-box-shadow: 5px 12px 30px rgba(0, 0, 0, .35);
    box-shadow: 5px 12px 30px rgba(0, 0, 0, .35);
    visibility: hidden;
    min-width: 250px;
    will-change: transform, opacity;
}

@media(min-width:420px) {
    .ds-fixed-contact-text {
        font-size: 8px;
        line-height: 10px
    }
    .ds-fixed-contact-dropdown {
        right: 60px
    }
}

.ds-fixed-contact-dropdown.expanded {
    transform: translateY(0);
    opacity: .98;
    z-index: 1;
    visibility: visible
}

.ds-fixed-contact-item {
    color: var(--ds-dark-text-color);
    transition: color var(--ds-main-transition);
}

.ds-fixed-contact-item:not(:last-child) {
    margin-bottom: 18px
}

.ds-fixed-contact-item:hover {
    color: var(--ds-links-color)
}

.ds-fixed-contact-item > * {
    pointer-events: none;
}

.ds-fixed-contact-item-icon {
    display: block;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 36px;
    flex: 0 0 36px;
    max-width: 36px;
    width: 36px;
    height: 36px;
    border-radius: 100%;
    margin-right: 10px;
    color: var(--ds-white-color)
}

.ds-fixed-contact-item-icon svg {
    width: 20px !important;
    height: 20px
}

.ds-fixed-contact-messenger {
    background: #0084ff
}

.ds-fixed-contact-viber {
    background: #7c529d
}

.ds-fixed-contact-telegram {
    background: #2ca5e0
}

.ds-fixed-contact-skype {
    background: #31c4ed
}

.ds-fixed-contact-whatsapp {
    background: #25d366
}

.ds-fixed-contact-email {
    background: #50a8ff
}

.ds-fixed-contact-call {
    background: #3cba8b
}

.ds-fixed-contact-contacts {
    background: #e6a83a
}

@media(max-width:991px) {
    .ds-fixed-contact-viber-desktop {
        display: none !important
    }
}

@media(min-width:768px) {
    #ds_fixed_contact_button {
        bottom: 30px
    }
}

.popover {
    font-family: Ubuntu, sans-serif;
    border-color: transparent;
    border-radius: .5rem;
    box-shadow: var(--ds-medium-shadow);
    background-color: var(--ds-white-color);
    color: var(--ds-dark-text-color)
}

.popover-arrow::after {
    border-top-color: var(--ds-white-color) !important;
}

@media(min-width:360px) {
    .popover {
        min-width: 260px
    }
}

@media(max-width:991px) {
    #ds_fixed_contact_button {
        max-width: 0;
    }
}

@media(min-width:992px) {
    .popover {
        z-index: 19999
    }

    .ds-fixed-contact-pulsation {
        display: block;
    }

    .ds-fixed-contact-icon {
        display: flex;
    }
}

.popover-arrow:before {
    border-color: transparent !important
}

.popover-header {
    border-bottom: 0;
    background-color: rgba(0, 0, 0, 0);
    font-weight: 600;
    font-size: 1.075rem;
    padding: 1rem 1rem .5rem;
    color: var(--ds-dark-text-color);
}

.popover-header:before {
    border-color: transparent !important
}

.popover-body {
    padding: 0 1rem 1rem;
    font-size: .875rem;
    color: var(--ds-secondary-text-color);
}

.popover-body p+p {
    margin-top: 1rem
}

.popover-body ul {
    padding: 1rem 0 1rem .75rem
}
.ds-loader {
    width: 8px;
    height: 40px;
    border-radius: 4px;
    display: block;
    margin: 20px auto;
    position: relative;
    background: currentColor;
    color: var(--ds-primary-color);
    opacity: 0.7;
    box-sizing: border-box;
    animation: animloader 0.3s 0.3s linear infinite alternate;
  }
  
  .ds-loader::after, .ds-loader::before {
    content: '';
    width: 8px;
    height: 40px;
    border-radius: 4px;
    background: currentColor;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 20px;
    box-sizing: border-box;
    animation: animloader 0.3s  0.45s  linear infinite alternate;
  }
  .ds-loader::before {
    left: -20px;
    animation-delay: 0s;
  }
  
  @keyframes animloader {
    0%   { height: 48px} 
    100% { height: 4px}
  }

.ds-loader-overlay {
    position: fixed;
    z-index: 19999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

@keyframes loaderMove {
    0% {
        transform: translateX(-40%);
    }
    50% {
        transform: translateX(20%);
        width: 80%;
    }
    100% {
        transform: translateX(100%);
        width: 100%;
    }
}

.ds-livesearch {
    top: 46px;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 12300;
    background: var(--ds-light-bg-color);
    gap: .5rem;
    -webkit-box-shadow: 0 2px 24px 0 rgba(37,38,39,.08);
    box-shadow: 0 2px 24px 0 rgba(37,38,39,.08);
    overflow: hidden;
    overflow-y: auto;
    position: fixed;
    max-height: 0;
}

@media (min-width: 768px) {
    .ds-livesearch {
        z-index: 13300;
    }
}

.ds-livesearch.expanded {
    max-height: unset;
}

.ds-livesearch .ds-livesearch-categories-item {
    flex: 1 0 30%;
    max-width: 30%
}

.ds-livesearch .ds-livesearch-categories-item img {
    max-width: 100%;
    height: auto
}

.ds-livesearch .ds-subcategories-title {
    hyphens: auto;
}

.ds-livesearch-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1rem;
}

@media (min-width: 568px) {
    .ds-livesearch .ds-livesearch-categories-item {
        flex: 1 0 50%;
        max-width: 50%
    }
}

@media (min-width: 768px) {
    .ds-last-reviews-item {
        width:50%
    }

    .ds-livesearch {
        top: calc(100% + .325rem);
        max-height: 0;
        left: 1rem;
        right: 0;
        border-radius: 7px;
        position: absolute;
        bottom: auto;
    }

    .ds-livesearch.expanded {
        max-height: calc(100vh - 5rem)
    }

    .ds-livesearch .ds-livesearch-categories-item {
        flex: 1 0 25%;
        max-width: 25%
    }
}

.ds-livesearch-item {
    background: var(--ds-white-color);
    gap: 1rem
}

.ds-livesearch-item-img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100px;
    flex: 0 0 100px;
    border-right: var(--ds-main-border)
}

.ds-livesearch-item-img img {
    margin-bottom: 1rem
}

.ds-livesearch-item-sticker {
    background: var(--ds-green-color);
    color: var(--ds-white-color);
    text-align: center;
    border-radius: 4.0625rem;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
}

.ds-livesearch-item-sticker.red-bg {
    background: var(--ds-red-color)
}

.ds-livesearch-item-title {
    line-height: 1
}

.ds-livesearch-item-title:hover {
    color: var(--ds-links-color)
}

.ds-livesearch-item .ds-price-new {
    line-height: 1
}

@media (max-width: 567.98px) {
    .ds-livesearch-items-box {
        flex-wrap: nowrap;
        overflow: hidden;
        overflow-x: auto;
    }
}

.modal {
    z-index: 14505
}

.modal-open {
    overflow: hidden
}

.modal-backdrop {
    background: var(--ds-popup-backdrop-bg);
    opacity: 1;
    z-index: 12500;
    --bs-backdrop-opacity: 1
}

.modal-dialog.wide {
    --bs-modal-width: 860px
}

.modal-content {
    padding: 1.5rem;
    border: 0;
    background-color: var(--ds-white-color);
    -webkit-box-shadow: var(--ds-dark-shadow);
    box-shadow: var(--ds-dark-shadow)
}

.modal-header {
    border: 0;
    border-bottom: var(--ds-main-border)
}

.modal-header .btn-close {
    border-radius: .625rem;
    background-color: var(--ds-popup-close-btn-bg);
    --bs-btn-close-bg: none;
    width: 2.5rem;
    height: 2.5rem;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 2.5rem;
    flex: 0 0 2.5rem;
    display: grid;
    place-items: center;
    padding: 0;
    opacity: 1
}

.modal-header .btn-close svg path {
    fill: var(--ds-secondary-dark-color)
}

.modal-title {
    line-height: 1.2
}

.modal-body {
    padding: 0;
    border-bottom-left-radius: var(--bs-modal-inner-border-radius);
    border-bottom-right-radius: var(--bs-modal-inner-border-radius)
}

.modal-body .ds-buy-one-click {
    -webkit-box-orient: vertical!important;
    -webkit-box-direction: normal!important;
    -ms-flex-direction: column!important;
    flex-direction: column!important;
    -webkit-box-align: start!important;
    -ms-flex-align: start!important;
    align-items: flex-start!important
}

.modal-body .ds-buy-one-click>:first-child {
    margin-bottom: .5rem
}

.modal-body .ds-buy-one-click .form-control {
    font-size: .75rem;
}

@media (min-width: 576px) {
    .modal-body .ds-buy-one-click .form-control {
        min-width: 200px;
    }
}

.modal-body .ds-buy-one-click .form-control::-webkit-input-placeholder {
    font-size: .75rem
}

.modal-body .ds-buy-one-click .form-control::-moz-placeholder {
    font-size: .75rem
}

.modal-body .ds-buy-one-click .form-control:-ms-input-placeholder {
    font-size: .75rem
}

.modal-body .ds-buy-one-click .form-control::-ms-input-placeholder {
    font-size: .75rem
}

.modal-body .ds-buy-one-click .form-control::placeholder {
    font-size: .75rem
}

@media (max-width: 767.98px) {
    #error_minimum {
        font-size: .875rem
    }
}

.modal-body-cart .ds-buy-one-click {
    border-top: 0
}

.modal-body-cart .ds-buy-one-click>:first-child {
    display: none
}

.modal-body .ds-cart-item {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem
}

.modal-body-cart .ds-cart-recommended-products {
    overflow-x: auto;
}

.modal-body-cart .ds-cart-recommended-products-item {
    flex: 0 0 80%;
    max-width: 80%;
}

@media(min-width: 768px) {
    .modal-body-cart .ds-cart-recommended-products-item {
        flex: 0 0 330px;
        max-width: 330px;
    }
}

.modal-body-cart .ds-cart-recommended-products .content-block {
    transition: border var(--ds-main-transition);
}

.modal-body-cart .ds-cart-recommended-products .content-block:hover {
    box-shadow: none;
    border-color: var(--ds-form-control-focus-color);
}

.modal-body-buttons {
    border-top: var(--ds-main-border)
}

@media (max-width: 575.98px) {
    .modal-body-buttons .button-primary {
        width:100%
    }
}

.modal-body-form>* {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(50% - 3rem);
    flex: 0 0 calc(50% - 3rem)
}

.modal-body-product-img-box {
    flex: 0 0 320px;
    min-width: 320px;
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA&data-fill-color=12345");
    padding: 0;
    margin: 0 auto;
}

.modal-body-product-panel {
    border: var(--ds-main-border);
    flex: 0 0 4513px
}

.modal-body-product-img img {
    width: 100px;
    -o-object-fit: fill;
    object-fit: fill;
    border-radius: .25rem;
    max-width: 100%;
    aspect-ratio: 1/1;
    height: auto
}

@media (min-width: 360px) {
    .modal-body-product-img {
        width:158px;
        height: 158px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 158px;
        flex: 0 0 158px
    }

    .modal-body-product-img img {
        width: 150px
    }
}

.modal-body-product-title {
    line-height: 1.2
}

.modal-body-product-info .ds-module-rating-star {
    width: 1.25rem;
    height: 1.25rem;
    cursor: pointer
}

.modal-body-product-info .ds-module-rating-star+.ds-module-rating-star {
    margin-left: .75rem
}

.modal-body-product .ds-product-options {
    border-bottom: 0
}

.modal-body-quick-view {
    background-color: var(--ds-light-bg-color)
}

.modal-body-quick-view .ds-product-main-buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.modal-body-quick-view .ds-product-main-buttons .button-outline {
    margin-top: 1rem;
    margin-left: 0
}

@media (min-width: 768px) {
    .modal-body-product {
        border-right:var(--ds-main-border)
    }

    .modal-body .ds-product-images {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(52% - 1rem);
        flex: 0 0 calc(52% - 1rem);
        max-width: calc(52% - 1rem)
    }
}

.modal-body .ds-product-main-content {
    border-top: var(--ds-main-border)
}

.modal-body-popup-text>:not(:first-child) {
    margin-top: 1rem
}

.modal-body-popup-text ol,.modal-body-popup-text ul {
    padding-left: 1rem
}

.modal-small-text {
    line-height: 1.2
}

#popup_review_form .modal-body-product-img {
    width: 88px;
    height: 88px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 88px;
    flex: 0 0 88px
}

#popup_review_form .modal-body-product-img img {
    -o-object-fit: fill;
    object-fit: fill;
    border-radius: .25rem;
    width: 80px;
    max-width: 100%;
    aspect-ratio: 1/1;
    height: auto
}

@media (min-width: 360px) {
    #popup_review_form .modal-body-product-img {
        width:120px;
        height: 120px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 120px;
        flex: 0 0 120px
    }

    #popup_review_form .modal-body-product-img img {
        width: 112px
    }
}

@media (max-width: 359.98px) {
    .modal-header .modal-title {
        font-size:1.25rem!important
    }

    #quickViewModal .ds-product-main-cart {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    #quickViewModal .ds-product-main-cart .ds-module-quantity {
        margin-right: 0!important;
        margin-bottom: 1rem
    }
}

@media (min-width: 992px) {
    #quickViewModal .ds-product-main {
        -webkit-box-flex:0;
        -ms-flex: 0 0 48%;
        flex: 0 0 48%;
        max-width: 48%
    }
}

#quickViewModal .ds-product-images-main {
    height: auto
}

#quickViewModal .ds-product-images-main img {
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    height: auto
}

[data-bs-dismiss=modal] {
    text-decoration: none
}

@media (min-width: 360px) {
    #productOptionModal .modal-body-product-img {
        width:128px;
        height: 128px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 128px;
        flex: 0 0 128px
    }

    #productOptionModal .modal-body-product-img img {
        width: 120px
    }
}

#cartModal .modal-dialog {
    --bs-modal-width: 720px
}

@media (max-width: 767.98px) {
    .empty-popup-cart .button-primary {
        width:100%
    }
}

#loginTabs {
    border-bottom: 0;
}

#loginTabs .nav-link {
    margin-bottom: 0;
    background-color: #fdfdfd;
    border: var(--ds-main-border);
    border-radius: 0.25rem;
    padding: .5rem 1rem;
    white-space: nowrap;
    position: relative;
    overflow: hidden;
    flex: 0 0 auto;
    cursor: pointer;
    line-height: 1;
    transition: background-color var(--ds-main-transition), color var(--ds-main-transition), border var(--ds-main-transition);
    font-size: .75rem;
    color: var(--ds-light-text-color);
}

@media (min-width: 1200px) {
    #loginTabs .nav-link {
        padding: .75rem 1.5rem;
        font-size: .875rem;
    }
}

#loginTabs .nav-item + .nav-item {
    margin-left: 0.5rem;
}

#loginTabs .nav-link.active {
    color: var(--ds-primary-color);
    box-shadow: var(--ds-light-shadow);
    font-weight: 700;
    color: var(--ds-dark-text-color);
    background-color: var(--ds-white-color);
}

#loginTabs .nav-link.active:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--ds-primary-color);
}

#otp-form-code .otp-code-block {
    background: var(--ds-light-bg-color);
}

.ds-account-column-nav li {
    padding: 0;
    font-size: inherit
}

.ds-account-column-nav li:not(:last-child) {
    border-bottom: var(--ds-main-border)
}

.ds-account-column-nav .ds-column-categories-children.ds-categories-2 li {
    padding: 1rem!important;
    border-bottom: 0;
    border-top: var(--ds-main-border)
}

.ds-account-column-nav-item {
    line-height: 1;
    white-space: nowrap;
    padding: .75rem 1rem;
    -webkit-transition: background-color var(--ds-main-transition);
    transition: background-color var(--ds-main-transition)
}

.ds-account-column-nav-item:hover {
    background-color: #fbfbfb
}

.ds-account-column-nav-item:hover .ds-account-column-nav-item-text {
    text-decoration: underline
}

.ds-account-column-nav-item-icon {
    place-items: center;
    width: 1.75rem;
    height: 1.75rem;
    margin-right: .75rem;
    background-color: var(--ds-light-bg-color)
}

.ds-account-column-nav-item-icon svg path {
    fill: var(--ds-dark-text-color)
}

.ds-account .content-block:hover {
    -webkit-box-shadow: none;
    box-shadow: none
}

.ds-account-login-button {
    min-width: 160px
}

@media (max-width: 575.98px) {
    .ds-account-login-button {
        width:100%
    }
}

.ds-account-wishlist-info {
    border-left: var(--ds-main-border)
}

.ds-account-wishlist-title {
    line-height: 1.2
}

.ds-account-wishlist-title:hover {
    color: var(--ds-links-color);
    text-decoration: underline
}

.ds-account-wishlist .no-btn {
    top: 1rem;
    right: 1rem;
    width: 14px;
    height: 14px;
    display: grid;
    place-items: center
}

.ds-account-wishlist .no-btn svg {
    width: 12px;
    height: 12px;
    -o-object-fit: contain;
    object-fit: contain
}

@media (max-width: 767.98px) {

    .ds-account table td {
        white-space: nowrap
    }
}

@keyframes autofill {
    to {
        color: inherit;
        background: transparent;
    }
}

@keyframes fadeInColumn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes rotateIcon {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

input:-webkit-autofill {
    -webkit-animation-name: autofill;
    -webkit-animation-fill-mode: both;
}

.fadeInColumn {
    animation-name: fadeInColumn;
    animation-duration: 0.8s;
}

.oct-animated svg {
    animation: rotateIcon 0.5s ease-in-out infinite;
}

.error_style {
    background-color: var(--ds-error-bg-color)!important;
    border: 1px solid #fe4d97!important;
    -webkit-transition: background-color var(--ds-main-transition),border var(--ds-main-transition);
    transition: background-color var(--ds-main-transition),border var(--ds-main-transition)
}

.error_style+label {
    color: var(--ds-red-color)!important
}

.error_style::-webkit-input-placeholder {
    color: var(--ds-red-color)!important
}

.error_style::-moz-placeholder {
    color: var(--ds-red-color)!important
}

.error_style:-ms-input-placeholder {
    color: var(--ds-red-color)!important
}

.error_style::-ms-input-placeholder {
    color: var(--ds-red-color)!important
}

.error_style::placeholder {
    color: var(--ds-red-color)!important
}

.tooltip {
    z-index: 19999;
}

.ds-switcher button {
    background: 0 0;
    border: none;
    text-decoration: underline;
    color: var(--ds-links-color);
    font-size: .875rem;
    font-weight: 400;
    padding-left: 0;
    padding-right: 0
}

.ds-switcher button.active {
    color: var(--ds-primary-dark-color);
    text-decoration: none;
    background: var(--ds-primary-light-color);
    font-size: 1rem;
    font-weight: 700;
    padding: .25rem .5rem;
    cursor: default;
    pointer-events: none;
    border: var(--ds-main-border)
}

.ds-switcher button+button {
    margin-left: .5rem
}

.ds-switcher button.language-select {
    text-transform: uppercase
}

.ds-switcher button:hover {
    text-decoration: none
}

.pagination {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0!important;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
    z-index: 2;
    gap: 1rem;
    padding: 1rem 0
}

.pagination li a,.pagination li span {
    display: block;
    line-height: 1rem;
    padding: .5rem .75rem;
    border-radius: 7px;
    color: var(--ds-light-text-color);
    -webkit-transition: background var(--ds-main-transition),color var(--ds-main-transition);
    transition: background var(--ds-main-transition),color var(--ds-main-transition);
    text-decoration: none;
    will-change: background, color;
}

.pagination li.active span,.pagination li:hover a {
    color: var(--ds-white-color);
    background: var(--ds-primary-color)
}

.table {
    margin-bottom: 0;
    border-left: var(--ds-main-border);
    border-right: var(--ds-main-border);
    border-color: var(--ds-border-color);
    font-weight: 400
}

.table>:not(:first-child) {
    border-top: var(--ds-main-border)
}

.table .thead-dark th {
    background-color: var(--ds-light-bg-color);
    border-top: var(--ds-main-border);
    color: var(--ds-dark-text-color)
}

.table tbody {
    font-size: 14px;
    color: var(--ds-secondary-text-color)
}

.table td {
    border-color: var(--ds-border-color)
}

.table td,.table th {
    vertical-align: top
}

.table tbody tr:first-child td {
    border-top: 0
}

.table td a {
    color: var(--ds-links-color);
    text-decoration: underline
}

.table td a:hover {
    text-decoration: none
}

.table thead {
    border-left: var(--ds-main-border);
    border-right: var(--ds-main-border)
}

.table thead th {
    font-size: 1rem;
    line-height: 20px;
    padding: .75rem 1rem;
    vertical-align: middle;
    font-weight: 700;
    color: var(--ds-dark-text-color);
    background-color: var(--ds-primary-light-color);
    border: 0;
    border-bottom: var(--ds-main-border)
}

.table tbody tr:hover>* {
    --bs-table-bg-state: #FDFDFD
}

.table a:has(.img-thumbnail) {
    width: 100px;
}

.ds-theme-switcher {
    background-color: var(--ds-light-bg-color)
}

.ds-theme-switcher-btn {
    display: grid;
    place-items: center;
    padding-left: .75rem;
    padding-right: .75rem;
    cursor: pointer
}

.ds-theme-switcher-btn.active {
    background-color: var(--ds-white-color);
    -webkit-box-shadow: 0 0 12px 0 rgba(0,0,0,.08);
    box-shadow: 0 0 12px 0 rgba(0,0,0,.08)
}

.ds-theme-switcher-btn.light svg path {
    fill: var(--ds-yellow-color)
}

.ds-blog-search-button {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1.75rem
}

.ds-blog-search-button svg path {
    -webkit-transition: fill var(--ds-main-transition);
    transition: fill var(--ds-main-transition)
}

.ds-blog-search-button:focus:not([disabled]),.ds-blog-search-button:hover {
    -webkit-box-shadow: none!important;
    box-shadow: none!important
}

.ds-blog-search-button:focus:not([disabled]) svg path,.ds-blog-search-button:hover svg path {
    fill: var(--ds-primary-color)
}

.ds-blog-post-gallery,.ds-blog-post-text {
    border-bottom: var(--ds-main-border)
}

.ds-blog-post-gallery-items {
    gap: .5rem
}

.ds-blog-post-gallery-item {
    display: grid;
    place-items: center;
    border: var(--ds-main-border);
    width: 92px;
    height: 92px
}

.ds-blog-post-gallery-item img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    aspect-ratio: 1/1
}

.ds-blog-post-info {
    border-bottom: var(--ds-main-border);
    gap: 1rem
}

.ds-blog-post-comments {
    border-top: var(--ds-main-border)
}

@media (max-width: 575.98px) {
    .ds-blog-post .button-primary {
        width:100%
    }
}

#article-comments .ds-product-reviews-item-content {
    border-bottom: 0;
    padding-bottom: 0!important
}

.ds-empty-reviews svg path {
    fill: var(--ds-border-color);
}

#oct-infobar.hidden {
	opacity: 0;
	display: none;
}

.progress-bar {
    background-color: var(--ds-primary-color);
}

@media (max-width: 991.98px) {
    iframe#credential_picker_iframe {
        margin-bottom: 68px;
    }
}

.ocf-theme-light-block .ocf-search-btn-static, .ocf-theme-light-block .ocf-search-btn-popover, .ocf-theme-light-block .ocf-search-btn-static.ocf-disabled, .ocf-theme-light-block .ocf-search-btn-popover.ocf-disabled, .ocf-noUi-connect:before, .ocf-noUi-handle {background-color:rgb(0, 48, 145) !important;}
:root {--ds-primary-color:rgb(0, 48, 145);}
:root {--ds-links-color:rgb(0, 48, 145);}
.ds-dropdown-links .blue-link, .ds-footer .blue-link {color:rgb(0, 48, 145);}
.blue-link:hover, .ds-footer-links li a:hover, ul.ds-footer-item li a:hover, .ds-footer-item li a:hover span, .ds-module-item:hover .ds-module-title:hover, .ds-last-news-item:hover .ds-last-news-item-title:hover, .ds-switcher button:hover {color:rgb(0, 48, 145);}
.ds-price-new.red-text {color:rgb(213, 56, 61);}
:root {--ds-interactive-color:rgb(82, 187, 56);}
:root {--ds-body-bg-light-color:rgb(248, 251, 253);}
:root {--ds-primary-dark-color-light:rgb(16, 30, 46);}
:root {--ds-secondary-dark-color-light:rgb(0, 52, 89);}
.light-theme .ds-header {background:rgb(255, 255, 255);}
:root {--ds-footer-bg-light-color:rgb(255, 255, 255);}
.light-theme .ds-footer-subscribe-text, .light-theme .ds-footer-item .secondary-text, .light-theme .ds-footer-socials .secondary-text {color:rgb(0, 52, 89);}
.light-theme .ds-footer-item-title {color:rgb(16, 30, 46);}
.light-theme .ds-footer-item-title svg path {fill:rgb(16, 30, 46);}
:root {--ds-body-bg-dark-color:rgb(27, 27, 27);}
:root {--ds-primary-dark-color-dark:rgb(248, 252, 255);}
:root {--ds-secondary-dark-color-dark:rgb(144, 144, 144);}
.dark-theme .ds-header {background:rgb(20, 20, 20);}
:root {--ds-footer-bg-dark-color:rgb(20, 20, 20);}
.dark-theme .ds-footer-subscribe-text, .dark-theme .ds-footer-item .secondary-text, .dark-theme .ds-footer-socials .secondary-text {color:rgb(144, 144, 144);}
.dark-theme .ds-footer-item-title {color:rgb(248, 252, 255);}
.dark-theme .ds-footer-item-title svg path {fill:rgb(248, 252, 255);}
.oct_dynamic_stylesheet_begin{display: none;}
.ds-menu-catalog-item-img {
    width: 30px!important;
    height: 30px!important;
}
.ds-manufacturer-item-block img {
    display: none;
}
.ds-manufacturer-item-block .content-block {
    border: solid 2px #00309161;
}

/* =========================
   Bento Categories
========================= */

#common-home .ds-category-wall {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 115px;
    gap: 14px;
    margin: 0;
}

#common-home .ds-category-wall-item {
    width: auto;
    padding: 0;
    margin: 0;
}

/* разные размеры */

#common-home .ds-category-wall-item:nth-child(1) {
    grid-column: span 2;
    grid-row: span 2;
}

#common-home .ds-category-wall-item:nth-child(2) {
    grid-column: span 2;
}

#common-home .ds-category-wall-item:nth-child(3) {
    grid-column: span 1;
}

#common-home .ds-category-wall-item:nth-child(4) {
    grid-column: span 1;
}

#common-home .ds-category-wall-item:nth-child(5) {
    grid-column: span 2;
}

#common-home .ds-category-wall-item:nth-child(6) {
    grid-column: span 2;
}


/* сама карточка */

#common-home .ds-category-wall-item .content-block {
    position: relative;

    width: 100%;
    height: 100%;

    display: flex !important;
    align-items: center !important;

    padding: 18px;

    background:
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f7f9fb 100%
        );

    border: 1px solid #e8edf2;
    border-radius: 18px;

    overflow: hidden;

    text-decoration: none;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

#common-home .ds-category-wall-item .content-block:hover {
    transform: translateY(-4px);
    border-color: #d7dfe8;

    box-shadow:
        0 14px 35px rgba(21, 37, 56, .10);
}


/* картинка */

#common-home .ds-category-wall-item img {
    width: 72px;
    height: 72px;

    flex: 0 0 72px;

    object-fit: contain;

    padding: 8px;

    background: #ffffff;

    border-radius: 14px;

    transition: transform .3s ease;
}

#common-home .ds-category-wall-item .content-block:hover img {
    transform: scale(1.07);
}


/* первая большая карточка */

#common-home .ds-category-wall-item:nth-child(1) .content-block {
    align-items: flex-end !important;

    padding: 25px;

    background:
        linear-gradient(
            135deg,
            #f3f7fb 0%,
            #ffffff 100%
        );
}

#common-home .ds-category-wall-item:nth-child(1) img {
    position: absolute;

    right: 20px;
    top: 20px;

    width: 130px;
    height: 130px;

    background: transparent;
}

#common-home .ds-category-wall-item:nth-child(1) .ds-category-wall-title {
    max-width: 60%;

    font-size: 20px !important;
    line-height: 1.25;
}


/* название */

#common-home .ds-category-wall-title {
    flex: 1;

    padding-left: 16px !important;

    color: #202833;

    
    font-weight: 600;

    line-height: 1.35;

    transition: color .2s ease;
}

#common-home .content-block:hover .ds-category-wall-title {
    color: #0068d7;
}


/* небольшая декоративная стрелка */

#common-home .ds-category-wall-title::after {
    content: "→";

    display: inline-block;

    margin-left: 8px;

    

    color: #a5adb8;

    transition:
        transform .2s ease,
        color .2s ease;
}

#common-home .content-block:hover .ds-category-wall-title::after {
    color: #0068d7;
    transform: translateX(4px);
}


/* заголовок */

#common-home > .py-3.fw-500.dark-text.fsz-20 {
    
    font-weight: 700 !important;

    padding-bottom: 16px !important;
}


/* =========================
   Tablet
========================= */

@media (max-width: 991px) {

    #common-home .ds-category-wall {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 115px;
    }

    #common-home .ds-category-wall-item {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
    }

    #common-home .ds-category-wall-item:nth-child(1) {
        grid-column: span 2 !important;
        grid-row: span 2 !important;
    }

}


/* =========================
   Mobile
========================= */

@media (max-width: 575px) {

    #common-home .ds-category-wall {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 145px;

        gap: 8px;
    }

    #common-home .ds-category-wall-item,
    #common-home .ds-category-wall-item:nth-child(1) {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
    }

    #common-home .ds-category-wall-item .content-block,
    #common-home .ds-category-wall-item:nth-child(1) .content-block {
        flex-direction: column;

        align-items: flex-start !important;
        justify-content: space-between;

        padding: 12px;

        border-radius: 13px;
    }

    #common-home .ds-category-wall-item img,
    #common-home .ds-category-wall-item:nth-child(1) img {
        position: static;

        width: 72px;
        height: 72px;

        flex: 0 0 72px;

        margin: 0;
    }

    #common-home .ds-category-wall-item:nth-child(1) .ds-category-wall-title,
    #common-home .ds-category-wall-title {
        max-width: 100%;

        padding-left: 0 !important;

        
    }

}
/* =========================
   Desktop: центрируем изображения
   в крупных блоках
========================= */

@media (min-width: 992px) {

    #common-home .ds-category-wall-item:nth-child(1) .content-block {
        justify-content: center;
        align-items: center !important;
        flex-direction: column;
        text-align: center;
    }

    #common-home .ds-category-wall-item:nth-child(1) img {
        position: static;
        width: 130px;
        height: 130px;
        margin: 0 auto 18px;
        flex: 0 0 auto;
    }

    #common-home .ds-category-wall-item:nth-child(1) .ds-category-wall-title {
        max-width: 100%;
        padding-left: 0 !important;
        text-align: center;
    }

    /* Нижние широкие блоки */
    #common-home .ds-category-wall-item:nth-child(5) .content-block,
    #common-home .ds-category-wall-item:nth-child(6) .content-block {
        justify-content: center;
    }
}
/* =========================
   Mobile: всё по центру
========================= */

@media (max-width: 575px) {

    #common-home .ds-category-wall-item .content-block,
    #common-home .ds-category-wall-item:nth-child(1) .content-block {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: center !important;

        text-align: center;

        padding: 12px 10px;
    }

    #common-home .ds-category-wall-item img,
    #common-home .ds-category-wall-item:nth-child(1) img {
        position: static;

        display: block;

        width: 72px;
        height: 72px;

        flex: 0 0 72px;

        margin: 0 auto 10px;

        object-fit: contain;
    }

    #common-home .ds-category-wall-title,
    #common-home .ds-category-wall-item:nth-child(1) .ds-category-wall-title {
        display: block;

        width: 100%;
        max-width: 100%;

        padding-left: 0 !important;
        padding-right: 0 !important;

        margin: 0;

        text-align: center;

        
        line-height: 1.35;
    }

    #common-home .ds-category-wall-title::after {
        position: static;
        display: inline-block;

        margin-left: 5px;

        transform: none;
    }

    #common-home .content-block:hover .ds-category-wall-title::after {
        transform: translateX(3px);
    }
}

/* =========================
   преимущества главная
========================= */
/* =========================================
   ADVANTAGES — modern cards
========================================= */

#ds-shop-advantages-0 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;

    margin-left: 0;
    margin-right: 0;
}

#ds-shop-advantages-0 .ds-advantages-item {
    width: 100%;
    padding: 0;
    margin: 0;
}

/* Карточка */

#ds-shop-advantages-0 .content-block {
    position: relative;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;

    min-height: 128px;

    padding: 18px 20px !important;

    background:
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f8fafc 100%
        );

    border: 1px solid #e7edf3;
    border-radius: 18px;

    overflow: hidden;

    box-shadow:
        0 4px 16px rgba(24, 39, 58, 0.04);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease,
        background .25s ease;
}

#ds-shop-advantages-0 .content-block:hover {
    transform: translateY(-4px);

    border-color: #d8e2ec;

    background: #ffffff;

    box-shadow:
        0 14px 34px rgba(24, 39, 58, 0.10);
}

/* Иконка */

#ds-shop-advantages-0 .content-block > img {
    width: 58px !important;
    height: 58px !important;

    flex: 0 0 58px;

    padding: 13px;

    object-fit: contain;

    background: #eef5ff;

    border-radius: 16px;

    transition:
        transform .25s ease,
        background-color .25s ease;
}

#ds-shop-advantages-0 .content-block:hover > img {
    transform: scale(1.06);
    background: #e4efff;
}
.ds-advantages-item-text {
    align-items: flex-start !important;
    text-align: left !important;
    margin-left: 6px !important;
}


/* Текстовый блок преимуществ */
#ds-shop-advantages-0 .content-block > .ds-advantages-item-text {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;

    gap: 5px;

    margin-left: 10px !important;

    text-align: left !important;
}

/* Заголовок */
#ds-shop-advantages-0 .ds-advantages-item-title {
    margin: 0 !important;
    padding: 0 !important;

    line-height: 1.3;
}

/* Описание */
#ds-shop-advantages-0 .content-block > .ds-advantages-item-text > span:last-child {
    margin: 0 !important;
    padding: 0 !important;

    line-height: 1.4;
}

/* Декоративный акцент */

@media (max-width: 991px) {

    #ds-shop-advantages-0 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

}
@media (max-width: 575px) {

    #ds-shop-advantages-0 {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    #ds-shop-advantages-0 .content-block {
        min-height: 92px;

        padding: 14px 15px !important;

        border-radius: 14px;
    }

    #ds-shop-advantages-0 .content-block > img {
        width: 50px !important;
        height: 50px !important;

        flex: 0 0 50px;

        padding: 11px;

        border-radius: 13px;
    }

    

    #ds-shop-advantages-0 .ds-advantages-item-title {
        
        margin-bottom: 4px !important;
    }

    #ds-shop-advantages-0 .ds-advantages-item-text span:last-child {
        
        line-height: 1.35;
    }

}

/* =========================
   404
========================= */
/* ==================================================
   KABEL-KIEV 404 PAGE
================================================== */

#error-404-page {
    position: relative;

    min-height: 620px;

    display: flex;
    align-items: center;

    overflow: hidden;

    padding: 70px 0 90px;

    background:
        radial-gradient(
            circle at 20% 20%,
            rgba(0, 83, 200, .07),
            transparent 30%
        ),
        radial-gradient(
            circle at 80% 75%,
            rgba(0, 83, 200, .05),
            transparent 30%
        ),
        #f7f9fc;
}


/* ==================================================
   Background decoration
================================================== */

.error404-bg {
    position: absolute;
    inset: 0;

    pointer-events: none;
}

.error404-dot {
    position: absolute;

    display: block;

    border-radius: 50%;

    background: #0b4dbd;

    opacity: .08;

    animation: errorFloat 7s ease-in-out infinite;
}

.error404-dot.dot-1 {
    width: 130px;
    height: 130px;

    left: 5%;
    top: 13%;
}

.error404-dot.dot-2 {
    width: 65px;
    height: 65px;

    right: 9%;
    top: 18%;

    animation-delay: -2s;
}

.error404-dot.dot-3 {
    width: 170px;
    height: 170px;

    right: 5%;
    bottom: 4%;

    animation-delay: -4s;
}

.error404-dot.dot-4 {
    width: 35px;
    height: 35px;

    left: 34%;
    bottom: 12%;

    animation-delay: -1s;
}


/* ==================================================
   Main
================================================== */

.error404-wrapper {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(420px, .95fr)
        minmax(400px, 1.05fr);

    align-items: center;

    gap: 70px;

    max-width: 1120px;

    margin: 0 auto;
}


/* ==================================================
   404 Number
================================================== */

.error404-visual {
    display: flex;
    justify-content: center;
    align-items: center;
}

.error404-number {
    display: flex;
    justify-content: center;
    align-items: center;

    white-space: nowrap;
}

.error404-number > span {
    display: block;

    color: #0b1d38;

    font-size: clamp(120px, 13vw, 190px);
    font-weight: 800;

    line-height: 1;

    letter-spacing: -12px;

    text-shadow:
        0 12px 35px rgba(25, 48, 80, .10);
}

.error404-zero {
    position: relative;

    width: 190px;
    height: 190px;

    margin: 0 -2px;
}

.error404-cable {
    width: 100%;
    height: 100%;

    overflow: visible;

    animation:
        cableFloat 4s ease-in-out infinite;
}


/* кабель */

.cable-path {
    stroke-dasharray: 550;
    stroke-dashoffset: 550;

    animation:
        cableDraw 1.7s ease forwards;
}


/* штекер */

.plug {
    transform-origin: 47px 140px;

    animation:
        plugMove 2.5s ease-in-out infinite;
}


/* искра */

.spark {
    opacity: 0;

    animation:
        sparkFlash 1.4s ease-in-out infinite;
}


/* ==================================================
   Content
================================================== */

.error404-content {
    max-width: 520px;
}

.error404-label {
    display: inline-flex;
    align-items: center;

    margin-bottom: 15px;

    padding: 7px 12px;

    color: #0750bd;

    background: #eaf2ff;

    border: 1px solid #dce9ff;
    border-radius: 30px;

    
    font-weight: 600;

    letter-spacing: .03em;
}

.error404-content h1 {
    margin: 0 0 18px;

    color: #102039;

    font-size: clamp(32px, 4vw, 48px);
    font-weight: 750;

    line-height: 1.08;

    letter-spacing: -.03em;
}

.error404-content > p {
    max-width: 470px;

    margin: 0 0 27px;

    color: #718096;

    
    line-height: 1.7;
}


/* ==================================================
   Search
================================================== */

.error404-search {
    max-width: 470px;

    margin-bottom: 18px;
}

.error404-search form {
    display: flex;

    padding: 5px;

    background: #fff;

    border: 1px solid #dfe6ef;
    border-radius: 13px;

    box-shadow:
        0 6px 22px rgba(26, 45, 70, .06);

    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}

.error404-search form:focus-within {
    border-color: #9bbcef;

    box-shadow:
        0 7px 26px rgba(0, 79, 185, .10);
}

.error404-search input {
    flex: 1;

    min-width: 0;

    height: 45px;

    padding: 0 13px;

    border: 0;
    outline: none;

    background: transparent;

    color: #14233a;

    
}

.error404-search input::placeholder {
    color: #a0aab8;
}

.error404-search button {
    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    color: #fff;

    border: 0;
    border-radius: 10px;

    background: #0749b5;

    cursor: pointer;

    transition:
        background .2s ease,
        transform .2s ease;
}

.error404-search button:hover {
    background: #063e9a;

    transform: scale(1.04);
}


/* ==================================================
   Buttons
================================================== */

.error404-buttons {
    display: flex;
    flex-wrap: wrap;

    gap: 10px;
}

.error404-btn {
    min-height: 46px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 0 19px;

    border: 1px solid transparent;
    border-radius: 10px;

    
    font-weight: 600;

    text-decoration: none !important;

    cursor: pointer;

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease,
        border-color .2s ease;
}

.error404-btn-primary {
    color: #fff !important;

    background: #0647b9;

    box-shadow:
        0 7px 18px rgba(0, 72, 180, .17);
}

.error404-btn-primary:hover {
    color: #fff;

    background: #053d9e;

    transform: translateY(-2px);

    box-shadow:
        0 10px 23px rgba(0, 72, 180, .24);
}

.error404-btn-secondary {
    color: #203653;

    background: #fff;

    border-color: #dce3eb;
}

.error404-btn-secondary:hover {
    background: #f8fafc;

    border-color: #cbd7e4;

    transform: translateY(-2px);
}


/* ==================================================
   Animations
================================================== */

@keyframes cableDraw {

    to {
        stroke-dashoffset: 0;
    }

}

@keyframes cableFloat {

    0%,
    100% {
        transform: translateY(0) rotate(0);
    }

    50% {
        transform: translateY(-7px) rotate(1.5deg);
    }

}

@keyframes plugMove {

    0%,
    100% {
        transform: translate(0, 0) rotate(0);
    }

    50% {
        transform: translate(-5px, 3px) rotate(-5deg);
    }

}

@keyframes sparkFlash {

    0%,
    22%,
    100% {
        opacity: 0;
        transform: scale(.8);
    }

    27% {
        opacity: 1;
        transform: scale(1.15);
    }

    34% {
        opacity: .25;
    }

    39% {
        opacity: 1;
    }

    48% {
        opacity: 0;
    }

}

@keyframes errorFloat {

    0%,
    100% {
        transform: translate3d(0, 0, 0);
    }

    50% {
        transform: translate3d(0, -18px, 0);
    }

}


/* ==================================================
   Tablet
================================================== */

@media (max-width: 991px) {

    #error-404-page {
        padding: 55px 0 70px;
    }

    .error404-wrapper {
        grid-template-columns: 1fr;

        gap: 25px;

        text-align: center;
    }

    .error404-zero {
        width: 150px;
        height: 150px;
    }

    .error404-content {
        max-width: 600px;

        margin: 0 auto;
    }

    .error404-content > p,
    .error404-search {
        margin-left: auto;
        margin-right: auto;
    }

    .error404-buttons {
        justify-content: center;
    }

}


/* ==================================================
   Mobile
================================================== */

@media (max-width: 575px) {

    #error-404-page {
        min-height: auto;

        padding: 40px 0 55px;
    }

    .error404-wrapper {
        gap: 15px;
    }

    .error404-number > span {
        

        letter-spacing: -7px;
    }

    .error404-zero {
        width: 108px;
        height: 108px;
    }

    .error404-content h1 {
        

        margin-bottom: 12px;
    }

    .error404-content > p {
        

        line-height: 1.55;

        margin-bottom: 20px;

        padding: 0 10px;
    }

    .error404-label {
        margin-bottom: 12px;
    }

    .error404-search {
        width: 100%;
    }

    .error404-buttons {
        display: grid;

        grid-template-columns: 1fr;

        width: 100%;
    }

    .error404-btn {
        width: 100%;
    }

}
/* =========================
   успешный заказ
========================= */
/* =========================================
   KABEL-KIEV SUCCESS PAGE
========================================= */

.kk-success-page {
    position: relative;
    overflow: hidden;

    padding: 60px 20px 80px;

    background:
        radial-gradient(circle at 15% 10%, rgba(0, 72, 180, .10), transparent 30%),
        radial-gradient(circle at 85% 80%, rgba(0, 72, 180, .08), transparent 30%),
        #f6f9fd;

    border-radius: 24px;
}


/* Layout */

.kk-success-wrap {
    position: relative;
    z-index: 5;

    max-width: 1120px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: .95fr 1.05fr;

    gap: 34px;
}


/* =========================================
   LEFT VISUAL
========================================= */

.kk-success-visual {
    position: relative;

    min-height: 560px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    text-align: center;

    padding: 40px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.96),
            rgba(247,250,255,.92)
        );

    border: 1px solid #e6edf6;
    border-radius: 26px;

    box-shadow:
        0 18px 50px rgba(20, 43, 76, .08);

    overflow: hidden;
}


/* electric line */

.kk-electric-line {
    position: absolute;

    top: 0;
    left: 50%;

    width: 2px;
    height: 105px;

    background:
        linear-gradient(
            to bottom,
            rgba(0,72,180,0),
            rgba(0,72,180,.28),
            rgba(0,72,180,.7)
        );

    transform: translateX(-50%);
}

.kk-electric-dot {
    position: absolute;

    left: 50%;
    bottom: -4px;

    width: 10px;
    height: 10px;

    border-radius: 50%;

    background: #0750bd;

    box-shadow:
        0 0 0 8px rgba(7,80,189,.08),
        0 0 24px rgba(7,80,189,.55);

    transform: translateX(-50%);

    animation: kkPulse 1.8s ease-in-out infinite;
}


/* success icon */

.kk-success-icon {
    width: 138px;
    height: 138px;

    margin-bottom: 22px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            #ffffff 0%,
            #eef5ff 68%,
            #e5efff 100%
        );

    box-shadow:
        0 16px 40px rgba(7,80,189,.15);

    animation: kkIconFloat 4s ease-in-out infinite;
}

.kk-success-icon svg {
    width: 100%;
    height: 100%;
}

.kk-circle {
    fill: none;

    stroke: #0a4eba;
    stroke-width: 5;

    stroke-dasharray: 302;
    stroke-dashoffset: 302;

    animation: kkCircleDraw 1s ease forwards;
}

.kk-check {
    fill: none;

    stroke: #0a4eba;
    stroke-width: 7;

    stroke-linecap: round;
    stroke-linejoin: round;

    stroke-dasharray: 70;
    stroke-dashoffset: 70;

    animation: kkCheckDraw .6s ease .8s forwards;
}


/* badge */

.kk-success-badge {
    display: inline-flex;
    align-items: center;

    padding: 7px 13px;

    margin-bottom: 16px;

    border-radius: 30px;

    color: #0750bd;

    background: #eaf2ff;

    border: 1px solid #dbe8ff;

    
    font-weight: 700;

    letter-spacing: .04em;
    text-transform: uppercase;
}


/* title */

.kk-success-visual h1 {
    margin: 0 0 14px;

    color: #12223a;

    
    font-weight: 800;

    line-height: 1.08;

    letter-spacing: -.03em;
}

.kk-success-lead {
    max-width: 430px;

    margin: 0 0 22px;

    color: #728095;

    
    line-height: 1.65;
}


/* status */

.kk-order-chip {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    padding: 10px 14px;

    border-radius: 12px;

    background: #fff;

    border: 1px solid #dfe7f1;

    box-shadow:
        0 8px 24px rgba(24, 45, 72, .05);
}

.kk-order-chip-label {
    color: #98a5b5;

    
}

.kk-order-chip-value {
    color: #153252;

    
    font-weight: 700;
}


/* =========================================
   RIGHT CARD
========================================= */

.kk-success-card {
    position: relative;

    padding: 34px;

    background: #ffffff;

    border: 1px solid #e3eaf2;
    border-radius: 26px;

    box-shadow:
        0 18px 50px rgba(18, 38, 67, .08);
}


.kk-success-card-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;

    gap: 20px;

    margin-bottom: 30px;
}


.kk-mini-label {
    display: block;

    margin-bottom: 7px;

    color: #8391a5;

    
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .08em;
}


.kk-success-card h2 {
    margin: 0;

    color: #17273f;

    
    font-weight: 750;

    letter-spacing: -.02em;
}


.kk-card-icon {
    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 50px;

    color: #0750bd;

    background: #edf4ff;

    border-radius: 14px;
}

.kk-card-icon svg {
    width: 26px;
    height: 26px;
}


/* =========================================
   STEPS
========================================= */

.kk-success-steps {
    display: flex;
    flex-direction: column;

    gap: 12px;
}


.kk-step {
    display: flex;
    align-items: center;

    gap: 15px;

    padding: 16px;

    background: #f8fafc;

    border: 1px solid #edf1f5;
    border-radius: 15px;

    transition:
        transform .25s ease,
        background .25s ease,
        border-color .25s ease;
}


.kk-step:hover {
    transform: translateX(5px);

    background: #ffffff;

    border-color: #dbe4ef;
}


.kk-step-number {
    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 42px;

    border-radius: 12px;

    color: #0750bd;

    background: #eaf2ff;

    
    font-weight: 800;
}


.kk-step-text {
    display: flex;
    flex-direction: column;

    gap: 4px;
}


.kk-step-text strong {
    color: #1c2b40;

    
}


.kk-step-text span {
    color: #7b8899;

    
    line-height: 1.45;
}


/* =========================================
   BUTTONS
========================================= */

.kk-success-actions {
    display: flex;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 28px;
}


.kk-btn {
    min-height: 48px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    padding: 0 20px;

    border-radius: 11px;

    text-decoration: none !important;

    
    font-weight: 650;

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}


.kk-btn svg {
    width: 18px;
    height: 18px;
}


.kk-btn-primary {
    color: #fff !important;

    background:
        linear-gradient(
            135deg,
            #0a4fbd,
            #063d99
        );

    box-shadow:
        0 10px 25px rgba(7, 75, 180, .22);
}


.kk-btn-primary:hover {
    color: #fff !important;

    transform: translateY(-2px);

    box-shadow:
        0 14px 30px rgba(7, 75, 180, .28);
}


.kk-btn-secondary {
    color: #29405e !important;

    background: #f8fafc;

    border: 1px solid #dde5ee;
}


.kk-btn-secondary:hover {
    transform: translateY(-2px);

    background: #ffffff;
}


/* =========================================
   BACKGROUND GLOW
========================================= */

.kk-success-glow {
    position: absolute;

    border-radius: 50%;

    filter: blur(90px);

    opacity: .35;

    pointer-events: none;
}


.kk-glow-1 {
    width: 320px;
    height: 320px;

    left: -120px;
    top: -80px;

    background: rgba(0, 83, 200, .18);
}


.kk-glow-2 {
    width: 380px;
    height: 380px;

    right: -160px;
    bottom: -130px;

    background: rgba(0, 83, 200, .12);
}


/* =========================================
   PARTICLES
========================================= */

.kk-particles span {
    position: absolute;

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: #0b4fbd;

    opacity: .08;

    animation: kkParticle 8s ease-in-out infinite;
}

.kk-particles span:nth-child(1) {
    left: 8%;
    top: 25%;
}

.kk-particles span:nth-child(2) {
    left: 18%;
    top: 72%;

    animation-delay: -2s;
}

.kk-particles span:nth-child(3) {
    right: 12%;
    top: 18%;

    animation-delay: -4s;
}

.kk-particles span:nth-child(4) {
    right: 6%;
    bottom: 22%;

    animation-delay: -1s;
}

.kk-particles span:nth-child(5) {
    left: 47%;
    top: 9%;

    animation-delay: -5s;
}

.kk-particles span:nth-child(6) {
    left: 55%;
    bottom: 7%;

    animation-delay: -3s;
}


/* =========================================
   ANIMATIONS
========================================= */

@keyframes kkCircleDraw {
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes kkCheckDraw {
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes kkIconFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }

}

@keyframes kkPulse {

    0%,
    100% {
        transform: translateX(-50%) scale(1);
    }

    50% {
        transform: translateX(-50%) scale(1.35);
    }

}

@keyframes kkParticle {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-20px);
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 991px) {

    .kk-success-wrap {
        grid-template-columns: 1fr;
    }

    .kk-success-visual {
        min-height: auto;

        padding: 55px 25px 40px;
    }

}


@media (max-width: 575px) {

    .kk-success-page {
        padding: 20px 10px 35px;

        border-radius: 16px;
    }

    .kk-success-wrap {
        gap: 14px;
    }

    .kk-success-visual {
        padding: 45px 18px 28px;

        border-radius: 18px;
    }

    .kk-success-icon {
        width: 110px;
        height: 110px;
    }

    .kk-success-visual h1 {
        
    }

    .kk-success-lead {
        
    }

    .kk-success-card {
        padding: 20px;

        border-radius: 18px;
    }

    .kk-success-card h2 {
        
    }

    .kk-step {
        padding: 13px;
    }

    .kk-success-actions {
        display: grid;

        grid-template-columns: 1fr;
    }

    .kk-btn {
        width: 100%;
    }

}

/* =============================================
   KABEL-KIEV — DELIVERY
============================================= */

.kk-delivery {
    padding: 35px 0;
    color: #14243a;
}


/* Header */

.kk-delivery-head {
    max-width: 650px;
    margin-bottom: 25px;
}

.kk-delivery-kicker {
    display: inline-flex;
    margin-bottom: 8px;

    color: #0750bd;

    
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .06em;
}

.kk-delivery-head h2 {
    margin: 0 0 8px;

    color: #102039;

    
    font-weight: 750;

    letter-spacing: -.025em;
}

.kk-delivery-head p {
    margin: 0;

    color: #758399;

    
}


/* =============================================
   Grid
============================================= */

.kk-delivery-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(280px, .8fr);

    gap: 16px;
}


/* =============================================
   Cards
============================================= */

.kk-delivery-card {
    position: relative;

    padding: 28px;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f9fbfe
        );

    border: 1px solid #e2e9f1;
    border-radius: 22px;

    overflow: hidden;

    box-shadow:
        0 8px 30px rgba(27, 46, 70, .05);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.kk-delivery-card:hover {
    transform: translateY(-3px);

    border-color: #d5e0ed;

    box-shadow:
        0 15px 38px rgba(27, 46, 70, .09);
}


/* blue glow */

.kk-delivery-card::after {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -75px;
    top: -80px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(0, 83, 200, .09),
            rgba(0, 83, 200, 0) 70%
        );

    pointer-events: none;
}


/* Header */

.kk-delivery-card-top {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;

    gap: 14px;

    margin-bottom: 23px;
}

.kk-delivery-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 58px;

    color: #0750bd;

    background: #edf4ff;

    border-radius: 16px;
}

.kk-delivery-icon svg {
    width: 29px;
    height: 29px;
}

.kk-delivery-number {
    display: block;

    margin-bottom: 3px;

    color: #98a5b6;

    
    font-weight: 700;

    letter-spacing: .1em;
}

.kk-delivery-card h3 {
    margin: 0;

    color: #17263d;

    
    font-weight: 700;
}


/* =============================================
   Nova Poshta methods
============================================= */

.kk-delivery-methods {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 10px;

    margin-bottom: 18px;
}

.kk-delivery-method {
    display: flex;
    align-items: flex-start;

    gap: 10px;

    min-height: 102px;

    padding: 14px;

    background: #f7f9fc;

    border: 1px solid #e9eef4;
    border-radius: 14px;

    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.kk-delivery-method:hover {
    transform: translateY(-2px);

    background: #ffffff;
    border-color: #dbe5f0;
}

.kk-method-icon {
    width: 36px;
    height: 36px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 36px;

    color: #0750bd;

    background: #eaf2ff;

    border-radius: 10px;
}

.kk-method-icon svg {
    width: 20px;
    height: 20px;
}

.kk-delivery-method strong {
    display: block;

    margin-bottom: 4px;

    color: #192a42;

    
}

.kk-delivery-method span {
    color: #7b899c;

    
    line-height: 1.45;
}


/* =============================================
   Payment
============================================= */

.kk-payment-box {
    position: relative;
    z-index: 2;

    display: flex;

    gap: 16px;

    padding: 19px;

    background:
        linear-gradient(
            135deg,
            #edf5ff,
            #f7faff
        );

    border: 1px solid #dce9fa;
    border-radius: 17px;
}

.kk-payment-icon {
    width: 44px;
    height: 44px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 44px;

    color: #fff;

    background: #0750bd;

    border-radius: 12px;

    
    font-weight: 700;

    box-shadow:
        0 8px 20px rgba(7, 80, 189, .18);
}

.kk-payment-content {
    flex: 1;
}

.kk-payment-label {
    display: block;

    margin-bottom: 5px;

    color: #0750bd;

    
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .06em;
}

.kk-payment-content h4 {
    margin: 0 0 7px;

    color: #14263e;

    
}

.kk-payment-content > p {
    margin: 0 0 14px;

    color: #69798f;

    
    line-height: 1.55;
}


/* Warning */

.kk-payment-note {
    display: flex;
    align-items: flex-start;

    gap: 8px;

    margin-bottom: 15px;

    padding: 10px 12px;

    background: rgba(255,255,255,.72);

    border-radius: 10px;
}

.kk-payment-note svg {
    width: 18px;
    height: 18px;

    flex: 0 0 18px;

    color: #0750bd;
}

.kk-payment-note span {
    color: #56677c;

    
    line-height: 1.45;
}


/* Costs */

.kk-payment-costs {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 7px;
}

.kk-payment-costs > div {
    padding: 9px 10px;

    background: #ffffff;

    border: 1px solid #e2eaf4;
    border-radius: 10px;
}

.kk-payment-costs span {
    display: block;

    margin-bottom: 3px;

    color: #96a2b2;

    
}

.kk-payment-costs strong {
    display: block;

    color: #243952;

    
}


/* =============================================
   Pickup
============================================= */

.kk-delivery-card-pickup {
    display: flex;
    flex-direction: column;
}

.kk-pickup-text {
    position: relative;
    z-index: 2;

    margin: 0 0 20px;

    color: #728095;

    
    line-height: 1.6;
}

.kk-pickup-status {
    position: relative;
    z-index: 2;

    display: flex;

    gap: 10px;

    margin-top: auto;

    padding: 15px;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 13px;
}

.kk-status-dot {
    width: 9px;
    height: 9px;

    flex: 0 0 9px;

    margin-top: 5px;

    border-radius: 50%;

    background: #20a05a;

    box-shadow:
        0 0 0 5px rgba(32,160,90,.10);
}

.kk-pickup-status strong {
    display: block;

    margin-bottom: 5px;

    color: #26394f;

    
}

.kk-pickup-status span {
    color: #8490a0;

    
    line-height: 1.45;
}


/* =============================================
   Tablet
============================================= */

@media (max-width: 991px) {

    .kk-delivery-grid {
        grid-template-columns: 1fr;
    }

    .kk-delivery-methods {
        grid-template-columns: repeat(3, 1fr);
    }

}


/* =============================================
   Mobile
============================================= */

@media (max-width: 575px) {

    .kk-delivery {
        padding: 20px 0;
    }

    .kk-delivery-head h2 {
        
    }

    .kk-delivery-card {
        padding: 18px;

        border-radius: 17px;
    }

    .kk-delivery-card-top {
        margin-bottom: 17px;
    }

    .kk-delivery-icon {
        width: 50px;
        height: 50px;

        flex-basis: 50px;

        border-radius: 13px;
    }

    .kk-delivery-methods {
        grid-template-columns: 1fr;

        gap: 7px;
    }

    .kk-delivery-method {
        min-height: auto;
    }

    .kk-payment-box {
        padding: 14px;

        gap: 10px;
    }

    .kk-payment-icon {
        width: 38px;
        height: 38px;

        flex-basis: 38px;

        
    }

    .kk-payment-costs {
        grid-template-columns: repeat(2, 1fr);
    }

}
/* =============================================
   KABEL-KIEV — PAYMENT
============================================= */

.kk-payment {
    padding: 35px 0;
    color: #14243a;
}


/* Header */

.kk-payment-head {
    max-width: 650px;
    margin-bottom: 25px;
}

.kk-payment-kicker {
    display: inline-flex;
    margin-bottom: 8px;

    color: #0750bd;

    
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .06em;
}

.kk-payment-head h2 {
    margin: 0 0 8px;

    color: #102039;

    
    font-weight: 750;

    letter-spacing: -.025em;
}

.kk-payment-head p {
    margin: 0;

    color: #758399;

    
}


/* Grid */

.kk-payment-grid {
    display: grid;
    grid-template-columns: .85fr 1.35fr;
    gap: 16px;
}


/* Card */

.kk-payment-card {
    position: relative;

    padding: 28px;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f9fbfe
        );

    border: 1px solid #e2e9f1;
    border-radius: 22px;

    overflow: hidden;

    box-shadow:
        0 8px 30px rgba(27, 46, 70, .05);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.kk-payment-card:hover {
    transform: translateY(-3px);

    border-color: #d5e0ed;

    box-shadow:
        0 15px 38px rgba(27, 46, 70, .09);
}


/* light decorative glow */

.kk-payment-card::after {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -75px;
    top: -80px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(0, 83, 200, .09),
            rgba(0, 83, 200, 0) 70%
        );

    pointer-events: none;
}


/* Top */

.kk-payment-card-top {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;

    gap: 14px;

    margin-bottom: 22px;
}

.kk-payment-main-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 58px;

    color: #0750bd;

    background: #edf4ff;

    border-radius: 16px;
}

.kk-payment-main-icon svg {
    width: 29px;
    height: 29px;
}

.kk-payment-number {
    display: block;

    margin-bottom: 3px;

    color: #98a5b6;

    
    font-weight: 700;

    letter-spacing: .1em;
}

.kk-payment-card h3 {
    margin: 0;

    color: #17263d;

    
    font-weight: 700;
}


/* Main text */

.kk-payment-text {
    position: relative;
    z-index: 2;

    margin: 0 0 18px;

    color: #728095;

    
    line-height: 1.6;
}


/* Bank info */

.kk-payment-info {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: flex-start;

    gap: 10px;

    margin-top: 20px;

    padding: 15px;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 13px;
}

.kk-payment-info-dot {
    width: 9px;
    height: 9px;

    flex: 0 0 9px;

    margin-top: 5px;

    border-radius: 50%;

    background: #0750bd;

    box-shadow:
        0 0 0 5px rgba(7,80,189,.10);
}

.kk-payment-info strong {
    display: block;

    margin-bottom: 5px;

    color: #26394f;

    
}

.kk-payment-info span {
    color: #8490a0;

    
    line-height: 1.45;
}


/* Warning */

.kk-payment-warning {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: flex-start;

    gap: 11px;

    margin-bottom: 17px;

    padding: 14px;

    background:
        linear-gradient(
            135deg,
            #edf5ff,
            #f7faff
        );

    border: 1px solid #dce9fa;
    border-radius: 13px;
}

.kk-payment-warning-icon {
    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 34px;

    color: #0750bd;

    background: #ffffff;

    border-radius: 9px;
}

.kk-payment-warning-icon svg {
    width: 20px;
    height: 20px;
}

.kk-payment-warning strong {
    display: block;

    margin-bottom: 4px;

    color: #1b2d45;

    
}

.kk-payment-warning span {
    display: block;

    color: #63758a;

    
    line-height: 1.5;
}


/* Fees */

.kk-payment-fees {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 8px;
}

.kk-payment-fee {
    padding: 11px;

    background: #ffffff;

    border: 1px solid #e5ebf2;
    border-radius: 11px;
}

.kk-payment-fee span {
    display: block;

    margin-bottom: 4px;

    color: #98a4b3;

    
}

.kk-payment-fee strong {
    display: block;

    color: #253a53;

    
    line-height: 1.35;
}


/* Tablet */

@media (max-width: 991px) {

    .kk-payment-grid {
        grid-template-columns: 1fr;
    }

}


/* Mobile */

@media (max-width: 575px) {

    .kk-payment {
        padding: 20px 0;
    }

    .kk-payment-head h2 {
        
    }

    .kk-payment-card {
        padding: 18px;

        border-radius: 17px;
    }

    .kk-payment-card-top {
        margin-bottom: 17px;
    }

    .kk-payment-main-icon {
        width: 50px;
        height: 50px;

        flex-basis: 50px;

        border-radius: 13px;
    }

    .kk-payment-card h3 {
        
    }

    .kk-payment-fees {
        grid-template-columns: repeat(2, 1fr);
    }

}
/* =============================================
   KABEL-KIEV — RETURN RULES
============================================= */

.kk-return {
    padding: 35px 0;
    color: #14243a;
}


/* Header */

.kk-return-head {
    max-width: 760px;
    margin-bottom: 25px;
}

.kk-return-kicker {
    display: inline-flex;

    margin-bottom: 8px;

    color: #0750bd;

    
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .06em;
}

.kk-return-head h2 {
    margin: 0 0 8px;

    color: #102039;

    
    font-weight: 750;

    letter-spacing: -.025em;
}

.kk-return-head p {
    margin: 0;

    color: #758399;

    
    line-height: 1.6;
}


/* =============================================
   Alert
============================================= */

.kk-return-alert {
    display: flex;
    align-items: flex-start;

    gap: 15px;

    margin-bottom: 16px;

    padding: 20px;

    background:
        linear-gradient(
            135deg,
            #eef5ff,
            #f8fbff
        );

    border: 1px solid #d9e7fb;
    border-radius: 18px;
}

.kk-return-alert-icon {
    width: 44px;
    height: 44px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 44px;

    color: #0750bd;

    background: #ffffff;

    border-radius: 12px;

    box-shadow:
        0 6px 18px rgba(7, 80, 189, .08);
}

.kk-return-alert-icon svg {
    width: 23px;
    height: 23px;
}

.kk-return-label {
    display: block;

    margin-bottom: 4px;

    color: #0750bd;

    
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .07em;
}

.kk-return-alert h3 {
    margin: 0 0 7px;

    color: #17283f;

    
}

.kk-return-alert p {
    margin: 0;

    color: #63758b;

    
    line-height: 1.55;
}


/* =============================================
   Grid
============================================= */

.kk-return-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.45fr)
        minmax(300px, .75fr);

    gap: 16px;

    margin-bottom: 16px;
}


/* Cards */

.kk-return-card {
    position: relative;

    padding: 27px;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #fafcff
        );

    border: 1px solid #e2e9f1;
    border-radius: 22px;

    overflow: hidden;

    box-shadow:
        0 8px 30px rgba(27, 46, 70, .05);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.kk-return-card:hover {
    transform: translateY(-3px);

    border-color: #d5e0ed;

    box-shadow:
        0 15px 38px rgba(27, 46, 70, .09);
}

.kk-return-card::after {
    content: "";

    position: absolute;

    width: 190px;
    height: 190px;

    right: -80px;
    top: -90px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(0, 83, 200, .08),
            transparent 70%
        );

    pointer-events: none;
}


/* Card head */

.kk-return-card-top {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;

    gap: 14px;

    margin-bottom: 21px;
}

.kk-return-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 58px;

    color: #0750bd;

    background: #edf4ff;

    border-radius: 16px;
}

.kk-return-icon svg {
    width: 29px;
    height: 29px;
}

.kk-return-number {
    display: block;

    margin-bottom: 3px;

    color: #98a5b6;

    
    font-weight: 700;

    letter-spacing: .1em;
}

.kk-return-card h3 {
    margin: 0;

    color: #17263d;

    
    font-weight: 700;
}


/* Intro */

.kk-return-intro {
    position: relative;
    z-index: 2;

    margin: 0 0 16px;

    color: #728095;

    
    line-height: 1.6;
}


/* =============================================
   Steps
============================================= */

.kk-return-steps {
    position: relative;
    z-index: 2;

    display: flex;
    flex-direction: column;

    gap: 9px;
}

.kk-return-step {
    display: flex;
    align-items: flex-start;

    gap: 12px;

    padding: 14px;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 13px;

    transition:
        transform .2s ease,
        background .2s ease,
        border-color .2s ease;
}

.kk-return-step:hover {
    transform: translateX(4px);

    background: #ffffff;
    border-color: #dbe5ef;
}

.kk-return-step-number {
    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 34px;

    color: #0750bd;

    background: #eaf2ff;

    border-radius: 9px;

    
    font-weight: 800;
}

.kk-return-step strong {
    display: block;

    margin-bottom: 4px;

    color: #243850;

    
}

.kk-return-step span {
    display: block;

    color: #7d8a9b;

    
    line-height: 1.5;
}


/* =============================================
   Side notes
============================================= */

.kk-return-card-side {
    display: flex;
    flex-direction: column;
}

.kk-return-note {
    position: relative;
    z-index: 2;

    padding: 14px 0;

    border-bottom: 1px solid #edf1f5;
}

.kk-return-note:last-child {
    border-bottom: 0;
}

.kk-return-note strong {
    display: block;

    margin-bottom: 5px;

    color: #263a52;

    
}

.kk-return-note p {
    margin: 0;

    color: #7b899b;

    
    line-height: 1.55;
}


/* =============================================
   Check
============================================= */

.kk-return-check {
    display: flex;
    align-items: flex-start;

    gap: 15px;

    margin-bottom: 16px;

    padding: 22px;

    background: #ffffff;

    border: 1px solid #e2e9f1;
    border-radius: 18px;

    box-shadow:
        0 7px 24px rgba(27, 46, 70, .04);
}

.kk-return-check-icon {
    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 50px;

    color: #0750bd;

    background: #edf4ff;

    border-radius: 14px;
}

.kk-return-check-icon svg {
    width: 25px;
    height: 25px;
}

.kk-return-check-content h3 {
    margin: 0 0 7px;

    color: #1c2e46;

    
}

.kk-return-check-content p {
    margin: 0;

    color: #718095;

    
    line-height: 1.6;
}


/* =============================================
   Bottom note
============================================= */

.kk-return-bottom {
    padding: 18px;

    background: #f7f9fc;

    border: 1px solid #e5ebf2;
    border-radius: 15px;
}

.kk-return-bottom-title {
    display: flex;
    align-items: center;

    gap: 8px;

    margin-bottom: 7px;
}

.kk-return-bottom-title > span {
    width: 22px;
    height: 22px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #0750bd;

    background: #eaf2ff;

    border-radius: 50%;

    
    font-weight: 800;
}

.kk-return-bottom-title strong {
    color: #283b53;

    
}

.kk-return-bottom p {
    margin: 0;

    color: #7a8899;

    
    line-height: 1.55;
}


/* =============================================
   Tablet
============================================= */

@media (max-width: 991px) {

    .kk-return-grid {
        grid-template-columns: 1fr;
    }

}


/* =============================================
   Mobile
============================================= */

@media (max-width: 575px) {

    .kk-return {
        padding: 20px 0;
    }

    .kk-return-head h2 {
        
    }

    .kk-return-alert {
        padding: 15px;

        border-radius: 14px;
    }

    .kk-return-card {
        padding: 18px;

        border-radius: 17px;
    }

    .kk-return-card-top {
        margin-bottom: 16px;
    }

    .kk-return-icon {
        width: 50px;
        height: 50px;

        flex-basis: 50px;

        border-radius: 13px;
    }

    .kk-return-card h3 {
        
    }

    .kk-return-step {
        padding: 12px;
    }

    .kk-return-check {
        padding: 15px;

        border-radius: 14px;
    }

    .kk-return-check-icon {
        width: 42px;
        height: 42px;

        flex-basis: 42px;
    }

}
/* =============================================
   KABEL-KIEV — PUBLIC OFFER
============================================= */

/* =============================================
   KABEL-KIEV — PUBLIC OFFER
============================================= */

.kk-offer {
    padding: 35px 0 55px;
    color: #14243a;
}


/* =============================================
   HEADER
============================================= */

.kk-offer-head {
    max-width: 820px;
    margin-bottom: 22px;
}

.kk-offer-kicker {
    display: inline-flex;
    margin-bottom: 8px;

    color: #0750bd;

    
    font-weight: 700;

    letter-spacing: .07em;
    text-transform: uppercase;
}

.kk-offer-head h1 {
    margin: 0 0 10px;

    color: #102039;

    
    font-weight: 750;

    line-height: 1.15;
    letter-spacing: -.03em;
}

.kk-offer-head p {
    max-width: 700px;

    margin: 0;

    color: #758399;

    
    line-height: 1.6;
}


/* =============================================
   NAVIGATION
============================================= */

.kk-offer-nav {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;

    margin-bottom: 18px;
    padding: 12px;

    background: #f7f9fc;

    border: 1px solid #e6ebf2;
    border-radius: 16px;
}

.kk-offer-nav-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 36px;

    padding: 8px 11px;

    color: #4d6078;

    background: #ffffff;

    border: 1px solid #e4eaf1;
    border-radius: 9px;

    font-family: inherit;
    
    font-weight: 600;

    line-height: 1.4;

    cursor: pointer;

    appearance: none;
    -webkit-appearance: none;

    transition:
        color .2s ease,
        border-color .2s ease,
        background .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

.kk-offer-nav-btn:hover {
    color: #0750bd;

    background: #edf4ff;
    border-color: #d6e5fa;

    transform: translateY(-1px);
}

.kk-offer-nav-btn:focus {
    outline: none;

    border-color: #aac8f2;

    box-shadow:
        0 0 0 3px rgba(7, 80, 189, .08);
}


/* =============================================
   GRID
============================================= */

.kk-offer-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));

    align-items: start;

    gap: 14px;
}


/* =============================================
   CARD
============================================= */

.kk-offer-card {
    position: relative;

    padding: 25px;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #fafcff
        );

    border: 1px solid #e3e9f1;
    border-radius: 20px;

    overflow: hidden;

    box-shadow:
        0 7px 26px rgba(26, 45, 70, .045);

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.kk-offer-card:hover {
    transform: translateY(-2px);

    border-color: #d5e0ed;

    box-shadow:
        0 12px 32px rgba(26, 45, 70, .075);
}

.kk-offer-card::after {
    content: "";

    position: absolute;

    width: 160px;
    height: 160px;

    right: -75px;
    top: -80px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(7, 80, 189, .065),
            transparent 70%
        );

    pointer-events: none;
}


/* =============================================
   CARD HEADER
============================================= */

.kk-offer-card-head {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;

    gap: 11px;

    margin-bottom: 17px;
}

.kk-offer-number {
    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 38px;

    color: #0750bd;

    background: #edf4ff;

    border-radius: 11px;

    
    font-weight: 800;
}

.kk-offer-card h2 {
    margin: 0;

    color: #192a42;

    
    font-weight: 700;

    line-height: 1.3;
}


/* =============================================
   CARD TEXT
============================================= */

.kk-offer-card > p {
    position: relative;
    z-index: 2;

    margin: 0 0 11px;

    color: #6e7e92;

    
    line-height: 1.65;
}

.kk-offer-card > p:last-child {
    margin-bottom: 0;
}

.kk-offer-card strong {
    color: #26394f;
}


/* =============================================
   NOTES
============================================= */

.kk-offer-note {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: flex-start;

    gap: 10px;

    margin: 14px 0;

    padding: 13px;

    background:
        linear-gradient(
            135deg,
            #edf5ff,
            #f8fbff
        );

    border: 1px solid #dce9fa;
    border-radius: 12px;
}

.kk-offer-note-icon {
    width: 25px;
    height: 25px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 25px;

    color: #0750bd;

    background: #ffffff;

    border-radius: 50%;

    
    font-weight: 800;
}

.kk-offer-note p {
    margin: 0;

    color: #5d7087;

    
    line-height: 1.55;
}

.kk-offer-note-green {
    background:
        linear-gradient(
            135deg,
            #f0faf4,
            #f8fcfa
        );

    border-color: #d8eee1;
}

.kk-offer-note-green .kk-offer-note-icon {
    color: #16834b;

    background: #e8f7ee;
}


/* =============================================
   SELLER DETAILS
============================================= */

.kk-offer-details {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 8px;
}

.kk-offer-details > div {
    padding: 11px;

    background: #f7f9fc;

    border: 1px solid #e9edf3;
    border-radius: 11px;
}

.kk-offer-details span {
    display: block;

    margin-bottom: 4px;

    color: #98a4b3;

    
}

.kk-offer-details strong {
    display: block;

    color: #283d55;

    
    line-height: 1.4;
}


/* =============================================
   STEPS
============================================= */

.kk-offer-steps {
    position: relative;
    z-index: 2;

    display: flex;
    flex-direction: column;

    gap: 8px;
}

.kk-offer-step {
    display: flex;
    align-items: flex-start;

    gap: 10px;

    padding: 11px;

    background: #f8fafc;

    border: 1px solid #ebeff4;
    border-radius: 11px;
}

.kk-offer-step > span {
    width: 27px;
    height: 27px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 27px;

    color: #0750bd;

    background: #eaf2ff;

    border-radius: 8px;

    
    font-weight: 800;
}

.kk-offer-step p {
    margin: 2px 0 0;

    color: #6e7e91;

    
    line-height: 1.5;
}


/* =============================================
   SUBCARDS
============================================= */

.kk-offer-subcard {
    position: relative;
    z-index: 2;

    margin-bottom: 9px;

    padding: 14px;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 12px;
}

.kk-offer-subcard:last-child {
    margin-bottom: 0;
}

.kk-offer-subcard strong {
    display: block;

    margin-bottom: 6px;

    color: #263b53;

    
}

.kk-offer-subcard p {
    margin: 0 0 6px;

    color: #758398;

    
    line-height: 1.55;
}

.kk-offer-subcard p:last-child {
    margin-bottom: 0;
}


/* =============================================
   TAGS
============================================= */

.kk-offer-tags,
.kk-offer-links {
    position: relative;
    z-index: 2;

    display: flex;
    flex-wrap: wrap;

    gap: 6px;

    margin-bottom: 15px;
}

.kk-offer-tags span,
.kk-offer-links span {
    display: inline-flex;
    align-items: center;

    padding: 7px 9px;

    color: #0750bd;

    background: #edf4ff;

    border: 1px solid #dce8f9;
    border-radius: 8px;

    
    font-weight: 600;
}


/* =============================================
   LISTS
============================================= */

.kk-offer-list {
    position: relative;
    z-index: 2;

    margin: 0;
    padding: 0;

    list-style: none;
}

.kk-offer-list li {
    position: relative;

    margin-bottom: 8px;

    padding-left: 20px;

    color: #6e7e91;

    
    line-height: 1.5;
}

.kk-offer-list li:last-child {
    margin-bottom: 0;
}

.kk-offer-list li::before {
    content: "✓";

    position: absolute;

    left: 0;
    top: 0;

    color: #0750bd;

    font-weight: 800;
}


/* =============================================
   COMPANY BLOCK
============================================= */

.kk-offer-company {
    margin-top: 16px;

    padding: 27px;

    background:
        linear-gradient(
            135deg,
            #0c315f,
            #0750bd
        );

    border-radius: 22px;

    color: #ffffff;

    box-shadow:
        0 14px 38px rgba(7, 80, 189, .18);
}

.kk-offer-company-head {
    display: flex;
    justify-content: space-between;
    align-items: center;

    gap: 20px;

    margin-bottom: 20px;
}

.kk-offer-company-kicker {
    display: block;

    margin-bottom: 4px;

    color: rgba(255,255,255,.65);

    
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .08em;
}

.kk-offer-company h2 {
    margin: 0;

    color: #ffffff;

    
}

.kk-offer-company-icon {
    width: 52px;
    height: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 52px;

    color: #ffffff;

    background: rgba(255,255,255,.12);

    border: 1px solid rgba(255,255,255,.18);
    border-radius: 14px;
}

.kk-offer-company-icon svg {
    width: 26px;
    height: 26px;
}

.kk-offer-company-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 8px;
}

.kk-offer-company-grid > div {
    padding: 12px;

    background: rgba(255,255,255,.09);

    border: 1px solid rgba(255,255,255,.13);
    border-radius: 11px;
}

.kk-offer-company-grid span {
    display: block;

    margin-bottom: 4px;

    color: rgba(255,255,255,.55);

    
}

.kk-offer-company-grid strong {
    color: #ffffff;

    
    line-height: 1.4;
}


/* =============================================
   ANCHOR OFFSET
============================================= */

.kk-offer-card[id] {
    scroll-margin-top: 110px;
}


/* =============================================
   TABLET
============================================= */

@media (max-width: 991px) {

    .kk-offer-grid {
        grid-template-columns: 1fr;
    }

    .kk-offer-company-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


/* =============================================
   MOBILE
============================================= */

@media (max-width: 575px) {

    .kk-offer {
        padding: 20px 0 35px;
    }

    .kk-offer-head {
        margin-bottom: 16px;
    }

    .kk-offer-head h1 {
        
    }

    .kk-offer-head p {
        
    }

    .kk-offer-nav {
        flex-wrap: nowrap;

        overflow-x: auto;

        gap: 6px;

        padding: 9px;

        border-radius: 13px;

        -webkit-overflow-scrolling: touch;

        scrollbar-width: none;
    }

    .kk-offer-nav::-webkit-scrollbar {
        display: none;
    }

    .kk-offer-nav-btn {
        flex: 0 0 auto;

        min-height: 34px;

        white-space: nowrap;

        
    }

    .kk-offer-grid {
        gap: 10px;
    }

    .kk-offer-card {
        padding: 18px;

        border-radius: 16px;
    }

    .kk-offer-card-head {
        gap: 9px;

        margin-bottom: 14px;
    }

    .kk-offer-card h2 {
        
    }

    .kk-offer-number {
        width: 34px;
        height: 34px;

        flex-basis: 34px;

        border-radius: 9px;
    }

    .kk-offer-card > p {
        
        line-height: 1.6;
    }

    .kk-offer-details {
        grid-template-columns: 1fr;
    }

    .kk-offer-note {
        padding: 11px;
    }

    .kk-offer-step {
        padding: 10px;
    }

    .kk-offer-subcard {
        padding: 12px;
    }

    .kk-offer-company {
        padding: 19px;

        border-radius: 17px;
    }

    .kk-offer-company-head {
        margin-bottom: 15px;
    }

    .kk-offer-company h2 {
        
    }

    .kk-offer-company-icon {
        width: 44px;
        height: 44px;

        flex-basis: 44px;

        border-radius: 12px;
    }

    .kk-offer-company-grid {
        grid-template-columns: 1fr;
    }

}


/* =============================================
   VERY SMALL MOBILE
============================================= */

@media (max-width: 380px) {

    .kk-offer-card {
        padding: 15px;
    }

    .kk-offer-head h1 {
        
    }

    .kk-offer-card h2 {
        
    }

}

/* =============================================
   KABEL-KIEV — PRIVACY POLICY
============================================= */

.kk-privacy {
    padding: 35px 0 55px;
    color: #14243a;
}


/* =============================================
   HEADER
============================================= */

.kk-privacy-head {
    max-width: 820px;
    margin-bottom: 22px;
}

.kk-privacy-kicker {
    display: inline-flex;
    margin-bottom: 8px;

    color: #0750bd;

    
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .07em;
}

.kk-privacy-head h1 {
    margin: 0 0 10px;

    color: #102039;

    
    font-weight: 750;

    line-height: 1.15;
    letter-spacing: -.03em;
}

.kk-privacy-head p {
    max-width: 720px;

    margin: 0;

    color: #758399;

    
    line-height: 1.65;
}


/* =============================================
   NAVIGATION
============================================= */

.kk-privacy-nav {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;

    margin-bottom: 18px;
    padding: 12px;

    background: #f7f9fc;

    border: 1px solid #e6ebf2;
    border-radius: 16px;
}

.kk-privacy-nav-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 36px;

    padding: 8px 11px;

    color: #4d6078;

    background: #fff;

    border: 1px solid #e4eaf1;
    border-radius: 9px;

    font-family: inherit;
    
    font-weight: 600;

    cursor: pointer;

    appearance: none;
    -webkit-appearance: none;

    transition:
        color .2s ease,
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.kk-privacy-nav-btn:hover {
    color: #0750bd;

    background: #edf4ff;
    border-color: #d6e5fa;

    transform: translateY(-1px);
}

.kk-privacy-nav-btn:focus {
    outline: none;

    border-color: #aac8f2;

    box-shadow:
        0 0 0 3px rgba(7,80,189,.08);
}


/* =============================================
   GRID
============================================= */

.kk-privacy-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));

    align-items: start;

    gap: 14px;
}


/* =============================================
   MAIN CARD
============================================= */

.kk-privacy-card {
    position: relative;

    padding: 25px;

    background:
        linear-gradient(
            145deg,
            #fff,
            #fafcff
        );

    border: 1px solid #e3e9f1;
    border-radius: 20px;

    overflow: hidden;

    box-shadow:
        0 7px 26px rgba(26,45,70,.045);

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.kk-privacy-card:hover {
    transform: translateY(-2px);

    border-color: #d5e0ed;

    box-shadow:
        0 12px 32px rgba(26,45,70,.075);
}

.kk-privacy-card::after {
    content: "";

    position: absolute;

    width: 160px;
    height: 160px;

    right: -75px;
    top: -80px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(7,80,189,.065),
            transparent 70%
        );

    pointer-events: none;
}


/* =============================================
   CARD HEADER
============================================= */

.kk-privacy-card-head {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;

    gap: 11px;

    margin-bottom: 17px;
}

.kk-privacy-number {
    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 38px;

    color: #0750bd;

    background: #edf4ff;

    border-radius: 11px;

    
    font-weight: 800;
}

.kk-privacy-card h2 {
    margin: 0;

    color: #192a42;

    
    font-weight: 700;

    line-height: 1.3;
}


/* =============================================
   TEXT
============================================= */

.kk-privacy-card > p {
    position: relative;
    z-index: 2;

    margin: 0 0 11px;

    color: #6e7e92;

    
    line-height: 1.65;
}

.kk-privacy-card > p:last-child {
    margin-bottom: 0;
}

.kk-privacy-card strong {
    color: #26394f;
}


/* =============================================
   NOTES
============================================= */

.kk-privacy-note {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: flex-start;

    gap: 10px;

    margin: 14px 0;

    padding: 13px;

    background:
        linear-gradient(
            135deg,
            #edf5ff,
            #f8fbff
        );

    border: 1px solid #dce9fa;
    border-radius: 12px;
}

.kk-privacy-note-icon {
    width: 25px;
    height: 25px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 25px;

    color: #0750bd;

    background: #fff;

    border-radius: 50%;

    
    font-weight: 800;
}

.kk-privacy-note p {
    margin: 0;

    color: #5d7087;

    
    line-height: 1.55;
}

.kk-privacy-note-green {
    background:
        linear-gradient(
            135deg,
            #f0faf4,
            #f8fcfa
        );

    border-color: #d8eee1;
}

.kk-privacy-note-green .kk-privacy-note-icon {
    color: #16834b;

    background: #e8f7ee;
}


/* =============================================
   DETAILS
============================================= */

.kk-privacy-details {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 8px;
}

.kk-privacy-details > div {
    padding: 11px;

    background: #f7f9fc;

    border: 1px solid #e9edf3;
    border-radius: 11px;
}

.kk-privacy-details span {
    display: block;

    margin-bottom: 4px;

    color: #98a4b3;

    
}

.kk-privacy-details strong {
    display: block;

    color: #283d55;

    
    line-height: 1.4;
}


/* =============================================
   TAGS
============================================= */

.kk-privacy-tags {
    position: relative;
    z-index: 2;

    display: flex;
    flex-wrap: wrap;

    gap: 6px;

    margin-bottom: 15px;
}

.kk-privacy-tags span {
    display: inline-flex;

    padding: 7px 9px;

    color: #0750bd;

    background: #edf4ff;

    border: 1px solid #dce8f9;
    border-radius: 8px;

    
    font-weight: 600;
}


/* =============================================
   LIST
============================================= */

.kk-privacy-list {
    position: relative;
    z-index: 2;

    margin: 0;
    padding: 0;

    list-style: none;
}

.kk-privacy-list li {
    position: relative;

    margin-bottom: 8px;

    padding-left: 20px;

    color: #6e7e91;

    
    line-height: 1.5;
}

.kk-privacy-list li:last-child {
    margin-bottom: 0;
}

.kk-privacy-list li::before {
    content: "✓";

    position: absolute;

    left: 0;
    top: 0;

    color: #0750bd;

    font-weight: 800;
}


/* =============================================
   MINI CARDS
============================================= */

.kk-privacy-subgrid {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 8px;

    margin: 14px 0;
}

.kk-privacy-mini-card {
    padding: 12px;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 11px;
}

.kk-privacy-mini-card strong {
    display: block;

    margin-bottom: 4px;

    
}

.kk-privacy-mini-card span {
    display: block;

    color: #7d8a9b;

    
    line-height: 1.4;
}


/* =============================================
   COOKIE GRID
============================================= */

.kk-privacy-cookie-grid {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 8px;

    margin: 14px 0;
}

.kk-privacy-cookie-grid > div {
    padding: 12px;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 11px;
}

.kk-privacy-cookie-grid strong {
    display: block;

    margin-bottom: 4px;

    
}

.kk-privacy-cookie-grid span {
    color: #7d8a9b;

    
}


/* =============================================
   SECURITY
============================================= */

.kk-privacy-security {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 8px;

    margin-top: 14px;
}

.kk-privacy-security > div {
    padding: 13px;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 12px;
}

.kk-privacy-security > div > span {
    display: inline-flex;

    margin-bottom: 8px;

    color: #0750bd;

    
    font-weight: 800;
}

.kk-privacy-security strong {
    display: block;

    margin-bottom: 5px;

    
}

.kk-privacy-security p {
    margin: 0;

    color: #7d8a9b;

    
    line-height: 1.45;
}


/* =============================================
   ANCHOR OFFSET
============================================= */

.kk-privacy-card[id] {
    scroll-margin-top: 110px;
}


/* =============================================
   TABLET
============================================= */

@media (max-width: 991px) {

    .kk-privacy-grid {
        grid-template-columns: 1fr;
    }

    .kk-privacy-security {
        grid-template-columns: 1fr;
    }

}


/* =============================================
   MOBILE
============================================= */

@media (max-width: 575px) {

    .kk-privacy {
        padding: 20px 0 35px;
    }

    .kk-privacy-head h1 {
        
    }

    .kk-privacy-head p {
        
    }

    .kk-privacy-nav {
        flex-wrap: nowrap;

        overflow-x: auto;

        gap: 6px;

        padding: 9px;

        border-radius: 13px;

        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .kk-privacy-nav::-webkit-scrollbar {
        display: none;
    }

    .kk-privacy-nav-btn {
        flex: 0 0 auto;

        white-space: nowrap;

        
    }

    .kk-privacy-grid {
        gap: 10px;
    }

    .kk-privacy-card {
        padding: 18px;

        border-radius: 16px;
    }

    .kk-privacy-card h2 {
        
    }

    .kk-privacy-number {
        width: 34px;
        height: 34px;

        flex-basis: 34px;
    }

    .kk-privacy-details {
        grid-template-columns: 1fr;
    }

    .kk-privacy-subgrid,
    .kk-privacy-cookie-grid {
        grid-template-columns: 1fr;
    }

}
/* =============================================
   KABEL-KIEV — MANUFACTURERS
============================================= */

.kk-manufacturers {
    padding: 35px 0 45px;
    color: #14243a;
}


/* Head */

.kk-manufacturers-head {
    max-width: 860px;
    margin-bottom: 22px;
}

.kk-manufacturers-kicker {
    display: inline-flex;
    margin-bottom: 8px;

    color: #0750bd;

    
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.kk-manufacturers-head h2 {
    margin: 0 0 10px;

    color: #102039;

    
    font-weight: 750;
    line-height: 1.15;
    letter-spacing: -.03em;
}

.kk-manufacturers-head p {
    max-width: 720px;
    margin: 0;

    color: #758399;

    
    line-height: 1.65;
}


/* Stats */

.kk-manufacturers-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;

    margin-top: 18px;
}

.kk-manufacturers-stat {
    min-width: 150px;
    padding: 14px 16px;

    background: linear-gradient(145deg, #ffffff, #fafcff);
    border: 1px solid #e4eaf1;
    border-radius: 14px;

    box-shadow: 0 5px 18px rgba(26,45,70,.04);
}

.kk-manufacturers-stat strong {
    display: block;
    margin-bottom: 3px;

    color: #0750bd;
    
    font-weight: 800;
}

.kk-manufacturers-stat span {
    display: block;

    color: #7a889a;
    
    line-height: 1.45;
}


/* Filter */

.kk-manufacturers-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;

    margin-bottom: 18px;
    padding: 12px;

    background: #f7f9fc;
    border: 1px solid #e6ebf2;
    border-radius: 16px;
}

.kk-manufacturers-filter-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 38px;
    min-height: 36px;
    padding: 8px 11px;

    background: #ffffff;
    color: #4d6078;

    border: 1px solid #e4eaf1;
    border-radius: 10px;

    font-family: inherit;
    
    font-weight: 700;
    line-height: 1;

    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;

    transition:
        background .2s ease,
        color .2s ease,
        border-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

.kk-manufacturers-filter-btn:hover {
    color: #0750bd;
    background: #edf4ff;
    border-color: #d6e5fa;
    transform: translateY(-1px);
}

.kk-manufacturers-filter-btn.is-active {
    color: #ffffff;
    background: linear-gradient(135deg, #0c315f, #0750bd);
    border-color: #0750bd;
    box-shadow: 0 8px 18px rgba(7,80,189,.18);
}


/* Grid */

.kk-manufacturers-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}


/* Card */

.kk-manufacturers-card {
    position: relative;

    padding: 20px;

    background: linear-gradient(145deg, #ffffff, #fafcff);
    border: 1px solid #e3e9f1;
    border-radius: 18px;

    box-shadow: 0 7px 26px rgba(26,45,70,.045);

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease,
        opacity .25s ease;
}

.kk-manufacturers-card:hover {
    transform: translateY(-2px);
    border-color: #d5e0ed;
    box-shadow: 0 12px 32px rgba(26,45,70,.075);
}

.kk-manufacturers-card.is-hidden {
    display: none;
}




/* Card head */

.kk-manufacturers-card-head {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;

    margin-bottom: 14px;
}

.kk-manufacturers-letter {
    width: 42px;
    height: 42px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #0750bd;
    background: #edf4ff;

    border-radius: 12px;

    
    font-weight: 800;
}

.kk-manufacturers-count {
    color: #98a4b3;
    
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}


/* Links */

.kk-manufacturers-links {
    position: relative;
    z-index: 2;

    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.kk-manufacturers-links a {
    display: inline-flex;
    align-items: center;

    padding: 8px 10px;

    color: #2f4460;
    background: #f7f9fc;

    border: 1px solid #e7edf4;
    border-radius: 10px;

    
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;

    transition:
        color .2s ease,
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.kk-manufacturers-links a:hover {
    color: #0750bd;
    background: #edf4ff;
    border-color: #d7e5f8;
    transform: translateY(-1px);
}


/* Bottom CTA */

.kk-manufacturers-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;

    margin-top: 18px;
    padding: 20px 22px;

    background: linear-gradient(135deg, #0c315f, #0750bd);
    border-radius: 20px;

    box-shadow: 0 14px 38px rgba(7,80,189,.16);
}

.kk-manufacturers-bottom-text strong {
    display: block;
    margin-bottom: 5px;

    color: #ffffff;
    
    font-weight: 700;
}

.kk-manufacturers-bottom-text span {
    display: block;

    color: rgba(255,255,255,.78);
    
    line-height: 1.5;
}

.kk-manufacturers-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 44px;
    padding: 0 18px;

    color: #0750bd;
    background: #ffffff;

    border: 1px solid rgba(255,255,255,.25);
    border-radius: 12px;

    
    font-weight: 700;
    text-decoration: none;

    white-space: nowrap;

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.kk-manufacturers-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(0,0,0,.08);
    background: #f8fbff;
}


/* Tablet */

@media (max-width: 991px) {

    .kk-manufacturers-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kk-manufacturers-bottom {
        flex-direction: column;
        align-items: flex-start;
    }

}


/* Mobile */

@media (max-width: 575px) {

    .kk-manufacturers {
        padding: 20px 0 35px;
    }

    .kk-manufacturers-head h2 {
        
    }

    .kk-manufacturers-head p {
        
    }

    .kk-manufacturers-stats {
        gap: 8px;
    }

    .kk-manufacturers-stat {
        flex: 1 1 100%;
    }

    .kk-manufacturers-filter {
        flex-wrap: nowrap;
        overflow-x: auto;

        padding: 9px;
        gap: 6px;

        border-radius: 13px;

        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .kk-manufacturers-filter::-webkit-scrollbar {
        display: none;
    }

    .kk-manufacturers-filter-btn {
        flex: 0 0 auto;
        white-space: nowrap;

        min-height: 34px;
        
    }

    .kk-manufacturers-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .kk-manufacturers-card {
        padding: 16px;
        border-radius: 16px;
    }

    .kk-manufacturers-bottom {
        padding: 16px;
        border-radius: 16px;
    }

    .kk-manufacturers-bottom-text strong {
        
    }

    .kk-manufacturers-bottom-text span {
        
    }

    .kk-manufacturers-btn {
        width: 100%;
    }

}
/* =============================================
   KABEL-KIEV — MODERN STORE REVIEWS
============================================= */

.ds-store-reviews {
    position: relative;

    padding: 28px !important;
    margin-top: 24px !important;

    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #f8fbff 100%
        ) !important;

    border: 1px solid #e4eaf1;
    border-radius: 22px;

    box-shadow:
        0 12px 35px rgba(20, 43, 76, .05);

    overflow: visible;
}


/* =============================================
   HEADER
============================================= */

.ds-store-reviews-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    gap: 15px;

    padding-bottom: 18px !important;

    border-bottom: 1px solid #edf1f5;
}

.ds-store-reviews-header > .dark-text {
    margin-right: 0 !important;

    color: #102039 !important;

    
    font-weight: 750 !important;

    letter-spacing: -.02em;
}

.ds-store-reviews-header .blue-link {
    display: inline-flex;
    align-items: center;

    padding: 8px 12px;

    color: #0750bd !important;

    background: #edf4ff;

    border: 1px solid #dce8f9;
    border-radius: 9px;

    
    font-weight: 600;

    text-decoration: none !important;

    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.ds-store-reviews-header .blue-link:hover {
    background: #e3efff;
    border-color: #cbdff7;

    transform: translateY(-1px);
}


/* =============================================
   RATING AREA
============================================= */

.ds-store-reviews-rating {
    display: grid !important;
    grid-template-columns: minmax(220px, .7fr) minmax(300px, 1.3fr);

    align-items: stretch !important;

    gap: 14px;

    margin: 18px 0 22px !important;
    padding-bottom: 0 !important;
}


/* Main rating */

.ds-store-reviews-rating > div:first-child {
    display: flex;
    flex-direction: column;

    height: 100%;
}

.ds-store-reviews-rating-main {
    position: relative;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    flex: 1;

    min-height: 190px;

    margin-bottom: 0 !important;

    padding: 24px;

    background:
        linear-gradient(
            145deg,
            #0c315f,
            #0750bd
        );

    border-radius: 18px;

    color: #ffffff;

    box-shadow:
        0 12px 30px rgba(7,80,189,.17);

    overflow: hidden;
}

.ds-store-reviews-rating-main::after {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -70px;
    top: -70px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(255,255,255,.18),
            transparent 68%
        );

    pointer-events: none;
}

.ds-store-reviews-rating-main .dark-text,
.ds-store-reviews-rating-main .light-text {
    position: relative;
    z-index: 2;

    color: rgba(255,255,255,.82) !important;
}

.ds-store-reviews-rating-main > .dark-text {
    
    font-weight: 600 !important;

    text-transform: uppercase;
    letter-spacing: .06em;
}


/* Large 5 */

.ds-store-reviews-rating-main-value {
    position: relative;
    z-index: 2;

    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 86px;
    height: 86px;

    margin: 12px 0 8px !important;
    padding: 0 !important;

    color: #ffffff !important;

    background: rgba(255,255,255,.14) !important;

    border: 1px solid rgba(255,255,255,.20);
    border-radius: 22px !important;

    
    font-weight: 800;
    line-height: 1;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12);
}


/* Rating stars */

.ds-store-reviews-rating-main .ds-module-rating-stars {
    position: relative;
    z-index: 2;

    margin-top: 10px !important;
}


/* Mobile write review button */

#storeReviewAdd {
    min-height: 45px;

    border-radius: 11px !important;
}


/* =============================================
   PRICE / QUALITY RATINGS
============================================= */

.ds-store-reviews-rating-details {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 12px;
}

.ds-store-reviews-rating-details-item {
    position: relative;

    justify-content: center;

    min-height: 190px;

    padding: 22px 18px;

    background: #ffffff;

    border: 1px solid #e4eaf1;
    border-radius: 18px;

    box-shadow:
        0 7px 24px rgba(26,45,70,.045) !important;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.ds-store-reviews-rating-details-item:hover {
    transform: translateY(-3px);

    border-color: #d5e0ed;

    box-shadow:
        0 13px 30px rgba(26,45,70,.08) !important;
}

.ds-store-reviews-rating-details-item-header {
    margin-bottom: 12px !important;
    padding-bottom: 12px !important;

    color: #718096 !important;

    border-bottom: 1px solid #edf1f5;

    
    font-weight: 600;

    text-transform: uppercase;
    letter-spacing: .05em;
}

.ds-store-reviews-rating-details-item-value {
    margin-top: auto;

    color: #102039 !important;

    
    font-weight: 800;
    line-height: 1;
}


/* =============================================
   REVIEWS GRID
============================================= */

#ds-shop-reviews_0 {
    margin-top: 4px;
}

.ds-product-reviews-content {
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.ds-product-reviews-item-box {
    margin: 0 !important;
}


/* Review card */

.ds-product-reviews-item {
    position: relative;

    padding: 19px !important;

    background: #ffffff;

    border: 1px solid #e5ebf2;
    border-radius: 16px !important;

    box-shadow:
        0 5px 18px rgba(25,45,70,.035);

    overflow: hidden;

    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}

.ds-product-reviews-item:hover {
    transform: translateY(-2px);

    border-color: #d8e2ed;

    box-shadow:
        0 11px 28px rgba(25,45,70,.07);
}

.ds-product-reviews-item::before {
    content: "“";

    position: absolute;

    right: 18px;
    top: 5px;

    color: #edf4ff;

    font-family: Georgia, serif;
    
    font-weight: 700;
    line-height: 1;

    pointer-events: none;
}


/* Review header */

.ds-product-reviews-item-header {
    position: relative;
    z-index: 2;

    padding-bottom: 13px !important;

    border-bottom: 1px solid #edf1f5;
}


/* Author icon */

.ds-store-reviews-item-author > svg {
    width: 40px;
    height: 40px;

    padding: 9px;

    background: #edf4ff;

    border-radius: 12px;
}

.ds-store-reviews-item-author > svg path {
    fill: #0750bd !important;
}


/* Author info */

.ds-store-reviews-item-info {
    margin-left: 10px !important;
}

.ds-store-reviews-item-info > .dark-text {
    color: #17273f !important;

    
    font-weight: 700 !important;
}


/* Review date */

.ds-product-reviews-item-header > span {
    color: #96a2b2 !important;

    
}


/* =============================================
   REVIEW CONTENT
============================================= */

.ds-product-reviews-item-content {
    position: relative;
    z-index: 2;

    padding-top: 14px !important;

    color: #52657d !important;

    
    font-weight: 400 !important;
    line-height: 1.65;
}

.ds-product-reviews-item-content > .mt-3 {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;

    margin-top: 13px !important;
}

.ds-product-reviews-item-content > .mt-3 > div {
    display: inline-flex;
    align-items: center;

    gap: 4px;

    padding: 6px 9px;

    color: #334a65 !important;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 8px;

    
}

.ds-product-reviews-item-content > .mt-3 .light-text {
    color: #8795a8 !important;
}


/* =============================================
   STARS
============================================= */

.ds-store-reviews .ds-module-rating-stars {
    gap: 2px;
}

.ds-store-reviews .ds-module-rating-star {
    transition:
        transform .18s ease,
        opacity .18s ease;
}

.ds-store-reviews .ds-store-reviews-add .ds-module-rating-star:hover {
    transform: scale(1.12);
}


/* =============================================
   ADD REVIEW FORM
============================================= */

.ds-store-reviews-add-column {
    position: relative;
}

.ds-store-reviews-add {
    padding: 22px !important;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f9fbfe
        ) !important;

    border: 1px solid #e2e9f1;
    border-radius: 18px !important;

    box-shadow:
        0 10px 28px rgba(24,45,72,.06);

    overflow: hidden;
}

.ds-store-reviews-add::before {
    content: "";

    position: absolute;

    width: 140px;
    height: 140px;

    right: -55px;
    top: -60px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(7,80,189,.08),
            transparent 70%
        );

    pointer-events: none;
}


/* Form title */

.ds-store-reviews-add-title {
    position: relative;
    z-index: 2;

    margin-bottom: 17px !important;
    padding-bottom: 14px !important;

    color: #17273f !important;

    border-bottom: 1px solid #edf1f5;

    
    font-weight: 700 !important;
}


/* Criteria */

.ds-store-reviews-add-criteria {
    position: relative;
    z-index: 2;

    margin-bottom: 8px !important;

    padding: 10px 12px;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 10px;
}

.ds-store-reviews-add-criteria-title {
    color: #52657d !important;

    
    font-weight: 600;
}


/* Labels */

.ds-store-reviews-add .form-label,
.ds-store-reviews-add label[for="inputStoreReviewComment"] {
    display: block;

    margin-bottom: 6px;

    color: #263950 !important;

    
    font-weight: 600 !important;
}


/* Fields */

.ds-store-reviews-add .form-control {
    width: 100%;

    min-height: 44px;

    padding: 10px 12px;

    color: #20344e;

    background: #ffffff;

    border: 1px solid #dfe6ef;
    border-radius: 10px;

    outline: none;

    font-family: inherit;
    

    box-shadow: none;

    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.ds-store-reviews-add textarea.form-control {
    min-height: 125px;

    resize: vertical;
}

.ds-store-reviews-add .form-control:focus {
    background: #ffffff;

    border-color: #8eb4eb;

    box-shadow:
        0 0 0 3px rgba(7,80,189,.08);
}

.ds-store-reviews-add .form-control::placeholder {
    color: #a0acbb;
}


/* Error */

.ds-store-reviews-add .form-control.error_style {
    border-color: #e45c5c;

    box-shadow:
        0 0 0 3px rgba(228,92,92,.07);
}


/* Submit */

.ds-store-reviews-add button[type="submit"] {
    width: 100%;
    min-height: 46px;

    margin-top: 4px;

    color: #ffffff;

    background:
        linear-gradient(
            135deg,
            #0a4fbd,
            #063f9f
        );

    border: 0;
    border-radius: 11px !important;

    box-shadow:
        0 9px 22px rgba(7,80,189,.18);

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.ds-store-reviews-add button[type="submit"]:hover {
    transform: translateY(-2px);

    box-shadow:
        0 13px 28px rgba(7,80,189,.25);
}


/* =============================================
   TABLET
============================================= */

@media (max-width: 1199px) {

    .ds-store-reviews {
        padding: 22px !important;
    }

    .ds-store-reviews-rating {
        grid-template-columns: 1fr 1.6fr;
    }

}


/* =============================================
   MOBILE / TABLET SMALL
============================================= */

@media (max-width: 767px) {

    .ds-store-reviews {
        padding: 15px !important;

        border-radius: 17px;
    }

    .ds-store-reviews-header {
        align-items: flex-start !important;
    }

    .ds-store-reviews-header > .dark-text {
        
    }

    .ds-store-reviews-header .blue-link {
        padding: 6px 9px;

        
    }

    .ds-store-reviews-rating {
        grid-template-columns: 1fr;

        gap: 9px;

        margin-top: 14px !important;
    }

    .ds-store-reviews-rating-main {
        min-height: 170px;

        padding: 19px;
    }

    .ds-store-reviews-rating-details {
        grid-template-columns: repeat(2, 1fr);

        gap: 8px;
    }

    .ds-store-reviews-rating-details-item {
        min-height: 135px;

        padding: 14px 10px;

        border-radius: 14px;
    }

    .ds-store-reviews-rating-details-item-value {
        
    }

    .ds-product-reviews-item {
        padding: 15px !important;

        border-radius: 14px !important;
    }

}


/* =============================================
   MOBILE
============================================= */

@media (max-width: 575px) {

    .ds-store-reviews-header {
        gap: 8px;
    }

    .ds-store-reviews-header > .dark-text {
        
    }

    .ds-store-reviews-rating-main-value {
        width: 72px;
        height: 72px;

        border-radius: 18px !important;

        
    }

    .ds-store-reviews-rating-details-item-header {
        
    }

    .ds-product-reviews-item-header {
        align-items: flex-start !important;
    }

    .ds-product-reviews-item-content {
        
    }

    .ds-product-reviews-item::before {
        right: 10px;

        
    }

    #storeReviewAdd {
        margin-top: 10px !important;
    }

}


/* =============================================
   VERY SMALL
============================================= */

@media (max-width: 380px) {

    .ds-store-reviews-rating-details {
        grid-template-columns: 1fr;
    }

}

/* =============================================
   KABEL-KIEV — MODERN PRODUCT CARD
============================================= */

.ds-module-item.product-layout {
    margin-bottom: 18px;
}


/* =============================================
   MAIN CARD
============================================= */

.ds-module-item.product-layout > .content-block {
    position: relative;

    padding: 14px;

    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #fbfcfe 100%
        ) !important;

    border: 1px solid #e3e9f1;
    border-radius: 18px;

    box-shadow:
        0 6px 22px rgba(25, 45, 70, .045);

    overflow: hidden;

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.ds-module-item.product-layout > .content-block:hover {
    transform: translateY(-4px);

    border-color: #d3deeb;

    box-shadow:
        0 16px 38px rgba(25, 45, 70, .10);
}


/* subtle glow */

.ds-module-item.product-layout > .content-block::after {
    content: "";

    position: absolute;

    width: 150px;
    height: 150px;

    right: -70px;
    top: -70px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(7, 80, 189, .06),
            transparent 70%
        );

    pointer-events: none;
}


/* =============================================
   IMAGE AREA
============================================= */

.ds-module-item .ds-module-img {
    position: relative;

    margin-bottom: 12px;
}

.ds-module-item .ds-module-img-box {
    position: relative;

    min-height: 230px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 14px;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f7f9fc
        );

    border: 1px solid #edf1f5;
    border-radius: 15px;

    overflow: hidden;

    transition:
        background .25s ease,
        border-color .25s ease;
}

.ds-module-item > .content-block:hover .ds-module-img-box {
    background: #ffffff;
    border-color: #dde6f0;
}

.ds-module-item .ds-module-img-box img {
    max-width: 100%;
    height: auto;

    object-fit: contain;

    transition:
        transform .35s ease,
        filter .35s ease;
}

.ds-module-item > .content-block:hover .ds-module-img-box img {
    transform: scale(1.035);
}


/* =============================================
   RIGHT ACTION BUTTONS
============================================= */

.ds-module-item .ds-module-buttons {
    top: 10px !important;
    right: 10px !important;

    gap: 6px;

    padding: 0 !important;

    background: transparent !important;

    z-index: 5;
}

.ds-module-item .ds-module-button {
    width: 34px;
    height: 34px;

    display: flex !important;
    align-items: center;
    justify-content: center;

    background: rgba(255,255,255,.94) !important;

    border: 1px solid #e2e8f0 !important;
    border-radius: 10px !important;

    box-shadow:
        0 5px 15px rgba(20,40,65,.08);

    backdrop-filter: blur(6px);

    transition:
        transform .2s ease,
        background .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.ds-module-item .ds-module-button:hover {
    transform: translateY(-2px);

    background: #edf4ff !important;
    border-color: #cfe0f7 !important;

    box-shadow:
        0 8px 18px rgba(7,80,189,.12);
}

.ds-module-item .ds-module-button svg path {
    transition: fill .2s ease;
}

.ds-module-item .ds-module-button:hover svg path {
    fill: #0750bd !important;
}


/* =============================================
   IMAGE GALLERY
============================================= */

.ds-module-item .pig-progress {
    left: 12px !important;
    right: 12px !important;
    bottom: 8px !important;

    height: 3px !important;

    background: #e8edf4 !important;

    border-radius: 20px;

    overflow: hidden;
}

.ds-module-item .pig-progress-bar {
    height: 100%;

    background: #0750bd !important;

    border-radius: 20px;
}

.ds-module-item .pig-arrow {
    width: 30px !important;
    height: 30px !important;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #0750bd !important;

    background: rgba(255,255,255,.95) !important;

    border: 1px solid #dfe7f0 !important;
    border-radius: 50% !important;

    box-shadow:
        0 5px 12px rgba(20,40,65,.08);

    

    transition:
        transform .2s ease,
        background .2s ease;
}

.ds-module-item .pig-arrow:hover {
    transform: scale(1.08);

    background: #edf4ff !important;
}


/* =============================================
   CAPTION
============================================= */

.ds-module-item .ds-module-caption {
    position: relative;
    z-index: 2;

    padding-top: 3px;
}


/* =============================================
   PRODUCT TITLE
============================================= */

.ds-module-item .ds-module-title {
    display: -webkit-box;

    min-height: 40px;

    margin-bottom: 7px;

    color: #17283f !important;

    
    font-weight: 700 !important;

    line-height: 1.4;

    text-decoration: none !important;

    overflow: hidden;

    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;

    transition: color .2s ease;
}

.ds-module-item .ds-module-title:hover {
    color: #0750bd !important;
}


/* =============================================
   CODE
============================================= */

.ds-module-item .ds-module-code {
    margin-bottom: 5px;

    color: #96a2b2 !important;

    
    line-height: 1.4;
}


/* =============================================
   STOCK
============================================= */

.ds-module-item .ds-module-stock {
    display: inline-flex;
    align-items: center;

    width: max-content;

    gap: 5px;

    margin-top: 2px;
    padding: 4px 8px;

    color: #16834b !important;

    background: #edf9f2;

    border: 1px solid #d8eee1;
    border-radius: 7px;

    
    font-weight: 600;
}

.ds-module-item .ds-module-stock::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    background: #20a05a;

    border-radius: 50%;

    box-shadow:
        0 0 0 3px rgba(32,160,90,.10);
}


/* =============================================
   RATING
============================================= */

.ds-module-item .ds-category-item-rating {
    margin-top: 12px !important;
}

.ds-module-item .ds-module-rating {
    margin-bottom: 9px;
}

.ds-module-item .ds-module-rating-stars {
    gap: 1px;
}

.ds-module-item .ds-module-reviews {
    gap: 3px;
}

.ds-module-item .ds-module-reviews span {
    color: #8996a7 !important;
}


/* =============================================
   PRICE
============================================= */

.ds-module-item .ds-module-price {
    margin-top: 8px;
    margin-bottom: 12px;
}

.ds-module-item .ds-price-new {
    color: #102039 !important;

    
    font-weight: 800 !important;

    line-height: 1.2;

    letter-spacing: -.02em;
}


/* =============================================
   CART AREA
============================================= */

.ds-module-item .ds-module-cart {
    gap: 8px;

    margin-top: auto;
}


/* Quantity */

.ds-module-item .ds-module-quantity {
    height: 42px;

    background: #f7f9fc;

    border: 1px solid #e3e9f1;
    border-radius: 10px !important;

    overflow: hidden;
}

.ds-module-item .ds-module-quantity-btn {
    width: 34px;
    height: 40px;

    padding: 0;

    background: transparent;

    border: 0;

    transition:
        background .2s ease,
        color .2s ease;
}

.ds-module-item .ds-module-quantity-btn:hover {
    background: #edf4ff;
}

.ds-module-item .ds-module-quantity .form-control {
    width: 38px;
    height: 40px;

    padding: 0;

    text-align: center;

    background: transparent;

    border: 0 !important;

    box-shadow: none !important;

    color: #1d324b;

    
    font-weight: 600;
}


/* =============================================
   ADD TO CART
============================================= */

.ds-module-item .ds-module-cart-btn {
    flex: 1;

    min-height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 7px;

    padding: 0 13px;

    color: #ffffff !important;

    background:
        linear-gradient(
            135deg,
            #0750bd,
            #063f9f
        ) !important;

    border: 0 !important;
    border-radius: 10px !important;

    box-shadow:
        0 8px 18px rgba(7,80,189,.17);

    
    font-weight: 700;

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.ds-module-item .ds-module-cart-btn:hover {
    transform: translateY(-2px);

    box-shadow:
        0 12px 23px rgba(7,80,189,.25);
}

.ds-module-item .ds-module-cart-btn svg path {
    fill: #ffffff !important;
}

.ds-module-item .ds-module-cart-btn .button-text {
    color: #ffffff !important;
}


/* =============================================
   ATTRIBUTES
============================================= */

.ds-module-item .ds-module-attributes {
    position: relative;
    z-index: 2;

    margin-top: 13px;
    padding-top: 12px;

    border-top: 1px solid #edf1f5;
}

.ds-module-item .ds-module-attributes-item {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;

    gap: 8px;

    padding: 5px 0;

    border-bottom: 1px dashed #edf1f5;

    
    line-height: 1.35;
}

.ds-module-item .ds-module-attributes-item:last-child {
    border-bottom: 0;
}

.ds-module-item .ds-module-attributes-item .light-text {
    color: #8997a8 !important;
}

.ds-module-item .ds-module-attributes-item > span:last-child {
    color: #263b53;

    font-weight: 600;

    text-align: right;
}


/* =============================================
   STICKERS
============================================= */

.ds-module-item .ds-module-stickers {
    position: absolute;

    left: 10px;
    top: 10px;

    z-index: 6;

    gap: 5px;
}

.ds-module-item .ds-module-stickers > * {
    padding: 5px 8px;

    border-radius: 8px !important;

    
    font-weight: 700;

    box-shadow:
        0 4px 10px rgba(20,40,65,.06);
}


/* =============================================
   MOBILE
============================================= */

@media (max-width: 767px) {

    .ds-module-item.product-layout > .content-block {
        padding: 10px;

        border-radius: 15px;
    }

    .ds-module-item .ds-module-img-box {
        min-height: 170px;

        padding: 8px;

        border-radius: 12px;
    }

    .ds-module-item .ds-module-buttons {
        top: 6px !important;
        right: 6px !important;

        gap: 4px;
    }

    .ds-module-item .ds-module-button {
        width: 30px;
        height: 30px;

        border-radius: 8px !important;
    }

    .ds-module-item .ds-module-title {
        min-height: 36px;

        
        line-height: 1.4;
    }

    .ds-module-item .ds-module-code {
        
    }

    .ds-module-item .ds-module-stock {
        padding: 3px 6px;

        
    }

    .ds-module-item .ds-price-new {
        
    }

    .ds-module-item .ds-module-cart {
        gap: 6px;
    }

    .ds-module-item .ds-module-quantity {
        height: 38px;
    }

    .ds-module-item .ds-module-quantity-btn {
        width: 30px;
        height: 36px;
    }

    .ds-module-item .ds-module-quantity .form-control {
        width: 30px;
        height: 36px;
    }

    .ds-module-item .ds-module-cart-btn {
        min-height: 38px;

        padding: 0 9px;

        
    }

}


/* =============================================
   VERY SMALL MOBILE
============================================= */

@media (max-width: 575px) {

    .ds-module-item.product-layout {
        margin-bottom: 10px;
    }

    .ds-module-item .ds-module-img-box {
        min-height: 150px;
    }

    .ds-module-item .ds-module-cart-btn .button-text {
        display: none;
    }

    .ds-module-item .ds-module-cart-btn {
        flex: 0 0 42px;

        width: 42px;
        padding: 0;
    }

}

@media (max-width: 767px) {
    .ds-module-item .ds-module-buttons {
        display:none!important;
    }
}
/* =============================================
   MANUFACTURERS — SHOW MORE
============================================= */

.kk-manufacturers-more-wrap {
    display: flex;
    justify-content: center;

    margin-top: 18px;
}

.kk-manufacturers-more-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    min-height: 46px;

    padding: 0 20px;

    color: #0750bd;

    background: #ffffff;

    border: 1px solid #dce5f0;
    border-radius: 12px;

    font-family: inherit;
    
    font-weight: 700;

    cursor: pointer;

    box-shadow:
        0 6px 18px rgba(26, 45, 70, .05);

    transition:
        color .2s ease,
        background .2s ease,
        border-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

.kk-manufacturers-more-btn:hover {
    color: #0644a1;

    background: #edf4ff;
    border-color: #d0e0f6;

    transform: translateY(-2px);

    box-shadow:
        0 10px 24px rgba(7,80,189,.10);
}

.kk-manufacturers-more-icon {
    width: 17px;
    height: 17px;

    transition: transform .3s ease;
}

.kk-manufacturers-more-btn.is-open .kk-manufacturers-more-icon {
    transform: rotate(180deg);
}


/* Скрытые карточки */

.kk-manufacturers-card.kk-home-hidden {
    display: none;
}


/* Mobile */

@media (max-width: 575px) {

    .kk-manufacturers-more-wrap {
        margin-top: 14px;
    }

    .kk-manufacturers-more-btn {
        width: 100%;

        min-height: 44px;

        
    }

}
/* =============================================
   SUBCATEGORIES — MODERN CLEAN GRID
============================================= */

.ds-subcategories {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;

    gap: 10px !important;

    width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 16px !important;

    padding: 0 !important;
}


/* =============================================
   ITEM RESET
============================================= */

.ds-subcategories > .ds-subcategories-item {
    display: block !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    flex: none !important;
    flex-basis: auto !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* =============================================
   HIDE IMAGES
============================================= */

.ds-subcategories > .ds-subcategories-item img {
    display: none !important;
}


/* =============================================
   CARD
============================================= */

.ds-subcategories > .ds-subcategories-item > .content-block {
    position: relative;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    min-height: 62px;

    margin: 0 !important;
    padding: 13px 15px !important;

    box-sizing: border-box !important;

    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #f8fafc 100%
        ) !important;

    border: 1px solid #e2e9f1 !important;
    border-radius: 14px !important;

    overflow: hidden;

    text-decoration: none !important;

    box-shadow:
        0 4px 16px rgba(24, 39, 58, .035);

    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease,
        background .22s ease;
}


/* =============================================
   SOFT DECORATIVE GLOW
============================================= */

.ds-subcategories > .ds-subcategories-item > .content-block::before {
    content: "";

    position: absolute;

    right: -28px;
    top: -30px;

    width: 85px;
    height: 85px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(7, 80, 189, .065),
            rgba(7, 80, 189, 0) 70%
        );

    pointer-events: none;
}


/* =============================================
   TITLE
============================================= */

.ds-subcategories .ds-subcategories-title {
    position: relative;
    z-index: 2;

    display: block !important;

    width: auto !important;
    min-width: 0 !important;

    flex: 1 1 auto;

    margin: 0 !important;
    padding: 0 !important;

    color: #22364f !important;

    
    font-weight: 600 !important;
    line-height: 1.35 !important;

    text-align: left !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;

    transition: color .2s ease;
}


/* =============================================
   ARROW
============================================= */

.ds-subcategories > .ds-subcategories-item > .content-block::after {
    content: "→";

    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 28px;
    height: 28px;

    flex: 0 0 28px;

    margin-left: 10px;

    color: #8e9bac;

    background: #f2f6fb;

    border-radius: 8px;

    
    font-weight: 500;
    line-height: 1;

    transition:
        color .2s ease,
        background .2s ease,
        transform .2s ease;
}


/* =============================================
   HOVER
============================================= */

.ds-subcategories > .ds-subcategories-item > .content-block:hover {
    transform: translateY(-2px);

    background: #ffffff !important;

    border-color: #cedcea !important;

    box-shadow:
        0 10px 28px rgba(23, 43, 70, .075);
}

.ds-subcategories > .ds-subcategories-item > .content-block:hover
.ds-subcategories-title {
    color: #0750bd !important;
}

.ds-subcategories > .ds-subcategories-item > .content-block:hover::after {
    color: #ffffff;

    background: #0750bd;

    transform: translateX(2px);
}


/* =============================================
   TABLET
============================================= */

@media (max-width: 991px) {

    .ds-subcategories {
        grid-template-columns:
            repeat(3, minmax(0, 1fr)) !important;

        gap: 9px !important;
    }

    .ds-subcategories > .ds-subcategories-item > .content-block {
        min-height: 60px;

        padding: 12px 13px !important;
    }

    .ds-subcategories .ds-subcategories-title {
        
    }

}


/* =============================================
   MOBILE
============================================= */

@media (max-width: 575px) {

    .ds-subcategories {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;

        gap: 7px !important;

        margin-bottom: 12px !important;
    }

    .ds-subcategories > .ds-subcategories-item > .content-block {
        min-height: 68px;

        padding: 9px 10px !important;

        border-radius: 12px !important;

        align-items: center !important;
    }

    .ds-subcategories .ds-subcategories-title {
        display: -webkit-box !important;

        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;

        overflow: hidden;

        
        font-weight: 600 !important;
        line-height: 1.25 !important;

        text-align: left !important;
    }

    .ds-subcategories > .ds-subcategories-item > .content-block::after {
        width: 22px;
        height: 22px;

        flex: 0 0 22px;

        margin-left: 6px;

        border-radius: 7px;

        
    }

}


/* =============================================
   VERY SMALL MOBILE
============================================= */

@media (max-width: 360px) {

    .ds-subcategories {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;

        gap: 6px !important;
    }

    .ds-subcategories > .ds-subcategories-item > .content-block {
        min-height: 64px;

        padding: 8px 9px !important;
    }

    .ds-subcategories .ds-subcategories-title {
        
    }

}

/* =============================================
   KABEL-KIEV — MAINTENANCE PAGE
============================================= */

.kk-maintenance {
    position: relative;

    min-height: 100vh;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 40px 18px;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 15% 15%,
            rgba(7, 80, 189, .10),
            transparent 28%
        ),
        radial-gradient(
            circle at 85% 85%,
            rgba(7, 80, 189, .07),
            transparent 30%
        ),
        #f6f9fd;
}


/* =============================================
   BACKGROUND
============================================= */

.kk-maintenance-bg {
    position: absolute;
    inset: 0;

    pointer-events: none;
}

.kk-maintenance-glow {
    position: absolute;

    border-radius: 50%;

    filter: blur(90px);

    opacity: .30;
}

.kk-maintenance-glow.glow-1 {
    width: 320px;
    height: 320px;

    left: -120px;
    top: -100px;

    background: rgba(7, 80, 189, .20);
}

.kk-maintenance-glow.glow-2 {
    width: 360px;
    height: 360px;

    right: -140px;
    bottom: -120px;

    background: rgba(7, 80, 189, .14);
}

.kk-maintenance-dot {
    position: absolute;

    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #0750bd;

    opacity: .12;

    animation: kkMaintenanceFloat 7s ease-in-out infinite;
}

.kk-maintenance-dot.dot-1 {
    left: 10%;
    top: 30%;
}

.kk-maintenance-dot.dot-2 {
    right: 12%;
    top: 22%;

    animation-delay: -2s;
}

.kk-maintenance-dot.dot-3 {
    right: 20%;
    bottom: 18%;

    animation-delay: -4s;
}


/* =============================================
   WRAP
============================================= */

.kk-maintenance-wrap {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 760px;
}


/* =============================================
   CARD
============================================= */

.kk-maintenance-card {
    position: relative;

    padding: 48px 42px;

    text-align: center;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.98),
            rgba(248,251,255,.96)
        );

    border: 1px solid #e3eaf2;
    border-radius: 28px;

    box-shadow:
        0 24px 70px rgba(20, 42, 73, .10);

    overflow: hidden;
}

.kk-maintenance-card::after {
    content: "";

    position: absolute;

    right: -80px;
    top: -90px;

    width: 220px;
    height: 220px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(7, 80, 189, .07),
            transparent 70%
        );

    pointer-events: none;
}


/* =============================================
   VISUAL
============================================= */

.kk-maintenance-visual {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 20px;
}


/* electric line */

.kk-maintenance-line {
    position: absolute;

    top: -48px;
    left: 50%;

    width: 2px;
    height: 70px;

    transform: translateX(-50%);

    background:
        linear-gradient(
            to bottom,
            rgba(7,80,189,0),
            rgba(7,80,189,.22),
            rgba(7,80,189,.8)
        );
}

.kk-maintenance-pulse {
    position: absolute;

    left: 50%;
    bottom: -5px;

    width: 10px;
    height: 10px;

    transform: translateX(-50%);

    border-radius: 50%;

    background: #0750bd;

    box-shadow:
        0 0 0 7px rgba(7,80,189,.09),
        0 0 22px rgba(7,80,189,.45);

    animation: kkMaintenancePulse 1.7s ease-in-out infinite;
}


/* icon */

.kk-maintenance-icon {
    width: 132px;
    height: 132px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #0750bd;

    background:
        radial-gradient(
            circle,
            #ffffff 0%,
            #eef5ff 70%,
            #e7f0ff 100%
        );

    border-radius: 50%;

    box-shadow:
        0 16px 38px rgba(7,80,189,.14);

    animation: kkMaintenanceIcon 4s ease-in-out infinite;
}

.kk-maintenance-icon svg {
    width: 88px;
    height: 88px;
}


/* =============================================
   BADGE
============================================= */

.kk-maintenance-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 15px;
    padding: 7px 13px;

    color: #0750bd;

    background: #edf4ff;

    border: 1px solid #dce8f9;
    border-radius: 30px;

    font-size: 11px;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .07em;
}


/* =============================================
   TYPOGRAPHY
============================================= */

.kk-maintenance h1 {
    margin: 0 0 14px;

    color: #102039;

    font-size: 38px;
    font-weight: 780;

    line-height: 1.1;
    letter-spacing: -.03em;
}

.kk-maintenance-lead {
    max-width: 560px;

    margin: 0 auto 10px;

    color: #6f7f93;

    font-size: 15px;
    line-height: 1.65;
}

.kk-maintenance-note {
    margin-bottom: 24px;

    color: #40546d;

    font-size: 13px;
    font-weight: 600;
}


/* =============================================
   STATUS
============================================= */

.kk-maintenance-status {
    max-width: 520px;

    display: flex;
    align-items: flex-start;

    gap: 11px;

    margin: 0 auto 22px;
    padding: 14px 16px;

    text-align: left;

    background: #f7f9fc;

    border: 1px solid #e8edf3;
    border-radius: 14px;
}

.kk-maintenance-status-dot {
    width: 9px;
    height: 9px;

    flex: 0 0 9px;

    margin-top: 5px;

    border-radius: 50%;

    background: #20a05a;

    box-shadow:
        0 0 0 5px rgba(32,160,90,.10);

    animation: kkMaintenanceStatus 1.8s ease-in-out infinite;
}

.kk-maintenance-status strong {
    display: block;

    margin-bottom: 4px;

    color: #263a52;

    font-size: 12px;
}

.kk-maintenance-status span {
    display: block;

    color: #7c8999;

    font-size: 11px;
    line-height: 1.45;
}


/* =============================================
   BUTTON
============================================= */

.kk-maintenance-refresh {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    min-height: 48px;
    padding: 0 20px;

    color: #ffffff;

    background:
        linear-gradient(
            135deg,
            #0a4fbd,
            #063d99
        );

    border: 0;
    border-radius: 12px;

    font-family: inherit;
    font-size: 13px;
    font-weight: 700;

    cursor: pointer;

    box-shadow:
        0 10px 24px rgba(7,75,180,.22);

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.kk-maintenance-refresh:hover {
    transform: translateY(-2px);

    box-shadow:
        0 14px 30px rgba(7,75,180,.28);
}

.kk-maintenance-refresh svg {
    width: 18px;
    height: 18px;
}


/* =============================================
   ANIMATIONS
============================================= */

@keyframes kkMaintenancePulse {

    0%,
    100% {
        transform: translateX(-50%) scale(1);
        opacity: 1;
    }

    50% {
        transform: translateX(-50%) scale(1.35);
        opacity: .75;
    }

}

@keyframes kkMaintenanceIcon {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-7px);
    }

}

@keyframes kkMaintenanceStatus {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: .45;
    }

}

@keyframes kkMaintenanceFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-18px);
    }

}


/* =============================================
   MOBILE
============================================= */

@media (max-width: 575px) {

    .kk-maintenance {
        padding: 22px 12px;
    }

    .kk-maintenance-card {
        padding: 38px 18px 26px;

        border-radius: 20px;
    }

    .kk-maintenance-icon {
        width: 108px;
        height: 108px;
    }

    .kk-maintenance-icon svg {
        width: 72px;
        height: 72px;
    }

    .kk-maintenance h1 {
        font-size: 28px;
    }

    .kk-maintenance-lead {
        font-size: 13px;
    }

    .kk-maintenance-note {
        font-size: 12px;
    }

    .kk-maintenance-status {
        padding: 12px 13px;
    }

    .kk-maintenance-refresh {
        width: 100%;
    }

}