/*
Theme Name: Key Child
Template: key
Author: D.I.M. Studio
Description: Дочерняя тема для Key
Version: 1.0.9
*/

/* Product CTA: add first, then a clear direct route to the full cart. */
body.single-product .product-info form.cart .single_add_to_cart_button.kh-is-in-cart,
body.single-product .product-info form.cart .single_add_to_cart_button.kh-is-in-cart:hover,
body.single-product .product-info form.cart .single_add_to_cart_button.kh-is-in-cart:focus {
    display: inline-flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
    min-height: 52px;
    color: #fff !important;
    background: linear-gradient(135deg, #22b83f 0%, #18a936 100%) !important;
    border-color: #18a936 !important;
    box-shadow: 0 10px 24px rgba(24, 169, 54, .2) !important;
}

/* Mobile Stage 38: compact competitor-inspired header order. */
@media (max-width: 767px) {
    html body header.site-header .site-header-inner.full {
        display: grid !important;
        grid-template-columns: minmax(104px, 1fr) repeat(4, 44px) !important;
        grid-template-rows: 64px !important;
        align-items: center !important;
        gap: 0 4px !important;
        width: calc(100% - 20px) !important;
        min-height: 64px !important;
        margin: 0 10px !important;
        padding: 0 !important;
    }

    html body header.site-header .site-branding {
        grid-column: 1 !important;
        grid-row: 1 !important;
        justify-self: stretch !important;
        justify-content: flex-start !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 48px !important;
        margin: 0 !important;
        padding: 0 4px 0 0 !important;
    }

    html body header.site-header .site-logotype {
        justify-content: flex-start !important;
        width: 100% !important;
        max-width: 148px !important;
        min-width: 0 !important;
        height: 44px !important;
        margin: 0 !important;
    }

    html body header.site-header .site-logotype img {
        display: block !important;
        width: 100% !important;
        max-width: 148px !important;
        height: 44px !important;
        object-fit: contain !important;
        object-position: left center !important;
    }

    html body header.site-header .header-search {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: flex !important;
        position: relative !important;
        width: 44px !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        z-index: 10020 !important;
    }

    html body header.site-header .site-header-cart {
        grid-column: 3 !important;
        grid-row: 1 !important;
    }

    html body header.site-header .js-header-customer-account {
        grid-column: 4 !important;
        grid-row: 1 !important;
    }

    html body header.site-header .js-humburger {
        grid-column: 5 !important;
        grid-row: 1 !important;
    }

    html body header.site-header .js-header-favorite {
        display: none !important;
    }

    html body header.site-header .header-search,
    html body header.site-header .site-header-cart,
    html body header.site-header .js-header-customer-account,
    html body header.site-header .js-humburger {
        align-self: center !important;
        justify-self: center !important;
        box-sizing: border-box !important;
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        border: 1px solid rgba(128, 151, 183, .22) !important;
        border-radius: 13px !important;
        background: linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(244, 248, 253, .96)) !important;
        box-shadow: 0 4px 12px rgba(39, 66, 101, .08), inset 0 1px 0 rgba(255, 255, 255, .95) !important;
        color: #172033 !important;
        transition: border-color .18s ease, background .18s ease, transform .12s ease !important;
        touch-action: manipulation;
    }

    html body header.site-header .header-search:active,
    html body header.site-header .site-header-cart:active,
    html body header.site-header .js-header-customer-account:active,
    html body header.site-header .js-humburger:active {
        transform: scale(.96) !important;
    }

    html body header.site-header .site-header-cart .js-header-cart-link,
    html body header.site-header .js-header-customer-account,
    html body header.site-header .js-humburger,
    html body header.site-header .header-search .search-submit {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body header.site-header .header-search .search-form {
        position: relative !important;
        display: block !important;
        width: 44px !important;
        height: 44px !important;
        margin: 0 !important;
    }

    html body header.site-header .header-search .search-form > label {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
        white-space: nowrap !important;
    }

    html body header.site-header .header-search .search-submit {
        position: absolute !important;
        inset: 0 !important;
        border: 0 !important;
        border-radius: 13px !important;
        background: transparent !important;
        color: transparent !important;
        font-size: 0 !important;
        cursor: pointer !important;
    }

    html body header.site-header .header-search .search-submit::before,
    html body header.site-header .js-header-customer-account::before,
    html body header.site-header .site-header-cart .js-header-cart-link::before {
        content: "" !important;
        display: block !important;
        width: 21px !important;
        height: 21px !important;
        background: currentColor !important;
        mask-repeat: no-repeat !important;
        mask-position: center !important;
        mask-size: contain !important;
        -webkit-mask-repeat: no-repeat !important;
        -webkit-mask-position: center !important;
        -webkit-mask-size: contain !important;
    }

    html body header.site-header .header-search .search-submit::before {
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") !important;
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") !important;
    }

    html body header.site-header .site-header-cart .js-header-cart-link::before {
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2l2.1 10.1a2 2 0 0 0 2 1.6h7.7a2 2 0 0 0 2-1.6L20 8H6'/%3E%3Ccircle cx='10' cy='20' r='1'/%3E%3Ccircle cx='17' cy='20' r='1'/%3E%3C/svg%3E") !important;
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2l2.1 10.1a2 2 0 0 0 2 1.6h7.7a2 2 0 0 0 2-1.6L20 8H6'/%3E%3Ccircle cx='10' cy='20' r='1'/%3E%3Ccircle cx='17' cy='20' r='1'/%3E%3C/svg%3E") !important;
    }

    html body header.site-header .js-header-customer-account::before {
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4.5 21a7.5 7.5 0 0 1 15 0'/%3E%3C/svg%3E") !important;
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4.5 21a7.5 7.5 0 0 1 15 0'/%3E%3C/svg%3E") !important;
    }

    html body header.site-header .site-header-cart .header-cart__link-ico,
    html body header.site-header .js-header-customer-account .header-customer-account__text {
        display: none !important;
    }

    html body header.site-header .site-header-cart sup {
        top: -5px !important;
        right: -5px !important;
        min-width: 17px !important;
        height: 17px !important;
        padding: 0 4px !important;
        border: 2px solid #fff !important;
        border-radius: 999px !important;
        background: #ff4d5a !important;
        color: #fff !important;
        font-size: 9px !important;
        font-weight: 700 !important;
        line-height: 13px !important;
        text-align: center !important;
    }

    html body header.site-header .header-search.kh-search-open .search-form {
        position: fixed !important;
        top: 70px !important;
        left: 12px !important;
        right: 12px !important;
        width: auto !important;
        height: 52px !important;
        z-index: 10040 !important;
        border: 1px solid rgba(107, 143, 195, .28) !important;
        border-radius: 16px !important;
        background: rgba(255, 255, 255, .98) !important;
        box-shadow: 0 14px 32px rgba(27, 55, 94, .16) !important;
    }

    html body header.site-header .header-search.kh-search-open .search-form > label {
        position: absolute !important;
        inset: 0 50px 0 0 !important;
        width: auto !important;
        height: auto !important;
        overflow: visible !important;
        clip: auto !important;
    }

    html body header.site-header .header-search.kh-search-open .search-field {
        display: block !important;
        width: 100% !important;
        height: 50px !important;
        padding: 0 8px 0 16px !important;
        border: 0 !important;
        outline: 0 !important;
        background: transparent !important;
        color: #172033 !important;
        font-size: 16px !important;
    }

    html body header.site-header .header-search.kh-search-open .search-submit {
        inset: 3px 3px 3px auto !important;
        width: 44px !important;
        height: 44px !important;
        color: #0d6efd !important;
    }

    html body header.site-header .header-search.kh-search-open {
        border-color: rgba(13, 110, 253, .42) !important;
        background: #eef6ff !important;
        color: #0d6efd !important;
    }
}

/* Stage 42: stable MacBook search, complete tablet header and compact tablet benefits. */
@media (min-width: 1024px) and (max-width: 1700px) {
    html body:not(.is-mobile) #masthead.site-header .site-header-inner.full {
        grid-template-columns: minmax(160px, 194px) minmax(0, 1fr) minmax(180px, 240px) repeat(3, 44px) !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search.header-search {
        display: block !important;
        justify-self: stretch !important;
        width: 100% !important;
        min-width: 180px !important;
        max-width: 240px !important;
        padding: 0 !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-form {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 44px !important;
        width: 100% !important;
        min-width: 180px !important;
        max-width: 240px !important;
        height: 44px !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-form > label {
        position: static !important;
        display: block !important;
        width: auto !important;
        height: 44px !important;
        overflow: visible !important;
        clip: auto !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-field {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 44px !important;
        padding: 0 14px !important;
        border: 0 !important;
        background: transparent !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-submit {
        position: static !important;
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    html body #masthead.site-header .site-header-inner.full {
        display: grid !important;
        grid-template-areas: "logo search cart account burger" !important;
        grid-template-columns: minmax(180px, 1fr) repeat(4, 48px) !important;
        grid-template-rows: 72px !important;
        align-items: center !important;
        gap: 0 6px !important;
        width: calc(100% - 24px) !important;
        height: 72px !important;
        min-height: 72px !important;
        margin: 0 12px !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    html body #masthead.site-header .header-mobile-items-container,
    html body #masthead.site-header .header-mobile-item { display: contents !important; }
    html body #masthead.site-header .site-branding { grid-area: logo !important; inset: auto !important; transform: none !important; justify-self: start !important; }
    html body #masthead.site-header .header-search { grid-area: search !important; display: flex !important; }
    html body #masthead.site-header .site-header-cart { grid-area: cart !important; display: flex !important; }
    html body #masthead.site-header .js-header-customer-account { grid-area: account !important; display: flex !important; }
    html body #masthead.site-header .js-humburger { grid-area: burger !important; display: flex !important; inset: auto !important; transform: none !important; }
    html body #masthead.site-header .top-menu,
    html body #masthead.site-header .js-header-favorite { display: none !important; }

    html body #masthead.site-header .header-search.header-search,
    html body #masthead.site-header .site-header-cart,
    html body #masthead.site-header .js-header-customer-account,
    html body #masthead.site-header .js-humburger {
        align-self: center !important;
        justify-self: center !important;
        box-sizing: border-box !important;
        width: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        max-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid rgba(128, 151, 183, .22) !important;
        border-radius: 14px !important;
        background: linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(244, 248, 253, .96)) !important;
        box-shadow: 0 4px 12px rgba(39, 66, 101, .08), inset 0 1px 0 rgba(255, 255, 255, .95) !important;
    }

    html body #masthead.site-header .header-search .search-form {
        display: block !important;
        position: relative !important;
        width: 48px !important;
        height: 48px !important;
        margin: 0 !important;
    }

    html body #masthead.site-header .header-search .search-submit,
    html body #masthead.site-header .site-header-cart .header-cart__link,
    html body #masthead.site-header .js-header-customer-account,
    html body #masthead.site-header .js-humburger {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__features {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        width: min(100%, 620px) !important;
        min-height: 0 !important;
        margin: 18px auto 0 !important;
        padding: 14px 10px !important;
        border-radius: 22px !important;
        overflow: hidden !important;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature {
        display: grid !important;
        grid-template-rows: 42px auto !important;
        align-content: center !important;
        justify-items: center !important;
        gap: 7px !important;
        min-width: 0 !important;
        min-height: 76px !important;
        padding: 0 10px !important;
        text-align: center !important;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature + .kh-main-hero-showcase__feature {
        border-left: 1px solid rgba(107, 141, 185, .2) !important;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature-icon {
        width: 42px !important;
        height: 42px !important;
        margin: 0 !important;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature b {
        display: block !important;
        margin: 0 !important;
        font-size: 12px !important;
        line-height: 1.2 !important;
        text-align: center !important;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature b br,
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature small { display: none !important; }
}

@media (max-width: 1023px) {
    html body #masthead.site-header .header-search.kh-search-open .search-form {
        position: fixed !important;
        top: 76px !important;
        left: 12px !important;
        right: 12px !important;
        z-index: 10040 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 48px !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 52px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid rgba(116, 151, 196, .28) !important;
        border-radius: 16px !important;
        background: rgba(255, 255, 255, .98) !important;
        box-shadow: 0 14px 36px rgba(33, 71, 122, .18) !important;
        overflow: hidden !important;
    }

    html body #masthead.site-header .header-search.kh-search-open .search-form > label {
        position: static !important;
        display: block !important;
        width: auto !important;
        height: 52px !important;
        margin: 0 !important;
        overflow: visible !important;
        clip: auto !important;
        opacity: 1 !important;
        visibility: visible !important;
        white-space: normal !important;
    }

    html body #masthead.site-header .header-search.kh-search-open .search-field {
        display: block !important;
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 52px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        border: 0 !important;
        outline: 0 !important;
        background: transparent !important;
        color: #172033 !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    html body #masthead.site-header .header-search.kh-search-open .search-submit {
        position: static !important;
        inset: auto !important;
        right: auto !important;
        left: auto !important;
        display: flex !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 52px !important;
        color: #1167f1 !important;
    }
}

@media (min-width: 1024px) and (max-width: 1700px) {
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__features {
        top: calc(64.2% + 30px) !important;
    }
}

/* Stage 52: crisp article/picker arrows, unified featured tag and neutral utility header. */
.kh-article-card__more,
.home .kh-home-article-card__footer a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #738198 !important;
    line-height: 1 !important;
}

.kh-article-card__more::before,
.home .kh-home-article-card__footer a::before {
    content: "" !important;
    display: block !important;
    width: 15px !important;
    height: 15px !important;
    background-color: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10h12M11 6l4 4-4 4' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10h12M11 6l4 4-4 4' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.kh-product-picker__arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 16px !important;
    height: 16px !important;
    color: #7a8799 !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

.kh-product-picker__arrow::before {
    content: "" !important;
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    background-color: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10h12M11 6l4 4-4 4' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10h12M11 6l4 4-4 4' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.kh-product-picker__caret {
    color: #7a8799 !important;
}

.kh-product-picker__caret::before {
    content: "" !important;
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    border: 0 !important;
    background-color: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
    transform: none !important;
    transform-origin: center !important;
}

.kh-product-picker__item.is-active .kh-product-picker__caret::before,
.kh-product-picker__item[aria-expanded="true"] .kh-product-picker__caret::before {
    transform: rotate(180deg) !important;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .kh-article-card__tag,
body.category .kh-articles-grid > .kh-article-card:first-child .kh-article-card__tag {
    position: static !important;
    inset: auto !important;
    display: inline-flex !important;
    width: fit-content !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #7a8799 !important;
    font-size: 10.5px !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
}

@media (min-width: 768px) {
    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a,
    html body:not(.is-mobile) .dim-header-top a {
        color: #4f5d70 !important;
        background: transparent !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a::before,
    html body:not(.is-mobile) .dim-header-top a::before {
        background-color: #6f7c8f !important;
        opacity: .82 !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a:hover,
    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a:focus,
    html body:not(.is-mobile) .dim-header-top a:hover,
    html body:not(.is-mobile) .dim-header-top a:focus {
        color: #172033 !important;
        background: #f2f4f7 !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a:hover::before,
    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a:focus::before,
    html body:not(.is-mobile) .dim-header-top a:hover::before,
    html body:not(.is-mobile) .dim-header-top a:focus::before {
        background-color: #4b5565 !important;
        opacity: 1 !important;
    }
}

/* Stage 52 QA corrections: match the actual utility-header DOM and all card labels. */
.kh-articles-page .kh-article-card__tag,
body.category .kh-article-card__tag {
    color: #7a8799 !important;
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
}

@media (min-width: 768px) {
    html body:not(.is-mobile) .super-header.super-header a,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a {
        color: #4f5d70 !important;
        background: transparent !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }

    html body:not(.is-mobile) .super-header.super-header a::before,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a::before {
        background-color: #6f7c8f !important;
        opacity: .82 !important;
    }

    html body:not(.is-mobile) .super-header.super-header a:hover,
    html body:not(.is-mobile) .super-header.super-header a:focus,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a:hover,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a:focus {
        color: #172033 !important;
        background: #f2f4f7 !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }

    html body:not(.is-mobile) .super-header.super-header a:hover::before,
    html body:not(.is-mobile) .super-header.super-header a:focus::before,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a:hover::before,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a:focus::before {
        background-color: #4b5565 !important;
        opacity: 1 !important;
    }
}

/* Stage 53: overscan the featured-card blur so its filter edges stay outside the crop. */
@media (min-width: 721px) {
    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child,
    body.category .kh-articles-grid > .kh-article-card:first-child {
        overflow: hidden !important;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail,
    body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail {
        overflow: visible !important;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail::before,
    body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail::before {
        top: -28px !important;
        bottom: -28px !important;
        height: auto !important;
    }
}

@media (max-width: 767px) {
    html body #masthead.site-header .header-search.kh-search-open .search-form { top: 68px !important; }
}

@media (max-width: 359px) {
    html body header.site-header .site-header-inner.full {
        grid-template-columns: minmax(88px, 1fr) repeat(4, 44px) !important;
        gap: 0 2px !important;
        width: calc(100% - 12px) !important;
        margin: 0 6px !important;
    }
}

/* Mobile Stage 37: stable hamburger hit target and deterministic touch response. */
@media (max-width: 767px) {
    html body header.site-header .js-humburger {
        position: relative !important;
        z-index: 10010 !important;
        pointer-events: auto !important;
        touch-action: manipulation;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }
}

/* Mobile Stage 35: compact glass navigation panel below the header. */
@media (max-width: 767px) {
    html body .js-mobile-menu-placeholder.open #site-navigation-mobile,
    html body .mobile-menu-placeholder.open #site-navigation-mobile {
        box-sizing: border-box !important;
        padding: 0 10px 12px !important;
        overflow: visible !important;
        border: 0 !important;
        background: transparent !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner,
    html body .mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        box-sizing: border-box !important;
        padding: 10px !important;
        overflow: hidden !important;
        border: 1px solid rgba(128, 166, 224, .24) !important;
        border-radius: 0 0 20px 20px !important;
        background:
            radial-gradient(circle at 8% 0%, rgba(255, 255, 255, .98), transparent 42%),
            linear-gradient(150deg, rgba(255, 255, 255, .96), rgba(239, 247, 255, .94)) !important;
        box-shadow: 0 18px 38px rgba(43, 79, 140, .14), inset 0 1px 0 rgba(255, 255, 255, .96) !important;
        -webkit-backdrop-filter: blur(18px) saturate(1.08) !important;
        backdrop-filter: blur(18px) saturate(1.08) !important;
        animation: khMobileMenuPanelIn .2s ease-out both;
    }

    html body #site-navigation-mobile .main-navigation-inner > .menu,
    html body #site-navigation-mobile .main-navigation-inner > ul.menu {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body #site-navigation-mobile .menu > li {
        box-sizing: border-box !important;
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border: 1px solid rgba(128, 166, 224, .2) !important;
        border-radius: 13px !important;
        background: rgba(255, 255, 255, .78) !important;
        box-shadow: 0 6px 15px rgba(42, 76, 137, .06), inset 0 1px 0 rgba(255, 255, 255, .92) !important;
    }

    html body #site-navigation-mobile .menu > li:first-child {
        grid-column: 1 / -1 !important;
        background: linear-gradient(135deg, rgba(225, 239, 255, .94), rgba(245, 250, 255, .98)) !important;
        border-color: rgba(77, 137, 234, .26) !important;
    }

    html body #site-navigation-mobile .menu > li > a,
    html body #site-navigation-mobile .menu > li > span {
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 48px !important;
        padding: 0 13px !important;
        color: #172846 !important;
        font-size: 13px !important;
        font-weight: 750 !important;
        line-height: 1.2 !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        transition: background-color .18s ease, color .18s ease, transform .18s ease !important;
        touch-action: manipulation;
    }

    html body #site-navigation-mobile .menu > li > a[href]::after {
        content: "" !important;
        width: 7px !important;
        height: 7px !important;
        flex: 0 0 7px !important;
        margin-left: auto !important;
        border-top: 1.5px solid currentColor !important;
        border-right: 1.5px solid currentColor !important;
        opacity: .54 !important;
        transform: rotate(45deg) !important;
    }

    html body #site-navigation-mobile .menu > li > a[href]:active {
        color: #075cf2 !important;
        background: rgba(228, 240, 255, .74) !important;
        transform: scale(.985) !important;
    }
}

@keyframes khMobileMenuPanelIn {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner,
    html body .mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        animation: none !important;
    }
}

/* Stage 2: refractive cold-glass feature panel matched to the product cards. */
.kh-main-hero-showcase__features {
    --kh-feature-glass-accent: #71b9ff;
    isolation: isolate;
    overflow: visible;
    border: 1px solid rgba(255, 255, 255, .94);
    background:
        radial-gradient(ellipse at 50% -8%, rgba(255, 255, 255, .9) 0%, rgba(255, 255, 255, .2) 43%, transparent 68%),
        radial-gradient(ellipse at 50% 112%, color-mix(in srgb, var(--kh-feature-glass-accent) 10%, rgba(214, 231, 255, .3)) 0%, transparent 62%),
        linear-gradient(155deg, rgba(255, 255, 255, .58) 0%, rgba(239, 247, 255, .39) 48%, rgba(220, 236, 255, .47) 100%);
    box-shadow:
        0 6px 13px rgba(47, 79, 139, .05),
        0 0 14px 1px rgba(255, 255, 255, .72),
        0 0 21px color-mix(in srgb, var(--kh-feature-glass-accent) 21%, transparent),
        inset 0 0 0 1px rgba(255, 255, 255, .72),
        inset 2px 0 3px rgba(255, 255, 255, .72),
        inset -2px 0 4px rgba(185, 211, 249, .36),
        inset 0 2px 3px rgba(255, 255, 255, .95),
        inset 0 -3px 5px color-mix(in srgb, var(--kh-feature-glass-accent) 15%, rgba(184, 211, 249, .28)),
        inset 11px 0 24px rgba(255, 255, 255, .12),
        inset -11px 0 24px rgba(177, 207, 247, .11);
    -webkit-backdrop-filter: blur(24px) saturate(1.1) brightness(1.06);
    backdrop-filter: blur(24px) saturate(1.1) brightness(1.06);
}

.kh-main-hero-showcase__features::before,
.kh-main-hero-showcase__features::after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.kh-main-hero-showcase__features::before {
    z-index: 0;
    inset: 1px;
    border-radius: inherit;
    background:
        radial-gradient(circle at 4% 9%, rgba(255, 255, 255, 1) 0 2px, rgba(255, 255, 255, .5) 3px, transparent 16px),
        radial-gradient(circle at 96% 9%, rgba(255, 255, 255, .96) 0 2px, rgba(255, 255, 255, .4) 3px, transparent 17px),
        linear-gradient(116deg, rgba(255, 255, 255, .82) 0%, rgba(255, 255, 255, .16) 18%, transparent 38%),
        linear-gradient(180deg, rgba(255, 255, 255, .6) 0%, transparent 7%, transparent 91%, rgba(255, 255, 255, .38) 100%);
    box-shadow:
        inset 1px 0 0 rgba(255, 255, 255, .58),
        inset -1px 0 0 color-mix(in srgb, var(--kh-feature-glass-accent) 18%, rgba(255, 255, 255, .42)),
        inset 0 1px 0 rgba(255, 255, 255, .9),
        inset 0 -1px 0 color-mix(in srgb, var(--kh-feature-glass-accent) 22%, rgba(255, 255, 255, .52));
    opacity: .86;
}

.kh-main-hero-showcase__features::after {
    z-index: -1;
    inset: -2px;
    padding: 1.5px;
    border-radius: calc(26px + 2px);
    background: conic-gradient(from 205deg,
        color-mix(in srgb, var(--kh-feature-glass-accent) 76%, white) 0deg,
        rgba(255, 255, 255, 1) 48deg,
        color-mix(in srgb, var(--kh-feature-glass-accent) 50%, white) 112deg,
        rgba(255, 255, 255, 1) 182deg,
        color-mix(in srgb, var(--kh-feature-glass-accent) 70%, white) 255deg,
        rgba(255, 255, 255, .98) 316deg,
        color-mix(in srgb, var(--kh-feature-glass-accent) 76%, white) 360deg);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask-composite: exclude;
    opacity: .74;
    filter:
        drop-shadow(0 0 3px rgba(255, 255, 255, .95))
        drop-shadow(0 0 8px color-mix(in srgb, var(--kh-feature-glass-accent) 45%, transparent));
}

.kh-main-hero-showcase__feature {
    position: relative;
    z-index: 1;
    border-right: 0;
}

.kh-main-hero-showcase__feature:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 7px;
    right: 0;
    bottom: 7px;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(118, 151, 207, .3) 18%, rgba(255, 255, 255, .86) 50%, rgba(118, 151, 207, .26) 82%, transparent);
    box-shadow: 1px 0 0 rgba(255, 255, 255, .42);
}

.kh-main-hero-showcase__feature-icon {
    position: relative;
    border-color: color-mix(in srgb, var(--kh-feature-glass-accent) 48%, white);
    background:
        radial-gradient(circle at 22% 12%, rgba(255, 255, 255, 1) 0 1px, transparent 8px),
        linear-gradient(145deg, rgba(255, 255, 255, .88), rgba(220, 235, 255, .58));
    box-shadow:
        0 5px 14px rgba(29, 91, 196, .09),
        0 0 10px rgba(113, 185, 255, .14),
        inset 0 0 0 1px rgba(255, 255, 255, .66),
        inset 1px 1px 2px rgba(255, 255, 255, .95),
        inset -1px -1px 2px rgba(123, 173, 235, .18);
}

@media (min-width: 901px) {
    .kh-main-hero-showcase__features {
        top: 63.2%;
        left: 5.15%;
        width: 42.2%;
        height: 22.2%;
        min-height: 0;
        padding: 13px 10px;
        border-radius: 24px;
    }

    .kh-main-hero-showcase__features::after {
        border-radius: 26px;
    }

    .kh-main-hero-showcase__feature {
        grid-template-columns: 40px minmax(0, 1fr);
        align-content: center;
        column-gap: 11px;
        padding: 0 14px;
    }

    .kh-main-hero-showcase__feature-icon {
        width: 40px;
        height: 40px;
        border-radius: 12px;
    }

    .kh-main-hero-showcase__feature-icon svg {
        width: 25px;
        height: 25px;
    }

    .kh-main-hero-showcase__feature b {
        min-height: 36px;
        font-size: clamp(12px, .75vw, 13px);
        line-height: 1.34;
    }

    .kh-main-hero-showcase__feature small {
        margin-top: 7px;
        font-size: clamp(9px, .61vw, 11px);
        line-height: 1.42;
    }
}

@media (max-width: 900px) {
    .kh-main-hero-showcase__features::after {
        border-radius: 22px;
    }

    .kh-main-hero-showcase__feature:not(:last-child)::after {
        top: auto;
        right: 0;
        bottom: 0;
        left: 0;
        width: auto;
        height: 1px;
        background: linear-gradient(90deg, transparent, rgba(118, 151, 207, .28) 18%, rgba(255, 255, 255, .82) 50%, rgba(118, 151, 207, .24) 82%, transparent);
        box-shadow: 0 1px 0 rgba(255, 255, 255, .38);
    }
}

body.single-product .product-info form.cart .single_add_to_cart_button.kh-is-in-cart:hover {
    background: linear-gradient(135deg, #1eaa39 0%, #15972f 100%) !important;
    transform: translateY(-1px);
}

body.single-product .single_add_to_cart_button.kh-is-in-cart::before {
    display: none !important;
    content: none !important;
}

.single_add_to_cart_button.kh-is-in-cart .kh-cart-cta__title {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.1;
}

.single_add_to_cart_button.kh-is-in-cart .kh-cart-cta__hint {
    font-size: 11px;
    font-weight: 600;
    line-height: 1.1;
    opacity: .86;
}

body.single-product form.cart.kh-cart-syncing .quantity,
body.single-product form.cart.kh-cart-syncing .single_add_to_cart_button {
    pointer-events: none;
    opacity: .72;
}

/* The old drawer is intentionally retired; cart navigation goes to /cart/. */
html body .site-header-cart-hidden {
    display: none !important;
}

/* Product page: final visual lock for the confirmed in-cart state. */
html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart,
html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart.button,
html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart.alt {
    color: #ffffff !important;
    background-color: #18a936 !important;
    background-image: linear-gradient(135deg, #25bd49 0%, #159b34 100%) !important;
    border-color: #159b34 !important;
    box-shadow: 0 10px 24px rgba(21, 155, 52, .24) !important;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease !important;
}

html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart:hover,
html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart:focus-visible {
    color: #ffffff !important;
    background-color: #128c2d !important;
    background-image: linear-gradient(135deg, #1daa3f 0%, #128c2d 100%) !important;
    border-color: #128c2d !important;
    box-shadow: 0 12px 28px rgba(18, 140, 45, .3) !important;
}

html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart:focus-visible {
    outline: 3px solid rgba(24, 169, 54, .28) !important;
    outline-offset: 3px;
}

/* Key-Hub home mobile density: compact categories + native swipe rails. */
@media (max-width: 767px) {
    /* Categories: six compact visual tiles instead of six tall promo cards. */
    html body.home .section-html.section-1 {
        margin-top: 10px !important;
        margin-bottom: 22px !important;
    }

    html body.home .section-html.section-1 > .section-block__header {
        display: none !important;
    }

    html body.home .section-html.section-1 .section-html__body {
        width: calc(100% - 24px) !important;
        max-width: 520px !important;
        margin: 0 auto !important;
    }

    html body.home .section-html.section-1 .dim-t3 {
        margin: 0 0 18px !important;
        color: #111c33 !important;
        font-size: 24px !important;
        font-weight: 900 !important;
        line-height: 1.12 !important;
        letter-spacing: -.025em !important;
        text-align: center !important;
    }

    html body.home .dimm-product-categories {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 0 !important;
    }

    html body.home .dimm-product-categories .dimm-category-item {
        position: relative !important;
        min-width: 0 !important;
        height: 146px !important;
        margin: 0 !important;
        overflow: hidden !important;
        border: 1px solid rgba(214, 226, 243, .92) !important;
        border-radius: 19px !important;
        background:
            radial-gradient(circle at 50% 88%, rgba(90, 161, 255, .12), transparent 48%),
            linear-gradient(180deg, #fbfdff 0%, #f2f7ff 100%) !important;
        box-shadow: 0 8px 20px rgba(39, 77, 139, .065) !important;
        transform: none !important;
    }

    html body.home .dimm-product-categories .dimm-category-item:nth-child(2n) {
        background:
            radial-gradient(circle at 50% 88%, rgba(90, 161, 255, .12), transparent 48%),
            linear-gradient(180deg, #fbfdff 0%, #f2f7ff 100%) !important;
    }

    html body.home .dimm-product-categories .dimm-category-item::before {
        content: none !important;
    }

    html body.home .dimm-product-categories .dimm-category-item::after {
        content: none !important;
    }

    html body.home .dimm-product-categories .dimm-category-details,
    html body.home .dimm-product-categories .dimm-category-info {
        position: static !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body.home .dimm-product-categories .dimm-category-info > div {
        position: relative !important;
        z-index: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        padding: 14px 12px 0 !important;
        pointer-events: none !important;
    }

    html body.home .dimm-product-categories .dimm-category-name {
        min-height: 31px !important;
        display: flex !important;
        align-items: flex-start !important;
        justify-content: center !important;
        max-width: calc(100% - 12px) !important;
        margin: 0 !important;
        color: #15213a !important;
        font-size: 14px !important;
        font-weight: 850 !important;
        line-height: 1.12 !important;
        letter-spacing: -.012em !important;
        text-align: center !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
        transform: translateX(1px) !important;
    }

    html body.home .dimm-product-categories .dimm-category-summary,
    html body.home .dimm-product-categories .dimm-category-action {
        display: none !important;
    }

    html body.home .dimm-product-categories .dimm-category-visual-link {
        position: absolute !important;
        inset: 0 !important;
        z-index: 3 !important;
        display: block !important;
        width: auto !important;
        height: auto !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: inherit !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    html body.home .dimm-product-categories .dimm-category-visual {
        position: absolute !important;
        top: 46px !important;
        right: auto !important;
        bottom: auto !important;
        left: 50% !important;
        display: block !important;
        width: 88px !important;
        height: 88px !important;
        max-width: none !important;
        margin: 0 !important;
        object-fit: contain !important;
        filter: none !important;
        transform: translateX(-50%) !important;
    }

    html body.home .dimm-product-categories .dimm-category-visual-link:focus-visible {
        outline: 3px solid rgba(49, 93, 255, .35) !important;
        outline-offset: -4px !important;
    }

    /* Shared native swipe behavior. The exposed next card is the affordance. */
    html body.home .section-products .shop-grid,
    html body.home .kh-home-articles-grid,
    html body.home .kh-reviews-v2-layout .admin-product-reviews,
    html body.front-page .kh-reviews-v2-layout .admin-product-reviews {
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        overscroll-behavior-inline: contain !important;
        scroll-behavior: smooth !important;
        scroll-snap-type: x mandatory !important;
        scroll-padding-inline: 12px !important;
        -webkit-overflow-scrolling: touch !important;
    }

    html body.home .section-products .shop-grid::-webkit-scrollbar,
    html body.home .kh-home-articles-grid::-webkit-scrollbar,
    html body.home .kh-reviews-v2-layout .admin-product-reviews::-webkit-scrollbar,
    html body.front-page .kh-reviews-v2-layout .admin-product-reviews::-webkit-scrollbar {
        display: none !important;
    }

    /* Popular products: one-row rail, current card plus a visible next edge. */
    html body.home .section-products {
        position: relative !important;
        overflow: visible !important;
    }

    html body.home .section-products > .section-block__header {
        position: relative !important;
        padding-right: 0 !important;
    }

    html body.home .section-products > .section-block__header::after {
        content: none !important;
        position: absolute !important;
        top: 50% !important;
        right: 12px !important;
        color: #315dff !important;
        font-size: 11px !important;
        font-weight: 850 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        transform: translateY(-50%) !important;
    }

    html body.home .section-products > .section-block__description-wrapper {
        position: relative !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    html body.home .section-products > .section-block__description-wrapper::after {
        content: none !important;
        position: absolute !important;
        top: 50% !important;
        right: 12px !important;
        color: #315dff !important;
        font-size: 11px !important;
        font-weight: 850 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        transform: translateY(-50%) !important;
    }

    html body.home .section-products .shop-grid {
        position: relative !important;
        left: -28px !important;
        width: calc(100% + 56px) !important;
        max-width: none !important;
        display: flex !important;
        flex-flow: row nowrap !important;
        align-items: stretch !important;
        gap: 12px !important;
        margin: 0 !important;
        padding: 2px 12px 16px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        box-sizing: border-box !important;
    }

    html body.home .section-products .shop-grid > .shop-item {
        width: min(calc(100vw - 112px), 270px) !important;
        min-width: min(calc(100vw - 112px), 270px) !important;
        max-width: min(calc(100vw - 112px), 270px) !important;
        flex: 0 0 min(calc(100vw - 112px), 270px) !important;
        margin: 0 !important;
        padding: 12px !important;
        border: 1px solid #e2eaf6 !important;
        border-radius: 16px !important;
        background: #fff !important;
        box-shadow: 0 10px 24px rgba(28, 58, 108, .07) !important;
        box-sizing: border-box !important;
        scroll-snap-align: start !important;
        scroll-snap-stop: normal !important;
    }

    /* Mobile "Показать всё": remove the legacy overlap with product cards. */
    html body.home .section-html.section-3 .section-html__body > div[style] {
        margin-top: -36px !important;
        text-align: center !important;
    }

    /* Articles: image-led compact rail; supporting copy stays available on desktop. */
    html body.home .kh-articles-heading {
        padding-top: 12px !important;
        box-sizing: border-box !important;
    }

    html body.home .kh-articles-heading__badge {
        margin-bottom: 10px !important;
    }

    html body.home .kh-articles-heading__title {
        margin-top: 0 !important;
    }

    html body.home .kh-articles-fix {
        width: 100% !important;
        max-width: none !important;
        margin: -4px auto 0 !important;
        overflow: visible !important;
    }

    html body.home .kh-home-articles-grid {
        width: 100% !important;
        max-width: none !important;
        display: flex !important;
        flex-flow: row nowrap !important;
        gap: 12px !important;
        margin: 0 !important;
        padding: 2px 12px 14px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    html body.home .kh-home-article-card {
        width: min(76vw, 286px) !important;
        min-width: min(76vw, 286px) !important;
        max-width: min(76vw, 286px) !important;
        flex: 0 0 min(76vw, 286px) !important;
        border-radius: 16px !important;
        scroll-snap-align: start !important;
        scroll-snap-stop: normal !important;
    }

    html body.home .kh-home-article-card__media {
        aspect-ratio: 16 / 9 !important;
    }

    html body.home .kh-home-article-card__body {
        min-height: 94px !important;
        padding: 12px 13px 13px !important;
    }

    html body.home .kh-home-article-card__tag {
        margin-bottom: 8px !important;
        padding: 5px 8px !important;
        font-size: 10px !important;
    }

    html body.home .kh-home-article-card__title {
        min-height: 36px !important;
        margin: 0 !important;
        font-size: 14px !important;
        line-height: 1.28 !important;
    }

    html body.home .kh-home-article-card__excerpt,
    html body.home .kh-home-article-card__footer {
        display: none !important;
    }

    html body.home .kh-all-articles-wrap {
        margin-top: 10px !important;
    }

    /* Reviews: one compact swipe row with the next card deliberately exposed. */
    html body.home .kh-reviews-v2-layout .admin-product-reviews,
    html body.front-page .kh-reviews-v2-layout .admin-product-reviews {
        width: calc(100% + 16px) !important;
        max-width: none !important;
        display: flex !important;
        flex-flow: row nowrap !important;
        align-items: stretch !important;
        gap: 12px !important;
        margin: 0 !important;
        padding: 2px 16px 14px 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        box-sizing: border-box !important;
    }

    html body.home .kh-reviews-v2-layout .apr-review,
    html body.front-page .kh-reviews-v2-layout .apr-review {
        width: min(calc(100vw - 104px), 300px) !important;
        min-width: min(calc(100vw - 104px), 300px) !important;
        max-width: min(calc(100vw - 104px), 300px) !important;
        flex: 0 0 min(calc(100vw - 104px), 300px) !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        scroll-snap-align: start !important;
        scroll-snap-stop: normal !important;
    }

    /* Footer: pair navigation groups to reduce the long mobile column. */
    html body footer.site-footer .footer-widgets {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: start !important;
        column-gap: 24px !important;
        row-gap: 22px !important;
    }

    html body footer.site-footer .footer-widget {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }

    html body footer.site-footer .footer-widget:nth-child(5) {
        grid-column: 1 / -1 !important;
    }
}

/* Recommendation block: reference-accurate final cascade lock. */
html body.single-product .kh-sidebar-recommendations-widget,
html body.single-post .kh-single-side-card.kh-single-products {
    box-sizing: border-box !important;
    padding: 16px !important;
    border: 1px solid #e6ebf4 !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(30, 64, 120, .055) !important;
}

html body.single-product .kh-sidebar-recommendations__head,
html body.single-post .kh-single-products h2 {
    margin-bottom: 16px !important;
}

html body.single-product .kh-sidebar-recommendations__list,
html body.single-post .kh-single-products-list {
    gap: 8px !important;
}

html body.single-product .kh-sidebar-product[style],
html body.single-post .kh-single-product[style] {
    grid-template-columns: minmax(96px, 40%) minmax(0, 1fr) 44px !important;
    gap: 10px !important;
    min-height: 142px !important;
    padding: 9px !important;
    border: 1px solid #e7edf7 !important;
    border-radius: 16px !important;
    background: #fff !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb,
html body.single-post .kh-single-product[style] .kh-single-product__image {
    position: relative !important;
    z-index: 0 !important;
    align-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 122px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 13px !important;
    background: linear-gradient(145deg, var(--kh-rec-bg-start), var(--kh-rec-bg-end)) !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb::before,
html body.single-post .kh-single-product[style] .kh-single-product__image::before {
    width: 116px !important;
    height: 116px !important;
    left: -31px !important;
    bottom: -29px !important;
    background: var(--kh-rec-orb) !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb img,
html body.single-post .kh-single-product[style] .kh-single-product__image img {
    width: 100% !important;
    max-width: none !important;
    height: 118px !important;
    max-height: 118px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    transform: scale(1.16) !important;
    filter: drop-shadow(0 8px 9px rgba(32, 55, 92, .14)) !important;
}

html body.single-product .kh-sidebar-product[style]:hover .kh-sidebar-product__thumb img,
html body.single-post .kh-single-product[style]:hover .kh-single-product__image img {
    transform: scale(1.19) !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__body,
html body.single-post .kh-single-product[style] .kh-single-product__body {
    align-self: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 14px !important;
    min-width: 0 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__title,
html body.single-post .kh-single-product[style] .kh-single-product__title {
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.27 !important;
    -webkit-line-clamp: 4 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__price,
html body.single-post .kh-single-product[style] .kh-single-product__price {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 3px !important;
    color: #0865f5 !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__price del,
html body.single-post .kh-single-product[style] .kh-single-product__price del {
    display: block !important;
    color: #9aa4b2 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__price ins,
html body.single-post .kh-single-product[style] .kh-single-product__price ins {
    display: block !important;
    color: #0865f5 !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__action {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
}

html body.single-product .kh-sidebar-recommendations__more,
html body.single-post .kh-single-products-more {
    min-height: 50px !important;
    margin-top: 10px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: #f3f7ff !important;
    color: #15325f !important;
    box-shadow: none !important;
}

@media (max-width: 360px) {
    html body.single-product .kh-sidebar-product[style],
    html body.single-post .kh-single-product[style] {
        grid-template-columns: 86px minmax(0, 1fr) 42px !important;
        min-height: 134px !important;
        padding: 8px !important;
    }

    html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb,
    html body.single-post .kh-single-product[style] .kh-single-product__image {
        min-height: 116px !important;
    }
}

/* Product tabs — approved document-card navigation, July 2026. */
html body.single-product .woocommerce-tabs {
    left: 0 !important;
    width: min(1040px, calc(100% + 56px)) !important;
    max-width: 1040px !important;
}

html body.single-product .woocommerce-tabs .wc-tabs {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 20px !important;
    min-height: 90px !important;
    margin: 0 !important;
    padding: 0 0 20px !important;
    overflow: visible !important;
    border: 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: left !important;
}

html body.single-product .woocommerce-tabs .wc-tabs::before,
html body.single-product .woocommerce-tabs .wc-tabs::after {
    display: none !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li {
    position: relative !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: left !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li::before,
html body.single-product .woocommerce-tabs .wc-tabs > li::after {
    display: none !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li > a {
    position: relative !important;
    width: auto !important;
    height: 68px !important;
    min-height: 68px !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 0 8px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #111827 !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-decoration: none !important;
    outline: 0 !important;
    outline-offset: 0 !important;
    transform: none !important;
    transition: color .18s ease, background-color .18s ease, box-shadow .18s ease !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li > a::before {
    content: "" !important;
    position: static !important;
    flex: 0 0 30px !important;
    width: 30px !important;
    height: 30px !important;
    display: block !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #111827 !important;
    box-shadow: none !important;
    -webkit-mask-position: center !important;
    mask-position: center !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-size: contain !important;
    mask-size: contain !important;
}

/* Description: outlined document with folded corner and two text lines. */
html body.single-product .woocommerce-tabs .wc-tabs > li.description_tab > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 40' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 1.5h11l7 7v28H7a4 4 0 0 1-4-4v-27a4 4 0 0 1 4-4Z'/%3E%3Cpath d='M18 1.5v7h7'/%3E%3Cpath d='M10 20h9'/%3E%3Cpath d='M10 26h9'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 40' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 1.5h11l7 7v28H7a4 4 0 0 1-4-4v-27a4 4 0 0 1 4-4Z'/%3E%3Cpath d='M18 1.5v7h7'/%3E%3Cpath d='M10 20h9'/%3E%3Cpath d='M10 26h9'/%3E%3C/svg%3E") !important;
}

/* Composition: three distinct stacked layers from the approved icon. */
html body.single-product .woocommerce-tabs .wc-tabs > li.custom_tab_0_tab > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='black' stroke-width='2.15' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 3 13 7-13 7L3 10l13-7Z'/%3E%3Cpath d='m3 16 13 7 13-7'/%3E%3Cpath d='m3 22 13 7 13-7'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='black' stroke-width='2.15' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 3 13 7-13 7L3 10l13-7Z'/%3E%3Cpath d='m3 16 13 7 13-7'/%3E%3Cpath d='m3 22 13 7 13-7'/%3E%3C/svg%3E") !important;
}

/* A five-tab product uses custom tab 1 for system requirements. */
html body.single-product .woocommerce-tabs .wc-tabs:has(> li.custom_tab_2_tab) > li.custom_tab_1_tab > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='24' height='17' rx='2'/%3E%3Cpath d='M16 21v7'/%3E%3Cpath d='M10 28h12'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='24' height='17' rx='2'/%3E%3Cpath d='M16 21v7'/%3E%3Cpath d='M10 28h12'/%3E%3C/svg%3E") !important;
}

/* Four-tab products use custom tab 1 for “How to buy”; five-tab products use custom tab 2. */
html body.single-product .woocommerce-tabs .wc-tabs:not(:has(> li.custom_tab_2_tab)) > li.custom_tab_1_tab > a::before,
html body.single-product .woocommerce-tabs .wc-tabs > li.custom_tab_2_tab > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 11h18l1 17H6l1-17Z'/%3E%3Cpath d='M11 11V8a5 5 0 0 1 10 0v3'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 11h18l1 17H6l1-17Z'/%3E%3Cpath d='M11 11V8a5 5 0 0 1 10 0v3'/%3E%3C/svg%3E") !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li.kh_product_faq_tab > a::before,
html body.single-product .woocommerce-tabs .wc-tabs > li.reviews_tab > a::before,
html body.single-product .woocommerce-tabs .wc-tabs > li.custom_tab_3_tab > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='16' cy='16' r='13'/%3E%3Cpath d='M12.5 12a3.7 3.7 0 1 1 5.4 3.3c-1.3.7-1.9 1.4-1.9 2.7'/%3E%3Cpath d='M16 23h.01'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='16' cy='16' r='13'/%3E%3Cpath d='M12.5 12a3.7 3.7 0 1 1 5.4 3.3c-1.3.7-1.9 1.4-1.9 2.7'/%3E%3Cpath d='M16 23h.01'/%3E%3C/svg%3E") !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li > a:hover {
    color: #111827 !important;
    border-radius: 12px !important;
    background: #f8fafc !important;
    box-shadow: none !important;
    transform: none !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li.active {
    flex-basis: auto !important;
    width: max-content !important;
    min-width: 212px !important;
    max-width: 320px !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li.active > a {
    width: max-content !important;
    min-width: 212px !important;
    max-width: 320px !important;
    height: 68px !important;
    min-height: 68px !important;
    display: block !important;
    padding: 35px 14px 8px 74px !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 13px !important;
    background: linear-gradient(110deg, #fcfdfe 0%, #f3f5f8 100%) !important;
    box-shadow: 0 5px 14px rgba(26, 63, 118, .045) !important;
    color: #111827 !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li > a:focus,
html body.single-product .woocommerce-tabs .wc-tabs > li > a:focus-visible {
    outline: 0 !important;
    outline-offset: 0 !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li.active > a:focus-visible {
    box-shadow: 0 5px 14px rgba(26, 63, 118, .045), 0 0 0 2px rgba(71, 85, 105, .11) !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li.active > a::before {
    position: absolute !important;
    left: 25px !important;
    top: 15px !important;
    width: 36px !important;
    height: 40px !important;
    background: #334155 !important;
    box-shadow: none !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li.active > a::after {
    content: "Текущий раздел" !important;
    position: absolute !important;
    top: 13px !important;
    left: 74px !important;
    display: block !important;
    color: #64748b !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
}

html body.single-product .woocommerce-tabs .wc-tabs > li.active::after {
    content: "" !important;
    position: absolute !important;
    z-index: 2 !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 3px !important;
    display: block !important;
    border-radius: 13px 0 0 13px !important;
    background: #475569 !important;
}

@media (max-width: 768px) {
    html body.single-product .woocommerce-tabs {
        width: 100% !important;
        max-width: 100% !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs {
        justify-content: flex-start !important;
        gap: 10px !important;
        min-height: 88px !important;
        padding-bottom: 18px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x proximity;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li {
        scroll-snap-align: start;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li > a {
        padding-right: 12px !important;
        padding-left: 12px !important;
        white-space: nowrap !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active {
        width: max-content !important;
        min-width: 202px !important;
        max-width: 312px !important;
        flex-basis: auto !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active > a {
        width: max-content !important;
        min-width: 202px !important;
        max-width: 312px !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active > a {
        padding: 35px 12px 8px 70px !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active > a::before {
        left: 23px !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active > a::after {
        left: 70px !important;
    }
}

/* Codex: approved borderless distribution widget, July 2026. */
html body.single-product .keyhub-sidebar.keyhub-sidebar--borderless {
    --kh-download-text: #172033;
    --kh-download-muted: #738197;
    --kh-download-green: #16a34a;
    --kh-download-orange: #f05f2a;
    box-sizing: border-box !important;
    padding: 17px 16px 15px !important;
    overflow: hidden !important;
    border: 1px solid #e4ecf7 !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
    color: var(--kh-download-text) !important;
    box-shadow: 0 12px 30px rgba(18, 35, 68, .055) !important;
}

html body.single-product .keyhub-sidebar--borderless .sidebar-status {
    display: flex !important;
    align-items: center !important;
    min-height: 30px !important;
    margin: 0 0 7px !important;
    padding: 0 !important;
    border: 0 !important;
    color: var(--kh-download-green) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

html body.single-product .keyhub-sidebar--borderless .sidebar-status .current-indicator {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    min-width: 0 !important;
}

html body.single-product .keyhub-sidebar--borderless .kh-sidebar-status-icon {
    display: block !important;
    width: 23px !important;
    height: 23px !important;
    flex: 0 0 23px !important;
    object-fit: contain !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body.single-product .keyhub-sidebar--borderless .sidebar-downloads {
    display: grid !important;
    gap: 0 !important;
    margin: 0 !important;
}

html body.single-product .keyhub-sidebar--borderless .download-item {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 9px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

html body.single-product .keyhub-sidebar--borderless .download-item:hover {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

html body.single-product .keyhub-sidebar--borderless .download-item .info {
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
    min-width: 0 !important;
    color: var(--kh-download-text) !important;
    font-size: 13.5px !important;
    font-weight: 750 !important;
    line-height: 1.22 !important;
}

html body.single-product .keyhub-sidebar--borderless .download-item .info span {
    min-width: 0 !important;
    overflow-wrap: normal !important;
}

html body.single-product .keyhub-sidebar--borderless .download-item img.kh-sidebar-source-icon {
    display: block !important;
    width: 38px !important;
    height: 38px !important;
    flex: 0 0 38px !important;
    object-fit: contain !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body.single-product .keyhub-sidebar--borderless .download-item img.kh-sidebar-source-icon--adobe,
html body.single-product .keyhub-sidebar--borderless .download-item img.kh-sidebar-source-icon--apple,
html body.single-product .keyhub-sidebar--borderless .download-item img.kh-sidebar-source-icon--microsoft {
    width: 32px !important;
    height: 32px !important;
    margin: 0 3px !important;
    flex-basis: 32px !important;
}

html body.single-product .keyhub-sidebar--borderless .download-item a {
    position: relative !important;
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 74px !important;
    min-height: 36px !important;
    padding: 0 13px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, #6d66f7 0%, #2fc5ef 100%) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    box-shadow: 0 7px 15px rgba(63, 111, 232, .18) !important;
    transform: none !important;
}

html body.single-product .keyhub-sidebar--borderless .download-item a:hover {
    background: linear-gradient(135deg, #625be9 0%, #22b8e7 100%) !important;
    box-shadow: 0 9px 18px rgba(63, 111, 232, .24) !important;
    transform: translateY(-1px) !important;
}

html body.single-product .keyhub-sidebar--borderless .download-item a:focus-visible {
    outline: 3px solid rgba(59, 130, 246, .28) !important;
    outline-offset: 2px !important;
}

html body.single-product .keyhub-sidebar--borderless .buy-box {
    margin: 6px 0 3px !important;
}

html body.single-product .keyhub-sidebar--borderless .delivery {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(90deg, rgba(255, 247, 237, .78) 0%, rgba(255, 255, 255, 0) 100%) !important;
    color: var(--kh-download-orange) !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    box-shadow: none !important;
}

html body.single-product .keyhub-sidebar--borderless .kh-sidebar-delivery-icon {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 18px !important;
    object-fit: contain !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body.single-product .keyhub-sidebar--borderless .sidebar-footer {
    margin: 0 !important;
    padding: 9px 0 0 !important;
    border: 0 !important;
    color: var(--kh-download-muted) !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
}

@media (prefers-reduced-motion: reduce) {
    html body.single-product .keyhub-sidebar--borderless .download-item a {
        transition: none !important;
    }
}

/* Exact wide hero canvas: 2089 x 753 at full desktop size. */
@media (min-width: 901px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        width: min(2089px, calc(100vw - 20px));
        min-height: 0;
        max-height: none;
        aspect-ratio: 2089 / 753;
        margin-right: 0;
        margin-left: 50%;
        transform: translateX(-50%);
    }

    .kh-main-hero-showcase__background {
        object-fit: fill;
        object-position: center;
    }

    .kh-main-hero-showcase__copy {
        top: 7.1%;
        left: 5.25%;
        width: 36.4%;
    }

    .kh-main-hero-showcase__eyebrow {
        min-height: 40px;
        padding: 0 15px;
        gap: 9px;
        border-radius: 16px;
        font-size: clamp(11px, .72vw, 15px);
    }

    .kh-main-hero-showcase__eyebrow svg {
        width: 20px;
        height: 20px;
    }

    #kh-main-hero.kh-main-hero-showcase h1 {
        max-width: 720px;
        margin-top: 18px;
        font-size: clamp(38px, 2.65vw, 60px);
        line-height: 1.08;
    }

    #kh-main-hero.kh-main-hero-showcase p {
        max-width: 660px;
        margin-top: 16px;
        font-size: clamp(12px, .82vw, 17px);
        line-height: 1.5;
    }

    .kh-main-hero-showcase__actions {
        gap: 18px;
        margin-top: 18px;
    }

    .kh-main-hero-showcase__button {
        min-height: 54px;
        padding: 0 24px;
        gap: 17px;
        border-radius: 17px;
        font-size: clamp(12px, .76vw, 16px);
    }

    .kh-main-hero-showcase__button--primary {
        min-width: 238px;
    }

    .kh-main-hero-showcase__button--secondary {
        min-width: 244px;
    }

    .kh-main-hero-showcase__features {
        top: 55.6%;
        left: 5.2%;
        width: 36.4%;
        min-height: 19.1%;
        padding: 17px 8px;
        border-radius: 23px;
    }

    .kh-main-hero-showcase__feature {
        grid-template-columns: 40px minmax(0, 1fr);
        column-gap: 9px;
        padding: 0 11px;
    }

    .kh-main-hero-showcase__feature-icon {
        width: 40px;
        height: 40px;
        border-radius: 12px;
    }

    .kh-main-hero-showcase__feature-icon svg {
        width: 26px;
        height: 26px;
    }

    .kh-main-hero-showcase__feature b {
        font-size: clamp(11px, .68vw, 14px);
    }

    .kh-main-hero-showcase__feature small {
        margin-top: 13px;
        font-size: clamp(9px, .57vw, 12px);
    }

    .kh-main-hero-showcase__trust {
        left: 5.05%;
        bottom: 4.7%;
        width: 37.5%;
        gap: 19px;
    }

    .kh-main-hero-showcase__trust > span {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 9px;
    }

    .kh-main-hero-showcase__trust i {
        width: 34px;
        height: 34px;
        font-size: 19px;
    }

    .kh-main-hero-showcase__trust b {
        font-size: clamp(9px, .57vw, 12px);
    }

    .kh-main-hero-showcase__trust small {
        margin-top: 7px;
        font-size: clamp(8px, .52vw, 11px);
    }

    .kh-main-hero-showcase__service-icon {
        top: 4.2%;
        right: 19.4%;
        width: 11.9%;
    }

    .kh-main-hero-showcase__orbit {
        top: 14.9%;
        right: 8.6%;
        width: 35.3%;
        height: 8.1%;
    }

    .kh-main-hero-showcase__products {
        top: 35.2%;
        right: 5.7%;
        width: 40.2%;
        height: 34.7%;
        gap: 14px;
    }

    .kh-main-hero-showcase__product {
        padding: 10% 8% 8%;
        border-radius: 23px;
    }

    .kh-main-hero-showcase__product img {
        width: 44%;
    }

    .kh-main-hero-showcase__product strong {
        margin-top: 7%;
        font-size: clamp(11px, .72vw, 15px);
    }

    .kh-main-hero-showcase__product small {
        margin-top: 5%;
        font-size: clamp(9px, .57vw, 12px);
    }

    .kh-main-hero-showcase__product > span {
        min-width: 58px;
        padding: 6px 10px;
        font-size: clamp(9px, .58vw, 12px);
    }

    .kh-main-hero-showcase__crystal {
        width: 2.45%;
    }

    .kh-main-hero-showcase__crystal--1 { top: 27%; right: 46.8%; }
    .kh-main-hero-showcase__crystal--2 { top: 28.2%; right: 38.5%; }
    .kh-main-hero-showcase__crystal--3 { top: 28.5%; right: 12.4%; }
    .kh-main-hero-showcase__crystal--4 { top: 27.3%; right: 1.8%; }
    .kh-main-hero-showcase__crystal--5 { top: 48.8%; right: 47.9%; }
}

@media (max-width: 900px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        margin-right: auto;
        margin-left: auto;
        transform: none;
    }

    .kh-main-hero-showcase__background {
        object-fit: cover;
    }
}

/* Approved recommendation design — final cascade lock. */
html body.single-product .kh-sidebar-recommendations-widget,
html body.single-post .kh-single-side-card.kh-single-products {
    --kh-rec-primary: #0865f5;
    --kh-rec-text: #111827;
    --kh-rec-muted: #98a2b3;
    --kh-rec-line: #e7edf7;
    --kh-rec-soft: #f3f7ff;
    box-sizing: border-box !important;
    padding: 18px !important;
    border: 1px solid #e5ebf5 !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 16px 38px rgba(30, 64, 120, .07) !important;
}

html body.single-product .kh-sidebar-recommendations__head {
    align-items: center !important;
    padding-bottom: 0 !important;
    margin-bottom: 16px !important;
    border-bottom: 0 !important;
}

html body.single-product .kh-sidebar-recommendations__head h3,
html body.single-post .kh-single-products h2 {
    margin: 0 !important;
    color: var(--kh-rec-text) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    letter-spacing: -.015em !important;
}

html body.single-product .kh-sidebar-recommendations__head span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--kh-rec-primary) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
}

html body.single-product .kh-sidebar-recommendations__head span::before {
    content: "";
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: var(--kh-rec-primary);
}

html body.single-post .kh-single-products h2 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 16px !important;
}

html body.single-post .kh-single-products h2::after {
    content: "•  подборка";
    flex: 0 0 auto;
    color: var(--kh-rec-primary);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0;
    white-space: nowrap;
}

html body.single-product .kh-sidebar-recommendations__list,
html body.single-post .kh-single-products-list {
    display: grid !important;
    gap: 8px !important;
}

html body.single-product .kh-sidebar-product,
html body.single-post .kh-single-product {
    position: relative !important;
    isolation: isolate;
    display: grid !important;
    grid-template-columns: minmax(88px, 38%) minmax(0, 1fr) 44px !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    height: auto !important;
    min-height: 142px !important;
    padding: 10px !important;
    overflow: hidden !important;
    border: 1px solid var(--kh-rec-line) !important;
    border-radius: 16px !important;
    background: #fff !important;
    color: var(--kh-rec-text) !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product:hover,
html body.single-product .kh-sidebar-product:focus-visible,
html body.single-post .kh-single-product:hover,
html body.single-post .kh-single-product:focus-visible {
    transform: translateY(-1px) !important;
    border-color: #cfdcf1 !important;
    background: #fff !important;
    box-shadow: 0 12px 26px rgba(30, 64, 120, .09) !important;
    outline: none !important;
}

html body.single-product .kh-sidebar-product__thumb,
html body.single-post .kh-single-product__image {
    position: relative !important;
    z-index: 0 !important;
    align-self: stretch !important;
    width: 100% !important;
    height: auto !important;
    min-height: 120px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border-radius: 13px !important;
    background: linear-gradient(145deg, #eee8ff 0%, #faf9ff 100%) !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product__thumb::before,
html body.single-post .kh-single-product__image::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 112px;
    height: 112px;
    left: -30px;
    bottom: -28px;
    border-radius: 50%;
    background: rgba(111, 79, 230, .14);
}

html body.single-product .kh-sidebar-product:nth-child(3n + 2) .kh-sidebar-product__thumb,
html body.single-post .kh-single-product:nth-child(3n + 2) .kh-single-product__image {
    background: linear-gradient(145deg, #e6f2ff 0%, #f8fbff 100%) !important;
}

html body.single-product .kh-sidebar-product:nth-child(3n + 2) .kh-sidebar-product__thumb::before,
html body.single-post .kh-single-product:nth-child(3n + 2) .kh-single-product__image::before {
    background: rgba(40, 133, 242, .13) !important;
}

html body.single-product .kh-sidebar-product:nth-child(3n) .kh-sidebar-product__thumb,
html body.single-post .kh-single-product:nth-child(3n) .kh-single-product__image {
    background: linear-gradient(145deg, #fff0d7 0%, #fffaf2 100%) !important;
}

html body.single-product .kh-sidebar-product:nth-child(3n) .kh-sidebar-product__thumb::before,
html body.single-post .kh-single-product:nth-child(3n) .kh-single-product__image::before {
    background: rgba(205, 139, 36, .15) !important;
}

html body.single-product .kh-sidebar-product__thumb img,
html body.single-post .kh-single-product__image img {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    width: 94% !important;
    max-width: 112px !important;
    height: 116px !important;
    max-height: 116px !important;
    padding: 0 !important;
    object-fit: contain !important;
    filter: drop-shadow(0 8px 9px rgba(32, 55, 92, .14));
    transform: scale(1.5) !important;
}

html body.single-product .kh-sidebar-product__body,
html body.single-post .kh-single-product__body {
    display: grid !important;
    align-content: center !important;
    gap: 13px !important;
    min-width: 0 !important;
}

html body.single-product .kh-sidebar-product__title,
html body.single-post .kh-single-product__title {
    display: -webkit-box !important;
    margin: 0 !important;
    overflow: hidden !important;
    color: var(--kh-rec-text) !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.28 !important;
    letter-spacing: -.01em !important;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

html body.single-product .kh-sidebar-product__price,
html body.single-post .kh-single-product__price {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 4px 7px !important;
    margin: 0 !important;
    color: var(--kh-rec-primary) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    font-variant-numeric: tabular-nums;
    white-space: normal !important;
}

html body.single-product .kh-sidebar-product__price del,
html body.single-post .kh-single-product__price del {
    color: var(--kh-rec-muted) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
}

html body.single-product .kh-sidebar-product__price ins,
html body.single-post .kh-single-product__price ins {
    color: var(--kh-rec-primary) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

html body.single-product .kh-sidebar-product__action,
html body.single-post .kh-single-product::after {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: center !important;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #f1f5fd !important;
    color: var(--kh-rec-primary) !important;
    font-size: 0 !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product__action::before,
html body.single-post .kh-single-product::after {
    content: "→";
    font-size: 24px !important;
    font-weight: 400 !important;
}

html body.single-product .kh-sidebar-product:hover .kh-sidebar-product__action,
html body.single-product .kh-sidebar-product:focus-visible .kh-sidebar-product__action,
html body.single-post .kh-single-product:hover::after,
html body.single-post .kh-single-product:focus-visible::after {
    transform: translateX(2px) !important;
    background: #e8f0ff !important;
    color: #0057df !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product:focus-visible,
html body.single-post .kh-single-product:focus-visible,
html body.single-product .kh-sidebar-recommendations__more:focus-visible,
html body.single-post .kh-single-products-more:focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(8, 101, 245, .2) !important;
}

html body.single-product .kh-sidebar-recommendations__more,
html body.single-post .kh-single-products-more {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 50px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-top: 12px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: var(--kh-rec-soft) !important;
    color: #15325f !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-recommendations__more > span:last-child,
html body.single-post .kh-single-products-more > span:last-child {
    flex: 0 0 auto !important;
    color: var(--kh-rec-primary) !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

html body.single-product .kh-sidebar-recommendations__more:hover,
html body.single-post .kh-single-products-more:hover {
    transform: translateY(-1px) !important;
    background: #eaf2ff !important;
    color: #15325f !important;
    box-shadow: none !important;
}

/* Brand-specific article hero backgrounds. Assets are cropped to the measured 1536x368 ratio. */
html body.single-post .kh-single-article-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background-color: #f8fbff;
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
}

html body.single-post .kh-single-article-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(248, 251, 255, .98) 0%, rgba(248, 251, 255, .94) 48%, rgba(248, 251, 255, .5) 68%, rgba(248, 251, 255, .08) 100%);
}

html body.single-post .kh-single-article.category-autodesk .kh-single-article-hero {
    background-image: url("assets/article-heroes/article-hero-autodesk.webp");
}

html body.single-post .kh-single-article.category-office .kh-single-article-hero {
    background-image: url("assets/article-heroes/article-hero-office.webp");
}

html body.single-post .kh-single-article.category-windows .kh-single-article-hero {
    background-image: url("assets/article-heroes/article-hero-windows.webp");
}

html body.single-post .kh-single-article.category-adobe .kh-single-article-hero {
    background-image: url("assets/article-heroes/article-hero-adobe.webp");
}

html body.single-post .kh-single-article-hero > * {
    position: relative;
    z-index: 1;
}

@media (max-width: 767px) {
    html body.single-post .kh-single-article-hero {
        background-position: right center;
        background-size: auto 100%;
    }

    html body.single-post .kh-single-article-hero::before {
        background: linear-gradient(90deg, rgba(248, 251, 255, .99) 0%, rgba(248, 251, 255, .97) 58%, rgba(248, 251, 255, .74) 78%, rgba(248, 251, 255, .28) 100%);
    }
}

/* Review replies — selected compact light-blue variant, without reply date. */
.kh-review-reply {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 14px;
    padding: 12px 14px;
    border: 1px solid #d7e6fb;
    border-radius: 11px;
    background: #f1f7ff;
    color: #263750;
}

.kh-review-reply__mark {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px solid #cfe0f7;
    border-radius: 50%;
    background: #fff;
    color: #356cff;
    font-size: 10px;
    font-weight: 900;
}

.kh-review-reply__mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.kh-review-reply__content {
    min-width: 0;
}

.kh-review-reply__content strong {
    display: block;
    margin: 0 0 3px;
    color: #182844;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 900;
}

.kh-review-card .kh-review-reply__content p,
.kh-review-reply__content p {
    margin: 0 !important;
    color: #4d6079;
    font-size: 13px;
    line-height: 1.45;
}

@media (max-width: 520px) {
    .kh-review-reply {
        padding: 11px 12px;
    }
}

/* Homepage review grid: keep the operator reply below review and product. */
body.home .kh-reviews-v2-layout .apr-review > .kh-review-reply,
body.front-page .kh-reviews-v2-layout .apr-review > .kh-review-reply {
    grid-column: 1 / -1 !important;
    order: 3 !important;
    align-self: end !important;
    width: 100% !important;
    margin-top: 12px !important;
    box-sizing: border-box !important;
}

/* Unified in-cart state for home popular and recently viewed product cards. */
html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.kh-loop-is-in-cart,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart.kh-loop-is-in-cart {
    color: #fff !important;
    background: linear-gradient(135deg, #25bd49 0%, #159b34 100%) !important;
    border-color: #159b34 !important;
    box-shadow: 0 8px 20px rgba(21, 155, 52, .22) !important;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease !important;
}

html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.kh-loop-is-in-cart:hover,
html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.kh-loop-is-in-cart:focus-visible,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart.kh-loop-is-in-cart:hover,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart.kh-loop-is-in-cart:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, #1daa3f 0%, #128c2d 100%) !important;
    border-color: #128c2d !important;
    box-shadow: 0 10px 24px rgba(18, 140, 45, .28) !important;
}

html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth > .added_to_cart,
html body.single-product .kh-single-recently-viewed .added_to_cart {
    display: none !important;
}

/* Unified in-cart state for home popular and recently viewed product cards. */
html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.kh-loop-is-in-cart,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart.kh-loop-is-in-cart {
    color: #fff !important;
    background: linear-gradient(135deg, #25bd49 0%, #159b34 100%) !important;
    border-color: #159b34 !important;
    box-shadow: 0 8px 20px rgba(21, 155, 52, .22) !important;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease !important;
}

html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.kh-loop-is-in-cart:hover,
html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.kh-loop-is-in-cart:focus-visible,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart.kh-loop-is-in-cart:hover,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart.kh-loop-is-in-cart:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, #1daa3f 0%, #128c2d 100%) !important;
    border-color: #128c2d !important;
    box-shadow: 0 10px 24px rgba(18, 140, 45, .28) !important;
}

html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth > .added_to_cart,
html body.single-product .kh-single-recently-viewed .added_to_cart {
    display: none !important;
}
.scrolltop {
    bottom: 70px !important;
}

/* Approved recommendation cards: product and article sidebars. */
.kh-sidebar-recommendations-widget,
html body.single-post .kh-single-side-card.kh-single-products {
    --kh-rec-primary: #0865f5;
    --kh-rec-text: #111827;
    --kh-rec-muted: #98a2b3;
    --kh-rec-line: #e7edf7;
    --kh-rec-soft: #f3f7ff;
    box-sizing: border-box;
    padding: 18px !important;
    border: 1px solid #e5ebf5 !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 16px 38px rgba(30, 64, 120, .07) !important;
    color: var(--kh-rec-text);
}

.kh-sidebar-recommendations__head {
    align-items: center;
    padding-bottom: 0 !important;
    margin-bottom: 16px !important;
    border-bottom: 0 !important;
}

.kh-sidebar-recommendations__head h3,
html body.single-post .kh-single-products h2 {
    margin: 0 !important;
    color: var(--kh-rec-text) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    letter-spacing: -.015em !important;
}

.kh-sidebar-recommendations__head span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--kh-rec-primary) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
}

.kh-sidebar-recommendations__head span::before {
    content: "";
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: var(--kh-rec-primary);
}

html body.single-post .kh-single-products h2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px !important;
}

html body.single-post .kh-single-products h2::after {
    content: "•  подборка";
    flex: 0 0 auto;
    color: var(--kh-rec-primary);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0;
    white-space: nowrap;
}

.kh-sidebar-recommendations__list,
html body.single-post .kh-single-products-list {
    display: grid !important;
    gap: 8px !important;
}

.kh-sidebar-product,
html body.single-post .kh-single-product {
    position: relative;
    isolation: isolate;
    display: grid !important;
    grid-template-columns: minmax(88px, 38%) minmax(0, 1fr) 44px !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100%;
    height: auto !important;
    min-height: 142px !important;
    padding: 10px !important;
    overflow: hidden;
    border: 1px solid var(--kh-rec-line) !important;
    border-radius: 16px !important;
    background: #fff !important;
    color: var(--kh-rec-text) !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease !important;
}

.kh-sidebar-product:hover,
.kh-sidebar-product:focus-visible,
html body.single-post .kh-single-product:hover,
html body.single-post .kh-single-product:focus-visible {
    transform: translateY(-1px) !important;
    border-color: #cfdcf1 !important;
    background: #fff !important;
    box-shadow: 0 12px 26px rgba(30, 64, 120, .09) !important;
    outline: none;
}

.kh-sidebar-product:focus-visible,
html body.single-post .kh-single-product:focus-visible,
.kh-sidebar-recommendations__more:focus-visible,
html body.single-post .kh-single-products-more:focus-visible {
    box-shadow: 0 0 0 3px rgba(8, 101, 245, .2) !important;
}

.kh-sidebar-product__thumb,
html body.single-post .kh-single-product__image {
    position: relative;
    z-index: 0;
    align-self: stretch;
    width: 100% !important;
    height: auto !important;
    min-height: 120px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden;
    border-radius: 13px !important;
    background: linear-gradient(145deg, #eee8ff 0%, #faf9ff 100%) !important;
    box-shadow: none !important;
}

.kh-sidebar-product__thumb::before,
html body.single-post .kh-single-product__image::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 112px;
    height: 112px;
    left: -30px;
    bottom: -28px;
    border-radius: 50%;
    background: rgba(111, 79, 230, .14);
}

.kh-sidebar-product:nth-child(3n + 2) .kh-sidebar-product__thumb,
html body.single-post .kh-single-product:nth-child(3n + 2) .kh-single-product__image {
    background: linear-gradient(145deg, #e6f2ff 0%, #f8fbff 100%) !important;
}

.kh-sidebar-product:nth-child(3n + 2) .kh-sidebar-product__thumb::before,
html body.single-post .kh-single-product:nth-child(3n + 2) .kh-single-product__image::before {
    background: rgba(40, 133, 242, .13);
}

.kh-sidebar-product:nth-child(3n) .kh-sidebar-product__thumb,
html body.single-post .kh-single-product:nth-child(3n) .kh-single-product__image {
    background: linear-gradient(145deg, #fff0d7 0%, #fffaf2 100%) !important;
}

.kh-sidebar-product:nth-child(3n) .kh-sidebar-product__thumb::before,
html body.single-post .kh-single-product:nth-child(3n) .kh-single-product__image::before {
    background: rgba(205, 139, 36, .15);
}

.kh-sidebar-product__thumb img,
html body.single-post .kh-single-product__image img {
    position: relative;
    z-index: 1;
    display: block;
    width: 94% !important;
    max-width: 112px !important;
    height: 116px !important;
    max-height: 116px !important;
    padding: 0 !important;
    object-fit: contain !important;
    filter: drop-shadow(0 8px 9px rgba(32, 55, 92, .14));
    transform: scale(1.5);
    transition: transform .22s ease;
}

.kh-sidebar-product:hover .kh-sidebar-product__thumb img,
html body.single-post .kh-single-product:hover .kh-single-product__image img {
    transform: scale(1.54);
}

.kh-sidebar-product__body,
html body.single-post .kh-single-product__body {
    display: grid !important;
    align-content: center;
    gap: 13px !important;
    min-width: 0;
}

.kh-sidebar-product__title,
html body.single-post .kh-single-product__title {
    display: -webkit-box !important;
    margin: 0 !important;
    overflow: hidden;
    color: var(--kh-rec-text) !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.28 !important;
    letter-spacing: -.01em;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.kh-sidebar-product:hover .kh-sidebar-product__title,
html body.single-post .kh-single-product:hover .kh-single-product__title {
    color: var(--kh-rec-text) !important;
}

.kh-sidebar-product__price,
html body.single-post .kh-single-product__price {
    display: flex !important;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 7px;
    margin: 0 !important;
    color: var(--kh-rec-primary) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    font-variant-numeric: tabular-nums;
    white-space: normal !important;
}

.kh-sidebar-product__price del,
html body.single-post .kh-single-product__price del {
    color: var(--kh-rec-muted) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.2;
}

.kh-sidebar-product__price ins,
html body.single-post .kh-single-product__price ins {
    color: var(--kh-rec-primary) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

.kh-sidebar-product__action,
html body.single-post .kh-single-product::after {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: center;
    justify-self: center;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #f1f5fd !important;
    color: var(--kh-rec-primary) !important;
    font-size: 0 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    transition: color .2s ease, background .2s ease, transform .2s ease !important;
}

.kh-sidebar-product__action::before,
html body.single-post .kh-single-product::after {
    content: "→";
    font-size: 24px !important;
    font-weight: 400;
}

.kh-sidebar-product:hover .kh-sidebar-product__action,
.kh-sidebar-product:focus-visible .kh-sidebar-product__action,
html body.single-post .kh-single-product:hover::after,
html body.single-post .kh-single-product:focus-visible::after {
    transform: translateX(2px) !important;
    background: #e8f0ff !important;
    color: #0057df !important;
    box-shadow: none !important;
}

.kh-sidebar-recommendations__more,
html body.single-post .kh-single-products-more {
    box-sizing: border-box;
    width: 100% !important;
    min-height: 50px !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between !important;
    gap: 12px;
    margin-top: 12px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: var(--kh-rec-soft) !important;
    color: #15325f !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    text-align: left;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: background .2s ease, color .2s ease, transform .2s ease !important;
}

.kh-sidebar-recommendations__more > span:last-child,
html body.single-post .kh-single-products-more > span:last-child {
    flex: 0 0 auto;
    color: var(--kh-rec-primary);
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
}

.kh-sidebar-recommendations__more:hover,
html body.single-post .kh-single-products-more:hover {
    transform: translateY(-1px) !important;
    border: 0 !important;
    background: #eaf2ff !important;
    color: #15325f !important;
    box-shadow: none !important;
}

@media (max-width: 360px) {
    .kh-sidebar-recommendations-widget,
    html body.single-post .kh-single-side-card.kh-single-products {
        padding: 14px !important;
    }

    .kh-sidebar-product,
    html body.single-post .kh-single-product {
        grid-template-columns: 82px minmax(0, 1fr) 44px !important;
        gap: 8px !important;
        min-height: 132px !important;
        padding: 8px !important;
    }

    .kh-sidebar-product__thumb,
    html body.single-post .kh-single-product__image {
        min-height: 112px !important;
    }

    .kh-sidebar-product__thumb img,
    html body.single-post .kh-single-product__image img {
        height: 106px !important;
        max-height: 106px !important;
    }

    .kh-sidebar-product__title,
    html body.single-post .kh-single-product__title {
        font-size: 12px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kh-sidebar-product,
    .kh-sidebar-product__thumb img,
    .kh-sidebar-product__action,
    .kh-sidebar-recommendations__more,
    html body.single-post .kh-single-product,
    html body.single-post .kh-single-product__image img,
    html body.single-post .kh-single-products-more {
        transition: none !important;
    }
}

/* Codex: final homepage desktop header icon rail specificity lock. */
@media (min-width: 1361px) and (max-width: 1700px) {
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner,
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner.full {
        grid-template-columns: minmax(188px, 218px) minmax(0, 1fr) minmax(210px, 280px) 44px 44px 44px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        grid-column: 3 !important;
        grid-row: 1 !important;
        grid-area: search !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account {
        grid-column: 4 !important;
        grid-row: 1 !important;
        grid-area: account !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite {
        grid-column: 5 !important;
        grid-row: 1 !important;
        grid-area: favorite !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart {
        grid-column: 6 !important;
        grid-row: 1 !important;
        grid-area: cart !important;
    }
}

@media (max-width: 1199px) {
    html body.single-product .site-footer .footer-counters {
        max-width: 100% !important;
        margin-right: 0 !important;
    }

    html body.single-product .site-footer .dim-footer.footer-bottom-right {
        max-width: 100% !important;
        min-width: 0 !important;
    }

    html body.single-product .site-footer .footer-links {
        max-width: 100% !important;
        flex-wrap: wrap !important;
        gap: 12px 18px !important;
        white-space: normal !important;
    }
}

/* Readability typography pass for product and shop UI. */
:root {
    --kh-ui-font: "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Roboto", Arial, sans-serif;
}

html body,
html body input,
html body button,
html body select,
html body textarea {
    font-family: var(--kh-ui-font) !important;
    letter-spacing: 0 !important;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html body.single-product .product_title,
html body.single-product h1.product_title,
html body.single-product .entry-title,
html body.woocommerce-page .page-title {
    font-weight: 700 !important;
    line-height: 1.16 !important;
}

html body.single-product .product-info,
html body.single-product .product-info p,
html body.single-product .product-info li,
html body.single-product .summary,
html body.single-product .woocommerce-product-attributes,
html body.single-product .kh-product-picker,
html body.single-product .kh-product-features,
html body.single-product .kh-sidebar-recommendations-widget,
html body.single-product .support-section,
html body.woocommerce .products,
html body.woocommerce-page .products {
    line-height: 1.48 !important;
}

html body.single-product .kh-product-picker__header,
html body.single-product .kh-product-picker__tab,
html body.single-product .kh-product-picker__chip,
html body.single-product .kh-product-option__title,
html body.single-product .kh-product-feature,
html body.single-product .kh-product-feature-title,
html body.single-product .download-item,
html body.single-product .woocommerce-product-attributes th,
html body.single-product .woocommerce-product-attributes td,
html body.single-product .kh-sidebar-recommendations-widget,
html body.single-product .kh-sidebar-recommendations-widget *,
html body.single-product .kh-single-product-card,
html body.single-product .kh-single-product-card *,
html body.woocommerce .products .product,
html body.woocommerce .products .product *,
html body.woocommerce-page .products .product,
html body.woocommerce-page .products .product * {
    letter-spacing: 0 !important;
}

html body.single-product .kh-product-picker__header,
html body.single-product .kh-product-option__title,
html body.single-product .kh-product-feature-title,
html body.single-product .kh-sidebar-recommendations-widget__title,
html body.single-product .support-title,
html body.single-product .woocommerce-product-attributes th,
html body.single-product .woocommerce-product-attributes-item__label,
html body.woocommerce .products .product .woocommerce-loop-product__title,
html body.woocommerce-page .products .product .woocommerce-loop-product__title {
    font-weight: 600 !important;
}

html body.single-product .kh-product-picker__chip,
html body.single-product .kh-product-picker__tab,
html body.single-product .download-item,
html body.single-product .single_add_to_cart_button,
html body.single-product .button,
html body.single-product .kh-single-product-card__title,
html body.single-product .kh-single-product-card__more,
html body.woocommerce .products .product .button,
html body.woocommerce-page .products .product .button {
    font-weight: 600 !important;
}

html body.single-product .woocommerce-product-attributes th,
html body.single-product .woocommerce-product-attributes-item__label,
html body.single-product .kh-product-feature-label,
html body.single-product .support-description,
html body.single-product .kh-single-product-card__old-price {
    color: #5f6f86 !important;
    font-weight: 500 !important;
}

html body.single-product .woocommerce-product-attributes td,
html body.single-product .woocommerce-product-attributes-item__value,
html body.single-product .kh-product-feature-value {
    font-weight: 600 !important;
}

html body.single-product .price,
html body.single-product .price .amount,
html body.single-product .kh-single-product-card__price,
html body.woocommerce .products .product .price,
html body.woocommerce-page .products .product .price {
    font-weight: 700 !important;
}

html body.single-product .kh-sidebar-recommendations-widget .button,
html body.single-product .kh-single-product-card__more,
html body.woocommerce .products .product .button,
html body.woocommerce-page .products .product .button {
    font-size: 13px !important;
}

@media (max-width: 767px) {
    html body.single-product .product_title,
    html body.single-product h1.product_title {
        font-weight: 700 !important;
        line-height: 1.18 !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary,
    .kh-product-faq__item summary,
    .kh-category-faq .kh-product-faq__item summary {
        font-weight: 600 !important;
        line-height: 1.36 !important;
    }
}

/* Final mobile overrides for FAQ cards and category pagination. */
@media (max-width: 767px) {
    body.single-product > .support-section-p.dim-comp-no,
    body.single-product .support-section-p.dim-comp-no {
        display: none !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq,
    .kh-product-faq,
    .kh-category-faq__list {
        gap: 10px !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item,
    .kh-product-faq__item {
        overflow: hidden;
        border: 1px solid #dfe9f7 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 24px rgba(58, 105, 165, 0.06) !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary,
    .kh-product-faq__item summary,
    .kh-category-faq .kh-product-faq__item summary {
        min-height: 56px !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 32px !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 12px 12px 12px 14px !important;
        color: #071122 !important;
        font-size: 15px !important;
        line-height: 1.28 !important;
        font-weight: 900 !important;
        background: #f8fbff !important;
        list-style: none !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary::-webkit-details-marker,
    .kh-product-faq__item summary::-webkit-details-marker {
        display: none !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary::marker,
    .kh-product-faq__item summary::marker {
        content: "" !important;
        font-size: 0 !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary span,
    .kh-product-faq__item summary span {
        display: block !important;
        min-width: 0 !important;
        padding-right: 2px;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary i,
    .kh-product-faq__item summary i {
        grid-column: 2 !important;
        justify-self: end !important;
        flex: 0 0 32px !important;
        width: 32px !important;
        height: 32px !important;
        border-radius: 10px !important;
        background: linear-gradient(180deg, #eef5ff 0%, #e8f2ff 100%) !important;
        box-shadow: inset 0 0 0 1px #d5e5fb !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary i::before,
    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary i::after,
    .kh-product-faq__item summary i::before,
    .kh-product-faq__item summary i::after {
        left: 10px !important;
        top: 15px !important;
        width: 12px !important;
        background: #2f68ff !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item[open] summary,
    .kh-product-faq__item[open] summary {
        border-bottom: 1px solid #eaf1fb !important;
        background: #eef6ff !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__answer,
    .kh-product-faq__answer,
    .kh-category-faq .kh-product-faq__answer {
        padding: 14px 14px 16px !important;
        color: #394b68 !important;
        font-size: 15px !important;
        line-height: 1.6 !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers,
    .woocommerce-pagination ul.page-numbers {
        gap: 8px !important;
        margin-top: 24px !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers,
    .woocommerce-pagination ul.page-numbers li .page-numbers,
    .kh-pagination .page-numbers,
    .navigation.pagination .page-numbers {
        min-width: 38px !important;
        width: 38px !important;
        height: 38px !important;
        padding: 0 !important;
        border-radius: 12px !important;
        background: #fff !important;
        color: #526173 !important;
        box-shadow: 0 8px 18px rgba(18, 35, 68, .05) !important;
        -webkit-tap-highlight-color: transparent;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:hover,
    .woocommerce-pagination ul.page-numbers li .page-numbers:hover,
    .kh-pagination .page-numbers:hover,
    .navigation.pagination .page-numbers:hover {
        border-color: #dfe9f7 !important;
        background: #fff !important;
        color: #526173 !important;
        box-shadow: 0 8px 18px rgba(18, 35, 68, .05) !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers.current,
    .woocommerce-pagination ul.page-numbers li .page-numbers.current,
    .kh-pagination .page-numbers.current,
    .navigation.pagination .page-numbers.current {
        border-color: transparent !important;
        background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
        color: #fff !important;
        box-shadow: 0 12px 22px rgba(70, 118, 255, .20) !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:focus,
    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:active,
    .woocommerce-pagination ul.page-numbers li .page-numbers:focus,
    .woocommerce-pagination ul.page-numbers li .page-numbers:active,
    .kh-pagination .page-numbers:focus,
    .kh-pagination .page-numbers:active,
    .navigation.pagination .page-numbers:focus,
    .navigation.pagination .page-numbers:active {
        outline: none !important;
        transform: none !important;
    }
}

/* Final header logo frameless override. */
html body header.site-header .site-branding,
html body header.site-header.site-header .site-branding.site-branding,
html body header.site-header .site-logotype,
html body header.site-header.site-header .site-logotype.site-logotype,
html body header.site-header .site-branding a {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body header.site-header .site-branding {
    padding: 0 !important;
}

html body header.site-header .site-logotype img,
html body header.site-header.site-header .site-logotype.site-logotype img,
html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
    width: 184px !important;
    max-width: 184px !important;
    height: auto !important;
    max-height: 54px !important;
    object-fit: contain !important;
    object-position: center center !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    mix-blend-mode: normal !important;
}

@media (max-width: 767px) {
    html body header.site-header .site-branding,
    html body header.site-header.site-header .site-branding.site-branding {
        width: min(186px, 50vw) !important;
        max-width: min(186px, 50vw) !important;
        height: 48px !important;
        max-height: 48px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    html body header.site-header .site-logotype,
    html body header.site-header.site-header .site-logotype.site-logotype,
    html body header.site-header .site-branding a {
        height: 48px !important;
    }

    html body header.site-header .site-logotype img,
    html body header.site-header.site-header .site-logotype.site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        width: min(178px, 48vw) !important;
        max-width: min(178px, 48vw) !important;
        max-height: 44px !important;
    }
}

/* Mobile FAQ and catalog pagination refinements. */
@media (max-width: 767px) {
    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq,
    .kh-product-faq,
    .kh-category-faq__list {
        gap: 10px;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item,
    .kh-product-faq__item {
        border-radius: 14px;
        box-shadow: 0 10px 24px rgba(58, 105, 165, 0.06);
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary,
    .kh-product-faq__item summary,
    .kh-category-faq .kh-product-faq__item summary {
        min-height: 56px;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 32px;
        align-items: center;
        gap: 12px;
        padding: 12px 12px 12px 14px !important;
        color: #071122;
        font-size: 15px !important;
        line-height: 1.28;
        font-weight: 900;
        background: #f8fbff;
        list-style: none;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary::-webkit-details-marker,
    .kh-product-faq__item summary::-webkit-details-marker {
        display: none !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary::marker,
    .kh-product-faq__item summary::marker {
        content: "" !important;
        font-size: 0 !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary span,
    .kh-product-faq__item summary span {
        display: block;
        min-width: 0;
        padding-right: 2px;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary i,
    .kh-product-faq__item summary i {
        grid-column: 2;
        justify-self: end;
        flex: 0 0 32px !important;
        width: 32px !important;
        height: 32px !important;
        border-radius: 10px !important;
        background: linear-gradient(180deg, #eef5ff 0%, #e8f2ff 100%);
        box-shadow: inset 0 0 0 1px #d5e5fb;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary i::before,
    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary i::after,
    .kh-product-faq__item summary i::before,
    .kh-product-faq__item summary i::after {
        left: 10px !important;
        top: 15px !important;
        width: 12px !important;
        background: #2f68ff;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item[open] summary,
    .kh-product-faq__item[open] summary {
        border-bottom: 1px solid #eaf1fb;
        background: #eef6ff;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__answer,
    .kh-product-faq__answer,
    .kh-category-faq .kh-product-faq__answer {
        padding: 14px 14px 16px !important;
        color: #394b68;
        font-size: 15px;
        line-height: 1.6;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers,
    .woocommerce-pagination ul.page-numbers {
        gap: 8px;
        margin-top: 24px !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers,
    .woocommerce-pagination ul.page-numbers li .page-numbers,
    .kh-pagination .page-numbers,
    .navigation.pagination .page-numbers {
        min-width: 38px !important;
        width: 38px;
        height: 38px !important;
        padding: 0 !important;
        border-radius: 12px !important;
        background: #fff !important;
        color: #526173 !important;
        box-shadow: 0 8px 18px rgba(18, 35, 68, .05) !important;
        -webkit-tap-highlight-color: transparent;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:hover,
    .woocommerce-pagination ul.page-numbers li .page-numbers:hover,
    .kh-pagination .page-numbers:hover,
    .navigation.pagination .page-numbers:hover {
        border-color: #dfe9f7 !important;
        background: #fff !important;
        color: #526173 !important;
        box-shadow: 0 8px 18px rgba(18, 35, 68, .05) !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers.current,
    .woocommerce-pagination ul.page-numbers li .page-numbers.current,
    .kh-pagination .page-numbers.current,
    .navigation.pagination .page-numbers.current {
        border-color: transparent !important;
        background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
        color: #fff !important;
        box-shadow: 0 12px 22px rgba(70, 118, 255, .20) !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:focus,
    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:active,
    .woocommerce-pagination ul.page-numbers li .page-numbers:focus,
    .woocommerce-pagination ul.page-numbers li .page-numbers:active,
    .kh-pagination .page-numbers:focus,
    .kh-pagination .page-numbers:active,
    .navigation.pagination .page-numbers:focus,
    .navigation.pagination .page-numbers:active {
        outline: none !important;
        transform: none !important;
    }
}

/* Header responsive priority override 2026-05-27. */
@media (max-width: 1360px) {
    html body .super-header.super-header.super-header,
    html body .super-header.super-header--mob-show.super-header--mob-show,
    html body .super-header.super-header--mob-hide.super-header--mob-hide,
    html body .dim-header-top.dim-header-top {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }
}

@media (max-width: 1360px) and (min-width: 992px) {
    html body header.site-header.site-header .site-header-inner.site-header-inner {
        width: min(100% - 28px, 1180px) !important;
        max-width: 1180px !important;
        min-width: 0 !important;
        min-height: 74px !important;
        display: grid !important;
        grid-template-columns: minmax(170px, 220px) minmax(360px, auto) minmax(250px, 1fr) 48px 48px 48px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        align-items: center !important;
        gap: 12px !important;
        margin: 0 auto !important;
        padding: 12px 18px !important;
        border: 1px solid #e5edf8 !important;
        border-top: 0 !important;
        border-radius: 0 0 18px 18px !important;
        background: #fff !important;
        box-shadow: 0 14px 30px rgba(18, 35, 68, .06) !important;
        transform: none !important;
    }

    html body header.site-header.site-header .humburger.humburger,
    html body header.site-header.site-header .hamburger.hamburger,
    html body header.site-header.site-header .menu-toggle.menu-toggle,
    html body header.site-header.site-header .mobile-menu-toggle.mobile-menu-toggle {
        display: none !important;
    }

    html body header.site-header.site-header .site-branding.site-branding { grid-area: logo !important; min-width: 0 !important; margin: 0 !important; }
    html body header.site-header.site-header .top-menu.top-menu { grid-area: menu !important; display: block !important; min-width: 0 !important; margin: 0 !important; }
    html body header.site-header.site-header .header-search.header-search { grid-area: search !important; width: 100% !important; min-width: 0 !important; max-width: none !important; margin: 0 !important; }
    html body header.site-header.site-header .header-customer-account.header-customer-account { grid-area: account !important; display: flex !important; }
    html body header.site-header.site-header .header-favorite.header-favorite { grid-area: favorite !important; display: flex !important; }
    html body header.site-header.site-header .site-header-cart.site-header-cart { grid-area: cart !important; display: flex !important; }
}

@media (max-width: 1180px) and (min-width: 992px) {
    html body header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: minmax(170px, 220px) minmax(360px, 1fr) 48px 48px 48px !important;
        grid-template-areas:
            "logo menu account favorite cart"
            "search search search search search" !important;
    }
}

@media (max-width: 991px) {
    html body header.site-header.site-header .site-header-inner.site-header-inner {
        width: 100% !important;
        max-width: none !important;
        min-height: 72px !important;
        display: grid !important;
        grid-template-columns: 48px minmax(96px, 1fr) 44px 44px 44px !important;
        grid-template-areas: "burger logo account favorite cart" !important;
        align-items: center !important;
        gap: 8px !important;
        padding: 10px 18px !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-radius: 0 !important;
        box-shadow: 0 10px 24px rgba(18, 35, 68, .05) !important;
    }

    html body header.site-header.site-header .humburger.humburger,
    html body header.site-header.site-header .hamburger.hamburger,
    html body header.site-header.site-header .menu-toggle.menu-toggle,
    html body header.site-header.site-header .mobile-menu-toggle.mobile-menu-toggle {
        grid-area: burger !important;
        position: static !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        transform: none !important;
    }

    html body header.site-header.site-header .humburger.humburger::before,
    html body header.site-header.site-header .hamburger.hamburger::before,
    html body header.site-header.site-header .menu-toggle.menu-toggle::before,
    html body header.site-header.site-header .mobile-menu-toggle.mobile-menu-toggle::before,
    html body header.site-header.site-header .humburger.humburger > *,
    html body header.site-header.site-header .hamburger.hamburger > *,
    html body header.site-header.site-header .menu-toggle.menu-toggle > *,
    html body header.site-header.site-header .mobile-menu-toggle.mobile-menu-toggle > * {
        content: none !important;
        display: none !important;
    }

    html body header.site-header.site-header .humburger.humburger::after,
    html body header.site-header.site-header .hamburger.hamburger::after,
    html body header.site-header.site-header .menu-toggle.menu-toggle::after,
    html body header.site-header.site-header .mobile-menu-toggle.mobile-menu-toggle::after {
        content: "" !important;
        position: static !important;
        width: 22px !important;
        height: 22px !important;
        display: block !important;
        margin: 0 !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
    }

    html body header.site-header.site-header .top-menu.top-menu {
        display: none !important;
    }

    html body header.site-header.site-header .site-branding.site-branding {
        grid-area: logo !important;
        justify-self: center !important;
        min-width: 0 !important;
        max-width: 190px !important;
        margin: 0 !important;
        padding: 5px 8px !important;
        overflow: hidden !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    html body header.site-header.site-header .site-logotype.site-logotype {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        display: flex !important;
        justify-content: center !important;
        overflow: hidden !important;
    }

    html body header.site-header.site-header .site-logotype.site-logotype img,
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding .site-logotype.site-logotype img {
        width: auto !important;
        max-width: min(150px, 100%) !important;
        max-height: 38px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    html body header.site-header.site-header .header-search.header-search,
    html body header.site-header.site-header .header-compare.header-compare {
        display: none !important;
    }

    html body header.site-header.site-header .header-customer-account.header-customer-account {
        grid-area: account !important;
        justify-self: center !important;
        display: flex !important;
    }

    html body header.site-header.site-header .header-favorite.header-favorite {
        grid-area: favorite !important;
        justify-self: center !important;
        display: flex !important;
    }

    html body header.site-header.site-header .site-header-cart.site-header-cart {
        grid-area: cart !important;
        justify-self: end !important;
        display: flex !important;
    }

    html body header.site-header.site-header .header-customer-account.header-customer-account,
    html body header.site-header.site-header .header-customer-account.header-customer-account > a,
    html body header.site-header.site-header .header-favorite.header-favorite,
    html body header.site-header.site-header .header-favorite.header-favorite > a,
    html body header.site-header.site-header .site-header-cart.site-header-cart,
    html body header.site-header.site-header .site-header-cart.site-header-cart .header-cart__link {
        width: 44px !important;
        max-width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        max-height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        flex: 0 0 44px !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        transform: none !important;
    }
}


@media (max-width: 767px) {
    html body header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: 46px minmax(86px, 1fr) 40px 40px 40px !important;
        grid-template-areas: "burger logo account favorite cart" !important;
        gap: 6px !important;
        padding-right: 12px !important;
        padding-left: 12px !important;
    }

    html body header.site-header.site-header .site-branding.site-branding {
        justify-self: center !important;
        max-width: 130px !important;
    }

    html body header.site-header.site-header .site-logotype.site-logotype img,
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding .site-logotype.site-logotype img {
        max-width: min(110px, 100%) !important;
        max-height: 34px !important;
    }

    html body header.site-header.site-header .header-customer-account.header-customer-account,
    html body header.site-header.site-header .header-favorite.header-favorite,
    html body header.site-header.site-header .site-header-cart.site-header-cart {
        display: flex !important;
    }

    html body header.site-header.site-header .header-search.header-search,
    html body header.site-header.site-header .header-compare.header-compare {
        display: none !important;
    }

    html body header.site-header.site-header .header-customer-account.header-customer-account,
    html body header.site-header.site-header .header-customer-account.header-customer-account > a,
    html body header.site-header.site-header .header-favorite.header-favorite,
    html body header.site-header.site-header .header-favorite.header-favorite > a,
    html body header.site-header.site-header .site-header-cart.site-header-cart,
    html body header.site-header.site-header .site-header-cart.site-header-cart .header-cart__link {
        width: 40px !important;
        max-width: 40px !important;
        min-width: 40px !important;
        height: 40px !important;
        max-height: 40px !important;
        min-height: 40px !important;
        flex-basis: 40px !important;
    }
}

@media (max-width: 420px) {
    html body header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: 42px minmax(72px, 1fr) 38px 38px 38px !important;
        gap: 4px !important;
        min-height: 64px !important;
        padding: 8px 8px !important;
    }

    html body header.site-header.site-header .humburger.humburger,
    html body header.site-header.site-header .hamburger.hamburger,
    html body header.site-header.site-header .menu-toggle.menu-toggle,
    html body header.site-header.site-header .mobile-menu-toggle.mobile-menu-toggle {
        width: 42px !important;
        min-width: 42px !important;
        height: 42px !important;
        min-height: 42px !important;
    }

    html body header.site-header.site-header .site-branding.site-branding {
        max-width: min(190px, 52vw) !important;
        padding: 0 !important;
    }

    html body header.site-header.site-header .site-logotype.site-logotype img,
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding .site-logotype.site-logotype img {
        max-width: min(158px, 46vw) !important;
        max-height: none !important;
    }

    html body header.site-header.site-header .header-customer-account.header-customer-account,
    html body header.site-header.site-header .header-customer-account.header-customer-account > a,
    html body header.site-header.site-header .header-favorite.header-favorite,
    html body header.site-header.site-header .header-favorite.header-favorite > a,
    html body header.site-header.site-header .site-header-cart.site-header-cart,
    html body header.site-header.site-header .site-header-cart.site-header-cart .header-cart__link {
        width: 38px !important;
        max-width: 38px !important;
        min-width: 38px !important;
        height: 38px !important;
        max-height: 38px !important;
        min-height: 38px !important;
        flex-basis: 38px !important;
    }
}

@media (max-width: 991px) {
    html body #site-navigation-mobile .sub-menu-toggle,
    html body #site-navigation-mobile .dropdown-toggle,
    html body #site-navigation-mobile .menu-item-toggle,
    html body #site-navigation-mobile .menu-item__arrow,
    html body #site-navigation-mobile .submenu-toggle,
    html body #site-navigation-mobile li.menu-item-has-children > button,
    html body #site-navigation-mobile li.menu-item-has-children > [class*="toggle"],
    html body #site-navigation-mobile li.menu-item-has-children > [class*="arrow"],
    html body .js-mobile-menu-placeholder .sub-menu-toggle,
    html body .js-mobile-menu-placeholder .dropdown-toggle,
    html body .js-mobile-menu-placeholder .menu-item-toggle,
    html body .js-mobile-menu-placeholder .menu-item__arrow,
    html body .js-mobile-menu-placeholder .submenu-toggle,
    html body .js-mobile-menu-placeholder li.menu-item-has-children > button,
    html body .js-mobile-menu-placeholder li.menu-item-has-children > [class*="toggle"],
    html body .js-mobile-menu-placeholder li.menu-item-has-children > [class*="arrow"] {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    html body #site-navigation-mobile li.menu-item-has-children::after,
    html body .js-mobile-menu-placeholder li.menu-item-has-children::after {
        content: none !important;
        display: none !important;
    }
}

/* Header responsive hard override 2026-05-27. */
@media (max-width: 1360px) {
    html body .super-header,
    html body .super-header.super-header--mob-show,
    html body .super-header.super-header--mob-hide,
    html body .dim-header-top {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    html body header.site-header {
        position: relative !important;
        z-index: 50 !important;
        width: 100% !important;
        padding: 0 !important;
        background: #fff !important;
        border-bottom: 1px solid #e5edf8 !important;
        box-shadow: 0 12px 28px rgba(18, 35, 68, .06) !important;
    }

    html body header.site-header .site-header-inner {
        width: min(100% - 28px, 1180px) !important;
        max-width: 1180px !important;
        min-width: 0 !important;
        min-height: 74px !important;
        display: grid !important;
        grid-template-columns: minmax(170px, 220px) minmax(360px, auto) minmax(250px, 1fr) 48px 48px 48px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        align-items: center !important;
        gap: 12px !important;
        margin: 0 auto !important;
        padding: 12px 18px !important;
        border: 1px solid #e5edf8 !important;
        border-top: 0 !important;
        border-radius: 0 0 18px 18px !important;
        background: #fff !important;
        box-shadow: 0 14px 30px rgba(18, 35, 68, .06) !important;
        transform: none !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        display: none !important;
    }

    html body header.site-header .site-branding {
        grid-area: logo !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        justify-self: stretch !important;
    }

    html body header.site-header .site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        width: auto !important;
        max-width: min(180px, 100%) !important;
        max-height: 46px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    html body header.site-header .top-menu {
        grid-area: menu !important;
        min-width: 0 !important;
        display: block !important;
        margin: 0 !important;
    }

    html body header.site-header .top-menu > ul,
    html body header.site-header .top-menu .menu {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body header.site-header .top-menu li {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    html body header.site-header .top-menu a {
        white-space: nowrap !important;
    }

    html body header.site-header .header-search {
        grid-area: search !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }

    html body header.site-header .header-customer-account {
        grid-area: account !important;
        display: flex !important;
    }

    html body header.site-header .header-favorite {
        grid-area: favorite !important;
        display: flex !important;
    }

    html body header.site-header .site-header-cart {
        grid-area: cart !important;
        display: flex !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-favorite,
    html body header.site-header .site-header-cart {
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        justify-self: center !important;
    }
}

@media (max-width: 1180px) and (min-width: 992px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: minmax(170px, 220px) minmax(360px, 1fr) 48px 48px 48px !important;
        grid-template-areas:
            "logo menu account favorite cart"
            "search search search search search" !important;
        row-gap: 12px !important;
    }
}

@media (max-width: 991px) {
    html body header.site-header .site-header-inner {
        width: 100% !important;
        max-width: none !important;
        min-height: 72px !important;
        display: grid !important;
        grid-template-columns: 48px minmax(140px, 210px) 48px 48px 48px minmax(180px, 1fr) !important;
        grid-template-areas: "burger logo account favorite cart search" !important;
        gap: 10px !important;
        padding: 10px 18px !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-radius: 0 !important;
        box-shadow: 0 10px 24px rgba(18, 35, 68, .05) !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        grid-area: burger !important;
        position: static !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        color: #172033 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        transform: none !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        content: none !important;
        display: none !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body header.site-header .top-menu {
        display: none !important;
    }
}

@media (max-width: 767px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        grid-template-areas: "burger logo cart" !important;
        gap: 8px !important;
        padding: 8px 18px !important;
    }

    html body header.site-header .site-branding {
        justify-self: center !important;
        padding: 4px 8px !important;
    }

    html body header.site-header .site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        max-width: min(145px, 44vw) !important;
        max-height: 40px !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-favorite,
    html body header.site-header .header-search,
    html body header.site-header .header-compare {
        display: none !important;
    }
}

/* Header 4B alignment override. Keep the two header rows as one centered block. */
body:not(.is-mobile) .super-header,
body:not(.is-mobile) .site-header {
    width: 100% !important;
    max-width: none !important;
}

body:not(.is-mobile) .super-header-inner,
body:not(.is-mobile) .site-header-inner {
    box-sizing: border-box !important;
    width: min(1180px, calc(100vw - 48px)) !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body:not(.is-mobile) .super-header-inner {
    justify-content: center !important;
}

body:not(.is-mobile) .site-header-inner {
    justify-content: flex-start !important;
}

/* Header variant 4B: floating capsule with compact service chips. */
body:not(.is-mobile) .super-header,
body:not(.is-mobile) .site-header {
    background: transparent !important;
}

body:not(.is-mobile) .super-header {
    padding: 10px 12px 0 !important;
}

body:not(.is-mobile) .super-header-inner,
body:not(.is-mobile) .site-header-inner {
    width: min(1240px, calc(100vw - 24px)) !important;
    max-width: 1240px !important;
}

body:not(.is-mobile) .super-header-inner {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 6px 10px;
    min-height: 42px;
    padding: 8px 14px 6px !important;
    border: 1px solid #e5edf8;
    border-bottom: 0;
    border-radius: 18px 18px 0 0;
    background: linear-gradient(180deg, #f6fbff 0%, #f8fbff 100%);
    box-shadow: 0 12px 30px rgba(70, 118, 255, .08);
    backdrop-filter: blur(14px);
}

body:not(.is-mobile) .super-header__item,
body:not(.is-mobile) .dim-header-top {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
}

body:not(.is-mobile) .super-header a,
body:not(.is-mobile) .super-header span,
body:not(.is-mobile) .dim-header-top a {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 5px 10px;
    border: 1px solid #d9e8fb;
    border-radius: 999px;
    background: #fff;
    color: #33415c !important;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    box-shadow: 0 6px 16px rgba(18, 35, 68, .04);
    transition: border-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body:not(.is-mobile) .super-header a::before,
body:not(.is-mobile) .dim-header-top a::before {
    content: "";
    width: 13px;
    height: 13px;
    margin-right: 6px;
    flex: 0 0 13px;
    background: #4d7cff;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 13px 13px;
    mask-size: 13px 13px;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E");
}

body:not(.is-mobile) .super-header a[href*="about"]::before,
body:not(.is-mobile) .super-header a[href*="o-nas"]::before,
body:not(.is-mobile) .super-header a:nth-of-type(1)::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E");
}

body:not(.is-mobile) .super-header a[href*="dostav"]::before,
body:not(.is-mobile) .super-header a:nth-of-type(2)::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2'/%3E%3Cpath d='M15 18H9'/%3E%3Cpath d='M19 18h2a1 1 0 0 0 1-1v-3.6a1 1 0 0 0-.3-.7L19 9h-5'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2'/%3E%3Cpath d='M15 18H9'/%3E%3Cpath d='M19 18h2a1 1 0 0 0 1-1v-3.6a1 1 0 0 0-.3-.7L19 9h-5'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3C/svg%3E");
}

body:not(.is-mobile) .super-header a:hover,
body:not(.is-mobile) .dim-header-top a:hover {
    border-color: #cbd9ff;
    color: #2563eb !important;
    box-shadow: 0 9px 20px rgba(70, 118, 255, .1);
    transform: translateY(-1px);
}

body:not(.is-mobile) .site-header {
    padding: 0 12px 16px !important;
}

body:not(.is-mobile) .site-header-inner {
    display: flex !important;
    align-items: center;
    gap: 12px;
    min-height: 70px;
    padding: 13px 20px !important;
    border: 1px solid #e5edf8;
    border-radius: 0 0 18px 18px;
    background: #ffffff;
    box-shadow: 0 22px 46px rgba(18, 35, 68, .09);
    backdrop-filter: blur(14px);
}

body:not(.is-mobile) .site-branding {
    flex: 0 0 auto !important;
    margin-right: 12px;
    padding: 7px 13px 7px 8px;
    border: 1px solid #e5edf8;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .06);
}

body:not(.is-mobile) .top-menu {
    flex: 0 0 auto;
    font-size: 13px !important;
}

body:not(.is-mobile) .top-menu > ul,
body:not(.is-mobile) .top-menu .menu {
    display: flex !important;
    align-items: center;
    gap: 6px;
}

body:not(.is-mobile) .top-menu ul li {
    margin: 0 !important;
}

body:not(.is-mobile) .top-menu ul li > a,
body:not(.is-mobile) .top-menu ul li > span {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 8px 10px !important;
    border: 1px solid transparent;
    border-radius: 999px;
    color: #1f2b43 !important;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

body:not(.is-mobile) .top-menu ul li.catalog-btn > a,
body:not(.is-mobile) .top-menu ul li.catalog-btn > span,
body:not(.is-mobile) .top-menu ul li.mega-catalog > a,
body:not(.is-mobile) .top-menu ul li.mega-catalog > span {
    min-height: 42px;
    padding: 11px 18px !important;
    border-color: transparent;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .25);
}

body:not(.is-mobile) .top-menu ul li.catalog-btn > a::before,
body:not(.is-mobile) .top-menu ul li.catalog-btn > span::before,
body:not(.is-mobile) .top-menu ul li.mega-catalog > a::before,
body:not(.is-mobile) .top-menu ul li.mega-catalog > span::before {
    content: "";
    width: 14px;
    height: 14px;
    margin-right: 7px;
    background: #fff;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 18h16'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 18h16'/%3E%3C/svg%3E") center / contain no-repeat;
}

body:not(.is-mobile) .top-menu ul li.catalog-btn > a::after,
body:not(.is-mobile) .top-menu ul li.catalog-btn > span::after,
body:not(.is-mobile) .top-menu ul li.mega-catalog > a::after,
body:not(.is-mobile) .top-menu ul li.mega-catalog > span::after {
    content: "";
    width: 12px;
    height: 12px;
    margin-left: 8px;
    background: rgba(255,255,255,.9);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
}

body:not(.is-mobile) .top-menu ul li > a:hover,
body:not(.is-mobile) .top-menu ul li > span:hover {
    border-color: #dbe6ff;
    background: #f6faff;
    color: #2563eb !important;
}

body:not(.is-mobile) .header-search {
    flex: 1 1 320px !important;
    min-width: 280px;
}

body:not(.is-mobile) .header-search .search-form {
    position: relative;
    overflow: hidden;
    border: 1px solid #d9e5f5 !important;
    border-radius: 16px !important;
    background: #f8fbff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.75);
}

body:not(.is-mobile) .header-search .search-field {
    height: 44px !important;
    padding-left: 16px !important;
    padding-right: 44px !important;
    border: 0 !important;
    background: transparent !important;
    color: #172033 !important;
    font-size: 14px !important;
}

body:not(.is-mobile) .header-search .search-submit {
    right: 6px !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 10px !important;
    background-color: transparent !important;
}

body:not(.is-mobile) .header-customer-account,
body:not(.is-mobile) .header-favorite,
body:not(.is-mobile) .site-header-cart {
    flex: 0 0 auto;
}

body:not(.is-mobile) .header-customer-account--vis,
body:not(.is-mobile) .header-cart__link,
body:not(.is-mobile) .header-favorite__link,
body:not(.is-mobile) .header-compare__link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0 !important;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 9px 20px rgba(18, 35, 68, .05);
}

body:not(.is-mobile) .header-customer-account--vis:hover,
body:not(.is-mobile) .header-cart__link:hover,
body:not(.is-mobile) .header-favorite__link:hover,
body:not(.is-mobile) .header-compare__link:hover {
    border-color: #cbd9ff;
    box-shadow: 0 12px 24px rgba(70, 118, 255, .12);
    transform: translateY(-1px);
}

body:not(.is-mobile) .main-navigation {
    display: none !important;
}

@media (max-width: 1120px) {
    body:not(.is-mobile) .site-header-inner {
        flex-wrap: wrap;
    }

    body:not(.is-mobile) .header-search {
        order: 20;
        flex-basis: 100% !important;
    }
}

@media (max-width: 768px) {
    .super-header,
    .site-header {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

/* Hide generated table of contents blocks across the site. */
.table-of-contents,
.widget_wpshop_table_of_contents,
.wp-block-rank-math-toc-block,
.wp-block-aioseo-table-of-contents,
.yoast-table-of-contents,
.ez-toc-container,
.lwptoc {
    display: none !important;
}

.dim-b-info {
	margin-top: 20px;
    display: flex;
    gap: 10px;
}
.entry-title, .page-title {
   text-align: left !important;
}
body:not(.is-mobile) .shop-item__icons-quick {
   display: none !important;
}
.current-indicator {
   color: #0cb113;
}
.product-info .price {
   display: none;
}
/**/
.entry-tag {
    text-decoration: none;
    font-size: .9em;
    white-space: nowrap;
    margin-right: .5em;
    color: #91a6ba;
    border: 1px solid #ebebeb;
    padding: 6px 10px;
}
/*статьи категории*/
.one-click-buy__container {
	margin: 110px auto 30px !important;
}
/*кол-во*/
.product-type-simple .quantity {
	top:58px;
}
.quantity {
    position: relative;
    top: 48px;
    left: 10px;
    z-index: 9;
}
/**/
.product-info .woocommerce-product-details__short-description {
	width: 100%;
}
/**/
.woocommerce-tabs .wc-tabs {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.woocommerce-tabs .wc-tabs li {
    flex: 1;
    text-align: center;
    margin: 0 !important;
}

.woocommerce-tabs .wc-tabs li a {
    display: block;
    width: 100%;
    padding: 10px 5px;
}
@media (max-width: 768px) {
	.dim-blog {
    margin-top: -20px !important;
    margin-bottom: -14px !important;
}
	.quantity {
		top:56px;
	}
    .woocommerce-tabs .wc-tabs {
        flex-direction: column;
    }
    
    .woocommerce-tabs .wc-tabs li {
        margin-bottom: 5px !important;
    }
}
/**/
.product-container {
	margin-bottom: 25px !important;
}
.product-info h1 {
	margin-top:-10px !important;
}

.single_add_to_cart_button::before {
    content: "🛒";
    font-size: 1.2em;
    margin-right: 8px;
    vertical-align: middle;
    font-family: wpshop-core !important;
}
.single_add_to_cart_button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px; /* расстояние между иконкой и текстом */
    width: 100%;
}
button.button.js-buy-one-click.bono_buy_one_click {
    margin-top: 8px;
    color: rgb(39, 43, 39);
    height: 60px;
    background: rgb(239, 246, 255);
    border-radius: 8px;
}
button.button.js-buy-one-click.bono_buy_one_click:hover {
	border:1px solid #383333;
}
.woocommerce-tabs .wc-tabs li.active a {
    box-shadow: rgb(255, 255, 255) 0px 0px 0px 0px inset !important;
    color: rgb(39, 43, 39) !important;
    background: #eff6ff;
    padding: 14px 26px;
    border-radius: 25px;
}
.bono_buy_one_click {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
}
.bono_buy_one_click::before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 28px;
    background-image: url(/wp-content/uploads/2025/10/ur.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    position: relative;
    top: 8px;
    margin-top: -10px;
}
.woocommerce-tabs {
	max-width: 100% !important;
}
.woocommerce-tabs .wc-tabs {
	text-align: left !important;
	border: 1px solid;
    border-radius: 25px;
	padding: 7px !important;
}

#recent-posts-2 ul li {
    margin-bottom: 10px; 
	border: 1px solid #ced4da;
    padding: 10px;
}
.additional-price {
    display: block; 
    margin: 3px 0;  
    font-size: 1em;
    line-height: 1.4;
}

.price-label {
    font-weight: 600;
    color: #333;
    display: inline-block;
    min-width: 50px; 
}

.base-price .woocommerce-Price-amount {
    font-weight: normal;
}

.wholesale-price .price-label {
    color: #0066cc; 
}

.vip-price .price-label {
    color: #d30c5c; 
}

blockquote {
    margin: 1rem 0px 2rem !important;
    border-left: 5px solid #2563eb !important;
}

.woocommerce-cart-form .shop_table td.actions .coupon {
    display: block !important;
}

button[name="update_cart"] {
    display: none !important; /*удалить кнопку обновить корзину*/
}

.cart-subtotal {
	display:none;
}

.breadcrumb, .woocommerce-breadcrumb {
    display: block;
}

/*доп. магазин*/
p.stock.in-stock {
	display:none !important;
}
.product-category a {
    transition: all 0.3s ease;
	border-radius: 8px;
}
.product-category a:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
}

.shop-item__actions {
    position: relative;
    z-index: 3;
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .add_to_cart_button,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button {
    width: 100%;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border: 0 !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .24) !important;
    color: #fff !important;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    text-transform: none !important;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .add_to_cart_button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:focus,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .add_to_cart_button:focus,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:focus {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .34) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.shop-item .shop-item__actions .shop-item__details-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    border: 1px solid #dbe4f0 !important;
    border-radius: 8px !important;
    color: #273347 !important;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(18, 35, 68, .06);
    transition: border-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.shop-item .shop-item__actions .shop-item__details-link:hover,
.shop-item .shop-item__actions .shop-item__details-link:focus {
    border-color: #bccaff !important;
    color: #6656f4 !important;
    background: #fff !important;
    box-shadow: 0 10px 22px rgba(18, 35, 68, .1);
    transform: translateY(-1px);
}
/*доп. стили*/
.top-menu ul li.menu-item-has-children>a:after, .top-menu ul li.menu-item-has-children>span:after {
    margin-left: 0 !important;
    opacity: .5 !important;
    position: relative;
    background: transparent;
}
.shop-item .shop-item__price,
.shop-item .shop-item__price .price {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 7px;
    color: #2563eb !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.3;
}

.shop-item .shop-item__price .amount,
.shop-item .shop-item__price ins,
.shop-item .shop-item__price ins .amount {
    color: #2563eb !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.shop-item .shop-item__price del,
.shop-item .shop-item__price del .amount {
    color: #c0c7d2 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: line-through !important;
    opacity: 1 !important;
}

.shop-item .shop-item__price ins {
    background: transparent !important;
}

.shop-item .shop-item__price > .amount:only-child,
.shop-item .shop-item__price .price > .amount:only-child {
    color: #142033 !important;
    font-weight: 600 !important;
}

.site-footer {
padding-top: 30px !important;
}
.shop-item--type-standard .shop-item-inner {
        
}
.shop-item__buttons-cart, .shop-item__buttons-one-click-buy, .shop-item__buttons-view {
	border-radius:5px !important;
	padding: 12px !important;
	text-transform: lowercase;
    display: flex !important;
	background:#3980f5 !important;
}
.menu-footer-menu-container {
	display: flex;
    justify-content: center;
}
.dim-button {
	margin-top: 40px;
	display: flex;
    justify-content: center;
    padding: 20px;
    border: 2px solid;
    font-size: 22px;
    font-weight: 500;
}
.dim-heading-sh {
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
    margin-top: 30px;
    text-align: center;
    font-size: 4em;
	font-weight: 400;
}
.dim-3 {
	text-align: center;
    font-weight: 400;
	margin-bottom: 0px;
	color: #3960ff;
}
.dim-c {
	text-align: center;
	text-transform: lowercase;
}
.dim-cat {
	font-size: 2em;
}
.dim-b-w {
	border: 1px solid;
    padding: 12px 20px;
    border-radius: 8px;
}
.dim-b-w-all {
	display: flex;
    justify-content: center;
    gap: 10px;
    padding-bottom: 20px;
	font-size: 12px;
}
.site-header {
        padding-bottom: 0px !important;
}
.header-customer-account--vis {
        padding: 7px;
}
.header-cart__link {
        padding: 7px !important;
}
.header-customer-account__text {
        display: none !important;
}
.top-menu {
    font-size: 1em !important;
}
.dim-header-top {
	display: flex;
    gap: 20px;
	justify-content: flex-end;
}
.dim-footer {
    margin-top: -30px;
    margin-bottom: -20px;
    display: flex;
    justify-content: flex-end;
    gap: 20px;
}
a {
    text-decoration: none !important;
    position: relative;
    /* Чтобы псевдоэлемент не вылезал за границы ссылки (опционально) */
    /* overflow: hidden; */
}
.site-branding {
	flex-grow: 0 !important;
}
.dim-h-s {
	color:#111 !important;
}
.site-header-inner {
    padding-top: 5px;
    padding-bottom: 5px;
    }
.top-menu ul li .sub-menu li>a, .top-menu ul li .sub-menu li>span {
    padding: 14px 0px 0px !important;
}
.top-menu ul li .sub-menu {
	top:40px !important;
	padding-bottom: 14px;
	border-radius: 5px;
	box-shadow: 0 2px 2px rgba(178, 165, 105, .25) !important;
}
.top-menu a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px; /* Расстояние от текста */
    width: 0;
    height: 1px; /* Толщина линии */
    background-color: currentColor; /* Цвет как у текста */
    transition: width 0.3s ease-in-out;
}
.top-menu a:hover::after {
    width: 100%;
}
footer a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px; /* Расстояние от текста */
    width: 0;
    height: 1px; /* Толщина линии */
    background-color: currentColor; /* Цвет как у текста */
    transition: width 0.3s ease-in-out;
}

footer a:hover::after {
    width: 100%;
}

@media (max-width: 1115px) {
	.site-description {
    display: none;	
}
}
@media (max-width: 1200px) {
	.dim-col2 {
		display:none;
	}
    .dim-footer {
		margin-top: 0;
		margin-bottom: 0;
        justify-content: flex-start;
		gap: 10px;
    }
    
.dim-heading-sh {
	font-size: 3em;
}
.header-mobile-items-container {
display: none !important;
}
.site-logotype img {
    max-height: 60px !important;
    padding: 5px;
}
.site-header {
    padding-top: 10px !important;
    padding-bottom: 1px !important;
    
}
.humburger {
    top: 30px !important;
}
.header-cart__link {
    padding: 8px !important;
}
}
/*новый вид 25-09-2025*/
.preset-bgi-1, .sidebar-left .section-preset--bgi-1, .sidebar-none .section-preset--bgi-1:before, .sidebar-right .section-preset--bgi-1 {
  background: #f3f5f9 url(https://key-hub.ru/wp-content/uploads/2025/10/fon1-scaled.webp) !important;
  background-repeat: no-repeat !important;
  background-size: 100% 100% !important;    
}

.dim-col {
	display: flex;
    justify-content: space-between;
    align-items: center;	
}
.dim-col2 img {
	
}
.section-block__header {
	display:none !important;
}
.dim-b1 {
	display: flex;
    gap: 18px;
}
.dim-primary {
	background: white !important;
    color: #2563eb !important;
	border: 1px solid
}
.dim-two {
	background: transparent !important;
    color: white;
    border: 1px solid !important;
}
.dim-three {
	background: transparent !important;
    color: #3a80f5 !important;
    border: 1px solid #2665ec !important;
}
.dim-center-m {
	text-align: center;
}
.preset-bgc-3, .sidebar-left .section-preset--bgc-3, .sidebar-none .section-preset--bgc-3:before, .sidebar-right .section-preset--bgc-3 {
    background: #f9fafb !important;
}
.dim-t1 {
	font-size: 4rem;
    line-height: 4.4rem;
    width: 84%;
	margin: 18px 0px 14px !important;
}
.dim-t2 {
	font-size: 1.25rem;
    line-height: 1.75rem;
	width: 80%;
	padding-bottom: 10px;
}
.dim-t3 {
	margin-top: 0px !important;
    text-align: center;
}
.preset-bgc-15, .sidebar-left .section-preset--bgc-15, .sidebar-none .section-preset--bgc-15:before, .sidebar-right .section-preset--bgc-15 {
    background: #2563eb !important; 
    background-image: linear-gradient(to right, #3b82f6, #2563eb) !important;
}
.header-search {
    flex: 20 !important;
    padding-right: 55px;
}
@media (max-width: 990px) {
    .container, .fixed.block-after-site, .fixed.main-navigation-inner, .fixed.related-posts, .fixed.section-block, .fixed.section-html, .fixed.site-content, .fixed.site-footer-inner, .fixed.site-header-inner, .footer-navigation.fixed, .main-navigation.fixed, .site-footer.fixed, .site-header.fixed, .super-header-inner.fixed, .super-header.fixed {
        max-width: 900px !important;
    }
	.footer-widget h3 {
		font-size:1.1rem;
	}
}
.footer-widgets {
	border-bottom: 1px solid #374151;
}
.footer-widget a, .footer-widget p {
	font-size:1rem !important;
	color:#d1d5db !important;
}
.footer-widget .widget-header {
	font-size: 1.125rem !important;
	color:white;
	
}
.footer-widget ul {
    list-style: none;
	padding-left: 0;
		
}
.footer-widget ul li {
   padding-bottom: 10px;
}
.footer-widget h3 {
   padding-top: 10px;
}
.footer-widgets .dim-icon {
	margin: 18px -7px;
    display: flex;
    justify-content: flex-start;
    gap: 10px;
    align-items: center;
}
footer .dim-icon a:hover::after {
    width: 0%;
}
.entry-content blockquote p, .home-text blockquote p, .taxonomy-description blockquote p {
    margin: .4em 1em !important;
    font-size: 1.1rem;
}
.comment-reply-title, .comments-title, .h1, .h2, .h3, .h4, .h5, .h6, .related-posts__header, .related-products__header, .section-block__title, h1, h2, h3, h4, h5, h6 {
    margin: 1em 0 1em !important;
}
/*контактная форма*/
.contact-form-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: start;
}

.form-left {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.form-right {
    height: 100%;
}

.form-right textarea {
    height: 220px;
    min-height: 180px;
    resize: vertical;
}

.form-submit {
    text-align: left;
}
.form-left label {
	margin-bottom: 1.4rem;
}
.dim-top-left {
	display: flex;
    gap: 20px;
}
/*категории товаров на главной*/
/* Обновленные стили для категорий с уникальными классами */
        .dimm-product-categories {
            display: grid;
            grid-template-columns: 1fr;
            gap: 24px;
        }
        
        @media (min-width: 768px) {
            .dimm-product-categories {
                grid-template-columns: repeat(2, 1fr);
            }
        }
        
        @media (min-width: 1024px) {
            .dimm-product-categories {
                grid-template-columns: repeat(3, 1fr);
            }
        }
        
        .dimm-category-item {
            background-color: #f9fafb;
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
            transition: box-shadow 0.3s;
        }
        
        .dimm-category-item:hover {
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
        }
        
        .dimm-category-details {
            padding: 24px;
        }
        
        .dimm-category-info {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            margin-bottom: 16px;
        }
        
        .dimm-category-name {
            font-size: 20px;
            font-weight: 700;
            color: #1f2937;
            margin: 0;
        }
        
        .dimm-category-summary {
            color: #4b5563;
            margin: 0;
        }
        
        .dimm-category-visual {
            height: 150px;
            margin-bottom: -50px;
        }

        .dimm-category-visual-link {
            display: inline-block;
            line-height: 0;
            border-radius: 20px;
        }

        .dimm-category-visual-link:focus-visible {
            outline: 2px solid #7567ff;
            outline-offset: 4px;
        }
        
        .dimm-category-action {
            color: #3b82f6;
            font-weight: 500;
            display: inline-flex;
            align-items: center;
            text-decoration: none;
        }
        
        .dimm-category-action svg {
            margin-left: 8px;
            width: 16px;
            height: 16px;
}
/*карточка товара*/
.woocommerce-tabs .woocommerce-Tabs-panel {
	max-width: 100% !important;
}
/*товар в каталоге, рейтинг в правом верхнем углу */
.shop-item__rating-top {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 10;
    background: rgba(255, 255, 255, 0.9);
    padding: 5px 8px;
    border-radius: 3px;
}

/* Кнопка "В корзину" по всей ширине */
.shop-item__add-to-cart-fullwidth {
    margin-top: 10px;
    text-align: center;
}

.shop-item__add-to-cart-fullwidth .button {
    width: 100%;
    display: block;
    text-align: center;
    justify-content: center;
}
/* Основная кликабельная область карточки */
.shop-item {
    position: relative;
}

.shop-item__link-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    text-decoration: none;
}
.shop-item__badges {
	top: 40px !important;
	right: 0px !important;
}

.shop-item .shop-item__badges {
    position: absolute !important;
    top: 8px !important;
    right: 12px !important;
    z-index: 12;
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    pointer-events: none;
}

.shop-item .shop-item__badge,
.shop-item .onsale.shop-item__badge,
.single-product__badge--onsale {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    min-height: 22px;
    padding: 4px 8px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ff5f6f 0%, #ff3b3b 100%) !important;
    box-shadow: 0 8px 18px rgba(255, 59, 59, .2) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    white-space: nowrap;
}

.product .star-rating span:before, .comment-form-rating .stars a:before, .wc-block-components-review-list-item__rating>.wc-block-components-review-list-item__rating__stars span:before {
 color: #ff7029 !important;
}
/* Исключаем из кликабельной области */
.shop-item__rating-top,
.shop-item__icons,
.shop-item__badges,
.shop-item__add-to-cart-fullwidth,
.js-add-to-cart-button,
.shop-item__icons-favorite,
.shop-item__icons-quick,
.shop-item__icons-compare {
    position: relative;
    z-index: 2;
}

/* Рейтинг в правом верхнем углу */
.shop-item__rating-top {
    position: absolute;
    top: 0px;
    right: -2px;
    z-index: 10;
    background: rgba(255, 255, 255, 0.9);
    padding: 0px;
    border-radius: 0px;
}
.product .star-rating, .widget_rating_filter .star-rating, .widget_recent_reviews .star-rating {
	font-size: 12px !important;
    height: 11px !important;
}
/* Кнопка "В корзину" по всей ширине */
.shop-item__add-to-cart-fullwidth {
    margin-top: 10px;
    text-align: center;
    position: relative;
    z-index: 2;
}

.shop-item__add-to-cart-fullwidth .button {
    width: 100%;
    display: block;
    text-align: center;
    justify-content: center;
    position: relative;
    z-index: 3;
}

/* Заголовок товара */
.shop-item__title-link {
    position: relative;
    z-index: 2;
}

/* Иконки избранного, сравнения и быстрого просмотра */
.shop-item__icons > * {
    position: relative;
    z-index: 10;
    cursor: pointer;
}
.shop-item-inner {
	z-index:9;
}
/*поддержка + telegram на главной*/
        .support-section {
    background-image: url('/wp-content/uploads/2025/10/sb1.webp');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-color: white;
}
.support-section-p {
	background-color: #eff6ff;
    border-radius: 40px;
}
.support-content-w {	
	background: #eff6ff;
    border-radius: 45px;
}
.support-image-w img {
	margin-top: -30px;
    width: 50%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.support-section {
  padding: 32px;
}

.support-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0px;
}

.support-text {
  flex: 3;
  padding: 20px;
}

.support-image {
  flex: 2;
  text-align: center;
}

.support-image img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
}

.support-buttons {
  display: flex;
  gap: 15px;
  margin-top: 30px;
  flex-wrap: wrap;
}

.btn-chat, .btn-telegram {
  padding: 12px 24px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.btn-chat {
  background: #007bff;
  color: white;
}

.btn-telegram {
  background: #0088cc;
  color: white;
}

.telegram-icon {
  width: 20px;
  height: 20px;
}
/*архив посты сетка*/
.archive-posts-grid.post-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
    margin: 30px 0;
}

.archive-posts-grid .post-card {
	margin-top: -20px;
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.archive-posts-grid .post-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
    border-color: #0073aa;
}

.archive-posts-grid .post-card__thumbnail {
    height: 150px;
    flex-shrink: 0;
    background: #f5f5f5;
	flex-basis: auto;
}

.archive-posts-grid .post-card__thumbnail-image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    transition: transform 0.3s ease;
}

.archive-posts-grid .post-card:hover .post-card__thumbnail-image {
    transform: scale(1.05);
}

.archive-posts-grid .post-card__body {
    padding: 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.archive-posts-grid .post-card__title {
    margin: 0 0 12px 0;
    font-size: 1.1em;
    line-height: 1.4;
    font-weight: 600;
}

.archive-posts-grid .post-card__title a {
    text-decoration: none;
    color: #2c3e50;
    display: block;
}

.archive-posts-grid .post-card__title a:hover {
    color: #0073aa;
}

.archive-posts-grid .post-card__description {
    font-size: 1.1em;
    line-height: 1.5;
    color: #555;
    margin-bottom: 15px;
    flex-grow: 1;
}

.archive-posts-grid {
    display: flex;
    gap: 15px;
    font-size: 0.8em;
    color: #888;
    padding-top: 12px;
    margin-top: auto;
}

.archive-posts-grid .post-card__comments,
.archive-posts-grid .post-card__views {
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Адаптивность */
@media (max-width: 1200px) {
    .archive-posts-grid.post-cards {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }
}

@media (max-width: 900px) {
    .archive-posts-grid.post-cards {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 600px) {
    .archive-posts-grid.post-cards {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .archive-posts-grid .post-card__thumbnail {
        height: 160px;
    }
    
    .archive-posts-grid .post-card__body {
        padding: 15px;
    }
}
.support-description-w {
	font-size:13px;
}
/*поиск скрыть описание*/
.search .post-card__description {
    display: none !important;
}
/*пагинация отступ*/
.search .site-main {
    padding-bottom: 50px;
}
/*похожие записи*/
.post-card--related .post-card__thumbnail {
    border-radius: 12px;
}
/*посты*/
.post-card--vertical {
        -ms-flex: 0 0 calc(25% - 40px) !important;
        flex: 0 0 calc(25% - 20px) !important;
        max-width: calc(25% - 20px) !important;
        margin-left: 10px !important;
        margin-right: 10px !important;
		margin-bottom:0px !important;
}
.post-card--vertical .post-card__thumbnail-image {
    display: none;
}
/*о нас*/

.about-keyhub {
  font-family: "Inter", sans-serif;
  color: #111827;
  padding: 60px 20px 100px;
  max-width: 1100px;
  margin: 0 auto;
}

/* Вступление */
.about-hero {  
  margin-bottom: 20px;
  margin-top: -80px;
}
.dim-no-ul .entry-content ul:not([class]) > li:not(.sitemap-list__block)::before {
    display: none;
}
.about-hero h1 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 15px;
}

.about-hero p {
  color: #6b7280;
  font-size: 26px;
  line-height: 1.6;
  margin: 0 auto;
}

/* Основной блок */
.about-info {
  display: flex;
  gap: 5px;
  
}

.about-text {
  flex: 1;
}

.about-text h2 {
  color: #0096ff;
  font-size: 1.3rem;
  margin-bottom: 10px;
}

.about-text p {
  color: #444;
  line-height: 1.7;
  margin-bottom: 20px;
}

.about-text ul {
  list-style: none;
  padding-left: 0;
}

.about-text li {
  background: url('https://key-hub.ru/wp-content/uploads/2025/10/190411.webp') no-repeat left center / 18px;
  padding-left: 30px;
  margin-bottom: 10px;
  color: #333;
}

.about-image img {
  width: 260px;
  max-width: 100%;
  background: #f3f4f6;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 4px 14px rgba(0,0,0,0.05);
}

/* Преимущества */
.about-benefits {
  text-align: center;
  margin-bottom: 10px;
}

.about-benefits h2 {
  font-size: 1.6rem;
  margin-bottom: 40px;
}

.benefits-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 20px;
}

.benefit-card {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 25px 20px;
  text-align: left;
  transition: all 0.3s ease;
}

.benefit-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

.benefit-card h3 {
  color: #0096ff;
  margin-bottom: 10px;
  font-size: 1.1rem;
}

.benefit-card p {
  color: #444;
  line-height: 1.6;
  font-size: 0.95rem;
}

/* CTA */
.about-cta {
  text-align: center;
  background: #f9fafb;
  padding: 50px 20px;
  border-radius: 16px;
}

.about-cta h2 {
  font-size: 1.6rem;
  margin-bottom: 10px;
}

.about-cta p {
  color: #555;
  margin-bottom: 25px;
}

.cta-buttons {
  display: flex;
  justify-content: center;
  gap: 15px;
  flex-wrap: wrap;
}

.btn-primary {
  background: #0096ff;
  color: white;
  padding: 12px 26px;
  border-radius: 8px;
  font-weight: 600;
  text-decoration: none;
  transition: 0.3s;
}

.btn-primary:hover {
  background: #007ce6;
}

.btn-outline {
  border: 2px solid #0096ff;
  color: #0096ff;
  padding: 12px 26px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  transition: 0.3s;
}

.btn-outline:hover {
  background: #0096ff;
  color: white;
}

/* Адаптив */
@media (max-width: 900px) {
  .about-benefits {
	margin-bottom: -70px;
  }	
  .about-info {
    flex-direction: column;
    text-align: center;
  }

  .about-text li {
    text-align: left;
    background-position: left 5px;
  }

  .about-image img {
    width: 200px;
    margin-top: 20px;
  }
}
/* Мобильная версия */
@media (max-width: 1110px) {
  .support-section {
    padding: 40px 0;
  }
  
  .support-image {
    order: 2;
  }
  
  .support-text {
    order: 1;
  }
  
  .support-image img {
    max-width: 280px;
    max-height: 200px;
  }
  
  .support-buttons {
    justify-content: center;
	margin-top: 46px;
  }
  
  .btn-chat, .btn-telegram {
    padding: 10px 20px;
    font-size: 14px;
  }
  .support-description {
	padding: 0 40px;
    margin-bottom: -30px;
  }
}
@media (max-width: 1399px) {
	.support-content {
    flex-direction: column;
    gap: 10px;
    text-align: center;
  }
  .woocommerce-tabs .wc-tabs li a {
  font-size: 15px;
  }
}
@media (max-width: 1199px) {
	.dim-top-left {
	  width:500px !important;
}
}
@media (max-width: 968px) {
	.product-info .quantity {
	width: 5em !important; 
	}
}
@media (min-width: 768px) {
     .dim-comp-no {
		display:none; 
	 }
}
@media (max-width: 768px) {
	.post-card--vertical {
        -ms-flex: 0 0 calc(100% - 0px) !important;
        flex: 0 0 calc(100% - 0px) !important;
        max-width: calc(100% - 0px) !important;
        margin-bottom: 10px !important;
}
.post-card--vertical .post-card__thumbnail {
    width: 60%;
    margin: 0 !important;
}
	.variation-card {
	min-width: 160px !important;
	padding: 10px !important;
	border: 1px solid #e0e0e0 !important;
}
.variations-container {
	gap:4px !important;
	margin-bottom: 10px !important;
}
.variation-title {
    font-size: 13px !important;
    margin-bottom: 0 !important;
}
.feature-text {
	font-size: 12px !important;
}
.feature-item {
	padding: 0px !important;
	margin: -4px 3px !important;
}
section.up-sells.upsells.products {
	margin-top: -50px !important;
}
	.dim-mob-no {
		display:none;
	}
	.support-image img {
	max-height: 120px;	
	}
	.product-info .quantity {
	width: 4.8em !important; 
	}
	.product-type-simple .quantity {
	top: 67px;
    left: -130px;
	}
	.dim-w {
	max-width: 100% !important;
    margin-left: 10px !important;
    margin-right: 10px !important;
    text-align: left !important;
	}
	.shop-item__badge {
	font-size: .8em !important;
    padding: 0px 3px !important;
	}
	.product-container .woocommerce-breadcrumb {
        display: none;
    }
	.product-info h1 {
	margin-top:0px !important;
	text-align:center;
}
    .contact-form-layout {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .dim-col {
		flex-direction: column;
	}
    .form-right textarea {
        min-height: 150px;
    }
	.dim-t1, .dim-t2 {
	width:100%;
	margin-bottom: -10px;
    padding: 4px 10px !important;
	}
	.dim-t1 {
	font-size: 1.7rem;
    line-height: 2rem;
    margin: 0px 0px 0px !important;
	}
	.dim-t2 {
	font-size: .9rem;
    line-height: 1.4rem;
	}
	.dim-col2 {
	text-align: center;
	padding-bottom: 40px;
	}
	.dim-b1 {
	justify-content: center;
	}
.dim-center-m {
    margin-top: -10px;
}
.shop-item--type-standard .shop-item-inner {
        padding: 6px !important;
    }
.site-header-inner {
    padding-top: 0px;
    padding-bottom: 0px;
}	
.humburger {
    top: 18px !important;
}
.dim-all {
   padding: 0px !important;
   margin-bottom: -20px !important;
}
}
@media (max-width: 360px) {
	.product-type-simple .quantity {
	top: 10px !important;
    left: 0px !important;
	}
	.product-info .quantity {
	width: 100% !important; 
	}
}
/*статьи*/
.articles-section {
	margin-top: -30px;
}
.articles-container {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.articles-title {
  font-size: 1.875rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 2rem;
}

.articles-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

@media (min-width: 768px) {
  .articles-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.article-card {
  background-color: white;
  /*border-radius: 0.5rem; */
  overflow: hidden;
  /*box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); */
}
.article-meta .breadcrumb {
	align-items: center;
    margin-top: 10px;
}
.article-image {
  width: 100%;
  height: 12rem;
  object-fit: cover;
}

.article-content {
  padding: 1.5rem;
}

.article-meta {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
  color: #6b7280;
  margin-bottom: 0.5rem;
}

.article-dot {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

.article-heading {
  font-weight: 700;
  font-size: 1.125rem;
  margin-bottom: 0.75rem;
}

.article-link {
  color: #3b82f6;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}

.article-icon {
  margin-left: 0.5rem;
  width: 1rem;
  height: 1rem;
}

.articles-footer {
  text-align: center;
  margin-top: 2rem;
}

.all-articles-btn {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  border: 1px solid #3b82f6;
  color: #3b82f6;
  border-radius: 0.375rem;
  text-decoration: none;
  transition: background-color 150ms;
}

.all-articles-btn:hover {
  background-color: #eff6ff;
}
.dim-t-p {
	color:#4b5563;
	font-size: 1.125rem;
    line-height: 1.75rem;
	margin-bottom: 1rem;
}
.dim-h-c {
	text-align:center;
}
.dim-w {
  max-width: 80%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.dim-center-m1 {
	padding-top: 20px;
    text-align: center;
    margin-bottom: -90px;
}
.dim-all {
   padding: 14px;
   margin-bottom: -60px;
}
/*карточка товара избранное и сравнить*/
.product-compare-btn, .product-favorite-btn {
	display:none !important;
}
.woocommerce-product-details__short-description {
    margin: 1em 0 !important;
    font-size: 14px;
    color: #4b5563;
}
.quantity input.qty, .quantity input[type=number] {
	border-radius: 5px;
}
.product-info .cart .woocommerce-variation-add-to-cart {
	display: block !important;
}
/* Стили для карточек вариаций */
.variations-container {
    display: flex;
    gap: 20px;
    margin-bottom: 25px;
    flex-wrap: wrap;
}

.variation-card {
    flex: 1;
    min-width: 250px;
    background: #fff;
    border: 2px solid #e0e0e0;
    border-radius: 12px;
    padding: 20px;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
}

.variation-card:hover {
    border-color: #2271b1;
    transform: translateY(-2px);
}

.variation-card.active {
    border-color: #2271b1;
    background: #f0f8ff;
    box-shadow: 0 4px 12px rgba(34, 113, 177, 0.15);
}

.variation-badge {
    position: absolute;
    top: -10px;
    right: -14px;
    background: #ff4444;
    color: white;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

.variation-title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #333;
}

.variation-price {
    font-size: 24px;
    font-weight: 700;
    color: #2c5aa0;
    margin-bottom: 5px;
}

.variation-old-price {
    font-size: 16px;
    color: #999;
    text-decoration: line-through;
    margin-bottom: 10px;
}

.variation-features {
    list-style: none;
    padding: 0;
    margin: 15px 0;
}

.variation-features li {
    padding: 5px 0;
    color: #666;
    font-size: 14px;
    position: relative;
    padding-left: 20px;
}

.variation-features li:before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #4CAF50;
    font-weight: bold;
}

/* Скрываем стандартный селект вариаций */
.variations {
    display: none !important;
}

/* Стили для кнопки корзины */
.single_add_to_cart_button {
    color: white;
    font-size: 16px;
    font-weight: 600;
    transition: all 0.3s ease;
	
	height: 60px;
    background: #383333 !important;
    border-radius: 8px !important;
    
}

.single_add_to_cart_button:hover {
    background: #1e3d6f;
    transform: translateY(-2px);
}



.features-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 16px;
            margin-bottom: 0;
        }
        
        .feature-item {
            display: flex;
            align-items: center;
            background-color: white;
			padding: 0px 7px;
           /* border-radius: 8px;            
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
            border: 1px solid #f3f4f6; */
        }
        
        .feature-icon {
            width: 20px;
            height: 20px;
            color: #2563eb;
            margin-right: 12px;
        }
        
        .feature-text {
            font-size: 14px;
            font-weight: 500;
            color: #1f2937;
        }
        
        /* Стили для Feather иконок */
        .feather {
            fill: none;
            stroke: currentColor;
            stroke-width: 2;
            stroke-linecap: round;
            stroke-linejoin: round;
        }
/*техподдержка*/
.consultation-block {
    background-color: #eff6ff;
    border-radius: 8px;
    padding: 2px 8px 20px;
	margin-bottom: 12px;
}
        
        .consultation-content {
            display: flex;
            align-items: flex-start;
        }
        
.consultation-icon {
    width: 40px;
    height: 40px;
    margin-right: 2px;
    margin-top: 4px;
}
        
.consultation-title {
    padding-left: 3px;
    font-weight: 600;
    font-size: 16px;
    color: #1f2937;
}
        
        .consultation-text {
            font-size: 14px;
            margin-bottom: 12px;
            color: #4b5563;
        }
        
.consultation-button {
    display: block;
    width: 97%;
    background-color: transparent;
    color: #3960ff;
    border: 1px solid;
    padding: 8px 16px;
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    transition: background-color 0.2s;
}
        
.consultation-button:hover {
            background-color: #1d4ed8;
			color:white;
}
    
/* Стили для Feather иконок */
.feather {
            fill: none;
            stroke: #0cb113;
            stroke-width: 2;
            stroke-linecap: round;
            stroke-linejoin: round;
}

/*краткое описание характеристики*/
.product-card {
            background-color: #eff6ff;
            border-radius: 8px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
            width: 100%;
            overflow: hidden;
			margin-bottom:-20px;
        }
        
.card-header {
    padding: 10px 10px 0;
    font-size: 18px;
    font-weight: 500;
}
        
        .characteristics {
            padding: 10px;
        }
        
        .characteristic-row {
            display: flex;
            padding: 5px 0;
            border-bottom: 1px solid #e7e7e7;
        }
        
        .characteristic-row:last-child {
            border-bottom: none;
        }
        
        .characteristic-name {
            width: 40%;
            color: #666;
            font-weight: 400;
        }
        
        .characteristic-value {
            width: 60%;
            color: #333;
            font-weight: 600;
        }
        
.download-button {
    font-weight: 500;
    transition: background-color 0.2s;
}
        
        .download-button:hover {
            border-bottom: 1px solid;
        }
        
        @media (max-width: 480px) {
            .characteristic-row {
                flex-direction: column;
            }
            
            .characteristic-name, 
            .characteristic-value {
                width: 100%;
            }
            
            .characteristic-name {
                margin-bottom: 4px;
            }
}
/*плитки в карточке товара*/
.variation-card {
    position: relative;
    transition: all 0.3s ease;
    cursor: pointer;
}

.variation-card.loading {
    opacity: 0.7;
    pointer-events: none;
}

.variation-card.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin: -10px 0 0 -10px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid #3498db;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

.current-indicator {
    font-weight: bold;
    margin-top: 5px;
    font-size: 0.9em;
    transition: color 0.3s ease;
}

.current-indicator.active {
    color: #4CAF50;
}

.variation-card.current-product {
    border-color: #4CAF50;
    background-color: #f8fff8;
}

.single_add_to_cart_button.loading {
    opacity: 0.7;
    pointer-events: none;
}
.dim-opa {
	opacity: 0.4;
}
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
/* Стили для выбора версии */
.version-selection {
    margin: 20px 0;
    padding: 0;
}

.version-selection__title {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 15px;
    color: #333;
}

.version-selection__years {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 25px;
}

.version-year {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    background: #fff;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    text-decoration: none;
    color: #333;
    font-weight: 500;
    transition: all 0.3s ease;
    cursor: pointer;
    min-width: 80px;
}

.version-year:hover {
    border-color: #4caf50;
	background: #f8fff8;
    color: #444;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 124, 186, 0.15);
}

.version-year.active {
    background: #007cba;
    border-color: #007cba;
    color: #fff;
}

.version-year__number {
    font-size: 1rem;
    font-weight: 600;
}

/* Стили для блока с описанием новых функций */
.version-features {
    background: #f8f9fa;
    border-radius: 12px;
    padding: 20px;
    border-left: 4px solid #007cba;
}

.version-features__title {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 12px;
    color: #333;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.version-features__content {
    color: #666;
    line-height: 1.5;
}

.version-features__content p {
    margin: 0;
    font-size: 0.9rem;
}
/*дата пост просмотр*/

.article-meta .entry-author, .article-meta .entry-category, .article-meta .entry-date, .article-meta .entry-time, .article-meta .entry-views {
    display: none;
}
.post-card__meta {
 display: none;
}
/*страница бот активации*/
.dim-col-all {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.dim-col-text {
    flex: 1 1 400px;
    min-width: 300px;
}

.dim-col-img {
    flex: 0 0 auto;
    text-align: center;
}

.dim-col-img img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

.dim-status {
	position: relative;
    border-radius: 20px;
    border: 1px solid #e9e9e9;
    padding: 5px 16px 5px 26px;
    width: max-content;
    font-size: 14px;
    font-weight: 500;
}
.dim-green {
	color: #4CAF50;
}
.dim-col-text h2 {
    color: #333;
    margin-bottom: 15px;
    font-size: 42px;
}

.dim-col-text p:last-of-type {
    color: #666;
    line-height: 1.6;
    font-size: 16px;
}
.dim-get {
	text-align: center;
}
.dim-get h2{	
    font-size: 80px;
}
.dim-get p{
	margin-top:-50px;
}
/* Адаптивность для планшетов */
@media (max-width: 768px) {
    .dim-col-all {
        flex-direction: column;
        text-align: center;
        gap: 20px;
        padding: 15px;
    }
    
    .dim-col-text {
        flex: 1 1 auto;
        min-width: auto;
    }
    
    .dim-col-text h2 {
        font-size: 20px;
    }
    
    .dim-col-img img {
        max-width: 200px;
    }
}

/* Адаптивность для мобильных */
@media (max-width: 480px) {
    .dim-col-all {
        padding: 10px;
        gap: 15px;
    }
    
    .dim-col-text h2 {
        font-size: 18px;
    }
    
    .dim-col-text p:last-of-type {
        font-size: 14px;
    }
    
    .dim-col-img img {
        max-width: 150px;
    }
}
.dim-status::before {
    content: '';
    position: absolute;
    left: 8px;
    top: 48%;
    transform: translateY(-50%);
    width: 10px;
    height: 10px;
    background-color: #4CAF50;
    border-radius: 50%;
    animation: pulse 1s infinite;
}

/* Анимация пульсации для точки */
@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(76, 175, 80, 0.7);
    }
    70% {
        box-shadow: 0 0 0 6px rgba(76, 175, 80, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(76, 175, 80, 0);
    }
}
/**/
/* Скрываем на странице отзывов */
.page-id-6754 .articles-footer {
    display: none !important;
}
/**/
.page-id-4390 .quantity {
    top: auto;
    left: auto;
}
/**/
.woocommerce-mini-cart__total {
border-top: 0px solid #ced4da !important;
}

.woocommerce-mini-cart__buttons.buttons {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    gap: 10px;
    margin-top: 16px !important;
    width: 100%;
}

.woocommerce-mini-cart__buttons.buttons .button {
    width: 100% !important;
    min-height: 42px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 14px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center;
    text-decoration: none !important;
    text-transform: none !important;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}

.woocommerce-mini-cart__buttons.buttons .button.checkout {
    grid-column: 1;
    grid-row: 1;
}

.woocommerce-mini-cart__buttons.buttons .button.wc-forward:not(.checkout) {
    grid-column: 2;
    grid-row: 1;
}

.woocommerce-mini-cart__buttons.buttons .button.wc-forward:not(.checkout) {
    border: 1px solid #dbe4f0 !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(18, 35, 68, .06) !important;
    color: #273347 !important;
}

.woocommerce-mini-cart__buttons.buttons .button.wc-forward:not(.checkout):hover,
.woocommerce-mini-cart__buttons.buttons .button.wc-forward:not(.checkout):focus {
    border-color: #bccaff !important;
    background: #fff !important;
    box-shadow: 0 10px 22px rgba(18, 35, 68, .1) !important;
    color: #6656f4 !important;
    transform: translateY(-1px);
}

.woocommerce-mini-cart__buttons.buttons .button.checkout {
    border: 0 !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .24) !important;
    color: #fff !important;
}

.woocommerce-mini-cart__buttons.buttons .button.checkout:hover,
.woocommerce-mini-cart__buttons.buttons .button.checkout:focus {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .34) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

@media (max-width: 420px) {
    .woocommerce-mini-cart__buttons.buttons {
        grid-template-columns: 1fr;
    }

    .woocommerce-mini-cart__buttons.buttons .button.checkout,
    .woocommerce-mini-cart__buttons.buttons .button.wc-forward:not(.checkout) {
        grid-column: 1;
    }
}

.woocommerce-mini-cart-item {
    position: relative;
    padding-right: 48px !important;
}

.woocommerce-mini-cart-item .remove.remove_from_cart_button {
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    width: 34px !important;
    height: 34px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border: 1px solid #ffd7d7 !important;
    border-radius: 50% !important;
    background: #fff5f5 !important;
    box-shadow: 0 8px 18px rgba(239, 68, 68, .12) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    transform: translateY(-50%);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.woocommerce-mini-cart-item .remove.remove_from_cart_button::before {
    content: "";
    width: 16px;
    height: 16px;
    display: block;
    background: #ff3b3b;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat;
}

.woocommerce-mini-cart-item .remove.remove_from_cart_button:hover,
.woocommerce-mini-cart-item .remove.remove_from_cart_button:focus {
    border-color: #ffb5b5 !important;
    background: #fff !important;
    box-shadow: 0 10px 22px rgba(239, 68, 68, .2) !important;
    transform: translateY(-50%) scale(1.04);
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart .cart_totals .checkout-button,
.woocommerce-cart .woocommerce-cart-form .button[name="apply_coupon"],
.woocommerce-cart .woocommerce-cart-form .button[name="update_cart"] {
    min-height: 44px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center;
    text-decoration: none !important;
    text-transform: none !important;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart .cart_totals .checkout-button {
    width: 100%;
    border: 0 !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .24) !important;
    color: #fff !important;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:focus,
.woocommerce-cart .cart_totals .checkout-button:hover,
.woocommerce-cart .cart_totals .checkout-button:focus {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .34) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.woocommerce-cart .woocommerce-cart-form .button[name="apply_coupon"],
.woocommerce-cart .woocommerce-cart-form .button[name="update_cart"] {
    border: 1px solid #dbe4f0 !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(18, 35, 68, .06) !important;
    color: #273347 !important;
}

.woocommerce-cart .woocommerce-cart-form .button[name="apply_coupon"]:hover,
.woocommerce-cart .woocommerce-cart-form .button[name="apply_coupon"]:focus,
.woocommerce-cart .woocommerce-cart-form .button[name="update_cart"]:hover,
.woocommerce-cart .woocommerce-cart-form .button[name="update_cart"]:focus {
    border-color: #bccaff !important;
    background: #fff !important;
    box-shadow: 0 10px 22px rgba(18, 35, 68, .1) !important;
    color: #6656f4 !important;
    transform: translateY(-1px);
}

.woocommerce-cart .woocommerce-cart-form .product-remove .remove {
    width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border: 1px solid #ffd7d7 !important;
    border-radius: 50% !important;
    background: #fff5f5 !important;
    box-shadow: 0 8px 18px rgba(239, 68, 68, .12) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.woocommerce-cart .woocommerce-cart-form .product-remove .remove::before {
    content: "";
    width: 17px;
    height: 17px;
    display: block;
    background: #ff3b3b;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat;
}

.woocommerce-cart .woocommerce-cart-form .product-remove .remove:hover,
.woocommerce-cart .woocommerce-cart-form .product-remove .remove:focus {
    border-color: #ffb5b5 !important;
    background: #fff !important;
    box-shadow: 0 10px 22px rgba(239, 68, 68, .2) !important;
    transform: scale(1.04);
}

.woocommerce-cart table.shop_table th,
.woocommerce-cart table.shop_table td,
.woocommerce-cart table.shop_table td::before,
.woocommerce-cart .cart_totals h2,
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
    color: #172033 !important;
}

.woocommerce-cart table.shop_table th,
.woocommerce-cart .cart_totals table th {
    color: #526070 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase;
}

.woocommerce-cart table.shop_table .product-name a,
.woocommerce-cart table.shop_table .product-name,
.woocommerce-cart table.shop_table .product-price,
.woocommerce-cart table.shop_table .product-quantity,
.woocommerce-cart table.shop_table .product-subtotal {
    color: #172033 !important;
}

.woocommerce-cart table.shop_table .product-subtotal,
.woocommerce-cart table.shop_table .product-subtotal .amount,
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td,
.woocommerce-cart .cart_totals .order-total .amount {
    color: #111827 !important;
    font-weight: 950 !important;
}

.woocommerce-cart .cart_totals .cart-discount th,
.woocommerce-cart .cart_totals .cart-discount td,
.woocommerce-cart .cart_totals .cart-discount .amount {
    color: #374151 !important;
}

.woocommerce-cart .cart_totals a,
.woocommerce-cart .woocommerce-cart-form a:not(.remove):not(.button) {
    color: #334155 !important;
    text-decoration: none !important;
}

.woocommerce-cart .cart_totals a:hover,
.woocommerce-cart .cart_totals a:focus,
.woocommerce-cart .woocommerce-cart-form a:not(.remove):not(.button):hover,
.woocommerce-cart .woocommerce-cart-form a:not(.remove):not(.button):focus {
    color: #172033 !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.woocommerce-cart .cart_totals .woocommerce-remove-coupon {
    color: #6b7280 !important;
    font-size: 13px;
    font-weight: 700;
}

.woocommerce-cart .cart_totals .woocommerce-remove-coupon:hover,
.woocommerce-cart .cart_totals .woocommerce-remove-coupon:focus {
    color: #ef4444 !important;
}

.woocommerce-cart .cart_totals h2 {
    margin: 0 0 18px !important;
    color: #172033 !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    line-height: 1.2 !important;
}

.woocommerce-cart .cart_totals .cart-discount td .amount {
    display: none !important;
}
/**/
.dim-promo {
	background: linear-gradient(45deg, #baff9d, #c3f7c4);
    color: #333;
    padding: 2px 14px;
    border-radius: 8px;
    border: 2px dashed #ff6b00;
    font-size: 18px;
    letter-spacing: 1px;
    display: inline-block;
    margin: 0px 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
/* Проверено на подлинность */
.single-product #secondary.widget-area--desktop {
  padding-top: 128px;
}

.single-product #secondary .sticky-sidebar {
  width: 100%;
}

.keyhub-sidebar {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border: 1px solid #e5edf8;
  border-radius: 18px;
  padding: 18px;
  font-family: "Inter", sans-serif;
  color: #162033;
  box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
  transition: transform .25s ease, box-shadow .25s ease;
  max-width: 340px;
  margin: 0 auto;
}

.sidebar-status {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  color: #119a3b;
  font-weight: 800;
  font-size: .95rem;
  padding: 0 0 16px;
  border-bottom: 1px solid #eef3fb;
  margin-bottom: 14px;
}

.sidebar-status .current-indicator {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0;
}

.sidebar-status .dim-icon-wid {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, #dfffee 0%, #ecf7ff 100%);
  color: #16a34a;
  font-size: 16px;
  box-shadow: inset 0 0 0 1px rgba(34, 197, 94, .18);
}

.sidebar-downloads {
  display: grid;
  gap: 10px;
  margin-bottom: 14px;
}

.sidebar-downloads h3 {
  font-size: 0.95rem;
  font-weight: 600;
  color: #334155;
  margin-bottom: 0.4rem;
  text-align: center;
  letter-spacing: 0.3px;
}

.download-item {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 12px;
  background: #fff;
  border: 1px solid #e6eef8;
  border-radius: 14px;
  padding: 12px;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
  box-shadow: 0 10px 24px rgba(18, 35, 68, .05);
}

.download-item:hover {
  transform: translateY(-2px);
  border-color: #c7d6ff;
  background: #fbfdff;
  box-shadow: 0 14px 28px rgba(70, 118, 255, .12);
}

.download-item .info {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
  font-weight: 700;
  color: #172033;
  line-height: 1.25;
}

.download-item img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  flex: 0 0 auto;
  padding: 6px;
  border-radius: 10px;
  background: #f3f7ff;
  box-shadow: inset 0 0 0 1px #e7eefb;
}

.download-item .info span {
  display: block;
  min-width: 0;
}

.download-item a {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
  color: #fff !important;
  padding: 0 14px;
  border-radius: 9px;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: 0;
  text-decoration: none !important;
  box-shadow: 0 9px 18px rgba(70, 118, 255, .22);
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.download-item a:hover {
  background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
  box-shadow: 0 11px 22px rgba(70, 118, 255, .32);
  transform: translateY(-1px);
}

.buy-box {
  text-align: left;
  margin: 14px 0 12px;
}

.buy-btn {
  display: inline-block;
  background: linear-gradient(135deg, #3b82f6, #3960ff);
  color: #fff;
  text-decoration: none;
  padding: 12px 24px;
  border-radius: 12px;
  font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(59,130,246,0.25);
}

.buy-btn:hover {
  background: linear-gradient(135deg, #059669, #3b82f6);
  transform: translateY(-2px);
}

.delivery {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #f0e6d6;
  border-radius: 14px;
  background: linear-gradient(135deg, #fff8ed 0%, #fff 100%);
  font-size: .9rem;
  font-weight: 800;
  color: #f05f2a;
  margin-top: 0;
}

.sidebar-footer {
  border-top: 1px solid #eef3fb;
  padding-top: 12px;
  text-align: center;
  font-size: .84rem;
  color: #738197;
}
/**/
/*меню каталог*/
.kh-product-articles-widget {
  box-sizing: border-box;
  width: 100%;
  max-width: 340px;
  margin: 14px auto 0;
  padding: 18px;
  border: 1px solid #e5edf8;
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
  font-family: "Inter", sans-serif;
  color: #162033;
}

.kh-product-articles__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 14px;
  border-bottom: 1px solid #eef3fb;
  margin-bottom: 12px;
}

.kh-product-articles__head h3 {
  margin: 0;
  color: #111827;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: 0;
}

.kh-product-articles__head span {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  background: #edf5ff;
  color: #3566df;
  font-size: .72rem;
  font-weight: 800;
  white-space: nowrap;
}

.kh-product-articles__list {
  display: grid;
  gap: 10px;
}

.kh-product-article {
  display: grid;
  grid-template-columns: 58px 1fr;
  align-items: center;
  gap: 12px;
  min-height: 74px;
  padding: 10px;
  border: 1px solid #e6eef8;
  border-radius: 14px;
  background: #fff;
  color: inherit;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(18, 35, 68, .05);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.kh-product-article:hover {
  transform: translateY(-2px);
  border-color: #c7d6ff;
  background: #fbfdff;
  box-shadow: 0 14px 28px rgba(70, 118, 255, .12);
}

.kh-product-article__thumb {
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 12px;
  background: linear-gradient(135deg, #eef5ff 0%, #f7fbff 100%);
  box-shadow: inset 0 0 0 1px #e7eefb;
}

.kh-product-article__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.kh-product-article__placeholder {
  color: #3566df;
  font-weight: 900;
  font-size: .92rem;
}

.kh-product-article__body {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.kh-product-article__title {
  color: #111827;
  font-size: .9rem;
  font-weight: 800;
  line-height: 1.25;
}

.kh-product-article:hover .kh-product-article__title {
  color: #245bdf;
}

.kh-product-article__excerpt {
  color: #69778d;
  font-size: .78rem;
  line-height: 1.35;
}

.kh-product-articles__more {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 12px;
  border: 1px solid #d9e5f5;
  border-radius: 11px;
  background: #fff;
  color: #172033 !important;
  text-decoration: none !important;
  font-size: .86rem;
  font-weight: 800;
  box-shadow: 0 9px 18px rgba(18, 35, 68, .06);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.kh-product-articles__more:hover {
  transform: translateY(-1px);
  border-color: #c7d6ff;
  box-shadow: 0 12px 22px rgba(70, 118, 255, .14);
}

.kh-sidebar-recommendations-widget {
  box-sizing: border-box;
  width: 100%;
  max-width: 340px;
  margin: 14px auto 0;
  padding: 18px;
  border: 1px solid #e5edf8;
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
  font-family: "Inter", sans-serif;
  color: #162033;
}

.kh-sidebar-recommendations__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 14px;
  border-bottom: 1px solid #eef3fb;
  margin-bottom: 12px;
}

.kh-sidebar-recommendations__head h3 {
  margin: 0;
  color: #111827;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: 0;
}

.kh-sidebar-recommendations__head span {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  background: #edf5ff;
  color: #3566df;
  font-size: .72rem;
  font-weight: 800;
  white-space: nowrap;
}

.kh-sidebar-recommendations__list {
  display: grid;
  gap: 10px;
}

.kh-sidebar-product {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  height: 126px;
  min-height: 0;
  padding: 10px;
  border: 1px solid #e6eef8;
  border-radius: 14px;
  background: #fff;
  color: inherit;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(18, 35, 68, .05);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.kh-sidebar-product:hover {
  transform: translateY(-2px);
  border-color: #c7d6ff;
  background: #fbfdff;
  box-shadow: 0 14px 28px rgba(70, 118, 255, .12);
}

.kh-sidebar-product__thumb {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 12px;
  background: linear-gradient(135deg, #eef5ff 0%, #f7fbff 100%);
  box-shadow: inset 0 0 0 1px #e7eefb;
}

.kh-sidebar-product__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 4px;
}

.kh-sidebar-product__body {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.kh-sidebar-product__title {
  display: -webkit-box;
  overflow: hidden;
  color: #111827;
  font-size: .84rem;
  font-weight: 800;
  line-height: 1.25;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.kh-sidebar-product:hover .kh-sidebar-product__title {
  color: #245bdf;
}

.kh-sidebar-product__price {
  overflow: hidden;
  color: #2563eb;
  font-size: .86rem;
  font-weight: 900;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.kh-sidebar-product__price del {
  color: #aab4c2;
  font-size: .78rem;
  font-weight: 700;
}

.kh-sidebar-product__price ins {
  color: #2563eb;
  text-decoration: none;
}

.kh-sidebar-product__action {
  grid-column: 1 / -1;
  width: 100%;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 11px;
  border-radius: 9px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff;
  font-size: .78rem;
  font-weight: 800;
  white-space: nowrap;
  box-shadow: 0 9px 18px rgba(70, 118, 255, .22);
}

.kh-sidebar-product:hover .kh-sidebar-product__action {
  background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%);
  box-shadow: 0 11px 22px rgba(70, 118, 255, .32);
}

.kh-sidebar-recommendations__more {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 12px;
  border: 1px solid #d9e5f5;
  border-radius: 11px;
  background: #fff;
  color: #172033 !important;
  text-decoration: none !important;
  font-size: .86rem;
  font-weight: 800;
  box-shadow: 0 9px 18px rgba(18, 35, 68, .06);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease;
}

.kh-sidebar-recommendations__more:hover {
  transform: translateY(-1px);
  border-color: #c7d6ff;
  color: #245bdf !important;
  box-shadow: 0 12px 22px rgba(70, 118, 255, .14);
}

.kh-product-picker {
  box-sizing: border-box;
  width: 100%;
  margin-top: 18px;
  padding: 14px;
  border: 1px solid #e5edf8;
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .96) 0%, rgba(248, 251, 255, .98) 100%),
    radial-gradient(circle at 20% 0%, rgba(82, 148, 255, .08), transparent 34%);
  box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
  font-family: "Inter", sans-serif;
  color: #162033;
}

.kh-product-picker__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.kh-product-picker__header span {
  color: #111827;
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.2;
}

.kh-product-picker__header a {
  color: #3566df;
  font-size: .82rem;
  font-weight: 800;
  text-decoration: none !important;
}

.kh-product-picker__groups {
  display: grid;
  gap: 8px;
}

.kh-product-picker__group {
  overflow: hidden;
  border: 1px solid #e6eef8;
  border-radius: 15px;
  background: rgba(255, 255, 255, .8);
  box-shadow: 0 8px 18px rgba(18, 35, 68, .035);
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.kh-product-picker__group.is-active {
  border-color: #d9e1ec;
  background: linear-gradient(180deg, #ffffff 0%, #f7f8fa 100%);
  box-shadow: 0 12px 26px rgba(15, 23, 42, .08);
}

.kh-product-picker__tab {
  width: 100%;
  min-width: 0;
  min-height: 58px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 22px;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border: 0;
  border-radius: 15px;
  background: transparent;
  color: #172033;
  font-size: .86rem;
  font-weight: 900;
  line-height: 1.2;
  text-align: left;
  text-decoration: none !important;
  cursor: pointer;
  transition: color .18s ease, background .18s ease, box-shadow .18s ease;
}

.kh-product-picker__tab.is-active {
  background: linear-gradient(90deg, #f4f6f8 0%, #ffffff 100%);
  color: #172033;
}

.kh-product-picker__icon {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 42px;
  overflow: hidden;
}

.kh-product-picker__icon img {
  width: 34px;
  height: 34px;
  max-width: 100%;
  object-fit: contain;
  display: block;
  mix-blend-mode: normal;
  transform: none;
}

.kh-product-picker__tab-text {
  min-width: 0;
  display: block;
}

.kh-product-picker__tab-label {
  min-width: 0;
  white-space: normal;
  overflow-wrap: break-word;
}

.kh-product-picker__caret {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0;
  background: transparent;
  color: #8a96a6;
  font-size: 0;
  line-height: 1;
  transition: transform .2s ease, background .2s ease, color .2s ease;
}

.kh-product-picker__caret::before {
  content: "";
  width: 6px;
  height: 6px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translate(-1px, -1px);
  transition: transform .2s ease;
}

.kh-product-picker__tab.is-active .kh-product-picker__caret {
  background: transparent;
  color: #667085;
}

.kh-product-picker__tab.is-active .kh-product-picker__caret::before {
  transform: rotate(-135deg) translate(-1px, -1px);
}

.kh-product-picker__panel {
  display: none;
  gap: 0;
  padding: 0;
  border-top: 1px solid #e2ebf7;
  background: rgba(255, 255, 255, .7);
}

.kh-product-picker__panel.is-active {
  display: grid;
}

.kh-product-picker__chip {
  min-height: 44px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 16px;
  align-items: center;
  gap: 12px;
  padding: 9px 12px 9px 16px;
  border: 0;
  border-bottom: 1px solid #e6edf7;
  border-radius: 0;
  background: transparent;
  color: #172033 !important;
  text-decoration: none !important;
  font-size: .8rem;
  font-weight: 800;
  line-height: 1.2;
  box-shadow: none;
  transition: background .18s ease, color .18s ease;
}

.kh-product-picker__chip:last-child {
  border-bottom: 0;
}

.kh-product-picker__chip span:first-child {
  min-width: 0;
  overflow-wrap: anywhere;
}

.kh-product-picker__chip:hover {
  background: #f3f5f7;
  color: #0f172a !important;
  box-shadow: none;
}

.kh-product-picker__chip:focus-visible {
  position: relative;
  z-index: 1;
  outline: 2px solid #3566df;
  outline-offset: -2px;
}

.kh-product-picker__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #7a879b;
}

.kh-product-picker__chip:hover .kh-product-picker__arrow {
  color: #172033;
}

.kh-articles-sidebar .kh-product-picker {
  margin-top: 0;
}

.kh-single-article-sidebar .kh-product-picker {
  margin-top: 0;
}

@media (max-width: 767px) {
  .kh-product-picker {
    display: none;
  }
}

/* Autodesk archive sidebar layout. */
body.tax-product_cat .kh-archive-layout--brand {
  width: min(100% - 32px, 1460px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  align-items: start;
  gap: 28px;
}

/* Codex: semantic icons for the desktop super header links. */
@media (min-width: 768px) {
    html body:not(.is-mobile) {
        --kh-top-icon-info: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E");
        --kh-top-icon-truck: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2'/%3E%3Cpath d='M15 18H9'/%3E%3Cpath d='M19 18h2a1 1 0 0 0 1-1v-3.6a1 1 0 0 0-.3-.7L19 9h-5'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3C/svg%3E");
        --kh-top-icon-refresh: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 15-6.7L21 8'/%3E%3Cpath d='M21 3v5h-5'/%3E%3Cpath d='M21 12a9 9 0 0 1-15 6.7L3 16'/%3E%3Cpath d='M3 21v-5h5'/%3E%3C/svg%3E");
        --kh-top-icon-help: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M9.1 9a3 3 0 1 1 5.8 1c-.4.9-1.2 1.3-2.1 1.9-.6.4-.8.8-.8 1.6'/%3E%3Cpath d='M12 17h.01'/%3E%3C/svg%3E");
        --kh-top-icon-percent: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 5 5 19'/%3E%3Ccircle cx='7' cy='7' r='2.5'/%3E%3Ccircle cx='17' cy='17' r='2.5'/%3E%3C/svg%3E");
        --kh-top-icon-life: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='m4.9 4.9 4.2 4.2'/%3E%3Cpath d='m14.9 14.9 4.2 4.2'/%3E%3Cpath d='m19.1 4.9-4.2 4.2'/%3E%3Cpath d='m9.1 14.9-4.2 4.2'/%3E%3C/svg%3E");
        --kh-top-icon-store: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E");
        --kh-top-icon-contact: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E");
        --kh-top-icon-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.3 1.7.6 2.5a2 2 0 0 1-.5 2.1L8 9.5a16 16 0 0 0 6.5 6.5l1.2-1.2a2 2 0 0 1 2.1-.5c.8.3 1.6.5 2.5.6A2 2 0 0 1 22 16.9Z'/%3E%3C/svg%3E");
        --kh-top-icon-mail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3Cpath d='m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7'/%3E%3C/svg%3E");
        --kh-top-icon-send: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 2-7 20-4-9-9-4Z'/%3E%3Cpath d='M22 2 11 13'/%3E%3C/svg%3E");
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a::before,
    html body:not(.is-mobile) .dim-header-top a::before {
        content: "" !important;
        display: inline-block !important;
        width: 14px !important;
        height: 14px !important;
        min-width: 14px !important;
        margin-right: 5px !important;
        background-color: #667eea !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        opacity: .88 !important;
        -webkit-mask: var(--kh-top-icon, var(--kh-top-icon-info)) center / contain no-repeat !important;
        mask: var(--kh-top-icon, var(--kh-top-icon-info)) center / contain no-repeat !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a:hover::before,
    html body:not(.is-mobile) .dim-header-top a:hover::before {
        background-color: #2563eb !important;
        opacity: 1 !important;
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="dostav"],
    html body:not(.is-mobile) .super-header.super-header a[href*="delivery"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(2) {
        --kh-top-icon: var(--kh-top-icon-truck);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="obmen"],
    html body:not(.is-mobile) .super-header.super-header a[href*="vozvrat"],
    html body:not(.is-mobile) .super-header.super-header a[href*="refund"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(3) {
        --kh-top-icon: var(--kh-top-icon-refresh);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="vopros"],
    html body:not(.is-mobile) .super-header.super-header a[href*="faq"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(4) {
        --kh-top-icon: var(--kh-top-icon-help);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="skid"],
    html body:not(.is-mobile) .super-header.super-header a[href*="discount"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(5) {
        --kh-top-icon: var(--kh-top-icon-percent);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="pomosh"],
    html body:not(.is-mobile) .super-header.super-header a[href*="help"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(6) {
        --kh-top-icon: var(--kh-top-icon-life);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="magazin"],
    html body:not(.is-mobile) .super-header.super-header a[href*="shop"],
    html body:not(.is-mobile) .super-header.super-header a[href*="store"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(1) {
        --kh-top-icon: var(--kh-top-icon-store);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="kontakt"],
    html body:not(.is-mobile) .super-header.super-header a[href*="contact"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(2) {
        --kh-top-icon: var(--kh-top-icon-contact);
    }

    html body:not(.is-mobile) .super-header.super-header a[href^="tel:"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(3) {
        --kh-top-icon: var(--kh-top-icon-phone);
    }

    html body:not(.is-mobile) .super-header.super-header a[href^="mailto:"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(4) {
        --kh-top-icon: var(--kh-top-icon-mail);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="telegram"],
    html body:not(.is-mobile) .super-header.super-header a[href*="t.me"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(5) {
        --kh-top-icon: var(--kh-top-icon-send);
    }
}

body.tax-product_cat:has(.kh-archive-layout--brand) .woocommerce-breadcrumb {
  width: min(100% - 32px, 1460px);
  margin: 0 auto 18px !important;
  padding: 0 !important;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-products-header {
  margin: 0 0 24px;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-products-header .woocommerce-products-header__title {
  margin: 0 !important;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar {
  position: sticky;
  top: 18px;
  min-width: 0;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar .kh-product-picker {
  margin-top: 0;
  padding: 18px;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar .kh-product-picker__tabs {
  gap: 7px;
  padding: 6px;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar .kh-product-picker__tab {
  height: auto;
  min-height: 58px;
  padding: 8px 7px;
  overflow: visible;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar .kh-product-picker__panel {
  gap: 10px;
  grid-auto-rows: minmax(58px, auto);
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar .kh-product-picker__chip {
  height: auto;
  min-height: 58px;
  overflow: visible;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-main {
  min-width: 0;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-main .woocommerce-result-count,
body.tax-product_cat .kh-archive-layout--brand .kh-archive-main .woocommerce-ordering {
  margin-top: 0;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-main ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 46px 26px !important;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-main .shop-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 46px 26px !important;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-main .shop-grid--columns-5 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-main ul.products::before,
body.tax-product_cat .kh-archive-layout--brand .kh-archive-main ul.products::after {
  content: none !important;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-main ul.products li.product,
body.tax-product_cat .kh-archive-layout--brand .kh-archive-main ul.products li.shop-item,
body.tax-product_cat .kh-archive-layout--brand .kh-archive-main .shop-grid .shop-item {
  width: auto !important;
  margin: 0 !important;
  float: none !important;
}

.kh-archive-support-card {
  overflow: hidden;
  margin-top: 18px;
  border: 1px solid #e5edf8;
  border-radius: 18px;
  background: linear-gradient(135deg, #f1f7ff 0%, #fbfdff 100%);
  box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-link {
  display: block;
  color: inherit;
  text-decoration: none !important;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .container {
  width: auto;
  max-width: none;
  padding: 0;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-card {
  padding: 18px !important;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-content {
  display: grid !important;
  grid-template-columns: 1fr 112px;
  align-items: center;
  gap: 12px;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-text {
  min-width: 0;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-title {
  margin: 0 0 10px !important;
  color: #162033;
  font-size: 1.06rem !important;
  line-height: 1.25;
  font-weight: 900 !important;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-description {
  margin: 0 0 14px !important;
  color: #475569;
  font-size: .9rem;
  line-height: 1.45;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-action {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border-radius: 10px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff;
  font-size: .84rem;
  font-weight: 900;
  box-shadow: 0 10px 22px rgba(70, 118, 255, .22);
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-image {
  width: 112px;
}

body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-image img {
  width: 112px !important;
  height: auto !important;
  object-fit: contain;
}

.kh-archive-support-card__link {
  min-height: 190px;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 105px;
  align-items: center;
  gap: 10px;
  padding: 18px;
  color: inherit;
  text-decoration: none !important;
}

.kh-archive-support-card__body {
  position: relative;
  z-index: 2;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.kh-archive-support-card__body strong {
  margin-bottom: 10px;
  color: #162033;
  font-size: 1.02rem;
  font-weight: 900;
  line-height: 1.24;
}

.kh-archive-support-card__body span {
  margin-bottom: 14px;
  color: #475569;
  font-size: .88rem;
  font-weight: 650;
  line-height: 1.43;
}

.kh-archive-support-card__body em {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border-radius: 10px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff;
  font-size: .82rem;
  font-style: normal;
  font-weight: 900;
  box-shadow: 0 10px 22px rgba(70, 118, 255, .22);
}

.kh-archive-support-card__media {
  position: absolute;
  right: -54px;
  bottom: -24px;
  width: 190px;
  opacity: .78;
  pointer-events: none;
}

.kh-archive-support-card__media img {
  width: 100%;
  height: auto;
  display: block;
}

@media (max-width: 1360px) {
  body.tax-product_cat .kh-archive-layout--brand {
    grid-template-columns: 310px minmax(0, 1fr);
    gap: 22px;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-main ul.products,
  body.tax-product_cat .kh-archive-layout--brand .kh-archive-main .shop-grid {
    gap: 42px 22px !important;
  }
}

@media (max-width: 1180px) {
  body.tax-product_cat .kh-archive-layout--brand {
    grid-template-columns: 1fr;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar {
    position: static;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 16px;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar .kh-product-picker,
  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card {
    margin-top: 0;
  }
}

@media (max-width: 900px) {
  body.tax-product_cat .kh-archive-layout--brand .kh-archive-main ul.products,
  body.tax-product_cat .kh-archive-layout--brand .kh-archive-main .shop-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  body.tax-product_cat .kh-archive-layout--brand {
    width: calc(100% - 24px);
    gap: 18px;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-main {
    order: 1;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar {
    order: 2;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-sidebar,
  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-link,
  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card,
  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .container,
  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-card {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card {
    margin: 0 0 6px;
    border-radius: 18px;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-card {
    padding: 18px !important;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-content {
    display: block !important;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-text {
    width: 100%;
    padding: 0;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-title {
    max-width: 100%;
    margin-bottom: 8px !important;
    font-size: 18px !important;
    line-height: 1.18;
    text-align: left;
    word-break: normal;
    overflow-wrap: normal;
    white-space: normal;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-description {
    max-width: 100%;
    margin-bottom: 14px !important;
    font-size: 13px;
    line-height: 1.4;
    text-align: left;
    word-break: normal;
    overflow-wrap: normal;
    white-space: normal;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-action {
    width: 100%;
    min-height: 42px;
    padding: 0 12px;
    font-size: 13px;
    text-align: center;
  }

  body.tax-product_cat .kh-archive-layout--brand .kh-archive-support-card .support-image {
    display: none;
  }
}

.single-product .kh-product-articles-widget + .widget_top_rated_products,
.single-product .keyhub-sidebar + .kh-product-articles-widget + .widget_top_rated_products,
.single-product .widget_custom_html:has(.kh-product-articles-widget) + .widget_top_rated_products,
.single-product .widget_text:has(.kh-product-articles-widget) + .widget_top_rated_products {
  display: none !important;
}

.catalog-modal {
    display: flex;
    background: white;
    border-radius: 10px;
    padding: 20px;
}
.catalog-container {
    display: flex;
}
.col-1 {
    border-radius: 12px;
}
.col-2 {
    width: 70%;
    padding-left: 20px;
}
.catalog-category {
    padding: 10px 26px;
    cursor: pointer;
}
.catalog-category.active {
    background: #f0f0f0;
    font-weight: bold;
}
.category-details .products {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
	list-style-type: none;
}
.product-item {
    width: 24%;
    text-align: center;
}
.dim-content-wrapper {
    display: flex;
    gap: 20px;
    flex-direction: row-reverse;
    align-items: flex-end;
}

.right-image {
    flex-shrink: 0;
    max-width: 180px;
    height: auto;
}

/* Для мобильных устройств */
@media (max-width: 768px) {
    .dim-content-wrapper {
        flex-direction: column-reverse;
    }
    
    .right-image {
        max-width: 100%;
    }
}
/* FAQ Modern Styles */
.faq-modern {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  background: #fff;
}

.faq-hero {
  text-align: center;
  margin-bottom: 60px;
  padding: 0 20px;
}

.faq-main-title {
  font-size: 3rem;
  font-weight: 700;
  background: linear-gradient(135deg, #0d8bcd 0%, #0a6da8 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 16px;
  letter-spacing: -0.02em;
}

.faq-subtitle {
  font-size: 1.2rem;
  color: #64748b;
  font-weight: 400;
  line-height: 1.6;
  max-width: 500px;
  margin: 0 auto;
}

.faq-container {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 40px;
  align-items: start;
}

/* Навигация */
.faq-nav {
  position: sticky;
  top: 100px;
  background: #f8fafc;
  border-radius: 20px;
  padding: 24px;
  border: 1px solid #f1f5f9;
  backdrop-filter: blur(10px);
}

.nav-header {
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e2e8f0;
}

.nav-title {
  font-size: 0.875rem;
  font-weight: 600;
  color: #0d8bcd;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.nav-link {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  text-decoration: none;
  color: #475569;
  font-weight: 500;
  border-radius: 12px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}

.nav-link::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 3px;
  background: #0d8bcd;
  transform: scaleY(0);
  transition: transform 0.3s ease;
}

.nav-link:hover {
  background: #fff;
  color: #0d8bcd;
  box-shadow: 0 4px 12px rgba(13, 139, 205, 0.1);
}

.nav-link:hover::before,
.nav-link.active::before {
  transform: scaleY(1);
}

.nav-link.active {
  background: #fff;
  color: #0d8bcd;
  box-shadow: 0 4px 12px rgba(13, 139, 205, 0.15);
}

/* Категории */
.faq-category {
  margin-bottom: 60px;
}

.category-header {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 32px;
  padding-bottom: 16px;
  border-bottom: 2px solid #f1f5f9;
}

.category-icon {
  font-size: 1.5rem;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #0d8bcd 0%, #0a6da8 100%);
  border-radius: 12px;
}

.category-header h2 {
  font-size: 1.75rem;
  font-weight: 700;
  color: #1e293b;
  margin: 0;
}

/* FAQ */
.faq-item {
  background: #fff;
  border: 1px solid #f1f5f9;
  border-radius: 16px;
  margin-bottom: 16px;
  overflow: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.faq-item:hover {
  border-color: #0d8bcd;
  box-shadow: 0 8px 25px rgba(13, 139, 205, 0.1);
  transform: translateY(-2px);
}

.faq-question {
  background: #f2f5f9 !important;
  font-size: 20px;	
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  outline: none;
  padding: 24px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  transition: background-color 0.3s ease;
}

.faq-question:hover {
  background: #f8fafc;
}

.faq-question span {
  font-size: 1.1rem;
  font-weight: 600;
  color: #1e293b;
  line-height: 1.4;
  text-align: left;
}

.icon-plus {
  width: 20px;
  height: 20px;
  position: relative;
  flex-shrink: 0;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.icon-plus::before,
.icon-plus::after {
  content: '';
  position: absolute;
  background: #0d8bcd;
  border-radius: 2px;
  transition: all 0.3s ease;
}

.icon-plus::before {
  width: 100%;
  height: 2px;
  top: 50%;
  transform: translateY(-50%);
}

.icon-plus::after {
  width: 2px;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.faq-item.active .icon-plus {
  transform: rotate(45deg);
}

.faq-item.active .icon-plus::after {
  background: #dc2626;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  padding-left: 20px;
}

.faq-item.active .faq-answer {
  max-height: 500px;
}

.faq-answer p {
  margin: 0;
  padding: 0 24px 24px;
  color: #475569;
  line-height: 1.6;
  font-size: 1rem;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.faq-item {
  animation: fadeInUp 0.5s ease forwards;
}

.faq-item:nth-child(odd) {
  animation-delay: 0.1s;
}

.faq-item:nth-child(even) {
  animation-delay: 0.2s;
}

@media (max-width: 968px) {
  .faq-container {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  
  .faq-nav {
    position: static;
    order: 2;
  }
  
  .nav-list {
    flex-direction: row;
    overflow-x: auto;
    padding-bottom: 10px;
  }
  
  .nav-link {
    white-space: nowrap;
  }
  
  .faq-main-title {
    font-size: 2.5rem;
  }
}

@media (max-width: 640px) {
  .faq-modern {
    padding: 20px 16px;
  }
  
  .faq-main-title {
    font-size: 2rem;
  }
  
  .faq-hero {
    margin-bottom: 40px;
  }
  
  .category-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  
  .faq-question {
    padding: 20px;
  }
  
  .faq-question span {
    font-size: 1rem;
  }
}
/**/
button:focus {
    outline: 0px dotted !important;
}
/*стили для поиска*/
.search-filters {
    margin: 1.5rem 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

.search-filter-label {
    font-weight: 500;
    margin-right: 0.5rem;
}

.search-posts-grid {
    display: grid;
    gap: 1.5rem;
}

@media (min-width: 768px) {
    .search-posts-grid {
        grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    }
}

/* Post Cards */
.post-card {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    overflow: hidden;
    background: white;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.post-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.post-card__image {
    position: relative;
    overflow: hidden;
}

.post-card__thumb {
    width: 100%;
    height: 200px;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.post-card:hover .post-card__thumb {
    transform: scale(1.05);
}

.post-card__content {
    padding: 1.5rem;
}

.post-card__type {
    display: inline-block;
    padding: 0.3rem 0.8rem;
    background: #007cba;
    color: white;
    border-radius: 4px;
    font-size: 0.8rem;
    text-transform: uppercase;
    margin-bottom: 0.8rem;
}

.post-card__title {
    margin: 0 0 0.8rem 0;
    font-size: 1.2rem;
    line-height: 1.4;
}

.post-card__title a {
    color: #333;
    text-decoration: none;
}

.post-card__title a:hover {
    color: #007cba;
}

.post-card__meta {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 1rem;
}

.post-card__excerpt {
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

.post-card__excerpt mark {
    background: #fff9c4;
    padding: 0.1rem 0.2rem;
    border-radius: 2px;
}

.post-card__read-more {
    display: inline-block;
    padding: 0.6rem 1.2rem;
    background: #007cba;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    font-weight: 500;
    transition: background 0.3s ease;
}

.post-card__read-more:hover {
    background: #005a87;
    color: white;
}

/* Pagination */
.search-pagination {
    margin-top: 3rem;
    text-align: center;
}

/* No Results */
.no-results {
    text-align: center;
    padding: 3rem 1rem;
    max-width: 600px;
    margin: 0 auto;
}

.search-form-no-results {
    max-width: 400px;
    margin: 2rem auto;
}

.suggestions {
    margin-top: 2rem;
    text-align: left;
    display: inline-block;
}

.suggestions ul {
    list-style: none;
    padding: 0;
    text-align: left;
}

.suggestions li {
    padding: 0.3rem 0;
    position: relative;
    padding-left: 1.5rem;
}

.suggestions li:before {
    content: "•";
    position: absolute;
    left: 0.5rem;
    color: #007cba;
    font-weight: bold;
}
.search-post-item .post-card__excerpt {
	display:none;
}
.search-post-item .post-card__footer {
	display:none;
}
.search-post-item .post-card__image {
	display: flex;
    padding: 70px;
    margin-top: -60px;
    margin-bottom: -140px;
    justify-content: center;
}
.type-post .post-card__image {
	display: block;
    padding: 0;
    margin-top: 0;
    margin-bottom: 0;
}

/* Product page dashboard refresh */
.single-product .product-container {
    gap: 28px;
}

@media (min-width: 1200px) {
    .single-product .site-content-inner {
        display: grid;
        grid-template-columns: minmax(0, 980px) 340px;
        column-gap: 34px;
        align-items: start;
        justify-content: center;
    }

    .single-product #primary.content-area {
        width: 100%;
        max-width: none;
        min-width: 0;
    }

    .single-product .product-container {
        display: grid !important;
        grid-template-columns: 360px minmax(540px, 600px);
        column-gap: 48px;
        align-items: start;
    }

    .single-product .product-images,
    .single-product .product-info {
        min-width: 0;
    }

    .single-product .product-images {
        width: 360px !important;
        max-width: 360px !important;
    }

    .single-product .product-images .woocommerce-product-gallery,
    .single-product .product-images .woocommerce-product-gallery__wrapper,
    .single-product .product-images .woocommerce-product-gallery__image,
    .single-product .product-images .support-section-p,
    .single-product .product-images .support-section-p .container,
    .single-product .product-images .support-card {
        width: 100% !important;
        max-width: none !important;
    }

    .single-product .product-images .woocommerce-product-gallery img {
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    .single-product .kh-product-dashboard {
        width: 100%;
        max-width: 600px;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .single-product .site-content-inner {
        display: block;
        width: min(100% - 32px, 1080px);
        margin-right: auto;
        margin-left: auto;
    }

    .single-product #primary.content-area {
        width: 100%;
        max-width: none;
        min-width: 0;
    }

    .single-product .product-container {
        display: grid !important;
        grid-template-columns: 300px minmax(0, 1fr);
        column-gap: 24px;
        align-items: start;
    }

    .single-product .product-images,
    .single-product .product-info {
        min-width: 0;
    }

    .single-product .product-images {
        width: 100% !important;
        max-width: 300px !important;
    }

    .single-product #secondary.widget-area--desktop {
        width: 100%;
        max-width: none;
        padding-top: 24px;
    }

    .single-product #secondary .sticky-sidebar {
        position: static !important;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
        width: 100%;
    }

    .single-product .keyhub-sidebar,
    .single-product .kh-product-articles-widget,
    .single-product .kh-sidebar-recommendations-widget {
        max-width: none;
        margin: 0;
        padding: 14px;
    }

    .single-product .download-item {
        grid-template-columns: minmax(0, 1fr);
        gap: 9px;
    }

    .single-product .download-item a {
        width: 100%;
    }
}

.single-product .product-info {
    flex: 1 1 0;
    max-width: none;
}

.single-product .woocommerce-product-form-wrap {
    display: grid;
    gap: 16px;
}

.single-product .kh-product-dashboard {
    width: min(560px, 100%);
    padding: 16px;
    border: 1px solid #e5edf8;
    border-radius: 20px;
    background: linear-gradient(180deg, #f7fbff 0%, #ffffff 100%);
    box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
}

.single-product .variations-container {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px !important;
    margin: 18px 0 18px !important;
}

.single-product .variation-card {
    min-width: 0 !important;
    padding: 18px !important;
    border: 1px solid #e4edf8 !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
    box-shadow: 0 12px 28px rgba(18, 35, 68, .06);
    text-decoration: none !important;
}

.single-product .variation-card:hover {
    border-color: #c8d6ff !important;
    box-shadow: 0 16px 34px rgba(70, 118, 255, .14);
    transform: translateY(-2px);
}

.single-product .variation-card.current-product {
    border-color: #22c55e !important;
    background: linear-gradient(180deg, #f7fff9 0%, #f4fbff 100%) !important;
    box-shadow: 0 16px 34px rgba(34, 197, 94, .12);
}

.single-product .variation-badge {
    top: -10px;
    right: 12px;
    border-radius: 999px;
    background: linear-gradient(135deg, #ff5f6f 0%, #ff3b3b 100%);
    box-shadow: 0 8px 18px rgba(255, 59, 59, .2);
}

.single-product .variation-title {
    color: #142033 !important;
    font-size: 15px !important;
    line-height: 1.35;
}

.single-product .variation-price {
    color: #2563eb !important;
    font-size: 24px !important;
}

.single-product .features-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px !important;
    margin: 0 0 16px !important;
}

.single-product .feature-item {
    min-height: 44px;
    padding: 10px 12px !important;
    border: 1px solid #e6eef8;
    border-radius: 14px;
    background: #f6faff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.65);
}

.single-product .feature-icon {
    width: 20px;
    height: 20px;
    margin-right: 10px;
    color: #16a34a !important;
    stroke: currentColor !important;
}

.single-product .feature-text {
    color: #1e293b !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

.single-product form.cart {
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 12px;
    align-items: stretch;
    padding: 12px;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
    box-shadow: 0 14px 30px rgba(18, 35, 68, .07);
}

.single-product .kh-b2b-action {
    margin-top: -4px;
}

.single-product .kh-b2b-action .product-features-btn-container,
.single-product .kh-b2b-action .added_to_cart {
    display: none !important;
}

.single-product .product-info .quantity {
    position: relative !important;
    width: 100% !important;
    height: 48px;
    inset: auto !important;
    margin: 0 !important;
    overflow: hidden;
    border: 1px solid #dbe4f0;
    border-radius: 12px;
    background: #fff;
}

.single-product .quantity input.qty,
.single-product .quantity input[type=number] {
    height: 48px;
    width: 100% !important;
    border: 0 !important;
    border-radius: 0;
    background: #fff;
    color: #1e293b;
    font-weight: 800;
    text-align: center;
    padding: 0 30px !important;
    box-shadow: none !important;
}

.single-product .quantity .quantity-minus,
.single-product .quantity .quantity-plus {
    position: absolute !important;
    top: 0 !important;
    z-index: 2;
    width: 30px !important;
    height: 48px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border: 0 !important;
    background: transparent !important;
    color: #64748b !important;
    font-size: 0 !important;
    line-height: 1 !important;
    transform: none !important;
}

.single-product .quantity .quantity-minus {
    left: 0 !important;
    right: auto !important;
}

.single-product .quantity .quantity-plus {
    right: 0 !important;
    left: auto !important;
}

.single-product .quantity .quantity-minus::before,
.single-product .quantity .quantity-plus::before {
    font-size: 18px;
    font-weight: 700;
}

.single-product .quantity .quantity-minus::before {
    content: "-";
}

.single-product .quantity .quantity-plus::before {
    content: "+";
}

.single-product .single_add_to_cart_button {
    width: 100%;
    height: 48px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .28);
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}

.single-product .single_add_to_cart_button:hover,
.single-product .single_add_to_cart_button:focus {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    box-shadow: 0 14px 30px rgba(70, 118, 255, .36);
    transform: translateY(-1px);
}

.single-product button.button.js-buy-one-click.bono_buy_one_click {
    width: 100%;
    height: 52px;
    margin-top: 0 !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 14px !important;
    background: #f1f7ff !important;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .05);
    color: #1e293b !important;
    font-weight: 800;
}

.single-product .kh-b2b-action .bono_buy_one_click::before {
    content: "";
    width: 24px;
    height: 24px;
    display: inline-block;
    margin: 0 8px 0 0;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    border-radius: 8px;
    position: static;
    background-image: none !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V7a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v14'/%3E%3Cpath d='M14 10h4a2 2 0 0 1 2 2v9'/%3E%3Cpath d='M8 9h2'/%3E%3Cpath d='M8 13h2'/%3E%3Cpath d='M8 17h2'/%3E%3Cpath d='M16 14h1'/%3E%3Cpath d='M16 17h1'/%3E%3Cpath d='M3 21h18'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V7a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v14'/%3E%3Cpath d='M14 10h4a2 2 0 0 1 2 2v9'/%3E%3Cpath d='M8 9h2'/%3E%3Cpath d='M8 13h2'/%3E%3Cpath d='M8 17h2'/%3E%3Cpath d='M16 14h1'/%3E%3Cpath d='M16 17h1'/%3E%3Cpath d='M3 21h18'/%3E%3C/svg%3E") center / contain no-repeat;
}

.single-product button.button.js-buy-one-click.bono_buy_one_click:hover {
    border-color: #bccaff !important;
    color: #6656f4 !important;
    background: #fff !important;
    box-shadow: 0 12px 28px rgba(18, 35, 68, .1);
    transform: translateY(-1px);
}

.single-product .product-card {
    margin: 4px 0 0 !important;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: linear-gradient(180deg, #f6faff 0%, #ffffff 100%);
    box-shadow: 0 16px 36px rgba(18, 35, 68, .07);
}

.single-product .card-header {
    padding: 18px 18px 6px !important;
    color: #172033;
    font-size: 18px;
    font-weight: 800;
}

.single-product .characteristics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 28px;
    padding: 8px 18px 18px !important;
}

.single-product .characteristic-row {
    display: grid !important;
    grid-template-columns: minmax(112px, .8fr) 1fr;
    gap: 12px;
    align-items: center;
    padding: 10px 0 !important;
    border-bottom: 1px solid #e8eff7 !important;
}

.single-product .characteristic-row::before {
    display: none;
}

.single-product .characteristic-name {
    width: auto !important;
    color: #64748b !important;
}

.single-product .characteristic-value {
    width: auto !important;
    color: #172033 !important;
    font-weight: 800 !important;
}

.single-product .characteristic-row:has(.characteristic-value a) {
    grid-column: 1 / -1;
    grid-template-columns: minmax(112px, .32fr) minmax(0, 1fr);
    align-items: center;
}

.single-product .characteristic-row:has(.characteristic-value a) .characteristic-value {
    grid-column: 2;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.single-product .characteristic-row:has(.characteristic-value a) .characteristic-value br {
    display: none;
}

.single-product .characteristic-value a {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 5px 9px 5px 7px;
    flex: 0 1 auto;
    border: 1px solid #dce8ff;
    border-radius: 10px;
    background: linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%);
    color: #245bdf !important;
    font-size: .78rem;
    font-weight: 850;
    line-height: 1.12;
    white-space: nowrap;
    text-decoration: none !important;
    box-shadow: 0 7px 16px rgba(36, 91, 223, .08);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}

.single-product .characteristic-value a::before {
    content: "";
    width: 17px;
    height: 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 17px;
    border-radius: 999px;
    background:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17' viewBox='0 0 17 17' fill='none'%3E%3Cpath d='M8.5 4.2v6.2m0 0L5.9 7.8m2.6 2.6 2.6-2.6' stroke='white' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5.2 12.2h6.6' stroke='white' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / 17px 17px no-repeat,
        linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
}

.single-product .characteristic-value a:hover {
    transform: translateY(-1px);
    border-color: #bdd2ff;
    color: #1746c9 !important;
    box-shadow: 0 10px 20px rgba(36, 91, 223, .14);
}

.single-product .support-section-p {
    overflow: hidden;
    margin-top: 18px;
    border: 1px solid #e5edf8;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #f1f7ff 0%, #fbfdff 100%) !important;
    box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
}

.single-product .kh-support-link {
    display: block;
    color: inherit;
    text-decoration: none !important;
}

.single-product .support-card {
    padding: 18px !important;
}

.single-product .support-content {
    display: grid !important;
    grid-template-columns: 1fr 112px;
    align-items: center;
    gap: 12px;
}

.single-product .support-text {
    min-width: 0;
}

.single-product .support-title {
    margin: 0 0 10px !important;
    color: #162033;
    font-size: 1.06rem !important;
    line-height: 1.25;
    font-weight: 900 !important;
    letter-spacing: 0;
}

.single-product .support-description {
    margin: 0 0 14px !important;
    color: #475569;
    font-size: .9rem;
    line-height: 1.45;
}

.single-product .support-action {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 10px;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff;
    font-size: .84rem;
    font-weight: 900;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .22);
    transition: transform .2s ease, box-shadow .2s ease;
}

.single-product .kh-support-link:hover .support-action {
    transform: translateY(-1px);
    box-shadow: 0 13px 26px rgba(70, 118, 255, .32);
}

.kh-support-sidebar-link {
    display: block;
    color: inherit;
    text-decoration: none !important;
}

.kh-support-sidebar-card {
    overflow: hidden;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(247, 251, 255, .96) 0%, rgba(238, 247, 255, .98) 100%),
        radial-gradient(circle at 90% 18%, rgba(53, 199, 255, .16), transparent 42%);
    box-shadow: 0 12px 30px rgba(18, 35, 68, .07);
}

.kh-support-sidebar-card__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 86px;
    align-items: center;
    gap: 12px;
    padding: 18px;
}

.kh-support-sidebar-card h2 {
    margin: 0 0 10px !important;
    color: #10203a;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.24;
    letter-spacing: 0;
}

.kh-support-sidebar-card p {
    margin: 0 0 14px !important;
    color: #4d5f7a;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.48;
}

.kh-support-sidebar-card span {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 11px;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .22);
    transition: transform .2s ease, box-shadow .2s ease;
}

.kh-support-sidebar-link:hover .kh-support-sidebar-card span {
    transform: translateY(-1px);
    box-shadow: 0 13px 26px rgba(70, 118, 255, .32);
}

.kh-support-sidebar-card__media {
    width: 86px;
}

.kh-support-sidebar-card__media img {
    width: 86px !important;
    height: auto !important;
    display: block;
    object-fit: contain;
    mix-blend-mode: multiply;
}

.kh-articles-sidebar .kh-support-sidebar-card,
.kh-single-article-sidebar .kh-support-sidebar-card {
    margin-top: 0;
}

.single-product #secondary .kh-support-sidebar-card {
    margin-top: 12px;
}

.single-product #secondary .kh-support-sidebar-card__content {
    grid-template-columns: minmax(0, 1fr) 78px;
    padding: 14px;
}

.single-product #secondary .kh-support-sidebar-card h2 {
    margin-bottom: 8px !important;
    font-size: 14px;
}

.single-product #secondary .kh-support-sidebar-card p {
    margin-bottom: 12px !important;
    font-size: 12px;
    line-height: 1.42;
}

.single-product #secondary .kh-support-sidebar-card span {
    min-height: 34px;
    padding: 0 12px;
    border-radius: 10px;
    font-size: 12px;
}

.single-product #secondary .kh-support-sidebar-card__media,
.single-product #secondary .kh-support-sidebar-card__media img {
    width: 78px !important;
}

img[src*="support-chat-male"] {
    mix-blend-mode: multiply;
}

.single-product .support-image {
    width: 112px;
}

.single-product .support-image img {
    width: 112px !important;
    height: auto !important;
    object-fit: contain;
}

.single-product #secondary .kh-sidebar-support-link {
    margin-top: 12px;
}

.single-product #secondary .kh-sidebar-support-card {
    margin-top: 12px;
    border-radius: 16px !important;
    box-shadow: 0 12px 30px rgba(18, 35, 68, .07);
}

.single-product #secondary .kh-sidebar-support-card .support-card {
    padding: 14px !important;
}

.single-product #secondary .kh-sidebar-support-card .support-content {
    grid-template-columns: minmax(0, 1fr) 74px;
    gap: 10px;
}

.single-product #secondary .kh-sidebar-support-card .support-title {
    margin-bottom: 7px !important;
    font-size: .94rem !important;
    line-height: 1.22;
}

.single-product #secondary .kh-sidebar-support-card .support-description {
    margin-bottom: 10px !important;
    font-size: .78rem;
    line-height: 1.36;
}

.single-product #secondary .kh-sidebar-support-card .support-action {
    min-height: 32px;
    padding: 0 11px;
    border-radius: 9px;
    font-size: .74rem;
}

.single-product #secondary .kh-sidebar-support-card .support-image {
    width: 74px;
}

.single-product #secondary .kh-sidebar-support-card .support-image img {
    width: 74px !important;
}

.single-product .kh-seo-offer {
    width: 100%;
    margin: 18px 0 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 20px;
    border: 1px solid #e5edf8;
    border-radius: 20px;
    background: linear-gradient(135deg, #f7fbff 0%, #ffffff 100%);
    box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
}

.single-product .kh-seo-offer__content {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.single-product .kh-seo-offer__eyebrow {
    margin-bottom: 10px;
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    background: #eff6ff;
    color: #4f46e5;
    font-size: .78rem;
    font-weight: 900;
}

.single-product .kh-seo-offer h2 {
    margin: 0 0 10px !important;
    color: #172033;
    font-size: 1.25rem !important;
    line-height: 1.22;
    font-weight: 900 !important;
}

.single-product .kh-seo-offer__text {
    color: #475569;
    font-size: .94rem;
    line-height: 1.5;
}

.single-product .kh-seo-offer__text p {
    margin: 0 0 10px;
}

.single-product .kh-seo-offer__support {
    min-height: 42px;
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    border-radius: 11px;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff !important;
    font-size: .86rem;
    font-weight: 900;
    text-decoration: none !important;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .22);
    transition: transform .2s ease, box-shadow .2s ease;
}

.single-product .kh-seo-offer__support:hover {
    transform: translateY(-1px);
    box-shadow: 0 13px 26px rgba(70, 118, 255, .32);
}

.single-product .kh-seo-offer__products {
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.single-product .kh-seo-offer-product {
    min-width: 0;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 10px;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #fff;
    color: inherit;
    text-decoration: none !important;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .05);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.single-product .kh-seo-offer-product:hover {
    transform: translateY(-1px);
    border-color: #cfe0f6;
    box-shadow: 0 14px 30px rgba(18, 35, 68, .08);
}

.single-product .kh-seo-offer-product__thumb {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: #f4f8ff;
}

.single-product .kh-seo-offer-product__thumb img {
    max-width: 48px !important;
    max-height: 48px !important;
    object-fit: contain;
}

.single-product .kh-seo-offer-product__body {
    min-width: 0;
    display: grid;
    gap: 5px;
}

.single-product .kh-seo-offer-product__title {
    color: #172033;
    font-size: .84rem;
    line-height: 1.25;
    font-weight: 900;
}

.single-product .kh-seo-offer-product__price {
    color: #4f46e5;
    font-size: .84rem;
    font-weight: 900;
}

.single-product .kh-seo-offer-product__price del {
    color: #94a3b8;
    font-weight: 700;
}

.single-product .kh-seo-offer-product__action {
    grid-column: 1 / -1;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff;
    font-size: .8rem;
    font-weight: 900;
}

.single-product .woocommerce-tabs {
    position: relative;
    left: 72px;
    width: min(100%, 980px) !important;
    max-width: 980px !important;
    margin: 34px auto 0 !important;
}

.single-product .woocommerce-tabs .wc-tabs {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    padding: 8px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
    text-align: center !important;
}

.single-product .woocommerce-tabs .wc-tabs li {
    min-width: 0;
    margin: 0 !important;
    text-align: center;
}

.single-product .woocommerce-tabs .wc-tabs li a {
    height: 58px;
    min-height: 0;
    width: 100%;
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 9px 8px !important;
    border: 1px solid transparent;
    border-radius: 13px !important;
    background: transparent;
    color: #172033 !important;
    font-size: .84rem !important;
    font-weight: 800;
    line-height: 1.16;
    text-align: left;
    overflow: hidden;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}

.single-product .woocommerce-tabs .wc-tabs li a::before {
    content: "";
    width: 18px;
    height: 18px;
    display: inline-block;
    border-radius: 7px;
    background: #dcecff;
    box-shadow: inset 0 0 0 1px #cfe0f6;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 17px 17px;
    mask-size: 17px 17px;
}

.single-product .woocommerce-tabs .wc-tabs li.description_tab a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M4 4.5A2.5 2.5 0 0 1 6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M4 4.5A2.5 2.5 0 0 1 6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15Z'/%3E%3C/svg%3E");
}

.single-product .woocommerce-tabs .wc-tabs li.custom_tab_0_tab a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7.5 4.3 9 5.2'/%3E%3Cpath d='m7.5 14.7 9 5.2'/%3E%3Cpath d='M3 8.5 12 3l9 5.5-9 5.5L3 8.5Z'/%3E%3Cpath d='M3 15.5 12 21l9-5.5'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7.5 4.3 9 5.2'/%3E%3Cpath d='m7.5 14.7 9 5.2'/%3E%3Cpath d='M3 8.5 12 3l9 5.5-9 5.5L3 8.5Z'/%3E%3Cpath d='M3 15.5 12 21l9-5.5'/%3E%3C/svg%3E");
}

.single-product .woocommerce-tabs .wc-tabs li.custom_tab_1_tab a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='14' rx='2'/%3E%3Cpath d='M8 21h8'/%3E%3Cpath d='M12 18v3'/%3E%3Cpath d='M8 9h8'/%3E%3Cpath d='M8 13h5'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='14' rx='2'/%3E%3Cpath d='M8 21h8'/%3E%3Cpath d='M12 18v3'/%3E%3Cpath d='M8 9h8'/%3E%3Cpath d='M8 13h5'/%3E%3C/svg%3E");
}

.single-product .woocommerce-tabs .wc-tabs li.custom_tab_2_tab a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 11 12 14 22 4'/%3E%3Cpath d='M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 11 12 14 22 4'/%3E%3Cpath d='M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11'/%3E%3C/svg%3E");
}

.single-product .woocommerce-tabs .wc-tabs li.reviews_tab a::before,
.single-product .woocommerce-tabs .wc-tabs li.custom_tab_3_tab a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h10a4 4 0 0 1 4 4Z'/%3E%3Cpath d='M8 9h8'/%3E%3Cpath d='M8 13h5'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h10a4 4 0 0 1 4 4Z'/%3E%3Cpath d='M8 9h8'/%3E%3Cpath d='M8 13h5'/%3E%3C/svg%3E");
}

.single-product .woocommerce-tabs .wc-tabs li a:hover {
    transform: translateY(-1px);
    border-color: #d9e5f5;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .06);
}

.single-product .woocommerce-tabs .wc-tabs li.active a {
    padding: 9px 8px !important;
    border-color: #cfe0f6 !important;
    background: #eff6ff !important;
    color: #172033 !important;
    box-shadow: 0 10px 24px rgba(70, 118, 255, .1) !important;
}

.single-product .woocommerce-tabs .wc-tabs li.active a::before {
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    box-shadow: 0 8px 16px rgba(70, 118, 255, .18);
}

@media (max-width: 768px) {
    .single-product .woocommerce-tabs {
        left: 0;
        margin-top: 22px !important;
    }

    .single-product .kh-single-lower-section {
        left: 0;
        width: 100%;
        max-width: 100%;
    }

    .single-product .kh-seo-offer {
        margin-top: 20px;
        padding: 16px;
    }

    .single-product .kh-seo-offer__products {
        grid-template-columns: 1fr;
    }

    .single-product .woocommerce-tabs .wc-tabs {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    .single-product .woocommerce-tabs .wc-tabs li a {
        height: auto;
        min-height: 44px;
        text-align: left;
        overflow: visible;
    }

    .single-product .variations-container,
    .single-product .features-grid,
    .single-product form.cart {
        grid-template-columns: 1fr;
    }

    .single-product .characteristic-row {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .single-product .characteristics {
        grid-template-columns: 1fr;
    }

}

/* Final header 4B lock: wins over older header rules below. */
body:not(.is-mobile) .super-header-inner,
body:not(.is-mobile) .site-header-inner {
    box-sizing: border-box !important;
    width: min(1240px, calc(100vw - 24px)) !important;
    max-width: 1240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body:not(.is-mobile) .top-menu ul li.mega-catalog > a,
body:not(.is-mobile) .top-menu ul li.mega-catalog > span,
body:not(.is-mobile) .top-menu ul li.catalog-btn > a,
body:not(.is-mobile) .top-menu ul li.catalog-btn > span {
    min-height: 42px !important;
    padding: 11px 18px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .25) !important;
}

body:not(.is-mobile) .top-menu ul li.mega-catalog > a::before,
body:not(.is-mobile) .top-menu ul li.mega-catalog > span::before,
body:not(.is-mobile) .top-menu ul li.catalog-btn > a::before,
body:not(.is-mobile) .top-menu ul li.catalog-btn > span::before {
    content: "" !important;
    width: 15px !important;
    height: 15px !important;
    margin-right: 8px !important;
    background: #fff !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

body:not(.is-mobile) .top-menu ul li.mega-catalog > a::after,
body:not(.is-mobile) .top-menu ul li.mega-catalog > span::after,
body:not(.is-mobile) .top-menu ul li.catalog-btn > a::after,
body:not(.is-mobile) .top-menu ul li.catalog-btn > span::after {
    content: "" !important;
    position: static !important;
    width: 12px !important;
    height: 12px !important;
    margin-left: 8px !important;
    background: rgba(255,255,255,.9) !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

body:not(.is-mobile) .super-header a::before,
body:not(.is-mobile) .dim-header-top a::before {
    border-radius: 0 !important;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E") !important;
}

body:not(.is-mobile) .super-header__item--1 a:nth-child(2)::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2'/%3E%3Cpath d='M15 18H9'/%3E%3Cpath d='M19 18h2a1 1 0 0 0 1-1v-3.6a1 1 0 0 0-.3-.7L19 9h-5'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2'/%3E%3Cpath d='M15 18H9'/%3E%3Cpath d='M19 18h2a1 1 0 0 0 1-1v-3.6a1 1 0 0 0-.3-.7L19 9h-5'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3C/svg%3E") !important;
}

body:not(.is-mobile) .super-header__item--1 a:nth-child(3)::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 15-6.7L21 8'/%3E%3Cpath d='M21 3v5h-5'/%3E%3Cpath d='M21 12a9 9 0 0 1-15 6.7L3 16'/%3E%3Cpath d='M3 21v-5h5'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 15-6.7L21 8'/%3E%3Cpath d='M21 3v5h-5'/%3E%3Cpath d='M21 12a9 9 0 0 1-15 6.7L3 16'/%3E%3Cpath d='M3 21v-5h5'/%3E%3C/svg%3E") !important;
}

body:not(.is-mobile) .super-header__item--1 a:nth-child(5)::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 5 5 19'/%3E%3Ccircle cx='7' cy='7' r='2.5'/%3E%3Ccircle cx='17' cy='17' r='2.5'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 5 5 19'/%3E%3Ccircle cx='7' cy='7' r='2.5'/%3E%3Ccircle cx='17' cy='17' r='2.5'/%3E%3C/svg%3E") !important;
}

body:not(.is-mobile) .super-header__item--2 a:nth-child(1)::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") !important;
}

body:not(.is-mobile) .super-header__item--2 a:nth-child(3)::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.3 1.7.6 2.5a2 2 0 0 1-.5 2.1L8 9.5a16 16 0 0 0 6.5 6.5l1.2-1.2a2 2 0 0 1 2.1-.5c.8.3 1.6.5 2.5.6A2 2 0 0 1 22 16.9Z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.3 1.7.6 2.5a2 2 0 0 1-.5 2.1L8 9.5a16 16 0 0 0 6.5 6.5l1.2-1.2a2 2 0 0 1 2.1-.5c.8.3 1.6.5 2.5.6A2 2 0 0 1 22 16.9Z'/%3E%3C/svg%3E") !important;
}

body:not(.is-mobile) .super-header__item--2 a:nth-child(4)::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7'/%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7'/%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3C/svg%3E") !important;
}

/* Header 4B compact height pass. */
body:not(.is-mobile) .super-header {
    padding-top: 8px !important;
}

body:not(.is-mobile) .super-header-inner {
    min-height: 30px !important;
    padding: 4px 12px 3px !important;
}

body:not(.is-mobile) .super-header a,
body:not(.is-mobile) .super-header span,
body:not(.is-mobile) .dim-header-top a {
    min-height: 21px !important;
    padding: 3px 8px !important;
    font-size: 10.5px !important;
}

body:not(.is-mobile) .super-header a::before,
body:not(.is-mobile) .dim-header-top a::before {
    width: 12px !important;
    height: 12px !important;
    margin-right: 5px !important;
}

body:not(.is-mobile) .site-header {
    padding-bottom: 10px !important;
}

body:not(.is-mobile) .site-header-inner {
    min-height: 58px !important;
    padding: 7px 18px !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body:not(.is-mobile) .site-branding {
    min-width: 208px;
    padding: 3px 12px 3px 6px !important;
}

body:not(.is-mobile) .site-branding img,
body:not(.is-mobile) .site-logotype img,
body:not(.is-mobile) .site-logo img,
body:not(.is-mobile) .custom-logo {
    max-height: 46px !important;
    width: auto !important;
}

body:not(.is-mobile) .site-title,
body:not(.is-mobile) .site-branding__title {
    font-size: 20px !important;
    line-height: 1.1 !important;
}

body:not(.is-mobile) .top-menu ul li > a,
body:not(.is-mobile) .top-menu ul li > span {
    min-height: 34px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

body:not(.is-mobile) .top-menu ul li.mega-catalog > a,
body:not(.is-mobile) .top-menu ul li.mega-catalog > span,
body:not(.is-mobile) .top-menu ul li.catalog-btn > a,
body:not(.is-mobile) .top-menu ul li.catalog-btn > span {
    min-height: 36px !important;
    padding: 8px 18px !important;
}

body:not(.is-mobile) .header-search .search-field {
    height: 36px !important;
}

body:not(.is-mobile) .header-customer-account--vis,
body:not(.is-mobile) .header-cart__link,
body:not(.is-mobile) .header-favorite__link,
body:not(.is-mobile) .header-compare__link {
    width: 36px !important;
    height: 36px !important;
    border-radius: 14px !important;
}

/* Header 4B mini-cart EOF override. */
body:not(.is-mobile) .site-header-cart-hidden {
    top: 132px !important;
    right: max(28px, calc((100vw - 1460px) / 2 + 28px)) !important;
    width: min(430px, calc(100vw - 32px)) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - 154px) !important;
    padding: 22px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    display: grid !important;
    gap: 12px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart {
    display: grid !important;
    gap: 10px !important;
    max-height: min(390px, calc(100vh - 330px)) !important;
    margin: 0 !important;
    padding: 0 2px 0 0 !important;
    overflow-x: hidden !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 82px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 34px !important;
    grid-template-rows: auto auto !important;
    column-gap: 12px !important;
    row-gap: 4px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #eef3fb !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
    color: #172033 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    text-decoration: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name img {
    float: none !important;
    flex: 0 0 56px !important;
    width: 56px !important;
    height: 56px !important;
    margin: 0 !important;
    object-fit: contain !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 12px !important;
    background: #f8fbff !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: start !important;
    justify-self: start !important;
    position: static !important;
    margin: -4px 0 0 68px !important;
    color: #526070 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
    color: #2563eb !important;
    font-weight: 850 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: end !important;
    position: static !important;
    width: 32px !important;
    height: 32px !important;
    transform: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:hover,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:focus {
    transform: scale(1.04) !important;
}

/* Product cards: equal visual rhythm in shop grids. */
.shop-item .shop-item-inner {
    height: 100% !important;
    min-height: 410px !important;
    display: flex !important;
    flex-direction: column !important;
}

.shop-item .shop-item__image {
    flex: 0 0 220px !important;
    height: 220px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    margin-bottom: 18px !important;
}

.shop-item .shop-item__image-inner {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
}

.shop-item .shop-item__image img {
    width: auto !important;
    height: 205px !important;
    max-width: 230px !important;
    max-height: 205px !important;
    object-fit: contain !important;
}

.shop-item .shop-item__title {
    flex: 0 0 46px !important;
    min-height: 46px !important;
    margin: 0 0 8px !important;
    overflow: hidden !important;
}

.shop-item .shop-item__title-link {
    display: -webkit-box !important;
    min-height: 40px !important;
    color: #071122 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.34 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
}

.shop-item .shop-item__price {
    flex: 0 0 22px !important;
    min-height: 22px !important;
    margin: 0 0 16px !important;
}

.shop-item .shop-item__actions {
    margin-top: auto !important;
}

@media (max-width: 767px) {
    .shop-item .shop-item-inner {
        min-height: 370px !important;
    }

    .shop-item .shop-item__image {
        flex-basis: 180px !important;
        height: 180px !important;
    }

    .shop-item .shop-item__image img {
        height: 165px !important;
        max-width: 185px !important;
        max-height: 165px !important;
    }
}

/* Key-Hub informational pages */
.kh-info-page {
  box-sizing: border-box;
  width: min(100% - 32px, 1180px);
  margin: 0 auto;
  padding: 24px 0 72px;
  color: #071122;
  font-family: "Inter", sans-serif;
}

.kh-info-page *,
.kh-info-page *::before,
.kh-info-page *::after {
  box-sizing: border-box;
}

.kh-info-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 28px;
  min-height: 360px;
  padding: 44px;
  border: 1px solid #e5edf8;
  border-radius: 18px;
  background: linear-gradient(135deg, #ffffff 0%, #f6faff 52%, #eef5ff 100%);
  box-shadow: 0 22px 60px rgba(33, 54, 96, .08);
}

.kh-info-hero--split {
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  align-items: center;
}

.kh-info-hero--compact {
  min-height: 250px;
  align-items: center;
}

.kh-info-eyebrow,
.kh-info-section-head span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  width: fit-content;
  padding: 0 12px;
  border-radius: 999px;
  background: #eef3ff;
  color: #5b63ff;
  font-size: 13px;
  font-weight: 800;
}

.kh-info-hero h1 {
  max-width: 520px;
  margin: 18px 0 0;
  color: #071122;
  font-size: 44px;
  line-height: 1.08;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-info-hero p {
  max-width: 590px;
  margin: 20px 0 0;
  color: #50617c;
  font-size: 16px;
  line-height: 1.72;
}

.kh-info-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.kh-info-btn {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 22px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.kh-info-btn--primary {
  border: 0;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff !important;
  box-shadow: 0 14px 28px rgba(64, 129, 255, .24);
}

.kh-info-btn--ghost {
  border: 1px solid #d9e5f5;
  background: #fff;
  color: #071122 !important;
}

.kh-info-btn:hover {
  transform: translateY(-1px);
}

.kh-info-hero__visual {
  min-height: 260px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kh-info-software-stack {
  position: relative;
  width: min(100%, 420px);
  height: 270px;
}

.kh-info-os-card,
.kh-info-app-card {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e5edf8;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 20px 44px rgba(33, 54, 96, .12);
}

.kh-info-os-card {
  left: 76px;
  top: 28px;
  width: 190px;
  height: 170px;
  border-radius: 26px;
}

.kh-info-os-card img {
  width: 132px;
  height: 132px;
  object-fit: contain;
}

.kh-info-app-card {
  width: 82px;
  height: 82px;
  border-radius: 20px;
}

.kh-info-app-card img {
  width: 58px;
  height: 58px;
  object-fit: contain;
}

.kh-info-app-card--office {
  right: 44px;
  top: 18px;
}

.kh-info-app-card--autodesk {
  right: 12px;
  bottom: 42px;
}

.kh-info-app-card--adobe {
  left: 20px;
  bottom: 16px;
}

.kh-info-trust-grid,
.kh-info-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.kh-info-trust-grid {
  margin-top: 18px;
}

.kh-info-card,
.kh-info-support-card,
.kh-info-metrics,
.kh-info-main {
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 16px 38px rgba(33, 54, 96, .06);
}

.kh-info-card {
  min-width: 0;
  padding: 20px;
}

.kh-info-card--mini {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

.kh-info-icon {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #eef5ff;
  color: #3474ff;
  font-size: 13px;
  font-weight: 900;
}

.kh-info-svg svg {
  width: 21px;
  height: 21px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kh-info-card h2,
.kh-info-card h3,
.kh-info-support-card h2 {
  margin: 0;
  color: #071122;
  font-size: 16px;
  line-height: 1.28;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-info-card p,
.kh-info-support-card p {
  margin: 8px 0 0;
  color: #60708a;
  font-size: 14px;
  line-height: 1.58;
}

.kh-info-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px;
  margin-top: 18px;
  overflow: hidden;
}

.kh-info-metrics div {
  min-height: 112px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 18px 22px;
  background: rgba(255, 255, 255, .72);
  text-align: center;
}

.kh-info-metrics strong {
  display: block;
  min-height: 34px;
  color: #3474ff;
  font-size: 28px;
  line-height: 1;
  font-weight: 900;
  white-space: nowrap;
}

.kh-info-metrics span {
  display: block;
  min-height: 36px;
  margin-top: 8px;
  color: #66758d;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
}

.kh-info-layout {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 20px;
  margin-top: 20px;
}

.kh-info-layout > * {
  min-width: 0;
}

.kh-info-layout--wide-main {
  grid-template-columns: minmax(0, 1fr) 360px;
}

.kh-info-main {
  padding: 26px;
}

.kh-info-section-head h2 {
  max-width: 720px;
  margin: 14px 0 22px;
  color: #071122;
  font-size: 30px;
  line-height: 1.18;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-info-feature-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.kh-info-support-card {
  align-self: start;
  padding: 24px;
}

.kh-info-support-card img {
  display: block;
  width: 138px;
  height: 116px;
  object-fit: contain;
  margin: 0 0 18px auto;
}

.kh-info-support-card .kh-info-btn {
  width: 100%;
  margin-top: 18px;
}

.kh-info-support-card--sticky {
  position: sticky;
  top: 18px;
}

.kh-info-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.kh-info-steps::before {
  content: "";
  position: absolute;
  left: 11%;
  right: 11%;
  top: 28px;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #dce8f8 12%, #dce8f8 88%, transparent 100%);
}

.kh-info-step {
  position: relative;
  min-height: 190px;
  padding: 22px;
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 16px 38px rgba(33, 54, 96, .06);
}

.kh-info-step__number {
  position: absolute;
  top: 19px;
  right: 20px;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  box-shadow: 0 8px 18px rgba(64, 129, 255, .22);
}

.kh-info-step h2 {
  margin: 18px 0 0;
  color: #071122;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 900;
}

.kh-info-step p {
  margin: 10px 0 0;
  color: #60708a;
  font-size: 14px;
  line-height: 1.58;
}

.kh-info-payment-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.kh-info-payment-card {
  min-height: 150px;
  padding: 18px;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #fff;
}

.kh-info-payment-card__mark {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-radius: 12px;
  background: #eef5ff;
  color: #3474ff;
  box-shadow: inset 0 0 0 1px #e1ebfb;
}

.kh-info-payment-card__mark svg {
  width: 22px;
  height: 22px;
}

.kh-info-payment-card h3 {
  margin: 14px 0 0;
  color: #071122;
  font-size: 15px;
  line-height: 1.28;
  font-weight: 900;
}

.kh-info-payment-card p {
  margin: 8px 0 0;
  color: #60708a;
  font-size: 13px;
  line-height: 1.5;
}

.kh-info-note {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
  padding: 16px;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #f5f9ff;
}

.kh-info-note p {
  margin: 0;
  color: #50617c;
  font-size: 14px;
  line-height: 1.55;
}

.kh-info-delivery-card {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 360px;
  padding: 28px;
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%);
  box-shadow: 0 16px 38px rgba(33, 54, 96, .06);
}

.kh-info-delivery-card__visual {
  position: relative;
  height: 130px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
}

.kh-info-mail-card {
  width: 156px;
  height: 98px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e5edf8;
  border-radius: 18px;
  background: #fff;
  color: #5c8cff;
  font-size: 44px;
  box-shadow: 0 18px 38px rgba(33, 54, 96, .12);
}

.kh-info-delivery-check {
  position: absolute;
  right: 64px;
  bottom: 10px;
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #22c983;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  box-shadow: 0 10px 22px rgba(34, 201, 131, .24);
}

.kh-info-delivery-card h2,
.kh-info-support-wide h2 {
  margin: 0;
  color: #071122;
  font-size: 24px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-info-delivery-card p,
.kh-info-support-wide p {
  margin: 12px 0 0;
  color: #60708a;
  font-size: 14px;
  line-height: 1.6;
}

.kh-info-delivery-card .kh-info-btn {
  width: 100%;
  margin-top: 22px;
}

.kh-info-support-wide {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 20px;
  padding: 28px;
  border: 1px solid #e5edf8;
  border-radius: 18px;
  background: linear-gradient(135deg, #ffffff 0%, #f4f9ff 100%);
  box-shadow: 0 16px 38px rgba(33, 54, 96, .06);
}

.kh-info-support-wide h2 {
  max-width: 560px;
  margin-top: 14px;
}

.kh-info-support-wide p {
  max-width: 640px;
}

.kh-info-policy {
  display: grid;
  gap: 16px;
}

.kh-info-policy .kh-info-section-head {
  margin-bottom: 4px;
}

.kh-info-legal-section {
  padding: 22px;
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: #fff;
}

.kh-info-legal-section h3 {
  margin: 0 0 12px;
  color: #071122;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-info-legal-section p {
  margin: 12px 0 0;
  color: #53647e;
  font-size: 15px;
  line-height: 1.72;
}

.kh-info-legal-section p:first-of-type {
  margin-top: 0;
}

.kh-info-legal-section ul {
  display: grid;
  gap: 8px;
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}

.kh-info-legal-section li {
  position: relative;
  min-height: 24px;
  padding-left: 30px;
  color: #33445f;
  font-size: 15px;
  line-height: 1.55;
}

.kh-info-legal-section li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: #eef5ff;
  box-shadow: inset 0 0 0 1px #dce8f8;
}

.kh-info-legal-section li::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 8px;
  width: 6px;
  height: 3px;
  border-left: 2px solid #3474ff;
  border-bottom: 2px solid #3474ff;
  transform: rotate(-45deg);
}

.kh-info-legal-section a {
  color: #2f68ff;
  font-weight: 800;
  text-decoration: none;
}

.kh-info-legal-section a:hover {
  text-decoration: underline;
}

.kh-info-alert {
  padding: 15px 16px;
  border: 1px solid #dce8f8;
  border-radius: 14px;
  background: linear-gradient(135deg, #f3f8ff 0%, #ffffff 100%);
  color: #071122 !important;
  font-weight: 800;
}

.kh-privacy-document {
  scroll-margin-top: 24px;
}

.kh-privacy-content {
  overflow: hidden;
}

.kh-privacy-content > *:first-child {
  margin-top: 0 !important;
}

.kh-privacy-content h1,
.kh-privacy-content h2,
.kh-privacy-content h3,
.kh-privacy-content h4 {
  margin: 28px 0 12px;
  color: #071122;
  line-height: 1.25;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-privacy-content h1 {
  font-size: 26px;
}

.kh-privacy-content h2 {
  font-size: 22px;
}

.kh-privacy-content h3 {
  font-size: 19px;
}

.kh-privacy-content h4 {
  font-size: 17px;
}

.kh-privacy-content ol {
  display: grid;
  gap: 9px;
  margin: 14px 0 0;
  padding-left: 22px;
}

.kh-privacy-content ol li {
  padding-left: 6px;
}

.kh-privacy-content ol li::before,
.kh-privacy-content ol li::after {
  content: none;
}

.kh-privacy-content table {
  width: 100%;
  margin-top: 18px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  color: #33445f;
  font-size: 14px;
  line-height: 1.55;
}

.kh-privacy-content th,
.kh-privacy-content td {
  padding: 14px 16px;
  border-bottom: 1px solid #e5edf8;
  vertical-align: top;
}

.kh-privacy-content th {
  background: #f3f8ff;
  color: #071122;
  font-weight: 900;
}

.kh-privacy-content tr:last-child th,
.kh-privacy-content tr:last-child td {
  border-bottom: 0;
}

.kh-privacy-content blockquote {
  margin: 18px 0 0;
  padding: 16px 18px;
  border: 1px solid #dce8f8;
  border-left: 4px solid #7567ff;
  border-radius: 14px;
  background: linear-gradient(135deg, #f3f8ff 0%, #ffffff 100%);
  color: #071122;
}

.kh-legal-hero__visual {
  min-height: 300px;
}

.kh-legal-invoice {
  width: min(100%, 390px);
  padding: 22px;
  border: 1px solid #e5edf8;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 58px rgba(33, 54, 96, .13);
}

.kh-legal-invoice__top,
.kh-legal-invoice__row,
.kh-legal-invoice__total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.kh-legal-invoice__top span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 11px;
  border-radius: 999px;
  background: #eef3ff;
  color: #5b63ff;
  font-size: 12px;
  font-weight: 900;
}

.kh-legal-invoice__top strong {
  color: #071122;
  font-size: 18px;
  font-weight: 950;
}

.kh-legal-invoice__line {
  height: 1px;
  margin: 18px 0;
  background: linear-gradient(90deg, transparent, #dce8f8, transparent);
}

.kh-legal-invoice__row {
  min-height: 50px;
  margin-top: 10px;
  padding: 12px;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #f8fbff;
}

.kh-legal-invoice__row span,
.kh-legal-invoice__total span {
  color: #50617c;
  font-size: 14px;
  font-weight: 800;
}

.kh-legal-invoice__row b {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border-radius: 999px;
  background: #eafaf4;
  color: #129b62;
  font-size: 12px;
  font-weight: 900;
}

.kh-legal-invoice__total {
  margin-top: 18px;
  padding: 16px;
  border-radius: 16px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  box-shadow: 0 14px 28px rgba(64, 129, 255, .22);
}

.kh-legal-invoice__total span,
.kh-legal-invoice__total strong {
  color: #fff;
}

.kh-legal-invoice__total strong {
  font-size: 18px;
  font-weight: 950;
}

.kh-legal-feature-grid .kh-info-card {
  min-height: 190px;
}

.kh-legal-note {
  margin-top: 18px;
  padding: 18px;
  border: 1px solid #dce8f8;
  border-radius: 16px;
  background: linear-gradient(135deg, #f3f8ff 0%, #ffffff 100%);
}

.kh-legal-note strong {
  display: block;
  color: #071122;
  font-size: 15px;
  font-weight: 950;
}

.kh-legal-note p {
  margin: 8px 0 0;
  color: #53647e;
  font-size: 14px;
  line-height: 1.65;
}

.kh-legal-side-list {
  display: grid;
  gap: 9px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}

.kh-legal-side-list li {
  position: relative;
  padding-left: 26px;
  color: #33445f;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.45;
}

.kh-legal-side-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 17px;
  height: 17px;
  border-radius: 999px;
  background: #eef5ff;
  box-shadow: inset 0 0 0 1px #dce8f8;
}

.kh-legal-side-list li::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 8px;
  width: 5px;
  height: 3px;
  border-left: 2px solid #3474ff;
  border-bottom: 2px solid #3474ff;
  transform: rotate(-45deg);
}

.kh-legal-application {
  margin-top: 20px;
}

.kh-legal-application__grid {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.35fr);
  gap: 18px;
  align-items: stretch;
}

.kh-legal-application__info,
.kh-legal-form-card {
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: linear-gradient(135deg, #f7fbff 0%, #ffffff 100%);
  box-shadow: 0 18px 42px rgba(33, 54, 96, .08);
}

.kh-legal-application__info {
  padding: 22px;
}

.kh-legal-application__info h3 {
  margin: 0;
  color: #071122;
  font-size: 20px;
  font-weight: 950;
  line-height: 1.25;
}

.kh-legal-application__info p {
  margin: 18px 0 0;
  color: #53647e;
  font-size: 14px;
  line-height: 1.65;
}

.kh-legal-form-card {
  padding: 24px;
  background: #fff;
}

.kh-legal-form-card .wpcf7-form {
  margin: 0;
}

.kh-legal-form-card .contact-form-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
}

.kh-legal-form-card .form-left,
.kh-legal-form-card .form-right {
  display: grid;
  gap: 12px;
}

.kh-legal-form-card .form-left label,
.kh-legal-form-card .form-right label {
  display: block;
  margin: 0;
}

.kh-legal-form-card input[type="text"],
.kh-legal-form-card input[type="email"],
.kh-legal-form-card input[type="tel"],
.kh-legal-form-card textarea {
  width: 100%;
  min-height: 52px;
  padding: 14px 16px;
  border: 1px solid #dce8f8;
  border-radius: 14px;
  background: #f8fbff;
  color: #071122;
  font-size: 15px;
  font-weight: 700;
  outline: none;
  box-shadow: none;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.kh-legal-form-card textarea {
  min-height: 180px;
  resize: vertical;
}

.kh-legal-form-card input:focus,
.kh-legal-form-card textarea:focus {
  border-color: #79c7ff;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(53, 199, 255, .13);
}

.kh-legal-form-card small {
  display: block;
  margin-top: 14px;
  color: #6a7890;
  font-size: 12px;
  line-height: 1.55;
}

.kh-legal-form-card small a {
  color: #5268ff;
  font-weight: 850;
  text-decoration: none;
}

.kh-legal-form-card .form-submit {
  margin-top: 16px;
  text-align: left;
}

.kh-legal-form-card input[type="submit"],
.kh-legal-form-card .wpcf7-submit {
  min-height: 52px;
  padding: 0 26px;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff;
  font-size: 15px;
  font-weight: 950;
  cursor: pointer;
  box-shadow: 0 14px 28px rgba(64, 129, 255, .22);
}

.kh-legal-form-card .wpcf7-spinner {
  margin-left: 12px;
}

.kh-legal-form-card .wpcf7-not-valid-tip {
  margin-top: 6px;
  color: #e5485d;
  font-size: 12px;
  font-weight: 800;
}

.kh-legal-form-card .wpcf7-response-output {
  margin: 16px 0 0 !important;
  padding: 12px 14px !important;
  border-radius: 14px;
  font-size: 14px;
  font-weight: 800;
}

.kh-legal-docs {
  margin-top: 20px;
}

.kh-legal-doc-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.kh-legal-doc-card {
  min-height: 150px;
  padding: 18px;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #fff;
}

.kh-legal-doc-card h3 {
  margin: 0;
  color: #071122;
  font-size: 16px;
  line-height: 1.28;
  font-weight: 950;
}

.kh-legal-doc-card p {
  margin: 10px 0 0;
  color: #60708a;
  font-size: 14px;
  line-height: 1.58;
}

.kh-help-hero__visual {
  min-height: 290px;
}

.kh-help-device {
  width: min(100%, 390px);
  overflow: hidden;
  border: 1px solid #dce8f8;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 58px rgba(33, 54, 96, .13);
}

.kh-help-device__bar {
  display: flex;
  gap: 7px;
  padding: 14px 16px;
  border-bottom: 1px solid #e5edf8;
  background: #f6faff;
}

.kh-help-device__bar span {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #c8d6ea;
}

.kh-help-device__screen {
  min-height: 210px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 28px;
  text-align: center;
}

.kh-help-check {
  width: 64px;
  height: 64px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff;
  box-shadow: 0 16px 30px rgba(64, 129, 255, .24);
}

.kh-help-check svg {
  width: 34px;
  height: 34px;
  stroke-width: 2.4;
}

.kh-help-device__screen strong {
  margin-top: 18px;
  color: #071122;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 900;
}

.kh-help-device__screen small {
  margin-top: 8px;
  color: #60708a;
  font-size: 13px;
  font-weight: 700;
}

.kh-help-product-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  min-width: 0;
}

.kh-help-product-card {
  min-width: 0;
  display: flex;
  gap: 16px;
  min-height: 148px;
  padding: 18px;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #fff;
}

.kh-help-product-card img {
  flex: 0 0 58px;
  width: 58px;
  height: 58px;
  object-fit: contain;
}

.kh-help-product-card > div {
  min-width: 0;
}

.kh-help-product-card h3,
.kh-help-faq h3 {
  margin: 0;
  color: #071122;
  font-size: 16px;
  line-height: 1.28;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-help-product-card p,
.kh-help-faq p {
  margin: 9px 0 0;
  color: #60708a;
  font-size: 14px;
  line-height: 1.58;
}

.kh-help-checklist {
  margin-top: 26px;
  padding: 24px 26px 26px;
  border: 1px solid #e5edf8;
  border-radius: 18px;
  background: linear-gradient(135deg, #ffffff 0%, #f6faff 100%);
  box-shadow: 0 18px 44px rgba(33, 54, 96, .08);
}

.kh-help-checklist .kh-info-section-head {
  margin-bottom: 18px;
}

.kh-help-checklist .kh-info-section-head h2 {
  margin-bottom: 0;
}

.kh-help-checklist ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-flow: row;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.kh-help-checklist li {
  position: relative;
  min-height: 70px;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 14px 16px 14px 48px;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #f6faff;
  color: #20314c;
  font-size: 14px;
  line-height: 1.45;
  font-weight: 800;
}

.kh-help-checklist li:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}

.kh-help-checklist li:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

.kh-help-checklist li:nth-child(3) {
  grid-column: 1;
  grid-row: 2;
}

.kh-help-checklist li:nth-child(4) {
  grid-column: 2;
  grid-row: 2;
}

.kh-help-checklist li::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 17px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: #eef5ff;
  box-shadow: inset 0 0 0 1px #dce8f8;
}

.kh-help-checklist li::after {
  content: "";
  position: absolute;
  left: 21px;
  top: 22px;
  width: 6px;
  height: 3px;
  border-left: 2px solid #3474ff;
  border-bottom: 2px solid #3474ff;
  transform: rotate(-45deg);
}

.kh-help-steps {
  margin-top: 20px;
}

.kh-help-faq {
  margin-top: 20px;
}

.kh-help-faq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.kh-help-faq-grid article {
  min-height: 138px;
  padding: 18px;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #fff;
}

.kh-contact-hero__visual {
  min-height: 290px;
}

.kh-contact-panel {
  position: relative;
  width: min(100%, 360px);
  min-height: 250px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 32px;
  border: 1px solid #dce8f8;
  border-radius: 18px;
  background: #fff;
  text-align: center;
  box-shadow: 0 24px 58px rgba(33, 54, 96, .13);
}

.kh-contact-panel__status {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 13px;
  height: 13px;
  border-radius: 999px;
  background: #22c983;
  box-shadow: 0 0 0 7px rgba(34, 201, 131, .12);
}

.kh-contact-panel__icon {
  width: 68px;
  height: 68px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff;
  box-shadow: 0 16px 30px rgba(64, 129, 255, .24);
}

.kh-contact-panel__icon svg {
  width: 34px;
  height: 34px;
  stroke-width: 2.2;
}

.kh-contact-panel strong {
  margin-top: 18px;
  color: #071122;
  font-size: 22px;
  line-height: 1.18;
  font-weight: 900;
}

.kh-contact-panel small {
  margin-top: 8px;
  color: #60708a;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}

.kh-contact-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.kh-contact-card,
.kh-contact-topic-grid article,
.kh-contact-details {
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 16px 38px rgba(33, 54, 96, .06);
}

.kh-contact-card {
  min-height: 230px;
  display: flex;
  flex-direction: column;
  padding: 20px;
}

.kh-contact-card h2,
.kh-contact-topic-grid h3 {
  margin: 16px 0 0;
  color: #071122;
  font-size: 17px;
  line-height: 1.28;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-contact-card p,
.kh-contact-topic-grid p {
  margin: 9px 0 0;
  color: #60708a;
  font-size: 14px;
  line-height: 1.58;
}

.kh-contact-link {
  width: fit-content;
  margin-top: auto;
  padding-top: 18px;
  color: #2f68ff !important;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.25;
  text-decoration: none !important;
}

.kh-contact-link:hover {
  text-decoration: underline !important;
}

.kh-contact-topic-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.kh-contact-topic-grid article {
  min-height: 168px;
  padding: 18px;
}

.kh-contact-short-list {
  display: grid;
  gap: 8px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}

.kh-contact-short-list li {
  position: relative;
  padding-left: 24px;
  color: #33445f;
  font-size: 14px;
  line-height: 1.45;
  font-weight: 700;
}

.kh-contact-short-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #35c7ff;
  box-shadow: 0 0 0 5px #eef5ff;
}

.kh-contact-details {
  margin-top: 20px;
  padding: 26px;
}

.kh-contact-details__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.kh-contact-details__grid div {
  min-height: 96px;
  padding: 18px;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #fff;
}

.kh-contact-details__grid span {
  display: block;
  color: #66758d;
  font-size: 13px;
  font-weight: 800;
}

.kh-contact-details__grid a {
  display: inline-block;
  margin-top: 9px;
  color: #071122 !important;
  font-size: 17px;
  line-height: 1.28;
  font-weight: 900;
  text-decoration: none !important;
}

.kh-contact-details__grid a:hover {
  color: #2f68ff !important;
}

.kh-discount-hero__visual {
  min-height: 290px;
}

.kh-discount-ticket {
  position: relative;
  width: min(100%, 360px);
  min-height: 230px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 30px;
  border: 1px solid #dce8f8;
  border-radius: 22px;
  background:
    radial-gradient(circle at 0 50%, transparent 0 16px, #fff 17px),
    radial-gradient(circle at 100% 50%, transparent 0 16px, #fff 17px),
    linear-gradient(135deg, #ffffff 0%, #f2f8ff 100%);
  text-align: center;
  box-shadow: 0 24px 58px rgba(33, 54, 96, .13);
}

.kh-discount-ticket__label {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: #eef3ff;
  color: #5b63ff;
  font-size: 13px;
  font-weight: 900;
}

.kh-discount-ticket strong {
  margin-top: 14px;
  color: #3474ff;
  font-size: 66px;
  line-height: 1;
  font-weight: 900;
}

.kh-discount-ticket small {
  margin-top: 8px;
  color: #60708a;
  font-size: 14px;
  font-weight: 800;
}

.kh-discount-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.kh-discount-card,
.kh-discount-side-card,
.kh-discount-rules__grid article {
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 16px 38px rgba(33, 54, 96, .06);
}

.kh-discount-card {
  min-height: 238px;
  display: flex;
  flex-direction: column;
  padding: 18px;
}

.kh-discount-card h2,
.kh-discount-side-card h2,
.kh-discount-steps-list h3,
.kh-discount-rules__grid h3 {
  margin: 16px 0 0;
  color: #071122;
  font-size: 17px;
  line-height: 1.28;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-discount-card p,
.kh-discount-side-card p,
.kh-discount-steps-list p,
.kh-discount-rules__grid p {
  margin: 9px 0 0;
  color: #60708a;
  font-size: 14px;
  line-height: 1.58;
}

.kh-discount-card > strong {
  width: fit-content;
  margin-top: auto;
  padding-top: 18px;
  color: #3474ff;
  font-size: 24px;
  line-height: 1;
  font-weight: 900;
  text-transform: uppercase;
}

.kh-discount-code {
  width: fit-content;
  margin-top: auto;
  padding: 10px 12px;
  border: 1px solid #dce8f8;
  border-radius: 12px;
  background: #eef5ff;
  color: #3474ff;
  font-size: 15px;
  line-height: 1;
  font-weight: 900;
  text-transform: uppercase;
}

.kh-discount-steps-list {
  display: grid;
  gap: 12px;
}

.kh-discount-steps-list article {
  display: flex;
  gap: 16px;
  padding: 18px;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #fff;
}

.kh-discount-steps-list article > span {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  box-shadow: 0 10px 20px rgba(64, 129, 255, .2);
}

.kh-discount-steps-list h3 {
  margin-top: 0;
}

.kh-discount-side-card {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 360px;
  padding: 28px;
}

.kh-discount-side-card__mark {
  width: 70px;
  height: 70px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
  color: #fff;
  font-size: 34px;
  font-weight: 900;
  box-shadow: 0 16px 30px rgba(64, 129, 255, .24);
}

.kh-discount-side-card h2 {
  margin-top: 18px;
  font-size: 24px;
}

.kh-discount-side-card .kh-info-btn {
  width: 100%;
  margin-top: 22px;
}

.kh-discount-rules {
  margin-top: 20px;
}

.kh-discount-rules__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.kh-discount-rules__grid article {
  min-height: 140px;
  padding: 18px;
}

.kh-discount-rules__grid h3 {
  margin-top: 0;
}

.kh-faq-hero__visual {
  min-height: 290px;
}

.kh-faq-visual {
  width: min(100%, 360px);
  min-height: 250px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 28px;
  border: 1px solid #dce8f8;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 58px rgba(33, 54, 96, .13);
}

.kh-faq-visual img {
  width: 112px;
  height: 112px;
  object-fit: contain;
}

.kh-faq-visual strong {
  display: block;
  color: #3474ff;
  font-size: 42px;
  line-height: 1;
  font-weight: 900;
}

.kh-faq-visual span {
  display: block;
  max-width: 150px;
  margin-top: 8px;
  color: #60708a;
  font-size: 14px;
  line-height: 1.45;
  font-weight: 800;
}

.kh-faq-layout {
  grid-template-columns: 280px minmax(0, 1fr);
}

.kh-faq-sidebar {
  align-self: start;
  position: sticky;
  top: 18px;
  padding: 22px;
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 16px 38px rgba(33, 54, 96, .06);
}

.kh-faq-sidebar > span {
  display: block;
  color: #071122;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 900;
}

.kh-faq-sidebar nav {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.kh-faq-sidebar a {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 0 13px;
  border: 1px solid #e5edf8;
  border-radius: 12px;
  background: #fff;
  color: #33445f !important;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 800;
  text-decoration: none !important;
  transition: border-color .2s ease, color .2s ease, transform .2s ease;
}

.kh-faq-sidebar a:hover {
  border-color: #bad4ff;
  color: #2f68ff !important;
  transform: translateY(-1px);
}

.kh-faq-groups {
  display: grid;
  gap: 20px;
}

.kh-faq-group {
  scroll-margin-top: 120px;
}

.kh-faq-group h3 {
  margin: 0 0 12px;
  color: #071122;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: 0;
}

.kh-faq-list {
  display: grid;
  gap: 10px;
}

.kh-faq-item {
  overflow: hidden;
  border: 1px solid #e5edf8;
  border-radius: 14px;
  background: #fff;
}

.kh-faq-item summary {
  min-height: 62px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px;
  color: #071122;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 900;
  cursor: pointer;
  list-style: none;
}

.kh-faq-item summary::-webkit-details-marker {
  display: none;
}

.kh-faq-item summary span {
  min-width: 0;
}

.kh-faq-item summary i {
  position: relative;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  background: #eef5ff;
  box-shadow: inset 0 0 0 1px #dce8f8;
}

.kh-faq-item summary i::before,
.kh-faq-item summary i::after {
  content: "";
  position: absolute;
  left: 10px;
  top: 15px;
  width: 12px;
  height: 2px;
  border-radius: 999px;
  background: #3474ff;
}

.kh-faq-item summary i::after {
  transform: rotate(90deg);
}

.kh-faq-item[open] summary {
  background: #f6faff;
}

.kh-faq-item[open] summary i::after {
  transform: rotate(0deg);
}

.kh-faq-answer {
  padding: 0 18px 18px;
  color: #53647e;
  font-size: 15px;
  line-height: 1.7;
}

.kh-faq-answer p {
  margin: 12px 0 0;
}

.kh-faq-answer p:first-child {
  margin-top: 0;
}

.kh-faq-answer ul,
.kh-faq-answer ol {
  margin: 12px 0 0;
  padding-left: 20px;
}

.kh-faq-answer a {
  color: #2f68ff;
  font-weight: 800;
  text-decoration: none;
}

.kh-faq-answer a:hover {
  text-decoration: underline;
}

.kh-reviews-hero__visual {
  min-height: 290px;
}

.kh-reviews-score-card {
  width: min(100%, 340px);
  min-height: 240px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 30px;
  border: 1px solid #dce8f8;
  border-radius: 18px;
  background: #fff;
  text-align: center;
  box-shadow: 0 24px 58px rgba(33, 54, 96, .13);
}

.kh-reviews-score-card strong {
  color: #3474ff;
  font-size: 72px;
  line-height: .95;
  font-weight: 900;
}

.kh-reviews-score-card span {
  margin-top: 12px;
  color: #ffb21b;
  font-size: 22px;
  line-height: 1;
  letter-spacing: 1px;
}

.kh-reviews-score-card small {
  margin-top: 10px;
  color: #60708a;
  font-size: 14px;
  font-weight: 800;
}

.kh-reviews-layout {
  grid-template-columns: 320px minmax(0, 1fr);
}

.kh-reviews-summary {
  align-self: start;
  position: sticky;
  top: 18px;
  padding: 24px;
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 16px 38px rgba(33, 54, 96, .06);
}

.kh-reviews-summary__score {
  color: #071122;
  font-size: 54px;
  line-height: .95;
  font-weight: 900;
}

.kh-reviews-summary__stars {
  margin-top: 12px;
  color: #ffb21b;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 1px;
  font-weight: 900;
}

.kh-reviews-summary p {
  margin: 10px 0 0;
  color: #60708a;
  font-size: 14px;
  line-height: 1.58;
}

.kh-reviews-bars {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.kh-reviews-bar {
  display: grid;
  grid-template-columns: 66px minmax(0, 1fr) minmax(34px, auto);
  align-items: center;
  gap: 10px;
  color: #60708a;
  font-size: 12px;
  font-weight: 800;
}

.kh-reviews-bar b {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #eaf1fb;
}

.kh-reviews-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
}

.kh-reviews-bar em {
  color: #60708a;
  font-style: normal;
  text-align: right;
  white-space: nowrap;
}

.kh-reviews-summary .kh-info-btn {
  width: 100%;
  margin-top: 24px;
}

.kh-reviews-grid {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.kh-review-card,
.kh-reviews-empty {
  border: 1px solid #e5edf8;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(18, 35, 68, .05);
}

.kh-review-card {
  min-width: 0;
  min-height: 210px;
  display: flex;
  flex-direction: column;
  padding: 18px;
}

.kh-review-card__top {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.kh-review-card__top > div {
  min-width: 0;
}

.kh-review-card h3,
.kh-reviews-empty h3 {
  margin: 0;
  color: #071122;
  font-size: 16px;
  line-height: 1.28;
  font-weight: 900;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.kh-review-card__top span {
  display: block;
  margin-top: 5px;
  color: #66758d;
  font-size: 12px;
  line-height: 1.3;
  font-weight: 800;
}

.kh-review-card__top strong {
  flex: 0 0 auto;
  color: #ffb21b;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 1px;
  white-space: nowrap;
}

.kh-review-card p,
.kh-reviews-empty p {
  margin: 14px 0 0;
  color: #53647e;
  font-size: 14px;
  line-height: 1.62;
}

.kh-review-card__product {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
  color: #071122;
  text-decoration: none;
}

.kh-review-card__product-thumb {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid #dce8f7;
  border-radius: 10px;
  background: #f8fbff;
}

.kh-review-card__product-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.kh-review-card__product-title {
  min-width: 0;
  max-width: 220px;
  color: #071122;
  font-size: 13px;
  line-height: 1.18;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.kh-review-card__product:hover .kh-review-card__product-title {
  color: #215bff;
}

.kh-review-card time {
  margin-top: auto;
  padding-top: 16px;
  color: #7a879a;
  font-size: 12px;
  font-weight: 800;
}

.kh-review-card--hidden {
  display: none;
}

.kh-review-card__excerpt {
  position: relative;
  min-height: 0;
  overflow: hidden;
}

.kh-review-card__excerpt > p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-clamp: 5;
}

.kh-review-card.has-overflow-review .kh-review-card__excerpt::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 32px;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255,255,255,0), #fff 88%);
}

.kh-review-card__read-more {
  align-self: flex-start;
  min-height: 38px;
  margin: 2px 0 0;
  padding: 0 12px;
  border: 1px solid #d4e2f5;
  border-radius: 9px;
  background: #f4f8ff;
  color: #245bdb;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}

.kh-review-card__read-more[hidden] {
  display: none !important;
}

.kh-review-card__read-more:hover,
.kh-review-card__read-more:focus-visible {
  border-color: #a9c8f5;
  background: #eaf3ff;
  color: #1749bf;
  outline: none;
}

.kh-review-dialog[hidden] {
  display: none !important;
}

.kh-review-dialog {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: grid;
  place-items: center;
  padding: 24px;
  opacity: 0;
  transition: opacity .18s ease;
}

.kh-review-dialog.is-open {
  opacity: 1;
}

.kh-review-dialog__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 20, 39, .58);
  backdrop-filter: blur(5px);
}

.kh-review-dialog__panel {
  position: relative;
  z-index: 1;
  width: min(620px, 100%);
  max-height: min(760px, calc(100dvh - 48px));
  overflow: auto;
  padding: 26px;
  border: 1px solid #d7e4f5;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 30px 90px rgba(10, 28, 60, .24);
  transform: translateY(12px) scale(.985);
  transition: transform .2s ease;
  outline: none;
}

.kh-review-dialog.is-open .kh-review-dialog__panel {
  transform: translateY(0) scale(1);
}

.kh-review-dialog__close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid #d8e5f5;
  border-radius: 12px;
  background: #f6f9fd;
  color: #52647d;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

.kh-review-dialog__close:hover,
.kh-review-dialog__close:focus-visible {
  border-color: #a9c8f5;
  color: #1749bf;
  outline: 3px solid rgba(53, 108, 255, .14);
}

.kh-review-dialog__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding-right: 48px;
}

.kh-review-dialog__header span,
.kh-review-dialog__product small {
  display: block;
  color: #6d7c92;
  font-size: 12px;
  font-weight: 800;
}

.kh-review-dialog__header h2 {
  margin: 5px 0 0;
  color: #071122;
  font-size: 20px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.kh-review-dialog__header > strong {
  flex: 0 0 auto;
  color: #ffb21b;
  font-size: 15px;
  letter-spacing: 1px;
  white-space: nowrap;
}

.kh-review-dialog__text {
  margin-top: 20px;
  color: #34465f;
  font-size: 15px;
  line-height: 1.7;
}

.kh-review-dialog__text p {
  margin: 0;
}

.kh-review-dialog__product {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
  padding: 12px;
  border: 1px solid #e0eaf7;
  border-radius: 12px;
  background: #f8fbff;
  color: #101c30;
  text-decoration: none;
}

.kh-review-dialog__product b {
  display: block;
  margin-top: 3px;
  font-size: 13px;
  line-height: 1.3;
}

body.kh-review-dialog-open {
  overflow: hidden;
}

@media (max-width: 600px) {
  .kh-review-card__excerpt > p {
    -webkit-line-clamp: 4;
    line-clamp: 4;
  }

  .kh-review-dialog {
    align-items: end;
    padding: 0;
  }

  .kh-review-dialog__panel {
    width: 100%;
    max-height: calc(100dvh - 24px);
    padding: 22px 18px calc(22px + env(safe-area-inset-bottom, 0px));
    border-radius: 20px 20px 0 0;
    transform: translateY(24px);
  }

  .kh-review-dialog__header {
    flex-direction: column;
    padding-right: 46px;
  }

  .kh-review-dialog__header h2 {
    font-size: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kh-review-dialog,
  .kh-review-dialog__panel {
    transition: none;
  }
}

.kh-reviews-more {
  display: flex;
  justify-content: center;
  margin-top: 22px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.kh-reviews-more .kh-info-btn {
  min-width: 220px;
  border: 0;
  cursor: pointer;
  font-family: inherit;
}

.kh-reviews-empty {
  padding: 24px;
}

.kh-reviews-empty .kh-info-btn {
  margin-top: 18px;
}

@media (max-width: 1024px) {
  .kh-info-hero--split,
  .kh-info-layout {
    grid-template-columns: 1fr;
  }

  .kh-info-steps,
  .kh-info-payment-grid,
  .kh-legal-doc-grid,
  .kh-legal-application__grid,
  .kh-help-product-grid,
  .kh-help-checklist ul,
  .kh-help-faq-grid,
  .kh-contact-grid,
  .kh-contact-topic-grid,
  .kh-discount-grid,
  .kh-discount-rules__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kh-info-steps::before {
    display: none;
  }

  .kh-info-support-card img {
    margin-right: auto;
  }

  .kh-info-support-card--sticky {
    position: static;
  }

  .kh-contact-details__grid {
    grid-template-columns: 1fr;
  }

  .kh-faq-layout {
    grid-template-columns: 1fr;
  }

  .kh-faq-sidebar {
    position: static;
  }

  .kh-faq-sidebar nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kh-reviews-layout {
    grid-template-columns: 1fr;
  }

  .kh-reviews-summary {
    position: static;
  }
}

@media (max-width: 767px) {
  .kh-info-page {
    width: min(100% - 20px, 1180px);
    padding-top: 12px;
  }

  .kh-info-hero {
    min-height: 0;
    padding: 26px 18px;
    border-radius: 16px;
  }

  .kh-info-hero h1 {
    font-size: 32px;
  }

  .kh-info-hero p {
    font-size: 15px;
  }

  .kh-info-hero__visual {
    min-height: 220px;
  }

  .kh-info-software-stack {
    height: 220px;
  }

  .kh-info-os-card {
    left: 58px;
    top: 22px;
    width: 150px;
    height: 136px;
  }

  .kh-info-os-card img {
    width: 104px;
    height: 104px;
  }

  .kh-info-app-card {
    width: 68px;
    height: 68px;
  }

  .kh-info-app-card img {
    width: 48px;
    height: 48px;
  }

  .kh-info-trust-grid,
  .kh-info-feature-grid,
  .kh-info-metrics,
  .kh-info-steps,
  .kh-info-payment-grid,
  .kh-help-product-grid,
  .kh-help-checklist ul,
  .kh-help-faq-grid,
  .kh-legal-application__grid,
  .kh-contact-grid,
  .kh-contact-topic-grid,
  .kh-contact-details__grid,
  .kh-discount-grid,
  .kh-discount-rules__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .kh-help-checklist {
    padding: 20px;
  }

  .kh-help-checklist li:nth-child(n) {
    grid-column: auto;
    grid-row: auto;
  }

  .kh-help-hero__visual {
    min-height: 240px;
  }

  .kh-contact-hero__visual {
    min-height: 235px;
  }

  .kh-discount-hero__visual {
    min-height: 230px;
  }

  .kh-faq-hero__visual {
    min-height: 220px;
  }

  .kh-reviews-hero__visual {
    min-height: 220px;
  }

  .kh-contact-panel {
    min-height: 220px;
    padding: 26px 20px;
  }

  .kh-faq-visual {
    min-height: 200px;
    display: block;
    padding: 24px;
    text-align: center;
  }

  .kh-faq-visual img {
    width: 92px;
    height: 92px;
  }

  .kh-faq-visual span {
    max-width: none;
  }

  .kh-discount-ticket {
    min-height: 210px;
  }

  .kh-discount-ticket strong {
    font-size: 54px;
  }

  .kh-help-device__screen {
    min-height: 180px;
  }

  .kh-help-product-card {
    min-height: 0;
  }

  .kh-contact-card,
  .kh-contact-topic-grid article,
  .kh-discount-card,
  .kh-discount-rules__grid article {
    min-height: 0;
  }

  .kh-contact-details {
    padding: 22px;
  }

  .kh-faq-sidebar {
    padding: 18px;
  }

  .kh-faq-sidebar nav {
    grid-template-columns: 1fr;
  }

  .kh-faq-item summary {
    min-height: 58px;
    padding: 16px;
    font-size: 15px;
  }

  .kh-faq-answer {
    padding: 0 16px 16px;
    font-size: 14px;
  }

  .kh-reviews-score-card {
    min-height: 200px;
  }

  .kh-reviews-score-card strong {
    font-size: 58px;
  }

  .kh-reviews-grid {
    grid-template-columns: 1fr;
  }

  .kh-legal-invoice {
    padding: 18px;
  }

  .kh-legal-invoice__top,
  .kh-legal-invoice__row,
  .kh-legal-invoice__total {
    align-items: flex-start;
    flex-direction: column;
  }

  .kh-legal-form-card {
    padding: 18px;
  }

  .kh-legal-form-card .contact-form-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .kh-legal-form-card textarea {
    min-height: 150px;
  }

  .kh-legal-form-card input[type="submit"],
  .kh-legal-form-card .wpcf7-submit {
    width: 100%;
  }

  .kh-review-card {
    min-height: 0;
  }

  .kh-info-section-head h2 {
    font-size: 24px;
  }

  .kh-info-support-wide {
    display: block;
    padding: 22px;
  }

  .kh-info-support-wide .kh-info-actions {
    margin-top: 18px;
  }
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__empty-message {
    margin: 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .header-cart__title {
    margin: 0 34px 14px 0 !important;
    padding: 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    width: auto !important;
    padding: 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden:has(.woocommerce-mini-cart__empty-message) {
    min-height: 180px !important;
}

body:not(.is-mobile) .site-header-cart-hidden:has(.woocommerce-mini-cart-item) {
    min-height: 330px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item > a:not(.remove),
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item > span:not(.quantity) {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item > a:not(.remove) img,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item > span:not(.quantity) img {
    float: none !important;
    flex: 0 0 56px !important;
    width: 56px !important;
    height: 56px !important;
    margin: 0 !important;
}

/* Keep the cart drawer below the WordPress admin bar for logged-in users. */
body.admin-bar:not(.is-mobile) .site-header-cart-hidden {
    top: 32px !important;
    height: calc(100vh - 32px) !important;
    min-height: calc(100vh - 32px) !important;
}

body.admin-bar:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    height: calc(100vh - 96px) !important;
}

/* Checkout variant 4 final alignment with design mockup. */
body.woocommerce-checkout .woocommerce-form-coupon {
    display: none !important;
}

body.woocommerce-checkout .col2-set {
    padding: 22px !important;
}

body.woocommerce-checkout .kh-checkout-coupon-box,
body.woocommerce-checkout .kh-checkout-pay-box {
    margin-top: 18px !important;
    padding: 16px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #f8fbff 0%, #fff 100%) !important;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .05) !important;
}

body.woocommerce-checkout .kh-checkout-section-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: #172033;
    font-size: 14px;
    font-weight: 950;
}

body.woocommerce-checkout .kh-checkout-section-title::before {
    content: "";
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    border-radius: 8px;
    background: linear-gradient(135deg, #7567ff, #35c7ff);
    box-shadow: 0 6px 14px rgba(70, 118, 255, .18);
}

body.woocommerce-checkout .kh-checkout-coupon-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 130px;
    gap: 10px;
}

body.woocommerce-checkout .kh-checkout-coupon-input {
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid #dbe7f5;
    border-radius: 10px;
    background: #fff;
    color: #172033;
}

body.woocommerce-checkout .kh-checkout-coupon-button {
    min-height: 42px;
    border: 0;
    border-radius: 10px;
    background: #172033;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}

body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment .payment_box {
    display: none !important;
}

body.woocommerce-checkout .kh-checkout-pay-badges {
    width: 100% !important;
    margin: 13px 0 0 !important;
}

body.woocommerce-checkout .kh-checkout-product-line {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
}

body.woocommerce-checkout .kh-checkout-product-line img {
    width: 52px !important;
    height: 52px !important;
    object-fit: contain;
    border: 1px solid #e5edf8;
    border-radius: 10px;
    background: #fff;
}

body.woocommerce-checkout .kh-checkout-product-name {
    color: #172033;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.3;
}

/* Final product button hover guard. Keep this at the very end. */
body.single-product .product-info form.cart button.single_add_to_cart_button,
body.single-product .product-info form.cart button.single_add_to_cart_button.button,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt,
body.single-product .product-info form.cart button.single_add_to_cart_button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:focus {
    border: 0 !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    background-color: #35c7ff !important;
    background-image: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .28) !important;
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-text-fill-color: #fff !important;
}

body.single-product .product-info form.cart button.single_add_to_cart_button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:focus {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    background-color: #22b7f3 !important;
    background-image: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    box-shadow: 0 14px 30px rgba(70, 118, 255, .36) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    transform: translateY(-1px);
}

body.single-product .product-info form.cart button.single_add_to_cart_button::before,
body.single-product .product-info form.cart button.single_add_to_cart_button:hover::before,
body.single-product .product-info form.cart button.single_add_to_cart_button:focus::before {
    background: currentColor !important;
}

/* Mobile menu absolute final repair. */
@media (max-width: 767px) {
    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        flex-direction: column !important;
        font-size: 0 !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        display: none !important;
        content: none !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile,
    html body .mobile-menu-placeholder.open #site-navigation-mobile,
    html body .js-mobile-menu-placeholder.open .main-navigation,
    html body .mobile-menu-placeholder.open .main-navigation {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        opacity: 1 !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner,
    html body .mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        padding: 16px 18px 20px !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
    }
}

/* Header responsive stabilization. Keep this block at the end of the file. */
@media (max-width: 1199px) and (min-width: 992px) {
    html body:not(.is-mobile) .super-header {
        padding: 8px 12px 0 !important;
    }

    html body:not(.is-mobile) .super-header-inner {
        width: min(100% - 24px, 1180px) !important;
        min-height: 0 !important;
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        padding: 8px 12px !important;
    }

    html body:not(.is-mobile) .super-header a,
    html body:not(.is-mobile) .super-header span,
    html body:not(.is-mobile) .dim-header-top a {
        min-height: 24px !important;
        padding: 4px 8px !important;
        font-size: 11px !important;
    }

    html body:not(.is-mobile) .site-header-inner {
        width: min(100% - 24px, 1180px) !important;
        display: grid !important;
        grid-template-columns: minmax(172px, 210px) minmax(320px, 1fr) auto auto auto !important;
        grid-template-areas:
            "logo menu account favorite cart"
            "search search search search search" !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 12px 18px !important;
    }

    html body:not(.is-mobile) header.site-header .humburger {
        display: none !important;
    }

    html body:not(.is-mobile) header.site-header .site-branding {
        grid-area: logo !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) header.site-header .top-menu {
        grid-area: menu !important;
        min-width: 0 !important;
    }

    html body:not(.is-mobile) header.site-header .top-menu > ul,
    html body:not(.is-mobile) header.site-header .top-menu .menu {
        min-width: 0 !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 6px !important;
    }

    html body:not(.is-mobile) header.site-header .top-menu ul li > a,
    html body:not(.is-mobile) header.site-header .top-menu ul li > span {
        min-height: 36px !important;
        padding: 8px 10px !important;
        font-size: 13px !important;
    }

    html body:not(.is-mobile) header.site-header .header-search {
        grid-area: search !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) header.site-header .header-customer-account {
        grid-area: account !important;
    }

    html body:not(.is-mobile) header.site-header .header-favorite {
        grid-area: favorite !important;
    }

    html body:not(.is-mobile) header.site-header .site-header-cart {
        grid-area: cart !important;
    }
}

@media (max-width: 991px) {
    html body .super-header,
    html body .super-header.super-header--mob-show,
    html body .super-header.super-header--mob-hide,
    html body .dim-header-top {
        display: none !important;
    }

    html body header.site-header {
        padding: 0 !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
        box-shadow: 0 10px 24px rgba(18, 35, 68, .04) !important;
    }

    html body header.site-header .site-header-inner {
        width: 100% !important;
        max-width: none !important;
        display: grid !important;
        grid-template-columns: 48px minmax(150px, 220px) auto auto auto minmax(190px, 1fr) !important;
        grid-template-areas: "burger logo account favorite cart search" !important;
        align-items: center !important;
        gap: 10px !important;
        min-height: 72px !important;
        padding: 8px 18px !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        grid-area: burger !important;
        position: static !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        color: #172033 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        transform: none !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        content: none !important;
        display: none !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body header.site-header .site-branding {
        grid-area: logo !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 6px 10px !important;
        justify-self: start !important;
    }

    html body header.site-header .site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        width: auto !important;
        max-width: min(170px, 28vw) !important;
        max-height: 42px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    html body header.site-header .top-menu {
        display: none !important;
    }

    html body header.site-header .header-customer-account {
        grid-area: account !important;
        display: flex !important;
    }

    html body header.site-header .header-favorite {
        grid-area: favorite !important;
        display: flex !important;
    }

    html body header.site-header .site-header-cart {
        grid-area: cart !important;
        display: flex !important;
    }

    html body header.site-header .header-search {
        grid-area: search !important;
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile,
    html body .mobile-menu-placeholder.open #site-navigation-mobile,
    html body .js-mobile-menu-placeholder.open .main-navigation,
    html body .mobile-menu-placeholder.open .main-navigation {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        height: auto !important;
        opacity: 1 !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        padding: 16px 18px 20px !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
    }

    html body #site-navigation-mobile .menu > li > a,
    html body #site-navigation-mobile .menu > li > span {
        display: inline-flex !important;
        align-items: center !important;
        min-height: 42px !important;
        padding: 0 10px !important;
        color: #172033 !important;
        font-size: 16px !important;
        font-weight: 800 !important;
        text-decoration: none !important;
    }

    html body #site-navigation-mobile li.catalog-btn > a::before,
    html body #site-navigation-mobile li.mega-catalog > a::before {
        content: "" !important;
        width: 16px !important;
        height: 16px !important;
        display: inline-block !important;
        flex: 0 0 16px !important;
        margin-right: 9px !important;
        background: currentColor !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
    }

    html body #site-navigation-mobile .sub-menu-toggle,
    html body #site-navigation-mobile .dropdown-toggle,
    html body #site-navigation-mobile .menu-item-toggle,
    html body #site-navigation-mobile .menu-item__arrow,
    html body #site-navigation-mobile .submenu-toggle,
    html body #site-navigation-mobile li.menu-item-has-children > [class*="toggle"],
    html body #site-navigation-mobile li.menu-item-has-children > [class*="arrow"] {
        display: none !important;
    }
}

@media (max-width: 767px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        grid-template-areas: "burger logo cart" !important;
        gap: 8px !important;
        min-height: 72px !important;
        padding: 8px 18px !important;
    }

    html body header.site-header .site-branding {
        justify-self: center !important;
        padding: 4px 8px !important;
    }

    html body header.site-header .site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        max-width: min(145px, 44vw) !important;
        max-height: 40px !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-favorite,
    html body header.site-header .header-search,
    html body header.site-header .header-compare {
        display: none !important;
    }

    html body header.site-header .site-header-cart,
    html body header.site-header .site-header-cart .header-cart__link {
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
    }
}

/* Final mobile-menu cleanup: remove the parent theme submenu square, keep the Catalog icon. */
@media (max-width: 991px) {
    html body #site-navigation-mobile li.menu-item-has-children::before,
    html body #site-navigation-mobile li.menu-item-has-children::after,
    html body .js-mobile-menu-placeholder li.menu-item-has-children::before,
    html body .js-mobile-menu-placeholder li.menu-item-has-children::after,
    html body .mobile-menu-placeholder li.menu-item-has-children::before,
    html body .mobile-menu-placeholder li.menu-item-has-children::after,
    html body header.site-header .top-menu li.catalog-btn::before,
    html body header.site-header .top-menu li.catalog-btn::after,
    html body header.site-header .top-menu li.mega-catalog::before,
    html body header.site-header .top-menu li.mega-catalog::after {
        content: none !important;
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        opacity: 0 !important;
        pointer-events: none !important;
        visibility: hidden !important;
    }
}

/* Mobile and tablet header absolute final override 2026-05-27. */
@media (max-width: 991px) {
    html body header.site-header .site-header-inner,
    html body header.site-header.site-header .site-header-inner.site-header-inner {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        display: grid !important;
        grid-template-columns: 48px minmax(96px, 1fr) 44px 44px 44px !important;
        grid-template-areas: "burger logo account favorite cart" !important;
        align-items: center !important;
        gap: 8px !important;
        min-height: 72px !important;
        padding: 10px 18px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        grid-area: burger !important;
        position: static !important;
        width: 48px !important;
        max-width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        max-height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        flex: 0 0 48px !important;
        transform: none !important;
    }

    html body header.site-header .site-branding,
    html body header.site-header.site-header .site-branding.site-branding {
        grid-area: logo !important;
        justify-self: center !important;
        width: 100% !important;
        max-width: 190px !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 5px 8px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    html body header.site-header .site-logotype,
    html body header.site-header.site-header .site-logotype.site-logotype {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        display: flex !important;
        justify-content: center !important;
        overflow: hidden !important;
    }

    html body header.site-header .site-logotype img,
    html body header.site-header.site-header .site-logotype.site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        width: auto !important;
        max-width: min(150px, 100%) !important;
        max-height: 38px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header.site-header .header-customer-account.header-customer-account {
        grid-area: account !important;
        display: flex !important;
        justify-self: center !important;
    }

    html body header.site-header .header-favorite,
    html body header.site-header.site-header .header-favorite.header-favorite {
        grid-area: favorite !important;
        display: flex !important;
        justify-self: center !important;
    }

    html body header.site-header .site-header-cart,
    html body header.site-header.site-header .site-header-cart.site-header-cart {
        grid-area: cart !important;
        display: flex !important;
        justify-self: center !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-customer-account > a,
    html body header.site-header .header-favorite,
    html body header.site-header .header-favorite > a,
    html body header.site-header .site-header-cart,
    html body header.site-header .site-header-cart .header-cart__link {
        position: relative !important;
        inset: auto !important;
        width: 44px !important;
        max-width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        max-height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 44px !important;
        box-sizing: border-box !important;
        transform: none !important;
    }

    html body header.site-header .header-search,
    html body header.site-header .header-compare,
    html body header.site-header .top-menu {
        display: none !important;
    }
}

@media (max-width: 767px) {
    html body header.site-header .site-header-inner,
    html body header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: 46px minmax(86px, 1fr) 40px 40px 40px !important;
        grid-template-areas: "burger logo account favorite cart" !important;
        gap: 6px !important;
        min-height: 66px !important;
        padding: 8px 12px !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        width: 46px !important;
        max-width: 46px !important;
        min-width: 46px !important;
        height: 46px !important;
        max-height: 46px !important;
        min-height: 46px !important;
        flex-basis: 46px !important;
    }

    html body header.site-header .site-branding,
    html body header.site-header.site-header .site-branding.site-branding {
        max-width: 130px !important;
        padding: 4px 6px !important;
    }

    html body header.site-header .site-logotype img,
    html body header.site-header.site-header .site-logotype.site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        max-width: min(110px, 100%) !important;
        max-height: 34px !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-customer-account > a,
    html body header.site-header .header-favorite,
    html body header.site-header .header-favorite > a,
    html body header.site-header .site-header-cart,
    html body header.site-header .site-header-cart .header-cart__link {
        width: 40px !important;
        max-width: 40px !important;
        min-width: 40px !important;
        height: 40px !important;
        max-height: 40px !important;
        min-height: 40px !important;
        flex-basis: 40px !important;
    }
}

@media (max-width: 420px) {
    html body header.site-header .site-header-inner,
    html body header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: 42px minmax(72px, 1fr) 38px 38px 38px !important;
        gap: 4px !important;
        min-height: 64px !important;
        padding: 8px 8px !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        width: 42px !important;
        max-width: 42px !important;
        min-width: 42px !important;
        height: 42px !important;
        max-height: 42px !important;
        min-height: 42px !important;
        flex-basis: 42px !important;
    }

    html body header.site-header .site-branding,
    html body header.site-header.site-header .site-branding.site-branding {
        max-width: min(190px, 52vw) !important;
        padding: 0 !important;
    }

    html body header.site-header .site-logotype img,
    html body header.site-header.site-header .site-logotype.site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        max-width: min(158px, 46vw) !important;
        max-height: none !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-customer-account > a,
    html body header.site-header .header-favorite,
    html body header.site-header .header-favorite > a,
    html body header.site-header .site-header-cart,
    html body header.site-header .site-header-cart .header-cart__link {
        width: 38px !important;
        max-width: 38px !important;
        min-width: 38px !important;
        height: 38px !important;
        max-height: 38px !important;
        min-height: 38px !important;
        flex-basis: 38px !important;
    }
}

/* Hide legacy catalog dropdown in mobile menu. */
@media (max-width: 991px) {
    html body #site-navigation-mobile li.catalog-btn > .sub-menu,
    html body #site-navigation-mobile li.catalog-btn:hover > .sub-menu,
    html body #site-navigation-mobile li.mega-catalog > .sub-menu,
    html body #site-navigation-mobile li.mega-catalog:hover > .sub-menu,
    html body .js-mobile-menu-placeholder li.catalog-btn > .sub-menu,
    html body .js-mobile-menu-placeholder li.catalog-btn:hover > .sub-menu,
    html body .js-mobile-menu-placeholder li.mega-catalog > .sub-menu,
    html body .js-mobile-menu-placeholder li.mega-catalog:hover > .sub-menu,
    html body .mobile-menu-placeholder li.catalog-btn > .sub-menu,
    html body .mobile-menu-placeholder li.catalog-btn:hover > .sub-menu,
    html body .mobile-menu-placeholder li.mega-catalog > .sub-menu,
    html body .mobile-menu-placeholder li.mega-catalog:hover > .sub-menu,
    html body header.site-header .top-menu li.catalog-btn > .sub-menu,
    html body header.site-header .top-menu li.catalog-btn:hover > .sub-menu,
    html body header.site-header .top-menu li.mega-catalog > .sub-menu,
    html body header.site-header .top-menu li.mega-catalog:hover > .sub-menu {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    html body #site-navigation-mobile button[aria-expanded],
    html body #site-navigation-mobile [role="button"][aria-expanded],
    html body #site-navigation-mobile .main-navigation-inner > button,
    html body #site-navigation-mobile .main-navigation-inner > span[class*="toggle"],
    html body #site-navigation-mobile .main-navigation-inner > span[class*="arrow"],
    html body .js-mobile-menu-placeholder button[aria-expanded],
    html body .js-mobile-menu-placeholder [role="button"][aria-expanded],
    html body .js-mobile-menu-placeholder .main-navigation-inner > button,
    html body .js-mobile-menu-placeholder .main-navigation-inner > span[class*="toggle"],
    html body .js-mobile-menu-placeholder .main-navigation-inner > span[class*="arrow"],
    html body .mobile-menu-placeholder button[aria-expanded],
    html body .mobile-menu-placeholder [role="button"][aria-expanded],
    html body .mobile-menu-placeholder .main-navigation-inner > button,
    html body .mobile-menu-placeholder .main-navigation-inner > span[class*="toggle"],
    html body .mobile-menu-placeholder .main-navigation-inner > span[class*="arrow"] {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

/* Header responsive absolute EOF override 2026-05-27. */
@media (max-width: 1360px) {
    html body .super-header,
    html body .super-header.super-header--mob-show,
    html body .super-header.super-header--mob-hide,
    html body .dim-header-top {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    html body header.site-header .site-header-inner {
        width: min(100% - 28px, 1180px) !important;
        max-width: 1180px !important;
        min-width: 0 !important;
        min-height: 74px !important;
        display: grid !important;
        grid-template-columns: minmax(170px, 220px) minmax(360px, auto) minmax(250px, 1fr) 48px 48px 48px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        align-items: center !important;
        gap: 12px !important;
        margin: 0 auto !important;
        padding: 12px 18px !important;
        border: 1px solid #e5edf8 !important;
        border-top: 0 !important;
        border-radius: 0 0 18px 18px !important;
        background: #fff !important;
        box-shadow: 0 14px 30px rgba(18, 35, 68, .06) !important;
        transform: none !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        display: none !important;
    }

    html body header.site-header .site-branding { grid-area: logo !important; min-width: 0 !important; margin: 0 !important; }
    html body header.site-header .top-menu { grid-area: menu !important; display: block !important; min-width: 0 !important; margin: 0 !important; }
    html body header.site-header .header-search { grid-area: search !important; width: 100% !important; min-width: 0 !important; max-width: none !important; margin: 0 !important; }
    html body header.site-header .header-customer-account { grid-area: account !important; display: flex !important; }
    html body header.site-header .header-favorite { grid-area: favorite !important; display: flex !important; }
    html body header.site-header .site-header-cart { grid-area: cart !important; display: flex !important; }

    html body header.site-header .top-menu > ul,
    html body header.site-header .top-menu .menu {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 10px !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body header.site-header .top-menu li {
        flex: 0 0 auto !important;
    }

    html body header.site-header .top-menu a {
        white-space: nowrap !important;
    }
}

@media (max-width: 1180px) and (min-width: 992px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: minmax(170px, 220px) minmax(360px, 1fr) 48px 48px 48px !important;
        grid-template-areas:
            "logo menu account favorite cart"
            "search search search search search" !important;
    }
}

@media (max-width: 991px) {
    html body header.site-header .site-header-inner {
        width: 100% !important;
        max-width: none !important;
        grid-template-columns: 48px minmax(140px, 210px) 48px 48px 48px minmax(180px, 1fr) !important;
        grid-template-areas: "burger logo account favorite cart search" !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-radius: 0 !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        grid-area: burger !important;
        position: static !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        transform: none !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        content: none !important;
        display: none !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body header.site-header .top-menu {
        display: none !important;
    }
}

@media (max-width: 767px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        grid-template-areas: "burger logo cart" !important;
    }

    html body header.site-header .site-branding {
        justify-self: center !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-favorite,
    html body header.site-header .header-search,
    html body header.site-header .header-compare {
        display: none !important;
    }
}

/* Header responsive final override 2026-05-27. */
@media (max-width: 1360px) {
    html body .super-header,
    html body .super-header.super-header--mob-show,
    html body .super-header.super-header--mob-hide,
    html body .dim-header-top {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    html body header.site-header {
        position: relative !important;
        z-index: 50 !important;
        width: 100% !important;
        padding: 0 !important;
        background: #fff !important;
        border-bottom: 1px solid #e5edf8 !important;
        box-shadow: 0 12px 28px rgba(18, 35, 68, .06) !important;
    }

    html body header.site-header .site-header-inner {
        width: min(100% - 28px, 1180px) !important;
        max-width: 1180px !important;
        min-width: 0 !important;
        min-height: 74px !important;
        display: grid !important;
        grid-template-columns: minmax(170px, 220px) minmax(360px, auto) minmax(250px, 1fr) 48px 48px 48px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        align-items: center !important;
        gap: 12px !important;
        margin: 0 auto !important;
        padding: 12px 18px !important;
        border: 1px solid #e5edf8 !important;
        border-top: 0 !important;
        border-radius: 0 0 18px 18px !important;
        background: #fff !important;
        box-shadow: 0 14px 30px rgba(18, 35, 68, .06) !important;
        transform: none !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        display: none !important;
    }

    html body header.site-header .site-branding {
        grid-area: logo !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        justify-self: stretch !important;
    }

    html body header.site-header .site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        width: auto !important;
        max-width: min(180px, 100%) !important;
        max-height: 46px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    html body header.site-header .top-menu {
        grid-area: menu !important;
        min-width: 0 !important;
        display: block !important;
        margin: 0 !important;
    }

    html body header.site-header .top-menu > ul,
    html body header.site-header .top-menu .menu {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body header.site-header .top-menu li {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    html body header.site-header .top-menu a {
        white-space: nowrap !important;
    }

    html body header.site-header .header-search {
        grid-area: search !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }

    html body header.site-header .header-customer-account {
        grid-area: account !important;
        display: flex !important;
    }

    html body header.site-header .header-favorite {
        grid-area: favorite !important;
        display: flex !important;
    }

    html body header.site-header .site-header-cart {
        grid-area: cart !important;
        display: flex !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-favorite,
    html body header.site-header .site-header-cart {
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        justify-self: center !important;
    }
}

@media (max-width: 1180px) and (min-width: 992px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: minmax(170px, 220px) minmax(360px, 1fr) 48px 48px 48px !important;
        grid-template-areas:
            "logo menu account favorite cart"
            "search search search search search" !important;
        row-gap: 12px !important;
    }
}

@media (max-width: 991px) {
    html body header.site-header .site-header-inner {
        width: 100% !important;
        max-width: none !important;
        min-height: 72px !important;
        display: grid !important;
        grid-template-columns: 48px minmax(140px, 210px) 48px 48px 48px minmax(180px, 1fr) !important;
        grid-template-areas: "burger logo account favorite cart search" !important;
        gap: 10px !important;
        padding: 10px 18px !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-radius: 0 !important;
        box-shadow: 0 10px 24px rgba(18, 35, 68, .05) !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        grid-area: burger !important;
        position: static !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        color: #172033 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        transform: none !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        content: none !important;
        display: none !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body header.site-header .top-menu {
        display: none !important;
    }
}

@media (max-width: 767px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        grid-template-areas: "burger logo cart" !important;
        gap: 8px !important;
        padding: 8px 18px !important;
    }

    html body header.site-header .site-branding {
        justify-self: center !important;
        padding: 4px 8px !important;
    }

    html body header.site-header .site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        max-width: min(145px, 44vw) !important;
        max-height: 40px !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-favorite,
    html body header.site-header .header-search,
    html body header.site-header .header-compare {
        display: none !important;
    }
}

/* Mobile header and catalog cleanup. */
@media (max-width: 767px) {
    .super-header,
    .dim-header-top,
    .super-header.super-header--mob-show,
    .super-header.super-header--mob-hide {
        display: none !important;
    }

    .site-header {
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
        box-shadow: 0 10px 24px rgba(18, 35, 68, .04) !important;
    }

    .site-header-inner {
        display: grid !important;
        grid-template-columns: 54px minmax(0, 1fr) 54px;
        align-items: center;
        min-height: 76px;
        padding: 8px 18px !important;
    }

    .humburger {
        position: static !important;
        display: inline-flex !important;
        grid-column: 1;
        align-items: center;
        justify-content: center;
        width: 52px !important;
        height: 52px !important;
        border: 1px solid #e5edf8;
        border-radius: 14px;
        background: #fff;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06);
        transform: none !important;
    }

    .site-branding {
        grid-column: 2;
        justify-self: center;
        min-width: 0;
        margin: 0 !important;
        flex-grow: 0 !important;
    }

    .site-logotype {
        display: flex;
        justify-content: center;
        max-width: 100%;
    }

    .site-logotype img {
        width: auto !important;
        max-width: min(190px, 52vw) !important;
        max-height: 46px !important;
        padding: 0 !important;
        object-fit: contain !important;
    }

    .site-header-cart {
        grid-column: 3;
        justify-self: end;
    }

    .header-cart__link {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        padding: 0 !important;
    }

    .top-menu li.catalog-btn > .sub-menu,
    .top-menu li.mega-catalog > .sub-menu,
    .top-menu li.catalog-btn > :not(a):not(.sub-menu),
    .top-menu li.mega-catalog > :not(a):not(.sub-menu),
    .top-menu li.catalog-btn .sub-menu-toggle,
    .top-menu li.mega-catalog .sub-menu-toggle {
        display: none !important;
    }

    .top-menu li.catalog-btn > a,
    .top-menu li.mega-catalog > a {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: fit-content;
        min-height: 48px;
        padding: 0 18px !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 15px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06);
        color: #172033 !important;
        font-weight: 900 !important;
    }
}

.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:focus,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:focus,
.kh-sidebar-product:hover .kh-sidebar-product__action,
.kh-sidebar-product:focus .kh-sidebar-product__action {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    background-color: #22b7f3 !important;
    background-image: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-text-fill-color: #fff !important;
}

/* Mobile menu absolute final repair. */
@media (max-width: 767px) {
    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        flex-direction: column !important;
        font-size: 0 !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        display: none !important;
        content: none !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile,
    html body .mobile-menu-placeholder.open #site-navigation-mobile,
    html body .js-mobile-menu-placeholder.open .main-navigation,
    html body .mobile-menu-placeholder.open .main-navigation {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        opacity: 1 !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner,
    html body .mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        padding: 16px 18px 20px !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
    }
}

/* Mobile menu absolute final repair. */
@media (max-width: 767px) {
    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        flex-direction: column !important;
        font-size: 0 !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        display: none !important;
        content: none !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile,
    html body .mobile-menu-placeholder.open #site-navigation-mobile,
    html body .js-mobile-menu-placeholder.open .main-navigation,
    html body .mobile-menu-placeholder.open .main-navigation {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        opacity: 1 !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner,
    html body .mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        padding: 16px 18px 20px !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
    }
}

/* Mobile menu final repair. */
@media (max-width: 767px) {
    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        flex-direction: column !important;
        font-size: 0 !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        display: none !important;
        content: none !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile,
    html body .mobile-menu-placeholder.open #site-navigation-mobile,
    html body .js-mobile-menu-placeholder.open .main-navigation,
    html body .mobile-menu-placeholder.open .main-navigation {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        opacity: 1 !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner,
    html body .mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        padding: 16px 18px 20px !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
    }
}

/* Keep the mobile catalog trigger clickable even when submenu toggles are hidden. */
@media (max-width: 767px) {
    html body header.site-header .top-menu li.catalog-btn > a,
    html body header.site-header .top-menu li.mega-catalog > a,
    html body header.site-header .top-menu li.catalog-btn > span:not([class*="toggle"]):not([class*="arrow"]),
    html body header.site-header .top-menu li.mega-catalog > span:not([class*="toggle"]):not([class*="arrow"]),
    html body header.site-header .top-menu li.catalog-btn > button:not([class*="toggle"]):not([class*="arrow"]),
    html body header.site-header .top-menu li.mega-catalog > button:not([class*="toggle"]):not([class*="arrow"]) {
        display: inline-flex !important;
        visibility: visible !important;
        width: fit-content !important;
        min-width: 0 !important;
        height: auto !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 18px !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }
}

/* Mobile header true final override. */
@media (max-width: 767px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        gap: 8px !important;
        min-height: 72px !important;
        padding: 8px 18px !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        position: static !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        color: #172033 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        transform: none !important;
    }

    html body header.site-header .humburger > :not(span),
    html body header.site-header .hamburger > :not(span),
    html body header.site-header .menu-toggle > :not(span),
    html body header.site-header .mobile-menu-toggle > :not(span) {
        display: none !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        content: none !important;
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        background: transparent !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body header.site-header .site-logotype img {
        max-width: min(170px, 48vw) !important;
        max-height: 42px !important;
    }

    html body:not(.kh-header-mobile-off) header.site-header .site-header-inner .site-branding .site-logotype img,
    html body:not(.kh-header-mobile-off):not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        width: auto !important;
        max-width: min(170px, 48vw) !important;
        max-height: 42px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    html body header.site-header .site-header-inner > .site-header-cart,
    html body header.site-header .site-header-cart .header-cart__link {
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
    }

    html body header.site-header .top-menu li.catalog-btn > :not(a),
    html body header.site-header .top-menu li.mega-catalog > :not(a),
    html body header.site-header .top-menu li.menu-item-has-children > button,
    html body header.site-header .top-menu li.menu-item-has-children > .sub-menu-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .dropdown-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .menu-item-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .menu-item__arrow,
    html body header.site-header .top-menu li.menu-item-has-children > .submenu-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > [class*="toggle"],
    html body header.site-header .top-menu li.menu-item-has-children > [class*="arrow"],
    html body header.site-header .top-menu .sub-menu-toggle,
    html body header.site-header .top-menu .dropdown-toggle,
    html body header.site-header .top-menu .menu-item-toggle,
    html body header.site-header .top-menu .menu-item__arrow,
    html body header.site-header .top-menu .submenu-toggle,
    html body header.site-header .mobile-menu-close,
    html body header.site-header .menu-close,
    html body header.site-header .drawer-close,
    html body header.site-header .offcanvas-close,
    html body header.site-header [class*="mobile-menu"][class*="close"] {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

/* Mobile header true final override. */
@media (max-width: 767px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        gap: 8px !important;
        min-height: 72px !important;
        padding: 8px 18px !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        position: static !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        color: #172033 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        transform: none !important;
    }

    html body header.site-header .humburger > *,
    html body header.site-header .hamburger > *,
    html body header.site-header .menu-toggle > *,
    html body header.site-header .mobile-menu-toggle > * {
        display: none !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        content: "" !important;
        width: 20px !important;
        height: 20px !important;
        display: block !important;
        background: currentColor !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
    }

    html body header.site-header .humburger.active::before,
    html body header.site-header .hamburger.active::before,
    html body header.site-header .menu-toggle.active::before,
    html body header.site-header .mobile-menu-toggle.active::before,
    html body.mobile-menu-open header.site-header .humburger::before,
    html body.menu-open header.site-header .humburger::before {
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
    }

    html body header.site-header .site-logotype img {
        max-width: min(170px, 48vw) !important;
        max-height: 42px !important;
    }

    html body header.site-header .site-header-inner > .site-header-cart,
    html body header.site-header .site-header-cart .header-cart__link {
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
    }

    html body header.site-header .top-menu li.catalog-btn > :not(a),
    html body header.site-header .top-menu li.mega-catalog > :not(a),
    html body header.site-header .top-menu li.menu-item-has-children > button,
    html body header.site-header .top-menu li.menu-item-has-children > .sub-menu-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .dropdown-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .menu-item-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .menu-item__arrow,
    html body header.site-header .top-menu li.menu-item-has-children > .submenu-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > [class*="toggle"],
    html body header.site-header .top-menu li.menu-item-has-children > [class*="arrow"],
    html body header.site-header .top-menu .sub-menu-toggle,
    html body header.site-header .top-menu .dropdown-toggle,
    html body header.site-header .top-menu .menu-item-toggle,
    html body header.site-header .top-menu .menu-item__arrow,
    html body header.site-header .top-menu .submenu-toggle,
    html body header.site-header .mobile-menu-close,
    html body header.site-header .menu-close,
    html body header.site-header .drawer-close,
    html body header.site-header .offcanvas-close,
    html body header.site-header [class*="mobile-menu"][class*="close"] {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

/* Mobile header cleanup: visible menu icon and no extra submenu buttons. */
@media (max-width: 767px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        gap: 8px !important;
        min-height: 72px !important;
        padding: 8px 18px !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        position: static !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        color: #172033 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        transform: none !important;
    }

    html body header.site-header .humburger > *,
    html body header.site-header .hamburger > *,
    html body header.site-header .menu-toggle > *,
    html body header.site-header .mobile-menu-toggle > * {
        display: none !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        content: "" !important;
        width: 20px !important;
        height: 20px !important;
        display: block !important;
        background: currentColor !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
    }

    html body header.site-header .humburger.active::before,
    html body header.site-header .hamburger.active::before,
    html body header.site-header .menu-toggle.active::before,
    html body header.site-header .mobile-menu-toggle.active::before,
    html body.mobile-menu-open header.site-header .humburger::before,
    html body.menu-open header.site-header .humburger::before {
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") !important;
    }

    html body header.site-header .site-logotype img {
        max-width: min(170px, 48vw) !important;
        max-height: 42px !important;
    }

    html body header.site-header .site-header-inner > .site-header-cart,
    html body header.site-header .site-header-cart .header-cart__link {
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
    }

    html body header.site-header .top-menu li.catalog-btn > :not(a),
    html body header.site-header .top-menu li.mega-catalog > :not(a),
    html body header.site-header .top-menu li.menu-item-has-children > button,
    html body header.site-header .top-menu li.menu-item-has-children > .sub-menu-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .dropdown-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .menu-item-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .menu-item__arrow,
    html body header.site-header .top-menu li.menu-item-has-children > .submenu-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > [class*="toggle"],
    html body header.site-header .top-menu li.menu-item-has-children > [class*="arrow"],
    html body header.site-header .top-menu .sub-menu-toggle,
    html body header.site-header .top-menu .dropdown-toggle,
    html body header.site-header .top-menu .menu-item-toggle,
    html body header.site-header .top-menu .menu-item__arrow,
    html body header.site-header .top-menu .submenu-toggle {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

/* Desktop top menu final hover style. */
body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn) > a,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn) > a {
    min-height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 13px !important;
    border: 1px solid transparent !important;
    border-radius: 14px !important;
    background: transparent !important;
    color: #172033 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}

body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn) > a::after,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn) > a::after {
    content: none !important;
    display: none !important;
}

body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn) > a:hover,
body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn) > a:focus,
body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn).current-menu-item > a,
body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn).current_page_item > a,
body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn).current-menu-ancestor > a,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn) > a:hover,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn) > a:focus,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn).current-menu-item > a,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn).current_page_item > a,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn).current-menu-ancestor > a {
    border-color: #dce8fb !important;
    background: #eef3ff !important;
    color: #5b63ff !important;
    box-shadow: 0 10px 22px rgba(50, 105, 205, .08) !important;
    text-decoration: none !important;
}

/* Articles archive redesign. */
body.kh-articles-page .site-content.fixed {
    max-width: 1460px !important;
    width: min(1460px, calc(100vw - 48px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.kh-articles-page .site-content-inner,
body.kh-articles-page .content-area,
body.kh-articles-page .site-main {
    width: 100% !important;
    max-width: none !important;
}

.kh-articles-main {
    padding: 18px 0 56px !important;
}

.kh-articles-search-panel {
    position: relative;
    margin: 0 0 22px;
    padding: 20px;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: linear-gradient(180deg, #f8fbff 0%, #eef7ff 100%);
    box-shadow: 0 16px 40px rgba(70, 118, 255, .08);
}

.kh-articles-search-panel label {
    display: block;
    margin: 0 0 9px;
    color: #40516d;
    font-size: 13px;
    font-weight: 800;
}

.kh-articles-search-row {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 112px;
    align-items: center;
    gap: 10px;
}

.kh-articles-search-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    z-index: 2;
    width: 18px;
    height: 18px;
    transform: translateY(-50%);
    background: #7d8da8;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center / contain no-repeat;
    pointer-events: none;
}

.kh-articles-search-row input {
    width: 100%;
    height: 46px;
    padding: 0 16px 0 44px;
    border: 1px solid #cfe0fb;
    border-radius: 12px;
    background: #fff;
    color: #162033;
    font-size: 15px;
    outline: none;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .5);
}

body.kh-articles-page .kh-articles-search-row input#khArticlesSearch {
    padding-left: 46px !important;
}

.kh-articles-search-row input:focus {
    border-color: #7567ff;
    box-shadow: 0 0 0 4px rgba(117, 103, 255, .12);
}

.kh-articles-search-row button,
.kh-articles-gradient-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 18px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff !important;
    font-size: 14px;
    font-weight: 850;
    text-decoration: none !important;
    box-shadow: 0 12px 24px rgba(70, 118, 255, .24);
    cursor: pointer;
}

.kh-articles-suggestions {
    position: absolute;
    left: 20px;
    right: 132px;
    top: 92px;
    z-index: 50;
    overflow: hidden;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 20px 50px rgba(18, 35, 68, .16);
}

.kh-articles-suggestion {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    gap: 10px 14px;
    align-items: center;
    padding: 12px 14px;
    border-bottom: 1px solid #edf3fb;
    color: #172033;
    text-decoration: none !important;
}

.kh-articles-suggestion:hover {
    background: #f8fbff;
}

.kh-articles-suggestion__icon {
    grid-row: span 2;
    width: 28px;
    height: 28px;
    border-radius: 9px;
    background: linear-gradient(135deg, #e8e9ff, #dff8ff);
}

.kh-articles-suggestion strong {
    min-width: 0;
    overflow: hidden;
    color: #172033;
    font-size: 13px;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.kh-articles-suggestion em {
    padding: 5px 10px;
    border-radius: 999px;
    background: #f1f6ff;
    color: #58708e;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}

.kh-articles-suggestion small {
    grid-column: 2 / 4;
    min-width: 0;
    overflow: hidden;
    color: #60708a;
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.kh-articles-suggestion-all,
.kh-articles-suggestion-empty {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    color: #526173;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none !important;
}

.kh-articles-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 28px;
    align-items: start;
}

.kh-articles-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 18px;
}

.kh-articles-tag {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 13px;
    border: 1px solid #dfe9f7;
    border-radius: 10px;
    background: #fff;
    color: #6a7890 !important;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none !important;
}

.kh-articles-tag.is-active,
.kh-articles-tag:hover {
    border-color: transparent;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .22);
}

.kh-articles-header h1 {
    margin: 0 0 16px;
    color: #111827;
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.1;
}

.kh-articles-description {
    max-width: 850px;
    margin-bottom: 22px;
    color: #4d5b73;
    font-size: 15px;
    line-height: 1.65;
}

.kh-articles-page .archive-posts-grid.post-cards.kh-articles-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
}

.kh-articles-page .kh-article-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    margin: 0 !important;
    overflow: hidden;
    border: 1px solid #e5edf8 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(18, 35, 68, .07) !important;
}

.kh-articles-page .kh-article-card:hover {
    transform: translateY(-2px);
    border-color: #dde4ec !important;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .07) !important;
}

.kh-articles-page .kh-article-card .post-card__thumbnail {
    position: relative;
    display: block;
    height: auto !important;
    aspect-ratio: auto;
    overflow: hidden;
    background: linear-gradient(135deg, #f7fbff 0%, #eef4fb 100%);
}

.kh-articles-page .kh-article-card .post-card__thumbnail-image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    transition: filter .38s ease;
}

.kh-articles-page .kh-article-card:hover .post-card__thumbnail-image {
    transform: none;
    filter: saturate(1.04);
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(300px, .88fr) minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
    height: 330px;
    min-height: 0;
    border-radius: 20px !important;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail {
    grid-column: 2;
    grid-row: 1;
    min-height: 0;
    height: 100% !important;
    aspect-ratio: auto;
    border-left: 0;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail-image,
body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail::before,
body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail::before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: -1px;
    width: clamp(112px, 10vw, 154px);
    pointer-events: none;
    background: linear-gradient(
        90deg,
        #fff 0%,
        rgba(255, 255, 255, .96) 16%,
        rgba(255, 255, 255, .72) 46%,
        rgba(255, 255, 255, .22) 78%,
        rgba(255, 255, 255, 0) 100%
    );
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    -webkit-mask-image: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, .92) 58%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, .92) 58%, transparent 100%);
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__body {
    grid-column: 1;
    grid-row: 1;
    min-height: 0;
    overflow: hidden;
    justify-content: center;
    padding: 22px 26px !important;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__title {
    min-height: 0;
    margin-bottom: 12px !important;
    font-size: clamp(22px, 1.7vw, 28px) !important;
    line-height: 1.16 !important;
    -webkit-line-clamp: 3;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__description {
    max-width: 520px;
    margin-bottom: 14px !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    -webkit-line-clamp: 2;
}

.kh-articles-page .kh-article-card .post-card__body {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 15px 15px 14px !important;
}

.kh-articles-page .kh-article-card__tag {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    margin-bottom: 11px;
    padding: 6px 9px;
    border-radius: 999px;
    background: #f1f4ff;
    color: #6259f5;
    font-size: 11px;
    font-weight: 850;
    line-height: 1;
}

.kh-articles-page .kh-article-card .post-card__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    min-height: 40px;
    margin: 0 0 9px !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    line-height: 1.28 !important;
    letter-spacing: 0;
}

.kh-articles-page .kh-article-card .post-card__title a {
    color: #172033 !important;
    text-decoration: none !important;
}

.kh-articles-page .kh-article-card .post-card__title a:hover {
    color: #0f172a !important;
}

.kh-articles-page .kh-article-card .post-card__description {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    margin: 0 0 16px !important;
    color: #65758c !important;
    font-size: 12.5px !important;
    font-weight: 500;
    line-height: 1.48 !important;
}

.kh-articles-page .kh-article-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    color: #6d7d94;
    font-size: 12px;
    font-weight: 750;
}

.kh-articles-page .kh-articles-grid > .kh-article-card .kh-article-card__footer {
    justify-content: flex-end;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .kh-article-card__footer {
    justify-content: flex-start;
}

.kh-articles-page .kh-articles-grid > .kh-article-card .kh-article-card__footer > span {
    display: none;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:not(:first-child) .post-card__description {
    display: none;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:not(:first-child) .post-card__body {
    position: relative;
    min-height: 92px;
    padding: 12px 13px 11px !important;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:not(:first-child) .kh-article-card__tag,
body.category .kh-articles-grid > .kh-article-card:not(:first-child) .kh-article-card__tag {
    position: absolute;
    left: 13px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 0;
    max-width: calc(100% - 58px);
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #7a879b;
    font-size: 10.5px;
    font-weight: 850;
    line-height: 1.2;
    letter-spacing: .055em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:not(:first-child) .kh-article-card__tag::before,
body.category .kh-articles-grid > .kh-article-card:not(:first-child) .kh-article-card__tag::before {
    display: none;
    content: none;
}

.kh-articles-grid > .kh-article-card:not(:first-child) .kh-article-card__tag[data-category*="autodesk"],
.kh-articles-grid > .kh-article-card:not(:first-child) .kh-article-card__tag[data-category*="autocad"],
.kh-articles-grid > .kh-article-card:not(:first-child) .kh-article-card__tag[data-category*="office"],
.kh-articles-grid > .kh-article-card:not(:first-child) .kh-article-card__tag[data-category*="windows"],
.kh-articles-grid > .kh-article-card:not(:first-child) .kh-article-card__tag[data-category*="adobe"] {
    border: 0;
    background: transparent;
    color: #7a879b;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:not(:first-child) .post-card__title {
    margin-bottom: 8px !important;
}

.kh-article-card__more {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    background: transparent;
    color: #8c98a9 !important;
    text-decoration: none !important;
    transition: transform .22s ease, background .22s ease, color .22s ease;
}

.kh-article-card__more::before {
    content: "→";
    font-size: 15px;
    font-weight: 750;
    line-height: 1;
}

.kh-articles-page .kh-article-card:hover .kh-article-card__more {
    transform: translateX(3px);
    background: transparent;
    color: #5f6b7a !important;
}

body.category .archive-posts-grid.post-cards {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
}

body.category .kh-article-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    margin: 0 !important;
    overflow: hidden;
    border: 1px solid #e5edf8 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(18, 35, 68, .07) !important;
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

body.category .kh-article-card:hover {
    transform: translateY(-2px);
    border-color: #dde4ec !important;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .07) !important;
}

body.category .kh-article-card .post-card__thumbnail {
    position: relative;
    display: block;
    height: auto !important;
    aspect-ratio: auto;
    overflow: hidden;
    background: linear-gradient(135deg, #f7fbff 0%, #eef4fb 100%);
}

body.category .kh-article-card .post-card__thumbnail-image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    transition: filter .38s ease;
}

body.category .kh-article-card:hover .post-card__thumbnail-image {
    transform: none;
    filter: saturate(1.04);
}

body.category .kh-articles-grid > .kh-article-card:first-child {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(300px, .88fr) minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
    height: 330px;
    min-height: 0;
    border-radius: 20px !important;
}

body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail {
    grid-column: 2;
    grid-row: 1;
    min-height: 0;
    height: 100% !important;
    aspect-ratio: auto;
    border-left: 0;
}

body.category .kh-articles-grid > .kh-article-card:first-child .post-card__body {
    grid-column: 1;
    grid-row: 1;
    min-height: 0;
    overflow: hidden;
    justify-content: center;
    padding: 22px 26px !important;
}

body.category .kh-articles-grid > .kh-article-card:first-child .post-card__title {
    min-height: 0;
    margin-bottom: 12px !important;
    font-size: clamp(22px, 1.7vw, 28px) !important;
    line-height: 1.16 !important;
    -webkit-line-clamp: 3;
}

body.category .kh-articles-grid > .kh-article-card:first-child .post-card__description {
    max-width: 520px;
    margin-bottom: 14px !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    -webkit-line-clamp: 2;
}

body.category .kh-article-card .post-card__body {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 15px 15px 14px !important;
}

body.category .kh-article-card .post-card__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    min-height: 40px;
    margin: 0 0 9px !important;
    color: #0f172a;
    font-size: 15px !important;
    font-weight: 850 !important;
    line-height: 1.28 !important;
    letter-spacing: 0;
}

body.category .kh-article-card .post-card__title a {
    color: inherit !important;
    text-decoration: none !important;
}

body.category .kh-article-card .post-card__title a:hover {
    color: #0f172a !important;
}

body.category .kh-article-card:hover .kh-article-card__more {
    transform: translateX(3px);
    background: transparent;
    color: #5f6b7a !important;
}

body.category .kh-article-card .post-card__description {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    margin: 0 0 16px !important;
    color: #65758c !important;
    font-size: 12.5px !important;
    font-weight: 500;
    line-height: 1.48 !important;
}

body.category .kh-articles-grid > .kh-article-card .kh-article-card__footer {
    justify-content: flex-end;
}

body.category .kh-articles-grid > .kh-article-card:first-child .kh-article-card__footer {
    justify-content: flex-start;
}

body.category .kh-articles-grid > .kh-article-card .kh-article-card__footer > span {
    display: none;
}

body.category .kh-articles-grid > .kh-article-card:not(:first-child) .post-card__description {
    display: none;
}

body.category .kh-articles-grid > .kh-article-card:not(:first-child) .post-card__body {
    position: relative;
    min-height: 92px;
    padding: 12px 13px 11px !important;
}

body.category .kh-articles-grid > .kh-article-card:not(:first-child) .post-card__title {
    margin-bottom: 8px !important;
}

@media (max-width: 1100px) {
    body.category .archive-posts-grid.post-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    body.category .archive-posts-grid.post-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 520px) {
    body.category .archive-posts-grid.post-cards {
        grid-template-columns: 1fr !important;
    }
}

.kh-articles-sidebar {
    display: grid;
    gap: 18px;
    position: sticky;
    top: 18px;
}

.kh-articles-side-card,
.kh-articles-support-card {
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(18, 35, 68, .07);
}

.kh-articles-side-card {
    padding: 16px;
}

.kh-articles-side-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.kh-articles-side-head h2,
.kh-articles-support-card h2 {
    margin: 0;
    color: #172033;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.25;
}

.kh-articles-side-head a {
    color: #3178ff !important;
    font-size: 12px;
    font-weight: 850;
    text-decoration: none !important;
}

.kh-articles-product-chips {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.kh-articles-product-chips a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 8px;
    border: 1px solid #e5edf8;
    border-radius: 10px;
    background: #f8fbff;
    color: #40516d !important;
    font-size: 12px;
    font-weight: 850;
    text-decoration: none !important;
}

.kh-articles-support-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 96px;
    gap: 10px;
    padding: 18px;
    background: linear-gradient(180deg, #f8fbff 0%, #eef7ff 100%);
}

.kh-articles-support-card p {
    margin: 10px 0 14px;
    color: #526173;
    font-size: 13px;
    line-height: 1.55;
}

.kh-articles-support-card img {
    align-self: center;
    width: 96px;
    height: auto;
    object-fit: contain;
}

.kh-articles-support-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.kh-articles-ghost-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid #cfe0fb;
    border-radius: 12px;
    background: #fff;
    color: #3178ff !important;
    font-size: 14px;
    font-weight: 850;
    text-decoration: none !important;
}

.kh-articles-products-list {
    display: grid;
    gap: 10px;
}

.kh-articles-product-row {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 10px;
    border: 1px solid #edf3fb;
    border-radius: 14px;
    background: #f8fbff;
    text-decoration: none !important;
}

.kh-articles-product-row img {
    width: 50px !important;
    height: 50px !important;
    object-fit: contain;
}

.kh-articles-product-row strong {
    display: block;
    color: #172033;
    font-size: 12px;
    line-height: 1.25;
}

.kh-articles-product-row em {
    display: block;
    margin-top: 4px;
    color: #3178ff;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}

.kh-articles-side-more {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    margin-top: 12px;
    border: 1px solid #cfe0fb;
    border-radius: 12px;
    color: #3178ff !important;
    font-size: 13px;
    font-weight: 850;
    text-decoration: none !important;
}

.kh-pagination,
.navigation.pagination .nav-links,
.woocommerce-pagination,
.woocommerce nav.woocommerce-pagination ul {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 30px 0 0;
    border: 0 !important;
}

.kh-pagination .page-numbers,
.navigation.pagination .page-numbers,
.woocommerce-pagination .page-numbers {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border: 1px solid #dfe9f7 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #526173 !important;
    font-size: 14px;
    font-weight: 850;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(18, 35, 68, .04);
}

.kh-pagination .page-numbers.current,
.navigation.pagination .page-numbers.current,
.woocommerce-pagination .page-numbers.current,
.kh-pagination .page-numbers:hover,
.navigation.pagination .page-numbers:hover,
.woocommerce-pagination .page-numbers:hover {
    border-color: transparent !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    color: #fff !important;
    box-shadow: 0 12px 24px rgba(70, 118, 255, .24);
}

.woocommerce nav.woocommerce-pagination ul.page-numbers,
.woocommerce-pagination ul.page-numbers {
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    width: auto;
    height: auto;
    min-width: 0;
    margin: 30px auto 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.woocommerce nav.woocommerce-pagination ul.page-numbers li,
.woocommerce-pagination ul.page-numbers li {
    position: static !important;
    float: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.woocommerce nav.woocommerce-pagination ul.page-numbers li::before,
.woocommerce nav.woocommerce-pagination ul.page-numbers li::after,
.woocommerce-pagination ul.page-numbers li::before,
.woocommerce-pagination ul.page-numbers li::after,
.woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers::before,
.woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers::after,
.woocommerce-pagination ul.page-numbers li .page-numbers::before,
.woocommerce-pagination ul.page-numbers li .page-numbers::after {
    display: none !important;
    content: none !important;
}

.woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers,
.woocommerce-pagination ul.page-numbers li .page-numbers {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 42px;
    padding: 0 14px;
    border: 1px solid #dfe9f7 !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #526173 !important;
    font-size: 15px;
    font-weight: 850;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(18, 35, 68, .05);
    overflow: hidden !important;
}

.woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers.current,
.woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:hover,
.woocommerce-pagination ul.page-numbers li .page-numbers.current,
.woocommerce-pagination ul.page-numbers li .page-numbers:hover {
    border-color: transparent !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    color: #fff !important;
    box-shadow: 0 12px 24px rgba(70, 118, 255, .24);
}

@media (max-width: 1120px) {
    .kh-articles-layout {
        grid-template-columns: 1fr;
    }

    .kh-articles-sidebar {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .kh-articles-page .archive-posts-grid.post-cards.kh-articles-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child,
    body.category .kh-articles-grid > .kh-article-card:first-child {
        grid-template-columns: minmax(260px, .95fr) minmax(0, 1fr);
    }

    .kh-articles-search-row {
        grid-template-columns: 28px minmax(0, 1fr);
    }

    .kh-articles-search-row button {
        grid-column: 1 / -1;
    }

    .kh-articles-suggestions {
        right: 20px;
        top: 142px;
    }
}

@media (max-width: 720px) {
    body.kh-articles-page .site-content.fixed {
        width: calc(100% - 24px) !important;
    }

    .kh-articles-page .archive-posts-grid.post-cards.kh-articles-grid,
    .kh-articles-sidebar {
        grid-template-columns: 1fr !important;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child,
    body.category .kh-articles-grid > .kh-article-card:first-child {
        display: flex;
        height: auto;
        min-height: 0;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail,
    body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail {
        order: 0;
        min-height: 0;
        height: auto !important;
        aspect-ratio: auto;
        border-left: 0;
        border-bottom: 1px solid #edf3fb;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail-image,
    body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail-image {
        height: auto;
        object-fit: contain;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail::before,
    body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail::before {
        display: none;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__body,
    body.category .kh-articles-grid > .kh-article-card:first-child .post-card__body {
        order: 1;
        padding: 20px !important;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__title,
    body.category .kh-articles-grid > .kh-article-card:first-child .post-card__title {
        font-size: clamp(21px, 7vw, 28px) !important;
    }
}

@media (min-width: 721px) {
    body.kh-articles-page .site-content.fixed,
    body.category .site-content.fixed {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
}

/* Header logo compact crop. */
body:not(.is-mobile) .site-branding {
    min-width: 0 !important;
    min-height: 56px !important;
    margin-right: 10px !important;
    padding: 3px 4px 3px 9px !important;
}

body:not(.is-mobile) .site-branding .site-logotype {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 0 !important;
}

body:not(.is-mobile) .site-branding .site-logotype img {
    width: 188px !important;
    max-width: 188px !important;
    max-height: 52px !important;
    height: auto !important;
    object-fit: contain !important;
}

html body:not(.is-mobile) header.site-header .site-header-inner .site-branding {
    min-width: 0 !important;
    min-height: 56px !important;
    margin-right: 10px !important;
    padding: 3px 4px 3px 9px !important;
}

html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
    width: 188px !important;
    max-width: 188px !important;
    max-height: 52px !important;
    height: auto !important;
    object-fit: contain !important;
}

html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype {
    margin-right: 0 !important;
}

/* Hide the old hover dropdown for the catalog button; the new catalog opens by click. */
body:not(.is-mobile) .top-menu ul li.mega-catalog > .sub-menu,
body:not(.is-mobile) .top-menu ul li.mega-catalog:hover > .sub-menu,
body:not(.is-mobile) .top-menu ul li.catalog-btn > .sub-menu,
body:not(.is-mobile) .top-menu ul li.catalog-btn:hover > .sub-menu {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Single product lower content sections. */
.single-product .related-products {
    display: none !important;
}

.single-product .kh-single-lower-section {
    position: relative;
    left: 72px;
    width: min(100%, 980px);
    max-width: 980px;
    margin: 34px auto 0;
    padding: 0;
    clear: both;
}

.single-product .kh-single-lower-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.single-product .kh-single-lower-head h2 {
    margin: 0;
    color: #111827;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.2;
}

.single-product .kh-single-lower-head > a {
    color: #2563eb;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.single-product .kh-single-lower-head--center {
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 7px;
    text-align: center;
}

.single-product .kh-single-lower-head--center span {
    color: #7a8aa2;
    font-size: 13px;
    font-weight: 700;
}

.single-product .kh-single-products-section .products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    margin: 0 !important;
}

.single-product .kh-single-products-section .shop-item {
    width: auto !important;
    min-width: 0;
}

.single-product .kh-single-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.single-product .kh-single-product-card {
    position: relative;
    min-width: 0;
    display: grid;
    grid-template-rows: 150px auto auto auto auto;
    gap: 9px;
    padding: 12px;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(18, 35, 68, .06);
}

.single-product .kh-single-product-card__badge {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    min-width: 34px;
    min-height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 7px;
    border-radius: 99px;
    background: linear-gradient(135deg, #ff5f6f 0%, #ff3b3b 100%);
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    box-shadow: 0 8px 16px rgba(255, 59, 59, .2);
}

.single-product .kh-single-product-card__image {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    padding: 4px;
}

.single-product .kh-single-product-card__image img {
    width: 100%;
    max-width: 132px;
    height: 140px;
    object-fit: contain;
}

.single-product .kh-single-product-card__title {
    min-height: 42px;
    color: #111827;
    font-size: 13px;
    font-weight: 900;
    line-height: 1.28;
    text-decoration: none;
}

.single-product .kh-single-product-card__price,
.single-product .kh-single-product-card__price .price {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 7px;
    color: #2563eb;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.2;
}

.single-product .kh-single-product-card__price ins,
.single-product .kh-single-product-card__price ins .amount {
    color: #2563eb;
    text-decoration: none;
}

.single-product .kh-single-product-card__price del,
.single-product .kh-single-product-card__price del .amount {
    color: #c0c7d2;
    font-size: 13px;
    font-weight: 700;
    text-decoration: line-through;
    opacity: 1;
}

.single-product .kh-single-product-card__cart,
.single-product .kh-single-product-card__more {
    min-height: 34px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    border-radius: 9px !important;
    font-size: 12px;
    font-weight: 900;
    text-align: center;
    text-decoration: none;
}

.single-product .kh-single-product-card__cart {
    border: 0 !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    color: #fff !important;
    box-shadow: 0 10px 20px rgba(70, 118, 255, .24);
}

.single-product .kh-single-product-card__cart:hover,
.single-product .kh-single-product-card__cart:focus {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    color: #fff !important;
}

.single-product .kh-single-product-card__more {
    border: 1px solid #dbe7f5;
    background: #fff;
    color: #111827;
}

.single-product .kh-single-reviews-section {
    padding: 18px;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: linear-gradient(135deg, #fbfdff 0%, #f3f8ff 100%);
    box-shadow: 0 18px 44px rgba(18, 35, 68, .08);
}

.single-product .kh-single-reviews-layout {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 18px;
    align-items: stretch;
}

.single-product .kh-single-reviews-summary {
    padding: 18px;
    border: 1px solid #dce8f7;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .05);
}

.single-product .kh-single-reviews-score {
    color: #111827;
    font-size: 44px;
    font-weight: 950;
    line-height: 1;
}

.single-product .kh-single-reviews-stars {
    margin-top: 7px;
    color: #ffb020;
    font-size: 15px;
    letter-spacing: 1px;
}

.single-product .kh-single-reviews-count {
    margin-top: 8px;
    color: #64748b;
    font-size: 13px;
    font-weight: 750;
}

.single-product .kh-single-reviews-bars {
    display: grid;
    gap: 8px;
    margin-top: 18px;
}

.single-product .kh-single-reviews-bar {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) 34px;
    align-items: center;
    gap: 8px;
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
}

.single-product .kh-single-reviews-bar b {
    height: 6px;
    overflow: hidden;
    border-radius: 99px;
    background: #edf4fc;
}

.single-product .kh-single-reviews-bar i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(135deg, #7567ff, #35c7ff);
}

.single-product .kh-single-reviews-bar em {
    color: #111827;
    font-style: normal;
    text-align: right;
}

.single-product .kh-single-reviews-button,
.single-product .kh-single-lower-more {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 18px;
    padding: 0 16px;
    border: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff !important;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .24);
}

.single-product .kh-single-reviews-list .admin-product-reviews {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px !important;
    margin: 0 !important;
}

.single-product .kh-single-reviews-list .apr-review {
    display: grid !important;
    grid-template-columns: 110px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 0 12px !important;
    margin: 0 !important;
    padding: 14px !important;
    border: 1px solid #dce8f7 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .05) !important;
}

/* Product reviews: the Key-Hub reply is a full-width second row, not a third column. */
.single-product .kh-single-reviews-list .apr-review > .apr-product {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
}

.single-product .kh-single-reviews-list .apr-review > .apr-review-body {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
}

.single-product .kh-single-reviews-list .apr-review > .kh-review-reply {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 12px 0 0 !important;
    box-sizing: border-box !important;
}

.single-product .kh-single-reviews-list .apr-review-body h4 {
    color: #111827 !important;
    font-size: 14px !important;
    font-weight: 900 !important;
}

.single-product .kh-single-reviews-list .apr-review-body p {
    color: #526176;
    font-size: 12px;
    line-height: 1.45;
}

.single-product .kh-single-reviews-list .apr-product img {
    width: 38px !important;
    height: 38px !important;
    object-fit: contain !important;
}

.single-product .kh-single-articles-section {
    text-align: center;
}

.single-product .kh-single-articles-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    text-align: left;
}

.single-product .kh-single-article-card {
    display: block;
    overflow: hidden;
    border: 1px solid #e5edf8;
    border-radius: 14px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(18, 35, 68, .07);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.single-product .kh-single-article-card:hover {
    border-color: #bccaff;
    box-shadow: 0 16px 34px rgba(18, 35, 68, .11);
    transform: translateY(-2px);
}

.single-product .kh-single-article-card__thumb {
    aspect-ratio: 16 / 9;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f3f8ff;
}

.single-product .kh-single-article-card__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.single-product .kh-single-article-card__placeholder {
    color: #2563eb;
    font-size: 22px;
    font-weight: 950;
}

.single-product .kh-single-article-card__body {
    display: grid;
    gap: 8px;
    padding: 13px;
}

.single-product .kh-single-article-card__body strong {
    color: #111827;
    font-size: 13px;
    font-weight: 900;
    line-height: 1.25;
}

.single-product .kh-single-article-card__body span {
    color: #64748b;
    font-size: 12px;
    line-height: 1.45;
}

@media (max-width: 980px) {
    .single-product .kh-single-products-section .products,
    .single-product .kh-single-product-grid,
    .single-product .kh-single-articles-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .single-product .kh-single-reviews-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 620px) {
    .single-product .kh-single-lower-section {
        left: 0;
        width: 100%;
        max-width: 100%;
        margin-top: 26px;
    }

    .single-product .kh-single-products-section .products,
    .single-product .kh-single-product-grid,
    .single-product .kh-single-articles-grid,
    .single-product .kh-single-reviews-list .admin-product-reviews {
        grid-template-columns: 1fr;
    }
}

/* Final button hover guard. Keep after all theme overrides. */
body.single-product .product-info form.cart button.single_add_to_cart_button,
body.single-product .product-info form.cart button.single_add_to_cart_button.button,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt,
body.single-product .product-info form.cart button.single_add_to_cart_button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:focus {
    border: 0 !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    background-color: #35c7ff !important;
    background-image: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .28) !important;
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-text-fill-color: #fff !important;
}

body.single-product .product-info form.cart button.single_add_to_cart_button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:focus {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    background-color: #22b7f3 !important;
    background-image: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    box-shadow: 0 14px 30px rgba(70, 118, 255, .36) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    transform: translateY(-1px);
}

body.single-product .product-info form.cart button.single_add_to_cart_button::before,
body.single-product .product-info form.cart button.single_add_to_cart_button:hover::before,
body.single-product .product-info form.cart button.single_add_to_cart_button:focus::before {
    background: currentColor !important;
}

.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:focus,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:focus,
.kh-sidebar-product:hover .kh-sidebar-product__action,
.kh-sidebar-product:focus .kh-sidebar-product__action {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    background-color: #22b7f3 !important;
    background-image: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-text-fill-color: #fff !important;
}

/* Product buttons final polish. */
.single-product form.cart:has(.quantity.hidden),
.single-product form.cart:has(.quantity input[type="hidden"]) {
    grid-template-columns: 1fr !important;
}

.single-product form.cart .quantity.hidden,
.single-product form.cart .quantity:has(input[type="hidden"]) {
    display: none !important;
}

.single-product form.cart:has(.quantity.hidden) .single_add_to_cart_button,
.single-product form.cart:has(.quantity input[type="hidden"]) .single_add_to_cart_button {
    grid-column: 1 / -1;
}

.single-product .single_add_to_cart_button {
    min-width: 0;
    min-height: 52px !important;
    height: auto !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 18px !important;
    overflow: visible;
    line-height: 1.2 !important;
    white-space: normal;
}

.single-product .single_add_to_cart_button::before {
    content: "";
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    margin: 0;
    background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h8.78a2 2 0 0 0 1.95-1.57L21 7H5.12'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h8.78a2 2 0 0 0 1.95-1.57L21 7H5.12'/%3E%3C/svg%3E") center / contain no-repeat;
    vertical-align: 0;
}

.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .add_to_cart_button,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button,
.shop-item .shop-item__actions .shop-item__details-link {
    opacity: 1 !important;
    visibility: visible !important;
}

.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .add_to_cart_button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:focus,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .add_to_cart_button:focus,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:focus {
    display: inline-flex !important;
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .34) !important;
}

body.woocommerce-checkout #order_review .wc-block-components-sale-badge {
    display: none !important;
}

body.home .kh-reviews-v2-section,
body.front-page .kh-reviews-v2-section {
    max-width: 1460px;
    width: calc(100% - 28px);
    margin: 34px auto !important;
    padding: 16px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, #fbfdff 0%, #f3f8ff 100%) !important;
    box-shadow: 0 18px 44px rgba(18, 35, 68, .09) !important;
}

body.home .kh-reviews-v2-body,
body.front-page .kh-reviews-v2-body {
    padding: 0 !important;
}

body.home .kh-reviews-v2-body > style,
body.front-page .kh-reviews-v2-body > style {
    display: none !important;
}

body.home .kh-reviews-v2-body > h2,
body.front-page .kh-reviews-v2-body > h2 {
    margin: 0 0 14px !important;
    color: #172033 !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
}

body.home .kh-reviews-v2-body > h2::after,
body.front-page .kh-reviews-v2-body > h2::after {
    content: "лучшие традиции доверия в один общий индекс";
    float: right;
    margin-top: 4px;
    color: #65728a;
    font-size: 11px;
    font-weight: 800;
}

body.home .kh-reviews-v2-body > p,
body.front-page .kh-reviews-v2-body > p,
body.home .kh-reviews-v2-section .kh-all-reviews-wrap,
body.front-page .kh-reviews-v2-section .kh-all-reviews-wrap,
body.home .kh-reviews-v2-section .apr-load-more-wrap,
body.front-page .kh-reviews-v2-section .apr-load-more-wrap {
    display: none !important;
}

/* Mobile header final override. Keep this after legacy theme rules. */
@media (max-width: 767px) {
    html body .super-header,
    html body .dim-header-top {
        display: none !important;
    }

    html body header.site-header {
        padding: 0 !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
        box-shadow: 0 10px 24px rgba(18, 35, 68, .04) !important;
    }

    html body header.site-header .site-header-inner {
        display: grid !important;
        grid-template-columns: 54px minmax(0, 1fr) 54px !important;
        align-items: center !important;
        gap: 10px !important;
        min-height: 76px !important;
        padding: 8px 18px !important;
    }

    html body header.site-header .humburger {
        position: static !important;
        top: auto !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 52px !important;
        height: 52px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        transform: none !important;
    }

    html body header.site-header .site-branding {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: center !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        flex: 0 1 auto !important;
    }

    html body header.site-header .site-logotype {
        display: flex !important;
        justify-content: center !important;
        max-width: 100% !important;
    }

    html body header.site-header .site-logotype img {
        width: auto !important;
        max-width: min(190px, 52vw) !important;
        max-height: 46px !important;
        padding: 0 !important;
        object-fit: contain !important;
    }

    html body header.site-header .site-header-inner > .header-customer-account,
    html body header.site-header .site-header-inner > .header-favorite,
    html body header.site-header .site-header-inner > .header-compare {
        display: none !important;
    }

    html body header.site-header .site-header-inner > .site-header-cart {
        grid-column: 3 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        width: 52px !important;
        height: 52px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    html body header.site-header .site-header-cart .header-cart__link {
        width: 52px !important;
        height: 52px !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    html body header.site-header .top-menu li.catalog-btn > .sub-menu,
    html body header.site-header .top-menu li.mega-catalog > .sub-menu,
    html body header.site-header .top-menu li.catalog-btn > :not(a):not(.sub-menu),
    html body header.site-header .top-menu li.mega-catalog > :not(a):not(.sub-menu),
    html body header.site-header .top-menu li.catalog-btn .sub-menu-toggle,
    html body header.site-header .top-menu li.mega-catalog .sub-menu-toggle {
        display: none !important;
    }
}

body.home .kh-reviews-v2-layout,
body.front-page .kh-reviews-v2-layout {
    display: grid !important;
    grid-template-columns: 340px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

body.home .kh-reviews-v2-summary,
body.front-page .kh-reviews-v2-summary {
    min-height: 330px;
    padding: 24px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(18, 35, 68, .06) !important;
}

body.home .kh-reviews-v2-score,
body.front-page .kh-reviews-v2-score {
    color: #172033;
    font-size: 54px;
    line-height: .95;
    font-weight: 950;
    letter-spacing: 0;
}

body.home .kh-reviews-v2-stars,
body.front-page .kh-reviews-v2-stars {
    margin-top: 12px;
    color: #ffb21b;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: 1px;
}

body.home .kh-reviews-v2-count,
body.front-page .kh-reviews-v2-count {
    margin-top: 6px;
    color: #65728a;
    font-size: 12px;
    font-weight: 800;
}

body.home .kh-reviews-v2-bars,
body.front-page .kh-reviews-v2-bars {
    margin-top: 24px;
}

body.home .kh-reviews-v2-bar,
body.front-page .kh-reviews-v2-bar {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) 34px;
    align-items: center;
    gap: 10px;
    margin: 10px 0;
    color: #65728a;
    font-size: 12px;
    font-weight: 850;
}

body.home .kh-reviews-v2-bar-source,
body.front-page .kh-reviews-v2-bar-source {
    grid-template-columns: 112px minmax(0, 1fr) 58px;
}

body.home .kh-reviews-v2-bar-source span,
body.front-page .kh-reviews-v2-bar-source span {
    line-height: 1.2;
}

body.home .kh-reviews-v2-bar b,
body.front-page .kh-reviews-v2-bar b {
    display: block;
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: #eaf1fb;
}

body.home .kh-reviews-v2-bar i,
body.front-page .kh-reviews-v2-bar i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(135deg, #7567ff, #35c7ff);
}

body.home .kh-reviews-v2-bar em,
body.front-page .kh-reviews-v2-bar em {
    color: #65728a;
    font-style: normal;
    text-align: right;
}

body.home .kh-reviews-v2-button,
body.front-page .kh-reviews-v2-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    margin-top: 26px;
    padding: 0 20px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, #7567ff, #35c7ff);
    color: #fff !important;
    font-size: 13px;
    font-weight: 950;
    text-decoration: none !important;
    box-shadow: 0 14px 28px rgba(70, 118, 255, .22);
}

body.home .kh-reviews-v2-layout .admin-product-reviews,
body.front-page .kh-reviews-v2-layout .admin-product-reviews {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    margin: 0 !important;
}

body.home .kh-reviews-v2-layout .apr-review,
body.front-page .kh-reviews-v2-layout .apr-review {
    display: grid !important;
    grid-template-rows: auto 1fr auto !important;
    min-height: 158px !important;
    padding: 16px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(18, 35, 68, .06) !important;
}

body.home .kh-reviews-v2-layout .apr-review:nth-child(n+5),
body.front-page .kh-reviews-v2-layout .apr-review:nth-child(n+5) {
    display: none !important;
}

body.home .kh-reviews-v2-layout .apr-review-body,
body.front-page .kh-reviews-v2-layout .apr-review-body {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: start !important;
    gap: 8px 12px !important;
    padding: 0 !important;
    order: 1 !important;
}

body.home .kh-reviews-v2-layout .apr-date,
body.front-page .kh-reviews-v2-layout .apr-date {
    display: none !important;
}

body.home .kh-reviews-v2-layout .apr-review h4,
body.front-page .kh-reviews-v2-layout .apr-review h4 {
    grid-column: 1;
    grid-row: 1;
    margin: 0 !important;
    color: #172033 !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
}

body.home .kh-reviews-v2-layout .apr-rating,
body.front-page .kh-reviews-v2-layout .apr-rating {
    grid-column: 2;
    grid-row: 1;
    color: #ffb21b !important;
    font-size: 14px !important;
    line-height: 1 !important;
    letter-spacing: 1px !important;
    white-space: nowrap;
}

body.home .kh-reviews-v2-layout .apr-review-body p,
body.front-page .kh-reviews-v2-layout .apr-review-body p {
    grid-column: 1 / -1;
    margin: 6px 0 10px !important;
    color: #1e2a3f !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Homepage reviews: fixed-height preview plus full-review dialog. */
body.home .kh-reviews-v2-layout .apr-review-text,
body.front-page .kh-reviews-v2-layout .apr-review-text {
    position: relative;
    grid-column: 1 / -1;
    min-width: 0;
    margin: 6px 0 0;
    overflow: hidden;
}

body.home .kh-reviews-v2-layout .apr-review-text p,
body.front-page .kh-reviews-v2-layout .apr-review-text p {
    display: -webkit-box !important;
    margin: 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4 !important;
    line-clamp: 4;
}

body.home .kh-reviews-v2-layout .apr-review.has-overflow-review .apr-review-text::after,
body.front-page .kh-reviews-v2-layout .apr-review.has-overflow-review .apr-review-text::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 42%;
    height: 1.45em;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 78%);
}

body.home .kh-reviews-v2-layout .apr-review-body > .kh-review-card__read-more,
body.front-page .kh-reviews-v2-layout .apr-review-body > .kh-review-card__read-more {
    grid-column: 1 / -1;
    justify-self: start;
    min-height: 44px;
    margin: 0 0 4px;
    padding-inline: 14px;
    touch-action: manipulation;
}

body.home .kh-customer-reviews-instance .kh-review-dialog__product img,
body.front-page .kh-customer-reviews-instance .kh-review-dialog__product img {
    width: 52px;
    height: 52px;
    object-fit: contain;
}

body.home .kh-reviews-v2-layout .apr-product,
body.front-page .kh-reviews-v2-layout .apr-product {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    align-self: end !important;
    order: 2 !important;
    margin-top: 12px !important;
    color: #172033 !important;
    text-decoration: none !important;
}

body.home .kh-reviews-v2-layout .apr-product img,
body.front-page .kh-reviews-v2-layout .apr-product img {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
    object-fit: contain !important;
    border: 1px solid #dce9f8 !important;
    border-radius: 10px !important;
    background: #fff !important;
}

body.home .kh-reviews-v2-layout .apr-product-title,
body.front-page .kh-reviews-v2-layout .apr-product-title {
    color: #172033 !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 950 !important;
}

/* Tablet / narrow desktop: give review cards the full content width before
 * the two-column card grid becomes too narrow for product and reply content. */
@media (max-width: 1100px) {
    body.home .kh-reviews-v2-layout,
    body.front-page .kh-reviews-v2-layout {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.home .kh-reviews-v2-summary,
    body.front-page .kh-reviews-v2-summary {
        min-height: 0 !important;
    }

    body.home .kh-reviews-v2-layout .apr-review,
    body.front-page .kh-reviews-v2-layout .apr-review,
    body.home .kh-reviews-v2-layout .apr-review > *,
    body.front-page .kh-reviews-v2-layout .apr-review > * {
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 900px) {
    body.home .kh-reviews-v2-body > h2::after,
    body.front-page .kh-reviews-v2-body > h2::after {
        float: none;
        display: block;
        margin-top: 8px;
    }

    body.home .kh-reviews-v2-layout,
    body.front-page .kh-reviews-v2-layout {
        grid-template-columns: 1fr !important;
    }

    body.home .kh-reviews-v2-layout .admin-product-reviews,
    body.front-page .kh-reviews-v2-layout .admin-product-reviews {
        grid-template-columns: 1fr !important;
    }
}

/* Checkout variant 4 polish: match approved mockup. */
body.woocommerce-checkout .kh-checkout-coupon-button {
    min-height: 42px !important;
    border-radius: 9px !important;
    background: #172033 !important;
    box-shadow: 0 10px 22px rgba(18, 35, 68, .16) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

body.woocommerce-checkout #place_order {
    min-height: 48px !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 14px 30px rgba(70, 118, 255, .24) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
}

body.woocommerce-checkout .kh-checkout-pay-box {
    background: linear-gradient(135deg, #f8fbff 0%, #fff 100%) !important;
}

body.woocommerce-checkout .kh-checkout-pay-badges {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 13px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.woocommerce-checkout .kh-pay-badge {
    height: 28px !important;
    min-width: 46px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 9px !important;
    border: 1px solid #dbe7f5 !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(18, 35, 68, .05) !important;
    line-height: 1 !important;
}

body.woocommerce-checkout .kh-pay-badge--visa {
    color: #2563eb !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    font-style: italic !important;
}

body.woocommerce-checkout .kh-pay-badge--mastercard {
    min-width: 46px !important;
    padding: 0 8px !important;
}

body.woocommerce-checkout .kh-pay-badge--mastercard span {
    width: 16px !important;
    height: 16px !important;
}

body.woocommerce-checkout .kh-pay-badge--mir {
    color: #18a957 !important;
    font-size: 12px !important;
    font-weight: 950 !important;
}

body.woocommerce-checkout .kh-pay-badge--sbp {
    min-width: 54px !important;
    gap: 4px !important;
    color: #172033 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

body.woocommerce-checkout .kh-pay-badge--sberpay {
    min-width: 70px !important;
    color: #18a957 !important;
    font-size: 11px !important;
    font-weight: 950 !important;
}

body.woocommerce-checkout .kh-pay-badge--tbank {
    min-width: 62px !important;
    border-color: #ffe06a !important;
    background: #ffe34f !important;
    color: #172033 !important;
    font-size: 11px !important;
    font-weight: 950 !important;
}

body.woocommerce-checkout .kh-checkout-trust {
    gap: 10px !important;
    margin: 16px 0 18px !important;
}

body.woocommerce-checkout .kh-checkout-trust span {
    min-height: 48px !important;
    position: relative;
    padding: 10px 12px 10px 48px !important;
    border: 1px solid #dbe7f5 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 8px 20px rgba(18, 35, 68, .045) !important;
    color: #172033 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

body.woocommerce-checkout .kh-checkout-trust span::before {
    content: "" !important;
    position: absolute;
    left: 12px;
    top: 50%;
    width: 26px !important;
    height: 26px !important;
    margin: 0 !important;
    transform: translateY(-50%);
    border-radius: 10px !important;
    background: #eafff4 !important;
    box-shadow: none !important;
}

body.woocommerce-checkout .kh-checkout-trust span::after {
    content: "" !important;
    position: absolute;
    left: 18px;
    top: 50%;
    width: 14px;
    height: 14px;
    transform: translateY(-50%);
    background: #24b86f;
    -webkit-mask: center / contain no-repeat;
    mask: center / contain no-repeat;
}

body.woocommerce-checkout .kh-checkout-trust span:nth-child(1)::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h7l-1 8 10-13h-7l0-7Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h7l-1 8 10-13h-7l0-7Z'/%3E%3C/svg%3E");
}

body.woocommerce-checkout .kh-checkout-trust span:nth-child(2)::before {
    background: #ecfff7 !important;
}

body.woocommerce-checkout .kh-checkout-trust span:nth-child(2)::after {
    background: #18a957;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}

body.woocommerce-checkout .kh-checkout-trust span:nth-child(3)::before {
    background: #eef5ff !important;
}

body.woocommerce-checkout .kh-checkout-trust span:nth-child(3)::after {
    background: #3f7cff;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10Z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10Z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E");
}

/* Checkout variant 4 final alignment with design mockup. */
body.woocommerce-checkout .woocommerce-form-coupon {
    display: none !important;
}

body.woocommerce-checkout .col2-set {
    padding: 22px !important;
}

body.woocommerce-checkout .kh-checkout-coupon-box,
body.woocommerce-checkout .kh-checkout-pay-box {
    margin-top: 18px !important;
    padding: 16px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #f8fbff 0%, #fff 100%) !important;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .05) !important;
}

body.woocommerce-checkout .kh-checkout-section-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: #172033;
    font-size: 14px;
    font-weight: 950;
}

body.woocommerce-checkout .kh-checkout-section-title::before {
    content: "";
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    border-radius: 8px;
    background: linear-gradient(135deg, #7567ff, #35c7ff);
    box-shadow: 0 6px 14px rgba(70, 118, 255, .18);
}

body.woocommerce-checkout .kh-checkout-coupon-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 130px;
    gap: 10px;
}

body.woocommerce-checkout .kh-checkout-coupon-input {
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid #dbe7f5;
    border-radius: 10px;
    background: #fff;
    color: #172033;
}

body.woocommerce-checkout .kh-checkout-coupon-button {
    min-height: 42px;
    border: 0;
    border-radius: 10px;
    background: #172033;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}

body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment .payment_box {
    display: none !important;
}

body.woocommerce-checkout .kh-checkout-pay-badges {
    width: 100% !important;
    margin: 13px 0 0 !important;
}

body.woocommerce-checkout .kh-checkout-product-line {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
}

body.woocommerce-checkout .kh-checkout-product-line img {
    width: 52px !important;
    height: 52px !important;
    object-fit: contain;
    border: 1px solid #e5edf8;
    border-radius: 10px;
    background: #fff;
}

body.woocommerce-checkout .kh-checkout-product-name {
    color: #172033;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.3;
}

/* Checkout variant 4: premium right summary panel. */
body.woocommerce-checkout .site-content,
body.woocommerce-checkout .content-area,
body.woocommerce-checkout .entry-content {
    overflow: visible;
}

body.woocommerce-checkout .entry-title {
    max-width: 1180px;
    margin: 34px auto 22px !important;
    padding: 0 !important;
    color: #111827;
    font-size: 34px;
    font-weight: 900;
    line-height: 1.15;
    text-align: left !important;
}

body.woocommerce-checkout .woocommerce {
    max-width: 1180px;
    margin: 0 auto 70px;
}

body.woocommerce-checkout .woocommerce-form-coupon {
    max-width: 1180px !important;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 230px;
    gap: 12px;
    margin: 0 auto 18px !important;
    padding: 18px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%) !important;
    box-shadow: 0 16px 42px rgba(18, 35, 68, .08) !important;
}

body.woocommerce-checkout .woocommerce-form-coupon p {
    margin: 0 !important;
}

body.woocommerce-checkout form.checkout {
    max-width: 1180px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 420px;
    gap: 26px;
    align-items: start;
    margin: 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.woocommerce-checkout .col2-set {
    min-width: 0;
    margin: 0 !important;
    padding: 26px !important;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(18, 35, 68, .08);
}

body.woocommerce-checkout .col2-set::before {
    content: "Контактные данные";
    display: block;
    margin-bottom: 18px;
    color: #172033;
    font-size: 20px;
    font-weight: 900;
}

body.woocommerce-checkout .col2-set .col-1,
body.woocommerce-checkout .col2-set .col-2 {
    width: 100% !important;
    float: none !important;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px 22px;
    max-width: 560px;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide {
    width: 100% !important;
}

body.woocommerce-checkout #billing_email_field {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
}

body.woocommerce-checkout p.create-account,
body.woocommerce-checkout #createaccount {
    display: none !important;
}

body.woocommerce-checkout .form-row label {
    margin-bottom: 7px;
    color: #536179;
    font-size: 13px;
    font-weight: 800;
}

body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea {
    min-height: 48px;
    padding: 12px 14px !important;
    border: 1px solid #dbe7f5 !important;
    border-radius: 12px !important;
    background: #f8fbff !important;
    color: #172033 !important;
    font-size: 14px;
    box-shadow: none !important;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus {
    border-color: #8bbcff !important;
    background: #fff !important;
    box-shadow: 0 0 0 4px rgba(53, 199, 255, .14) !important;
    outline: 0;
}

body.woocommerce-checkout .custom-checkout-text {
    margin-top: 18px;
    padding: 18px;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: linear-gradient(135deg, #f8fbff 0%, #eef7ff 100%);
    color: #536179;
    font-size: 14px;
    line-height: 1.6;
}

body.woocommerce-checkout .custom-checkout-text p {
    margin: 0;
}

body.woocommerce-checkout #order_review {
    position: sticky;
    top: 24px;
    min-width: 0;
    margin: 0 !important;
    padding: 24px !important;
    border: 1px solid #dbe7f5 !important;
    border-radius: 22px !important;
    background: linear-gradient(180deg, #f8fbff 0%, #fff 54%, #eef7ff 100%) !important;
    box-shadow: 0 22px 56px rgba(18, 35, 68, .12) !important;
}

body.woocommerce-checkout #order_review::before {
    content: "Ваш заказ";
    display: block;
    margin-bottom: 18px;
    color: #172033;
    font-size: 20px;
    font-weight: 950;
}

body.woocommerce-checkout #order_review table.shop_table {
    margin: 0 0 18px !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: transparent !important;
}

body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td {
    padding: 13px 0 !important;
    border-width: 0 0 1px !important;
    border-style: solid !important;
    border-color: #e5edf8 !important;
    background: transparent !important;
    color: #172033;
    font-size: 14px;
}

body.woocommerce-checkout #order_review table.shop_table th {
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .02em;
    text-transform: uppercase;
}

body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td {
    border-bottom: 0 !important;
    color: #172033;
    font-size: 17px;
    font-weight: 950;
}

body.woocommerce-checkout #payment {
    margin-top: 12px;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
    margin: 0 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
    padding: 0 !important;
    border: 0 !important;
}

body.woocommerce-checkout #payment ul.payment_methods label {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    color: #172033;
    font-size: 15px;
    font-weight: 900;
}

body.woocommerce-checkout #payment .payment_box {
    display: none !important;
}

body.woocommerce-checkout #payment ul.payment_methods label img,
body.woocommerce-checkout #payment ul.payment_methods .payment_method_tinkoff img,
body.woocommerce-checkout #payment ul.payment_methods .payment_method_tbank img {
    display: none !important;
}

body.woocommerce-checkout #payment ul.payment_methods input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

body.woocommerce-checkout .kh-checkout-pay-box {
    margin: 12px 0 16px;
    padding: 16px;
    border: 1px solid #dbe7f5;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(18, 35, 68, .06);
}

body.woocommerce-checkout .kh-checkout-pay-title {
    color: #172033;
    font-size: 16px;
    font-weight: 950;
}

body.woocommerce-checkout .kh-checkout-pay-text {
    margin-top: 5px;
    color: #536179;
    font-size: 13px;
    line-height: 1.45;
}

body.woocommerce-checkout .kh-checkout-pay-badges {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 13px 0 0;
    padding: 10px;
    border: 1px solid #e5edf8;
    border-radius: 14px;
    background: #172033;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}

body.woocommerce-checkout .kh-checkout-pay-note {
    margin-top: 10px;
    color: #64748b;
    font-size: 12px;
    line-height: 1.45;
}

body.woocommerce-checkout .kh-checkout-trust {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    margin: 14px 0 16px;
}

body.woocommerce-checkout .kh-checkout-trust span {
    min-height: 36px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 9px 12px;
    border: 1px solid #e5edf8;
    border-radius: 12px;
    background: #fff;
    color: #172033;
    font-size: 13px;
    font-weight: 850;
}

body.woocommerce-checkout .kh-checkout-trust span::before {
    content: "";
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
    border-radius: 50%;
    background: linear-gradient(135deg, #7567ff, #35c7ff);
    box-shadow: 0 0 0 4px rgba(53, 199, 255, .12);
}

body.woocommerce-checkout #place_order,
body.woocommerce-checkout button.button {
    min-height: 48px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 14px 28px rgba(70, 118, 255, .24) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    text-transform: none !important;
}

body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout button.button:hover {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    box-shadow: 0 16px 32px rgba(70, 118, 255, .32) !important;
}

body.woocommerce-checkout .kh-pay-badge--tbank {
    min-width: 58px;
    padding: 0 8px;
    border-radius: 8px;
    background: #ffe34f;
    color: #172033;
    font-size: 11px;
    font-weight: 950;
}

@media (max-width: 900px) {
    body.woocommerce-checkout .entry-title,
    body.woocommerce-checkout .woocommerce {
        width: min(100% - 28px, 1180px);
    }

    body.woocommerce-checkout .woocommerce-form-coupon,
    body.woocommerce-checkout form.checkout {
        grid-template-columns: 1fr;
    }

    body.woocommerce-checkout #order_review {
        position: static;
    }

    body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
        grid-template-columns: 1fr;
    }
}

/* Checkout payment badges. */
.woocommerce-checkout .kh-checkout-pay-badges {
    width: fit-content;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 14px 0 16px;
    padding: 8px 10px;
    border: 1px solid #e5edf8;
    border-radius: 12px;
    background: #172033;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .12);
}

.woocommerce-checkout .kh-pay-badge {
    min-width: 36px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    white-space: nowrap;
}

.woocommerce-checkout .kh-pay-badge--visa {
    color: #3468ff;
    font-size: 12px;
    font-weight: 900;
    font-style: italic;
    letter-spacing: .2px;
}

.woocommerce-checkout .kh-pay-badge--mastercard {
    min-width: 34px;
    position: relative;
}

.woocommerce-checkout .kh-pay-badge--mastercard span {
    width: 17px;
    height: 17px;
    display: block;
    border-radius: 50%;
}

.woocommerce-checkout .kh-pay-badge--mastercard span:first-child {
    margin-right: -7px;
    background: #eb001b;
}

.woocommerce-checkout .kh-pay-badge--mastercard span:last-child {
    background: #f79e1b;
    mix-blend-mode: screen;
}

.woocommerce-checkout .kh-pay-badge--mir {
    color: #24b34b;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: .3px;
}

.woocommerce-checkout .kh-pay-badge--sbp {
    gap: 4px;
    color: #fff;
    font-size: 11px;
    font-weight: 850;
}

.woocommerce-checkout .kh-pay-badge__mark {
    width: 16px;
    height: 16px;
    display: block;
    border-radius: 4px;
    background: conic-gradient(from 45deg, #27d17f, #16b4ff, #7b61ff, #ff4b8b, #ffb13b, #27d17f);
    clip-path: polygon(12% 8%, 92% 50%, 12% 92%, 30% 50%);
}

.woocommerce-checkout .kh-pay-badge--sberpay {
    min-width: 62px;
    padding: 0 7px;
    border-radius: 8px;
    background: #fff;
    color: #18a957;
    font-size: 11px;
    font-weight: 900;
}

@media (max-width: 480px) {
    .woocommerce-checkout .kh-checkout-pay-badges {
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
    }
}

/* Header 4B cart drawer EOF override. */
body:not(.is-mobile) .site-header-cart-hidden {
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: min(430px, 100vw) !important;
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid #e5edf8 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: -100vw 0 0 100vw rgba(15, 23, 42, .42), -24px 0 56px rgba(18, 35, 68, .16) !important;
    overflow: hidden !important;
    z-index: 2147483647 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .header-cart__title {
    min-height: 64px !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 58px 0 24px !important;
    border-bottom: 1px solid #eef3fb !important;
    color: #172033 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__close {
    top: 20px !important;
    right: 22px !important;
    z-index: 2 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    width: auto !important;
    height: calc(100vh - 64px) !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 22px 24px 24px !important;
    overflow: hidden !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: grid !important;
    align-content: start !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 4px 0 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item {
    min-height: 86px !important;
    padding: 12px 0 14px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__total {
    flex: 0 0 auto !important;
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid #e5edf8 !important;
    color: #172033 !important;
    font-size: 16px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons {
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 !important;
    margin: 18px 0 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons .button {
    min-height: 48px !important;
    border-radius: 10px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__empty-message {
    flex: 1 1 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #526070 !important;
    text-align: center !important;
}

body.admin-bar:not(.is-mobile) .site-header-cart-hidden {
    top: 32px !important;
    height: calc(100vh - 32px) !important;
    min-height: calc(100vh - 32px) !important;
}

body.admin-bar:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    height: calc(100vh - 96px) !important;
}

body:not(.is-mobile):has(.site-header-cart-hidden:not([style*="display: none"])) iframe#__keyhub_widget {
    opacity: 0 !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

/* Header 4B cart drawer: full-height right panel. */
body:not(.is-mobile) .site-header-cart-hidden {
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: min(430px, 100vw) !important;
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid #e5edf8 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: -100vw 0 0 100vw rgba(15, 23, 42, .42), -24px 0 56px rgba(18, 35, 68, .16) !important;
    overflow: hidden !important;
    z-index: 2147483647 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .header-cart__title {
    min-height: 64px !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 58px 0 24px !important;
    border-bottom: 1px solid #eef3fb !important;
    color: #172033 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__close {
    top: 20px !important;
    right: 22px !important;
    z-index: 2 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    width: auto !important;
    height: calc(100vh - 64px) !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 22px 24px 24px !important;
    overflow: hidden !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: grid !important;
    align-content: start !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 4px 0 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item {
    min-height: 86px !important;
    padding: 12px 0 14px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__total {
    flex: 0 0 auto !important;
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid #e5edf8 !important;
    color: #172033 !important;
    font-size: 16px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons {
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 !important;
    margin: 18px 0 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons .button {
    min-height: 48px !important;
    border-radius: 10px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__empty-message {
    flex: 1 1 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #526070 !important;
    text-align: center !important;
}

/* Header 4B mini-cart EOF override. */
body:not(.is-mobile) .site-header-cart-hidden {
    top: 132px !important;
    right: max(28px, calc((100vw - 1460px) / 2 + 28px)) !important;
    width: min(430px, calc(100vw - 32px)) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - 154px) !important;
    padding: 22px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    display: grid !important;
    gap: 12px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart {
    display: grid !important;
    gap: 10px !important;
    max-height: min(390px, calc(100vh - 330px)) !important;
    margin: 0 !important;
    padding: 0 2px 0 0 !important;
    overflow-x: hidden !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 82px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 34px !important;
    grid-template-rows: auto auto !important;
    column-gap: 12px !important;
    row-gap: 4px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #eef3fb !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
    color: #172033 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    text-decoration: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name img {
    float: none !important;
    flex: 0 0 56px !important;
    width: 56px !important;
    height: 56px !important;
    margin: 0 !important;
    object-fit: contain !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 12px !important;
    background: #f8fbff !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: start !important;
    justify-self: start !important;
    position: static !important;
    margin: -4px 0 0 68px !important;
    color: #526070 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
    color: #2563eb !important;
    font-weight: 850 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: end !important;
    position: static !important;
    width: 32px !important;
    height: 32px !important;
    transform: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:hover,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:focus {
    transform: scale(1.04) !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__empty-message {
    margin: 0 !important;
}

/* Header 4B mini-cart final override. Keep this block after all header rules. */
body:not(.is-mobile) .site-header-cart-hidden {
    top: 132px !important;
    right: max(28px, calc((100vw - 1460px) / 2 + 28px)) !important;
    width: min(430px, calc(100vw - 32px)) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - 154px) !important;
    padding: 22px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    display: grid !important;
    gap: 12px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart {
    display: grid !important;
    gap: 10px !important;
    max-height: min(390px, calc(100vh - 330px)) !important;
    margin: 0 !important;
    padding: 0 2px 0 0 !important;
    overflow-x: hidden !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 82px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 34px !important;
    grid-template-rows: auto auto !important;
    column-gap: 12px !important;
    row-gap: 4px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #eef3fb !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
    color: #172033 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    text-decoration: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name img {
    float: none !important;
    flex: 0 0 56px !important;
    width: 56px !important;
    height: 56px !important;
    margin: 0 !important;
    object-fit: contain !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 12px !important;
    background: #f8fbff !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: start !important;
    justify-self: start !important;
    position: static !important;
    margin: -4px 0 0 68px !important;
    color: #526070 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
    color: #2563eb !important;
    font-weight: 850 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: end !important;
    position: static !important;
    width: 32px !important;
    height: 32px !important;
    transform: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:hover,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:focus {
    transform: scale(1.04) !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__empty-message {
    margin: 0 !important;
}

/* Header 4B mini-cart: keep product rows readable inside the floating cart. */
body:not(.is-mobile) .site-header-cart-hidden {
    top: 132px !important;
    right: max(28px, calc((100vw - 1460px) / 2 + 28px)) !important;
    width: min(430px, calc(100vw - 32px)) !important;
    min-height: 0 !important;
    max-height: calc(100vh - 154px) !important;
    padding: 22px !important;
    overflow-x: hidden !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart {
    max-height: min(390px, calc(100vh - 330px)) !important;
    padding: 0 2px 0 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item {
    min-height: 86px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    column-gap: 12px !important;
    row-gap: 4px !important;
    align-items: center !important;
    padding: 10px 2px 12px 0 !important;
    border-bottom: 1px solid #eef3fb !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 12px !important;
    color: #172033 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
    text-decoration: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name img {
    float: none !important;
    grid-column: 1 !important;
    width: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    object-fit: contain !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 12px !important;
    background: #f8fbff !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: start !important;
    justify-self: start !important;
    margin: -2px 0 0 70px !important;
    color: #526070 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
    color: #2563eb !important;
    font-weight: 850 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: end !important;
    position: static !important;
    width: 32px !important;
    height: 32px !important;
    transform: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:hover,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:focus {
    transform: scale(1.04) !important;
}

body:not(.is-mobile) .site-header-cart-hidden ul.woocommerce-mini-cart.cart_list {
    display: grid !important;
    gap: 10px !important;
}

body:not(.is-mobile) .site-header-cart-hidden ul.woocommerce-mini-cart.cart_list li.woocommerce-mini-cart-item {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 82px !important;
    grid-template-columns: minmax(0, 1fr) 34px !important;
    padding: 10px 0 !important;
    margin: 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden ul.woocommerce-mini-cart.cart_list li.woocommerce-mini-cart-item > a.woocommerce-mini-cart-item__name,
body:not(.is-mobile) .site-header-cart-hidden ul.woocommerce-mini-cart.cart_list li.woocommerce-mini-cart-item > span.woocommerce-mini-cart-item__name {
    max-width: 100% !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden ul.woocommerce-mini-cart.cart_list li.woocommerce-mini-cart-item > a.woocommerce-mini-cart-item__name img,
body:not(.is-mobile) .site-header-cart-hidden ul.woocommerce-mini-cart.cart_list li.woocommerce-mini-cart-item > span.woocommerce-mini-cart-item__name img {
    flex: 0 0 56px !important;
    width: 56px !important;
    height: 56px !important;
}

body:not(.is-mobile) .site-header-cart-hidden ul.woocommerce-mini-cart.cart_list li.woocommerce-mini-cart-item > .quantity {
    margin: -4px 0 0 68px !important;
    white-space: nowrap !important;
}

/* Keep the mini-cart dropdown below the redesigned header. */
body:not(.is-mobile) .site-header-cart {
    position: relative !important;
    z-index: 120;
}

body:not(.is-mobile) .site-header-cart-hidden {
    top: 145px !important;
    right: max(24px, calc((100vw - 1460px) / 2 + 24px)) !important;
    left: auto !important;
    width: min(420px, calc(100vw - 32px)) !important;
    height: auto !important;
    min-height: 240px !important;
    max-height: calc(100vh - 165px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 18px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 24px 52px rgba(18, 35, 68, .14) !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    display: grid;
    gap: 12px;
}

body:not(.is-mobile) .site-header-cart-hidden .header-cart__title {
    margin: 0 34px 14px 0 !important;
    color: #172033 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__empty-message {
    margin: 0 !important;
    padding: 14px !important;
    border: 1px solid #e5edf8;
    border-radius: 14px;
    background: #f8fbff;
    color: #526070;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart {
    max-height: min(360px, calc(100vh - 310px)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item {
    min-height: 72px;
    display: grid !important;
    grid-template-columns: 54px minmax(0, 1fr) 30px;
    align-items: center;
    gap: 10px;
    padding: 10px 0 !important;
    border-bottom: 1px solid #eef3fb;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item img {
    width: 48px !important;
    height: 48px !important;
    object-fit: contain;
    margin: 0 !important;
    border: 1px solid #e5edf8;
    border-radius: 10px;
    background: #f8fbff;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item a:not(.remove) {
    min-width: 0;
    color: #172033 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.25;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity {
    position: static !important;
    display: block;
    margin-top: 4px;
    color: #526070;
    font-size: 12px;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button {
    position: static !important;
    width: 28px !important;
    height: 28px !important;
    grid-column: 3;
    grid-row: 1;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__total {
    margin: 4px 0 0 !important;
    padding-top: 10px !important;
    border-top: 1px solid #e5edf8 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons {
    margin-top: 10px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__close {
    top: 17px !important;
    right: 17px !important;
}

/* Header 4B wide layout: align with the large content blocks below. */
body:not(.is-mobile) .super-header-inner,
body:not(.is-mobile) .site-header-inner {
    width: min(1460px, calc(100vw - 56px)) !important;
    max-width: 1460px !important;
}

body:not(.is-mobile) .super-header-inner {
    min-height: 44px !important;
    padding: 8px 16px 7px !important;
    justify-content: space-between !important;
}

body:not(.is-mobile) .super-header__item,
body:not(.is-mobile) .dim-header-top {
    gap: 8px !important;
}

body:not(.is-mobile) .super-header a,
body:not(.is-mobile) .super-header span,
body:not(.is-mobile) .dim-header-top a {
    min-height: 28px !important;
    padding: 6px 11px !important;
    border-color: #d7e6fb !important;
    background: #fff !important;
    color: #26334d !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    box-shadow: 0 8px 18px rgba(18, 35, 68, .045) !important;
}

body:not(.is-mobile) .super-header a::before,
body:not(.is-mobile) .dim-header-top a::before {
    width: 14px !important;
    height: 14px !important;
    margin-right: 7px !important;
    background: #3f7cff !important;
}

body:not(.is-mobile) .site-header-inner {
    min-height: 78px !important;
    padding: 14px 22px !important;
    gap: 20px !important;
}

body:not(.is-mobile) .site-branding {
    min-width: 224px;
    margin-right: 16px !important;
    min-height: 62px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 5px 18px !important;
}

body:not(.is-mobile) .site-branding .site-logotype img {
    max-height: 58px !important;
    max-width: 210px !important;
    width: 210px !important;
    height: auto !important;
    object-fit: contain;
    display: block;
}

body:not(.is-mobile) .top-menu > ul,
body:not(.is-mobile) .top-menu .menu {
    gap: 12px !important;
}

body:not(.is-mobile) .top-menu ul li > a,
body:not(.is-mobile) .top-menu ul li > span {
    min-height: 38px !important;
    padding: 10px 12px !important;
    font-size: 15px !important;
}

body:not(.is-mobile) .top-menu ul li.mega-catalog > a,
body:not(.is-mobile) .top-menu ul li.mega-catalog > span,
body:not(.is-mobile) .top-menu ul li.catalog-btn > a,
body:not(.is-mobile) .top-menu ul li.catalog-btn > span {
    min-height: 46px !important;
    padding: 13px 22px !important;
    border-radius: 15px !important;
}

body:not(.is-mobile) .header-search {
    flex: 1 1 420px !important;
    min-width: 320px !important;
    max-width: 420px;
    margin-left: auto;
}

body:not(.is-mobile) .header-search .search-field {
    height: 46px !important;
}

body:not(.is-mobile) .header-customer-account--vis,
body:not(.is-mobile) .header-cart__link,
body:not(.is-mobile) .header-favorite__link,
body:not(.is-mobile) .header-compare__link {
    width: 46px !important;
    height: 46px !important;
    border-radius: 17px !important;
}

@media (max-width: 1360px) {
    body:not(.is-mobile) .super-header-inner,
    body:not(.is-mobile) .site-header-inner {
        width: min(1240px, calc(100vw - 32px)) !important;
    }

    body:not(.is-mobile) .super-header-inner {
        min-height: 38px !important;
        padding: 7px 10px 6px !important;
    }

    body:not(.is-mobile) .super-header__item,
    body:not(.is-mobile) .dim-header-top {
        gap: 5px !important;
    }

    body:not(.is-mobile) .super-header a,
    body:not(.is-mobile) .super-header span,
    body:not(.is-mobile) .dim-header-top a {
        min-height: 24px !important;
        padding: 5px 7px !important;
        font-size: 11px !important;
    }

    body:not(.is-mobile) .super-header a::before,
    body:not(.is-mobile) .dim-header-top a::before {
        width: 12px !important;
        height: 12px !important;
        margin-right: 5px !important;
    }

    body:not(.is-mobile) .site-header-inner {
        gap: 14px !important;
        min-height: 74px !important;
        padding: 13px 18px !important;
    }

    body:not(.is-mobile) .site-branding {
        min-width: 210px;
        margin-right: 8px !important;
    }

    body:not(.is-mobile) .top-menu > ul,
    body:not(.is-mobile) .top-menu .menu {
        gap: 7px !important;
    }

    body:not(.is-mobile) .top-menu ul li > a,
    body:not(.is-mobile) .top-menu ul li > span {
        font-size: 14px !important;
        padding-left: 9px !important;
        padding-right: 9px !important;
    }

    body:not(.is-mobile) .header-search {
        min-width: 240px !important;
        max-width: 310px;
    }
}

/* Header 4B final compact height override. */
body:not(.is-mobile) .super-header {
    padding-top: 8px !important;
}

body:not(.is-mobile) .super-header-inner {
    min-height: 34px !important;
    padding: 5px 14px 4px !important;
}

body:not(.is-mobile) .super-header a,
body:not(.is-mobile) .super-header span,
body:not(.is-mobile) .dim-header-top a {
    min-height: 23px !important;
    padding: 4px 9px !important;
    font-size: 11px !important;
}

body:not(.is-mobile) .site-header {
    padding-bottom: 12px !important;
}

body:not(.is-mobile) .site-header-inner {
    min-height: 58px !important;
    padding: 7px 18px !important;
}

body:not(.is-mobile) .site-branding {
    min-width: 208px;
    padding: 6px 14px 6px 8px !important;
}

body:not(.is-mobile) .top-menu ul li.mega-catalog > a,
body:not(.is-mobile) .top-menu ul li.mega-catalog > span,
body:not(.is-mobile) .top-menu ul li.catalog-btn > a,
body:not(.is-mobile) .top-menu ul li.catalog-btn > span {
    min-height: 36px !important;
    padding: 8px 18px !important;
}

body:not(.is-mobile) .header-search .search-field {
    height: 36px !important;
}

body:not(.is-mobile) .header-customer-account--vis,
body:not(.is-mobile) .header-cart__link,
body:not(.is-mobile) .header-favorite__link,
body:not(.is-mobile) .header-compare__link {
    width: 36px !important;
    height: 36px !important;
    border-radius: 14px !important;
}

/* Header 4B mini-cart true final override. */
body:not(.is-mobile) .site-header-cart-hidden {
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: min(430px, 100vw) !important;
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid #e5edf8 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: -100vw 0 0 100vw rgba(15, 23, 42, .42), -24px 0 56px rgba(18, 35, 68, .16) !important;
    overflow: hidden !important;
    z-index: 2147483647 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    width: auto !important;
    height: calc(100vh - 64px) !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 22px 24px 24px !important;
    overflow: hidden !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: grid !important;
    align-content: start !important;
    gap: 12px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 4px 0 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 82px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 34px !important;
    grid-template-rows: auto auto !important;
    column-gap: 12px !important;
    row-gap: 4px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #eef3fb !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
    color: #172033 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    text-decoration: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item__name img {
    float: none !important;
    flex: 0 0 56px !important;
    width: 56px !important;
    height: 56px !important;
    margin: 0 !important;
    object-fit: contain !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 12px !important;
    background: #f8fbff !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: start !important;
    justify-self: start !important;
    position: static !important;
    margin: -4px 0 0 68px !important;
    color: #526070 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
    color: #2563eb !important;
    font-weight: 850 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: end !important;
    position: static !important;
    width: 32px !important;
    height: 32px !important;
    transform: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:hover,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:focus {
    transform: scale(1.04) !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__empty-message {
    margin: 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .header-cart__title {
    min-height: 64px !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 58px 0 24px !important;
    border-bottom: 1px solid #eef3fb !important;
    color: #172033 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    width: auto !important;
    padding: 22px 24px 24px !important;
}

body:not(.is-mobile) .site-header-cart-hidden:has(.woocommerce-mini-cart__empty-message) {
    min-height: 100vh !important;
}

body:not(.is-mobile) .site-header-cart-hidden:has(.woocommerce-mini-cart-item) {
    min-height: 100vh !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item > a:not(.remove),
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item > span:not(.quantity) {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item > a:not(.remove) img,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item > span:not(.quantity) img {
    float: none !important;
    flex: 0 0 56px !important;
    width: 56px !important;
    height: 56px !important;
    margin: 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: end !important;
    position: static !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid #ffd7d7 !important;
    border-radius: 50% !important;
    background: #fff5f5 !important;
    box-shadow: 0 8px 18px rgba(239, 68, 68, .10) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    transform: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button::before {
    content: "" !important;
    width: 15px !important;
    height: 15px !important;
    display: block !important;
    background: #ff3b3b !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:hover,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:focus {
    border-color: #ffb5b5 !important;
    background: #fff !important;
    box-shadow: 0 10px 22px rgba(239, 68, 68, .18) !important;
    transform: scale(1.04) !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item.processing,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item.loading {
    opacity: .62 !important;
    background: #f8fbff !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item.processing::before,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item.processing::after,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item.loading::before,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item.loading::after,
body:not(.is-mobile) .site-header-cart-hidden .blockUI.blockOverlay,
body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart-item .blockUI.blockOverlay {
    display: none !important;
    opacity: 0 !important;
    background: transparent !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits {
    width: 100% !important;
    min-width: 0 !important;
    display: block !important;
    margin: 4px 0 0 !important;
    padding: 14px !important;
    border: 1px solid #e1ecff !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #f8fbff 0%, #eef7ff 100%) !important;
    box-shadow: 0 14px 32px rgba(18, 35, 68, .06) !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits::before,
body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits::after {
    display: none !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits__header {
    display: grid !important;
    gap: 4px !important;
    margin: 0 0 12px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits__eyebrow {
    width: fit-content !important;
    padding: 4px 9px !important;
    border-radius: 999px !important;
    background: #e9fff4 !important;
    color: #0b8f4d !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits__header strong {
    color: #172033 !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    line-height: 1.2 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits__grid {
    display: grid !important;
    gap: 8px !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits__grid span {
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 9px !important;
    align-items: center !important;
    padding: 10px !important;
    border: 1px solid #dbe8fb !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, .82) !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits__grid i {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, #7567ff, #35c7ff) !important;
    box-shadow: 0 8px 18px rgba(70, 118, 255, .22) !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits__grid i::before {
    content: "" !important;
    width: 14px !important;
    height: 14px !important;
    display: block !important;
    margin: 7px auto 0 !important;
    background: #fff !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits__grid b {
    grid-column: 2 !important;
    color: #172033 !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    line-height: 1.2 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .kh-mini-cart-benefits__grid small {
    grid-column: 2 !important;
    margin-top: 2px !important;
    color: #66758a !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart {
    flex: 0 0 auto !important;
    overflow: visible !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__total {
    margin: 14px 0 0 !important;
    padding: 14px 0 0 !important;
}

body:not(.is-mobile) .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons {
    margin: 12px 0 0 !important;
}

@media (max-width: 767px) {
    .site-header-cart-hidden .kh-mini-cart-benefits {
        margin: 12px 0 0 !important;
        padding: 12px !important;
        border: 1px solid #e1ecff !important;
        border-radius: 16px !important;
        background: #f8fbff !important;
    }

    .site-header-cart-hidden .kh-mini-cart-benefits__header {
        display: grid !important;
        gap: 4px !important;
        margin-bottom: 10px !important;
    }

    .site-header-cart-hidden .kh-mini-cart-benefits__eyebrow {
        width: fit-content !important;
        padding: 4px 9px !important;
        border-radius: 999px !important;
        background: #e9fff4 !important;
        color: #0b8f4d !important;
        font-size: 10px !important;
        font-weight: 900 !important;
    }

    .site-header-cart-hidden .kh-mini-cart-benefits__header strong {
        color: #172033 !important;
        font-size: 14px !important;
        font-weight: 950 !important;
    }

    .site-header-cart-hidden .kh-mini-cart-benefits__grid {
        display: grid !important;
        gap: 8px !important;
    }

    .site-header-cart-hidden .kh-mini-cart-benefits__grid span {
        display: grid !important;
        grid-template-columns: 24px minmax(0, 1fr) !important;
        gap: 2px 8px !important;
        padding: 9px !important;
        border: 1px solid #dbe8fb !important;
        border-radius: 12px !important;
        background: #fff !important;
    }

    .site-header-cart-hidden .kh-mini-cart-benefits__grid i {
        grid-row: 1 / span 2 !important;
        width: 24px !important;
        height: 24px !important;
        border-radius: 9px !important;
        background: linear-gradient(135deg, #7567ff, #35c7ff) !important;
    }

    .site-header-cart-hidden .kh-mini-cart-benefits__grid i::before {
        content: "" !important;
        width: 12px !important;
        height: 12px !important;
        display: block !important;
        margin: 6px auto 0 !important;
        background: #fff !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat !important;
    }

    .site-header-cart-hidden .kh-mini-cart-benefits__grid b {
        color: #172033 !important;
        font-size: 12px !important;
        font-weight: 950 !important;
    }

    .site-header-cart-hidden .kh-mini-cart-benefits__grid small {
        color: #66758a !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        line-height: 1.35 !important;
    }
}

/* Keep the cart drawer below the WordPress admin bar for logged-in users. */
body.admin-bar:not(.is-mobile) .site-header-cart-hidden {
    top: 32px !important;
    height: calc(100vh - 32px) !important;
    min-height: calc(100vh - 32px) !important;
}

body.admin-bar:not(.is-mobile) .site-header-cart-hidden .widget_shopping_cart_content {
    height: calc(100vh - 96px) !important;
}

/* Checkout variant 4 final alignment with design mockup. */
body.woocommerce-checkout .woocommerce-form-coupon {
    display: none !important;
}

body.woocommerce-checkout .col2-set {
    padding: 22px !important;
}

body.woocommerce-checkout .kh-checkout-coupon-box,
body.woocommerce-checkout .kh-checkout-pay-box {
    margin-top: 18px !important;
    padding: 16px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #f8fbff 0%, #fff 100%) !important;
    box-shadow: 0 10px 24px rgba(18, 35, 68, .05) !important;
}

body.woocommerce-checkout .kh-checkout-section-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: #172033;
    font-size: 14px;
    font-weight: 950;
}

body.woocommerce-checkout .kh-checkout-section-title::before {
    content: "";
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    border-radius: 8px;
    background: linear-gradient(135deg, #7567ff, #35c7ff);
    box-shadow: 0 6px 14px rgba(70, 118, 255, .18);
}

body.woocommerce-checkout .kh-checkout-coupon-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 130px;
    gap: 10px;
}

body.woocommerce-checkout .kh-checkout-coupon-input {
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid #dbe7f5;
    border-radius: 10px;
    background: #fff;
    color: #172033;
}

body.woocommerce-checkout .kh-checkout-coupon-button {
    min-height: 42px;
    border: 0;
    border-radius: 10px;
    background: #172033;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}

body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment .payment_box {
    display: none !important;
}

body.woocommerce-checkout .kh-checkout-pay-badges {
    width: 100% !important;
    margin: 13px 0 0 !important;
}

body.woocommerce-checkout .kh-checkout-product-line {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
}

body.woocommerce-checkout .kh-checkout-product-line img {
    width: 52px !important;
    height: 52px !important;
    object-fit: contain;
    border: 1px solid #e5edf8;
    border-radius: 10px;
    background: #fff;
}

body.woocommerce-checkout .kh-checkout-product-name {
    color: #172033;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.3;
}

/* Mobile header true final override. */
@media (max-width: 767px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        gap: 8px !important;
        min-height: 72px !important;
        padding: 8px 18px !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        position: static !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        color: #172033 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        transform: none !important;
    }

    html body header.site-header .humburger > *,
    html body header.site-header .hamburger > *,
    html body header.site-header .menu-toggle > *,
    html body header.site-header .mobile-menu-toggle > * {
        display: none !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        content: "" !important;
        width: 20px !important;
        height: 20px !important;
        display: block !important;
        background: currentColor !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
    }

    html body header.site-header .site-logotype img {
        max-width: min(170px, 48vw) !important;
        max-height: 42px !important;
    }

    html body header.site-header .site-header-inner > .site-header-cart,
    html body header.site-header .site-header-cart .header-cart__link {
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
    }

    html body header.site-header .top-menu li.catalog-btn > :not(a),
    html body header.site-header .top-menu li.mega-catalog > :not(a),
    html body header.site-header .top-menu li.menu-item-has-children > button,
    html body header.site-header .top-menu li.menu-item-has-children > .sub-menu-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .dropdown-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .menu-item-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > .menu-item__arrow,
    html body header.site-header .top-menu li.menu-item-has-children > .submenu-toggle,
    html body header.site-header .top-menu li.menu-item-has-children > [class*="toggle"],
    html body header.site-header .top-menu li.menu-item-has-children > [class*="arrow"],
    html body header.site-header .top-menu .sub-menu-toggle,
    html body header.site-header .top-menu .dropdown-toggle,
    html body header.site-header .top-menu .menu-item-toggle,
    html body header.site-header .top-menu .menu-item__arrow,
    html body header.site-header .top-menu .submenu-toggle,
    html body header.site-header .mobile-menu-close,
    html body header.site-header .menu-close,
    html body header.site-header .drawer-close,
    html body header.site-header .offcanvas-close,
    html body header.site-header [class*="mobile-menu"][class*="close"] {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

/* True final product button hover guard. */
body.single-product .product-info form.cart button.single_add_to_cart_button,
body.single-product .product-info form.cart button.single_add_to_cart_button.button,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt,
body.single-product .product-info form.cart button.single_add_to_cart_button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:focus {
    border: 0 !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    background-color: #35c7ff !important;
    background-image: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .28) !important;
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-text-fill-color: #fff !important;
}

body.single-product .product-info form.cart button.single_add_to_cart_button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.button:focus,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:hover,
body.single-product .product-info form.cart button.single_add_to_cart_button.alt:focus {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    background-color: #22b7f3 !important;
    background-image: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    box-shadow: 0 14px 30px rgba(70, 118, 255, .36) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    transform: translateY(-1px);
}

body.single-product .product-info form.cart button.single_add_to_cart_button::before,
body.single-product .product-info form.cart button.single_add_to_cart_button:hover::before,
body.single-product .product-info form.cart button.single_add_to_cart_button:focus::before {
    background: currentColor !important;
}

.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.button:focus,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:hover,
.shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth .button:focus,
.kh-sidebar-product:hover .kh-sidebar-product__action,
.kh-sidebar-product:focus .kh-sidebar-product__action {
    background: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    background-color: #22b7f3 !important;
    background-image: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-text-fill-color: #fff !important;
}

/* Mobile menu absolute final repair. */
@media (max-width: 767px) {
    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        flex-direction: column !important;
        font-size: 0 !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        display: none !important;
        content: none !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile,
    html body .mobile-menu-placeholder.open #site-navigation-mobile,
    html body .js-mobile-menu-placeholder.open .main-navigation,
    html body .mobile-menu-placeholder.open .main-navigation {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        opacity: 1 !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner,
    html body .mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        padding: 16px 18px 20px !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
    }
}
/* Header responsive stabilization EOF override. */
@media (max-width: 1199px) and (min-width: 992px) {
    html body:not(.is-mobile) .super-header-inner {
        width: min(100% - 24px, 1180px) !important;
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 6px !important;
        padding: 8px 12px !important;
    }

    html body:not(.is-mobile) header.site-header .site-header-inner {
        width: min(100% - 24px, 1180px) !important;
        display: grid !important;
        grid-template-columns: minmax(172px, 210px) minmax(320px, 1fr) auto auto auto !important;
        grid-template-areas:
            "logo menu account favorite cart"
            "search search search search search" !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 12px 18px !important;
    }

    html body:not(.is-mobile) header.site-header .humburger {
        display: none !important;
    }

    html body:not(.is-mobile) header.site-header .site-branding {
        grid-area: logo !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) header.site-header .top-menu {
        grid-area: menu !important;
        min-width: 0 !important;
    }

    html body:not(.is-mobile) header.site-header .header-search {
        grid-area: search !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) header.site-header .header-customer-account {
        grid-area: account !important;
    }

    html body:not(.is-mobile) header.site-header .header-favorite {
        grid-area: favorite !important;
    }

    html body:not(.is-mobile) header.site-header .site-header-cart {
        grid-area: cart !important;
    }
}

@media (max-width: 991px) {
    html body .super-header,
    html body .super-header.super-header--mob-show,
    html body .super-header.super-header--mob-hide,
    html body .dim-header-top {
        display: none !important;
    }

    html body header.site-header .site-header-inner {
        width: 100% !important;
        max-width: none !important;
        display: grid !important;
        grid-template-columns: 48px minmax(150px, 220px) auto auto auto minmax(190px, 1fr) !important;
        grid-template-areas: "burger logo account favorite cart search" !important;
        align-items: center !important;
        gap: 10px !important;
        min-height: 72px !important;
        padding: 8px 18px !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    html body header.site-header .humburger,
    html body header.site-header .hamburger,
    html body header.site-header .menu-toggle,
    html body header.site-header .mobile-menu-toggle {
        grid-area: burger !important;
        position: static !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        border: 1px solid #e5edf8 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 22px rgba(18, 35, 68, .06) !important;
        color: #172033 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        transform: none !important;
    }

    html body header.site-header .humburger::before,
    html body header.site-header .hamburger::before,
    html body header.site-header .menu-toggle::before,
    html body header.site-header .mobile-menu-toggle::before {
        content: none !important;
        display: none !important;
    }

    html body header.site-header .humburger > span,
    html body header.site-header .hamburger > span,
    html body header.site-header .menu-toggle > span,
    html body header.site-header .mobile-menu-toggle > span {
        width: 20px !important;
        height: 2px !important;
        display: block !important;
        margin: 3px 0 !important;
        border-radius: 999px !important;
        background: #172033 !important;
        opacity: 1 !important;
        transform: none !important;
    }

    html body header.site-header .site-branding {
        grid-area: logo !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 6px 10px !important;
        justify-self: start !important;
    }

    html body header.site-header .site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        width: auto !important;
        max-width: min(170px, 28vw) !important;
        max-height: 42px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    html body header.site-header .top-menu {
        display: none !important;
    }

    html body header.site-header .header-customer-account {
        grid-area: account !important;
        display: flex !important;
    }

    html body header.site-header .header-favorite {
        grid-area: favorite !important;
        display: flex !important;
    }

    html body header.site-header .site-header-cart {
        grid-area: cart !important;
        display: flex !important;
    }

    html body header.site-header .header-search {
        grid-area: search !important;
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile,
    html body .mobile-menu-placeholder.open #site-navigation-mobile,
    html body .js-mobile-menu-placeholder.open .main-navigation,
    html body .mobile-menu-placeholder.open .main-navigation {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        height: auto !important;
        opacity: 1 !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        padding: 16px 18px 20px !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
    }

    html body #site-navigation-mobile .menu > li > a,
    html body #site-navigation-mobile .menu > li > span {
        display: inline-flex !important;
        align-items: center !important;
        min-height: 42px !important;
        padding: 0 10px !important;
        color: #172033 !important;
        font-size: 16px !important;
        font-weight: 800 !important;
        text-decoration: none !important;
    }

    html body #site-navigation-mobile li.catalog-btn > a::before,
    html body #site-navigation-mobile li.mega-catalog > a::before {
        content: "" !important;
        width: 16px !important;
        height: 16px !important;
        display: inline-block !important;
        flex: 0 0 16px !important;
        margin-right: 9px !important;
        background: currentColor !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16'/%3E%3Cpath d='M4 12h16'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") center / contain no-repeat !important;
    }

    html body #site-navigation-mobile .sub-menu-toggle,
    html body #site-navigation-mobile .dropdown-toggle,
    html body #site-navigation-mobile .menu-item-toggle,
    html body #site-navigation-mobile .menu-item__arrow,
    html body #site-navigation-mobile .submenu-toggle,
    html body #site-navigation-mobile li.menu-item-has-children > [class*="toggle"],
    html body #site-navigation-mobile li.menu-item-has-children > [class*="arrow"] {
        display: none !important;
    }
}

@media (max-width: 767px) {
    html body header.site-header .site-header-inner {
        grid-template-columns: 48px minmax(0, 1fr) 48px !important;
        grid-template-areas: "burger logo cart" !important;
        gap: 8px !important;
        min-height: 72px !important;
        padding: 8px 18px !important;
    }

    html body header.site-header .site-branding {
        justify-self: center !important;
        padding: 4px 8px !important;
    }

    html body header.site-header .site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        max-width: min(145px, 44vw) !important;
        max-height: 40px !important;
    }

    html body header.site-header .header-customer-account,
    html body header.site-header .header-favorite,
    html body header.site-header .header-search,
    html body header.site-header .header-compare {
        display: none !important;
    }

    html body header.site-header .site-header-cart,
    html body header.site-header .site-header-cart .header-cart__link {
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
    }
}

/* EOF mobile menu cleanup: parent theme submenu square must stay hidden. */
@media (max-width: 991px) {
    html body #site-navigation-mobile li.menu-item-has-children::before,
    html body #site-navigation-mobile li.menu-item-has-children::after,
    html body .js-mobile-menu-placeholder li.menu-item-has-children::before,
    html body .js-mobile-menu-placeholder li.menu-item-has-children::after,
    html body .mobile-menu-placeholder li.menu-item-has-children::before,
    html body .mobile-menu-placeholder li.menu-item-has-children::after,
    html body header.site-header .top-menu li.catalog-btn::before,
    html body header.site-header .top-menu li.catalog-btn::after,
    html body header.site-header .top-menu li.mega-catalog::before,
    html body header.site-header .top-menu li.mega-catalog::after {
        content: none !important;
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        opacity: 0 !important;
        pointer-events: none !important;
        visibility: hidden !important;
    }
}

/* EOF mobile header logo polish: full wordmark, no visible raster frame. */
@media (max-width: 767px) {
    html body header.site-header .site-branding,
    html body header.site-header.site-header .site-branding.site-branding {
        width: min(190px, 52vw) !important;
        max-width: min(190px, 52vw) !important;
        min-width: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        justify-self: center !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    html body header.site-header .site-logotype,
    html body header.site-header.site-header .site-logotype.site-logotype,
    html body header.site-header .site-branding a {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 48px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: visible !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    html body header.site-header .site-logotype img,
    html body header.site-header.site-header .site-logotype.site-logotype img,
    html body:not(.is-mobile) header.site-header .site-header-inner .site-branding .site-logotype img {
        width: 100% !important;
        max-width: 100% !important;
        height: 48px !important;
        max-height: 48px !important;
        display: block !important;
        object-fit: cover !important;
        object-position: center center !important;
        mix-blend-mode: multiply !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }
}

@media (max-width: 767px) {
    html body.is-mobile header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding,
    html body header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding {
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    html body.is-mobile header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding .site-logotype.site-logotype img,
    html body header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding .site-logotype.site-logotype img {
        width: min(158px, 46vw) !important;
        max-width: min(158px, 46vw) !important;
        height: auto !important;
        max-height: none !important;
        object-fit: contain !important;
        object-position: center center !important;
        mix-blend-mode: multiply !important;
    }
}

.kh-category-description-bottom {
    margin: 34px 0 0;
    padding: 22px 26px;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #f7fbff;
    color: #26334d;
    font-size: 16px;
    line-height: 1.65;
    box-shadow: 0 14px 34px rgba(46, 91, 150, 0.07);
}

.kh-category-description-bottom > :first-child {
    margin-top: 0;
}

.kh-category-description-bottom > :last-child {
    margin-bottom: 0;
}

.kh-shop-seo-text h2 {
    margin: 0 0 14px;
    color: #111827;
    font-size: 24px;
    line-height: 1.24;
    font-weight: 700;
    letter-spacing: 0;
}

.kh-shop-seo-text p {
    margin: 0 0 14px;
}

.kh-shop-faq {
    margin-top: 24px;
}


.kh-single-article-page {
    padding: 34px 0 56px;
    background: #fff;
}

.kh-single-article-shell {
    width: min(1480px, calc(100vw - 48px));
    margin: 0 auto;
}

.kh-single-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-bottom: 18px;
    color: #93a6be;
    font-size: 13px;
    font-weight: 700;
}

.kh-single-breadcrumbs a {
    color: #8aa1bc;
    text-decoration: none;
}

.kh-single-breadcrumbs a:hover {
    color: #3155dc;
}

.kh-archive-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 28px 0 22px;
    color: #9aaec4;
    font-size: 13px;
    line-height: 1.4;
}

.kh-archive-breadcrumbs a {
    color: #8aa1bc;
    text-decoration: none;
}

.kh-archive-breadcrumbs a:hover {
    color: #3155dc;
}

.kh-archive-breadcrumbs__sep {
    color: #c0cedd;
}

.kh-autodesk-program-index {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto 80px;
    padding-top: 18px;
}

.kh-autodesk-program-index__header {
    margin: 0 0 28px;
}

.kh-autodesk-program-index__header h1 {
    margin: 0;
    color: #050b18;
    font-size: 38px;
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: 0;
}

.kh-autodesk-program-index__header p {
    max-width: 680px;
    margin: 14px 0 0;
    color: #60708a;
    font-size: 17px;
    line-height: 1.6;
}

.kh-autodesk-program-index__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.kh-autodesk-program-card {
    display: grid;
    gap: 12px;
    min-height: 166px;
    padding: 14px;
    border: 1px solid #dbe8f8;
    border-radius: 8px;
    background: #fff;
    color: #071225;
    text-decoration: none;
    box-shadow: 0 14px 34px rgba(34, 85, 150, .07);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.kh-autodesk-program-card:hover,
.kh-autodesk-program-card:focus-visible {
    border-color: #a9d5ff;
    box-shadow: 0 18px 44px rgba(34, 120, 200, .13);
    color: #071225;
    transform: translateY(-2px);
}

.kh-autodesk-program-card__image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 16 / 7;
    overflow: hidden;
    border: 1px solid #dceafa;
    border-radius: 8px;
    background: #f2f8ff;
}

.kh-autodesk-program-card__image img {
    display: block;
    width: auto;
    max-width: 82%;
    height: 88%;
    object-fit: contain;
}

.kh-autodesk-program-card__title {
    display: block;
    color: #071225;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.25;
}

@media (max-width: 900px) {
    .kh-autodesk-program-index__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .kh-autodesk-program-index {
        width: min(100% - 24px, 1180px);
        margin-bottom: 56px;
    }

    .kh-autodesk-program-index__header h1 {
        font-size: 30px;
    }

    .kh-autodesk-program-index__grid {
        grid-template-columns: 1fr;
    }
}

.kh-single-article-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 28px;
    align-items: start;
}

.kh-single-article {
    min-width: 0;
}

.kh-single-article-hero {
    padding: 34px 38px;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: linear-gradient(180deg, #f8fbff 0%, #f2f7ff 100%);
    box-shadow: 0 18px 44px rgba(46, 91, 150, 0.08);
}

.kh-single-article-kicker {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-bottom: 14px;
    color: #60708a;
    font-size: 13px;
    font-weight: 800;
}

.kh-single-article-kicker span,
.kh-single-article-kicker time {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 12px;
    border: 1px solid #dce9fb;
    border-radius: 999px;
    background: #fff;
}

.kh-single-article-hero h1 {
    max-width: 980px;
    margin: 0;
    color: #111827;
    font-size: clamp(34px, 3.5vw, 54px);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: 0;
}

.kh-single-article-excerpt {
    max-width: 820px;
    margin: 18px 0 0;
    color: #4f5f78;
    font-size: 18px;
    line-height: 1.6;
}

.kh-single-article-cover {
    margin: 22px 0 0;
    overflow: hidden;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: #f7fbff;
    box-shadow: 0 18px 44px rgba(46, 91, 150, 0.08);
}

.kh-single-article-cover img {
    display: block;
    width: 100%;
    height: auto;
}

.kh-single-article-content {
    margin-top: 22px;
    padding: 34px 38px;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: #fff;
    color: #172033;
    font-size: 17px;
    line-height: 1.78;
    box-shadow: 0 16px 40px rgba(46, 91, 150, 0.07);
}

.kh-single-article-content > :first-child {
    margin-top: 0;
}

.kh-single-article-content > :last-child {
    margin-bottom: 0;
}

.kh-single-article-content h2,
.kh-single-article-content h3,
.kh-single-article-content h4 {
    color: #111827;
    line-height: 1.22;
    letter-spacing: 0;
}

.kh-single-article-content h2 {
    margin: 34px 0 14px;
    font-size: 30px;
    font-weight: 900;
}

.kh-single-article-content h3 {
    margin: 28px 0 12px;
    font-size: 24px;
    font-weight: 850;
}

.kh-single-article-content p,
.kh-single-article-content ul,
.kh-single-article-content ol {
    margin: 0 0 18px;
}

.kh-single-article-content a {
    color: #3155dc;
    font-weight: 800;
    text-decoration: none;
}

.kh-single-article-content a:hover {
    color: #179fd6;
}

.kh-single-article-content img {
    max-width: 100%;
    height: auto;
    border-radius: 14px;
}

.kh-single-article-sidebar {
    position: sticky;
    top: 110px;
    display: grid;
    gap: 18px;
}

.kh-single-side-card {
    padding: 22px;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: #f7fbff;
    box-shadow: 0 14px 34px rgba(46, 91, 150, 0.07);
}

.kh-single-side-card h2 {
    margin: 0 0 16px;
    color: #111827;
    font-size: 20px;
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: 0;
}

.kh-single-products-list {
    display: grid;
    gap: 12px;
}

.kh-single-product {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-height: 86px;
    padding: 10px;
    border: 1px solid #e5edf8;
    border-radius: 14px;
    background: #fff;
    color: #172033;
    text-decoration: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.kh-single-product:hover {
    border-color: #cfe1fb;
    box-shadow: 0 12px 24px rgba(46, 91, 150, 0.12);
    transform: translateY(-1px);
}

.kh-single-product__image {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 66px;
}

.kh-single-product__image img {
    display: block;
    max-width: 64px;
    max-height: 72px;
    width: auto;
    height: auto;
}

.kh-single-products-more {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 14px;
    padding: 0 14px;
    border: 1px solid #dbe7f7;
    border-radius: 12px;
    background: #fff;
    color: #172033 !important;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(18, 35, 68, .04);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}

.kh-single-products-more:hover {
    transform: translateY(-1px);
    border-color: #c7d6ff;
    color: #245bdf !important;
    box-shadow: 0 12px 22px rgba(70, 118, 255, .12);
}

.kh-single-product__title {
    display: block;
    margin-bottom: 6px;
    color: #2452c8;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.25;
}

.kh-single-product__price {
    display: block;
    color: #172033;
    font-size: 14px;
    font-weight: 800;
}

.kh-single-product__price del {
    color: #93a6be;
    font-weight: 700;
}

.kh-single-product__price ins {
    color: #ff4d5f;
    text-decoration: none;
}

.kh-single-support {
    background: linear-gradient(180deg, #f7fbff 0%, #eaf5ff 100%);
}

.kh-single-support p {
    margin: 0 0 14px;
    color: #4f5f78;
    font-size: 15px;
    line-height: 1.55;
}

.kh-single-support img {
    display: block;
    width: 190px;
    max-width: 100%;
    margin: 6px auto 16px;
}

.kh-single-gradient-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 14px;
    background: linear-gradient(135deg, #7567ff, #35c7ff);
    color: #fff;
    font-size: 15px;
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 14px 28px rgba(80, 141, 255, 0.24);
}

@media (max-width: 1100px) {
    .kh-single-article-layout {
        grid-template-columns: 1fr;
    }

    .kh-single-article-sidebar {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.kh-info-page--agreement .kh-info-legal-section {
    color: #172033;
    font-size: 16px;
    line-height: 1.72;
}

.kh-info-page--agreement .kh-info-legal-section > :first-child {
    margin-top: 0;
}

.kh-info-page--agreement .kh-info-legal-section > :last-child {
    margin-bottom: 0;
}

.kh-info-page--agreement .kh-info-legal-section h2,
.kh-info-page--agreement .kh-info-legal-section h3,
.kh-info-page--agreement .kh-info-legal-section h4 {
    color: #111827;
    letter-spacing: 0;
    line-height: 1.22;
}

.kh-info-page--agreement .kh-info-legal-section h2 {
    margin-top: 30px;
    font-size: 28px;
    font-weight: 900;
}

.kh-info-page--agreement .kh-info-legal-section h3 {
    margin-top: 24px;
    font-size: 22px;
    font-weight: 850;
}

/* Footer links must stay clickable above third-party chat hit areas. */
html body .site-footer,
html body footer,
html body .site-footer-inner,
html body .footer-navigation,
html body .footer-widgets,
html body .dim-footer {
    position: relative !important;
    z-index: 2147483646 !important;
    isolation: isolate;
}

html body .site-footer a,
html body footer a,
html body .site-footer-inner a,
html body .footer-navigation a,
html body .footer-widgets a,
html body .dim-footer a {
    position: relative !important;
    z-index: 2147483647 !important;
    pointer-events: auto !important;
}

html body .site-footer .footer-bottom {
    display: grid !important;
    grid-template-columns: minmax(480px, 1fr) auto !important;
    gap: 42px !important;
    align-items: center !important;
    padding: 18px 0 0 !important;
}

html body .site-footer .footer-info {
    min-width: 0 !important;
}

html body .site-footer .footer-brand {
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
}

html body .site-footer .footer-brand__logo {
    width: 220px !important;
    max-width: 100% !important;
    height: auto !important;
    flex: 0 0 auto !important;
}

html body .site-footer .footer-brand__text {
    max-width: 280px !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
}

html body .site-footer .footer-counters {
    margin: 0 110px 0 0 !important;
    justify-self: end !important;
}

html body .site-footer .dim-footer.footer-bottom-right {
    display: grid !important;
    gap: 18px !important;
    justify-items: center !important;
    align-items: center !important;
    margin: 0 !important;
}

html body .site-footer .footer-links {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 24px !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
}

html body .site-footer .footer-links a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 34px !important;
}

html body .site-footer .footer-payments {
    display: flex !important;
    gap: 28px !important;
    align-items: center !important;
    justify-content: center !important;
}

html body .site-footer .footer-payments img {
    display: block !important;
    width: auto !important;
    max-height: 42px !important;
    object-fit: contain !important;
}

@media (max-width: 1280px) {
    html body .site-footer .footer-counters {
        margin-right: 86px !important;
    }
}

@media (max-width: 980px) {
    html body .site-footer .footer-bottom {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    html body .site-footer .footer-counters {
        justify-self: start !important;
        margin-right: 0 !important;
    }

    html body .site-footer .dim-footer.footer-bottom-right {
        justify-items: start !important;
    }

    html body .site-footer .footer-links,
    html body .site-footer .footer-payments {
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
    }
}

html body iframe#__keyhub_widget {
    width: 96px !important;
    max-width: 96px !important;
    height: 96px !important;
    max-height: 96px !important;
}

html body iframe#__keyhub_widget[style*="650px"] {
    width: 420px !important;
    max-width: min(420px, 100vw) !important;
    height: 650px !important;
    max-height: min(650px, 100vh) !important;
}

html body footer.site-footer {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
}

html body footer.site-footer .footer-widgets {
    padding-bottom: 18px !important;
    margin-bottom: 18px !important;
}

html body footer.site-footer .footer-bottom {
    padding-top: 8px !important;
}

html body .kh-info-page--help .kh-help-checklist {
    padding: 24px 26px 26px !important;
    border: 1px solid #e5edf8 !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #ffffff 0%, #f6faff 100%) !important;
    box-shadow: 0 18px 44px rgba(33, 54, 96, .08) !important;
}

html body .kh-info-page--help .kh-help-checklist .kh-info-section-head {
    margin-bottom: 18px !important;
}

html body .kh-info-page--help .kh-help-checklist ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html body .kh-info-page--help .kh-help-checklist li {
    min-height: 70px !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 14px 16px 14px 48px !important;
}

html body .kh-info-page--help .kh-help-checklist li:nth-child(1) {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

html body .kh-info-page--help .kh-help-checklist li:nth-child(2) {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

html body .kh-info-page--help .kh-help-checklist li:nth-child(3) {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

html body .kh-info-page--help .kh-help-checklist li:nth-child(4) {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

@media (max-width: 767px) {
    html body .kh-info-page--help .kh-help-checklist {
        padding: 20px !important;
    }

    html body .kh-info-page--help .kh-help-checklist ul {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    html body .kh-info-page--help .kh-help-checklist li:nth-child(n) {
        grid-column: auto !important;
        grid-row: auto !important;
    }
}

@media (max-width: 560px) {
    html body .site-footer .footer-brand {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 14px !important;
    }

    html body .site-footer .footer-brand__logo {
        width: 190px !important;
    }
}

@media (max-width: 767px) {
    .kh-single-article-page {
        padding: 22px 0 40px;
    }

    .kh-single-article-shell {
        width: min(100% - 28px, 720px);
    }

    .kh-single-article-hero,
    .kh-single-article-content {
        padding: 22px 18px;
        border-radius: 16px;
    }

    .kh-single-article-hero h1 {
        font-size: 31px;
    }

    .kh-single-article-cover {
        border-radius: 16px;
    }

    .kh-single-article-sidebar {
        grid-template-columns: 1fr;
    }
}

.kh-cookie-banner[hidden],
.kh-cookie-settings[hidden] {
    display: none !important;
}

.kh-cookie-banner {
    position: fixed;
    right: 102px;
    bottom: 22px;
    z-index: 9996;
    display: flex;
    justify-content: flex-end;
    pointer-events: none;
}

.kh-cookie-banner__body {
    width: 360px;
    max-width: calc(100vw - 126px);
    padding: 12px 14px 11px;
    border: 1px solid #e5edf8;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 12px 28px rgba(35, 70, 120, 0.14);
    pointer-events: auto;
}

.kh-cookie-settings__card h2,
.kh-cookie-toggle strong {
    color: #0f172a;
    font-weight: 800;
    letter-spacing: 0;
}

.kh-cookie-banner__text p,
.kh-cookie-settings__card p,
.kh-cookie-toggle small {
    margin: 0;
    color: #50617b;
    font-size: 12px;
    line-height: 1.42;
}

.kh-cookie-banner__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    margin-right: 4px;
    border: 1px solid #bcd5ff;
    border-radius: 50%;
    background: #f1f7ff;
    color: #3155dc;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    vertical-align: 1px;
}

.kh-cookie-banner__text a,
.kh-cookie-banner__text a:hover {
    color: #3155dc;
    font-weight: 750;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.kh-cookie-banner__actions,
.kh-cookie-settings__actions {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: flex-end;
}

.kh-cookie-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    margin-top: 8px;
    padding: 0 12px;
    border-radius: 8px;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.kh-cookie-button:hover {
    transform: translateY(-1px);
}

.kh-cookie-button--primary {
    border: 0;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff;
    box-shadow: 0 8px 18px rgba(80, 141, 255, 0.20);
}

.kh-cookie-button--ghost {
    border: 1px solid #dce9fb;
    background: #f7fbff;
    color: #3155dc;
}

.kh-cookie-button--ghost:hover {
    border-color: #bcd5ff;
    box-shadow: 0 8px 18px rgba(50, 105, 205, 0.10);
}

.kh-cookie-settings {
    position: fixed;
    inset: 0;
    z-index: 10010;
    display: grid;
    place-items: center;
    padding: 18px;
    background: rgba(17, 24, 39, 0.42);
    backdrop-filter: blur(5px);
}

.kh-cookie-settings__card {
    position: relative;
    width: min(540px, 100%);
    padding: 24px;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(35, 70, 120, 0.20);
}

.kh-cookie-settings__card h2 {
    margin: 0 42px 8px 0;
    font-size: 24px;
    line-height: 1.2;
}

.kh-cookie-settings__close {
    position: absolute;
    top: 16px;
    right: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid #dce9fb;
    border-radius: 12px;
    background: #f7fbff;
    color: #0f172a;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}

.kh-cookie-toggle {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 12px;
    margin-top: 14px;
    padding: 14px;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #f7fbff;
}

.kh-cookie-toggle input {
    width: 20px;
    height: 20px;
    margin: 2px 0 0;
    accent-color: #4a8cff;
}

.kh-cookie-toggle--locked {
    background: #f1f7ff;
}

.kh-cookie-settings__actions {
    margin-top: 18px;
}

.kh-product-faq {
    display: grid;
    gap: 12px;
    width: 100%;
}

.kh-category-faq {
    width: min(calc(100% - 32px), 980px);
    margin: 22px auto 42px;
    padding: 22px;
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
    box-shadow: 0 18px 42px rgba(58, 105, 165, 0.08);
}

.kh-category-faq__head {
    display: grid;
    gap: 8px;
    margin-bottom: 16px;
}

.kh-category-faq__head span {
    width: max-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: #eef5ff;
    color: #4267ff;
    font-size: 13px;
    line-height: 1;
    font-weight: 900;
}

.kh-category-faq__head h2 {
    margin: 0;
    color: #071122;
    font-size: 26px;
    line-height: 1.2;
    font-weight: 900;
}

.kh-category-faq__list {
    max-width: 760px;
    margin: 0 auto;
}

.kh-category-faq .kh-product-faq__item summary {
    min-height: 52px;
    padding: 14px 16px;
    font-size: 15px;
}

.kh-category-faq .kh-product-faq__answer {
    padding: 0 16px 16px;
    font-size: 14px;
}

.kh-product-faq__item {
    overflow: hidden;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 16px 34px rgba(58, 105, 165, 0.08);
}

.kh-product-faq__item summary {
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 17px 18px;
    color: #061225;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 900;
    cursor: pointer;
    list-style: none;
}

.kh-product-faq__item summary::-webkit-details-marker {
    display: none;
}

.kh-product-faq__item summary span {
    min-width: 0;
}

.kh-product-faq__item summary i {
    position: relative;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    border-radius: 10px;
    background: #eef5ff;
    box-shadow: inset 0 0 0 1px #dce8f8;
}

.kh-product-faq__item summary i::before,
.kh-product-faq__item summary i::after {
    content: "";
    position: absolute;
    left: 10px;
    top: 15px;
    width: 12px;
    height: 2px;
    border-radius: 999px;
    background: #3474ff;
}

.kh-product-faq__item summary i::after {
    transform: rotate(90deg);
}

.kh-product-faq__item[open] summary {
    background: #f6faff;
}

.kh-product-faq__item[open] summary i::after {
    transform: rotate(0deg);
}

.kh-product-faq__answer {
    padding: 16px 18px 18px;
    color: #53647e;
    font-size: 15px;
    line-height: 1.7;
}

.kh-product-faq__answer p {
    margin: 12px 0 0;
}

.kh-product-faq__answer p:first-child {
    margin-top: 0;
}

.kh-product-faq__answer ul,
.kh-product-faq__answer ol {
    margin: 12px 0 0;
    padding-left: 20px;
}

.kh-product-faq__answer a {
    color: #2f68ff;
    font-weight: 800;
    text-decoration: none;
}

.kh-product-faq__answer a:hover {
    text-decoration: underline;
}

body.woocommerce-account .site-main .post,
body.woocommerce-account .account-content,
body.woocommerce-account .woocommerce {
    width: min(100%, 1220px);
    margin-inline: auto;
}

body.woocommerce-account .page-title {
    width: min(100%, 1220px);
    margin: 26px auto 18px;
    color: #071122;
    font-size: 40px;
    line-height: 1.12;
    font-weight: 900;
}

body.woocommerce-account .account-content {
    margin-bottom: 64px;
}

.kh-account-auth {
    display: grid;
    grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr);
    gap: 22px;
    align-items: stretch;
    margin: 0 auto 60px;
}

.kh-account-auth__intro,
body.woocommerce-account #customer_login .u-column1,
body.woocommerce-account #customer_login .u-column2,
body.woocommerce-account .woocommerce-MyAccount-content,
.kh-account-dashboard,
body.woocommerce-account form.woocommerce-EditAccountForm,
body.woocommerce-account form.woocommerce-address-fields,
body.woocommerce-account .woocommerce-order-details,
body.woocommerce-account .woocommerce-customer-details {
    border: 1px solid #e5edf8;
    border-radius: 18px;
    background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
    box-shadow: 0 18px 42px rgba(58, 105, 165, 0.08);
}

.kh-account-auth__intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 430px;
    padding: 34px;
}

.kh-account-auth__intro > span,
.kh-account-dashboard__hero > span {
    width: max-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: #eef5ff;
    color: #4267ff;
    font-size: 13px;
    line-height: 1;
    font-weight: 900;
}

.kh-account-auth__intro h2,
.kh-account-dashboard__hero h2 {
    margin: 18px 0 14px;
    color: #071122;
    font-size: 34px;
    line-height: 1.15;
    font-weight: 900;
}

.kh-account-auth__intro p,
.kh-account-dashboard__hero p,
.kh-account-form-note {
    margin: 0;
    color: #53647e;
    font-size: 16px;
    line-height: 1.65;
}

.kh-account-auth__features {
    display: grid;
    gap: 12px;
    margin-top: 28px;
}

.kh-account-auth__features div {
    padding: 15px;
    border: 1px solid #e5edf8;
    border-radius: 14px;
    background: #fff;
}

.kh-account-auth__features strong,
.kh-account-auth__features small {
    display: block;
}

.kh-account-auth__features strong {
    color: #071122;
    font-size: 15px;
    font-weight: 900;
}

.kh-account-auth__features small {
    margin-top: 4px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

body.woocommerce-account #customer_login {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    min-width: 0;
}

body.woocommerce-account #customer_login::before,
body.woocommerce-account #customer_login::after {
    display: none;
    content: none;
}

body.woocommerce-account #customer_login .u-column1,
body.woocommerce-account #customer_login .u-column2 {
    float: none;
    width: auto;
    min-width: 0;
    padding: 28px;
}

body.woocommerce-account #customer_login h2,
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
    display: block !important;
    margin: 0 0 10px;
    color: #071122;
    font-size: 24px;
    line-height: 1.25;
    font-weight: 900;
}

body.woocommerce-account #customer_login,
body.woocommerce-account #customer_login .u-column1,
body.woocommerce-account #customer_login .u-column2,
.kh-account-auth,
.kh-account-auth__intro {
    max-width: 100%;
    overflow-wrap: anywhere;
}

body.woocommerce-account .woocommerce form.login,
body.woocommerce-account .woocommerce form.register {
    margin: 20px 0 0;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.woocommerce-account .show-password-input {
    display: none !important;
}

body.woocommerce-account .woocommerce form.login::before,
body.woocommerce-account .woocommerce form.login::after,
body.woocommerce-account .woocommerce form.register::before,
body.woocommerce-account .woocommerce form.register::after {
    display: none !important;
    content: none !important;
}

body.woocommerce-account .form-row {
    margin: 0 0 16px;
    padding: 0;
}

body.woocommerce-account label {
    display: block;
    margin-bottom: 8px;
    color: #25324a;
    font-size: 14px;
    font-weight: 850;
}

body.woocommerce-account .input-text,
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account input[type="tel"],
body.woocommerce-account select,
body.woocommerce-account textarea {
    width: 100%;
    min-height: 48px;
    padding: 0 15px;
    border: 1px solid #dbe8f7;
    border-radius: 14px;
    background: #f8fbff;
    color: #071122;
    font-size: 15px;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

body.woocommerce-account textarea {
    min-height: 120px;
    padding-top: 13px;
}

body.woocommerce-account .input-text:focus,
body.woocommerce-account input[type="text"]:focus,
body.woocommerce-account input[type="email"]:focus,
body.woocommerce-account input[type="password"]:focus,
body.woocommerce-account input[type="tel"]:focus,
body.woocommerce-account select:focus,
body.woocommerce-account textarea:focus {
    border-color: #74b8ff;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(76, 143, 255, 0.12);
}

body.woocommerce-account .woocommerce-form__label-for-checkbox {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
    color: #526173;
    font-size: 14px;
}

body.woocommerce-account input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: #4a8cff;
}

body.woocommerce-account .woocommerce button.button,
body.woocommerce-account .woocommerce .button,
body.woocommerce-account .woocommerce a.button {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 22px;
    border: 0 !important;
    border-radius: 14px;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    color: #fff !important;
    font-size: 15px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: 0 14px 26px rgba(70, 118, 255, .22);
}

body.woocommerce-account .woocommerce button.button:hover,
body.woocommerce-account .woocommerce button.button:focus,
body.woocommerce-account .woocommerce button.button:active,
body.woocommerce-account .woocommerce .button:hover,
body.woocommerce-account .woocommerce .button:focus,
body.woocommerce-account .woocommerce .button:active,
body.woocommerce-account .woocommerce a.button:hover,
body.woocommerce-account .woocommerce a.button:focus,
body.woocommerce-account .woocommerce a.button:active {
    border: 0 !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    opacity: 1 !important;
    transform: translateY(-1px);
    box-shadow: 0 16px 30px rgba(70, 118, 255, .28) !important;
}

body.woocommerce-account .woocommerce button.button::before,
body.woocommerce-account .woocommerce button.button::after,
body.woocommerce-account .woocommerce .button::before,
body.woocommerce-account .woocommerce .button::after,
body.woocommerce-account .woocommerce a.button::before,
body.woocommerce-account .woocommerce a.button::after {
    display: none !important;
    content: none !important;
}

body.woocommerce-account .lost_password {
    margin: 12px 0 0;
}

body.woocommerce-account .lost_password a,
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button),
.kh-account-dashboard__grid a {
    color: #2f68ff;
    font-weight: 850;
    text-decoration: none;
}

body.woocommerce-account .lost_password a:hover,
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):hover,
.kh-account-dashboard__grid a:hover {
    text-decoration: underline;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
    width: min(100%, 1220px);
    margin: 0 auto 18px;
}

body.woocommerce-account .woocommerce-MyAccount-navigation .account-tiles {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

body.woocommerce-account .woocommerce-MyAccount-navigation .account-tile {
    margin: 0;
}

body.woocommerce-account .woocommerce-MyAccount-navigation .tile-link {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    border: 1px solid #dfe9f7;
    border-radius: 14px;
    background: #fff;
    color: #25324a;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 8px 18px rgba(18, 35, 68, .04);
}

body.woocommerce-account .woocommerce-MyAccount-navigation .is-active .tile-link,
body.woocommerce-account .woocommerce-MyAccount-navigation .tile-link:hover {
    border-color: transparent;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff;
    box-shadow: 0 12px 24px rgba(70, 118, 255, .22);
}

body.woocommerce-account .woocommerce-MyAccount-content {
    float: none;
    width: min(100%, 1220px);
    margin: 0 auto 60px;
    padding: 28px;
}

.kh-account-dashboard {
    padding: 28px;
}

.kh-account-dashboard__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 20px;
}

.kh-account-dashboard__grid a {
    display: block;
    padding: 18px;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(58, 105, 165, 0.06);
}

.kh-account-dashboard__grid strong,
.kh-account-dashboard__grid span {
    display: block;
}

.kh-account-dashboard__grid strong {
    color: #071122;
    font-size: 16px;
    font-weight: 900;
}

.kh-account-dashboard__grid span {
    margin-top: 6px;
    color: #64748b;
    font-size: 14px;
    line-height: 1.5;
}

body.woocommerce-account table.shop_table {
    overflow: hidden;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #fff;
    border-collapse: separate;
    border-spacing: 0;
}

body.woocommerce-account table.shop_table th,
body.woocommerce-account table.shop_table td {
    padding: 16px;
    border-color: #edf3fb;
}

@media (max-width: 767px) {
    .kh-cookie-banner {
        right: 74px;
        bottom: 12px;
    }

    .kh-cookie-banner__body {
        width: 280px;
        max-width: calc(100vw - 90px);
        padding: 11px 12px 10px;
    }

    .kh-cookie-banner__actions,
    .kh-cookie-settings__actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
    }

    .kh-cookie-settings__actions {
        grid-template-columns: 1fr;
    }

    .kh-cookie-button {
        width: auto;
        min-height: 28px;
        padding: 0 10px;
    }

    .kh-cookie-settings {
        padding: 12px;
    }

    .kh-cookie-settings__card {
        padding: 20px 16px;
    }

    .kh-cookie-settings__card h2 {
        font-size: 22px;
    }

    .kh-product-faq__item summary {
        min-height: 54px;
        padding: 14px;
        font-size: 14px;
    }

    .kh-product-faq__item summary i {
        flex-basis: 28px;
        width: 28px;
        height: 28px;
        border-radius: 9px;
    }

    .kh-product-faq__item summary i::before,
    .kh-product-faq__item summary i::after {
        left: 9px;
        top: 13px;
        width: 10px;
    }

    .kh-product-faq__answer {
        padding: 14px 14px 14px;
        font-size: 14px;
    }

    .kh-category-faq {
        width: calc(100% - 24px);
        margin: 20px auto 34px;
        padding: 16px 12px;
        border-radius: 16px;
    }

    .kh-category-faq__head {
        margin-bottom: 14px;
    }

    .kh-category-faq__head h2 {
        font-size: 22px;
    }

    .kh-category-faq .kh-product-faq__item summary {
        min-height: 50px;
        padding: 13px;
        font-size: 14px;
    }

    body.woocommerce-account .page-title {
        margin: 20px 12px 14px;
        font-size: 30px;
    }

    body.woocommerce-account .account-content {
        width: calc(100% - 24px);
    }

    .kh-account-auth {
        grid-template-columns: 1fr;
        gap: 14px;
        margin-bottom: 38px;
    }

    .kh-account-auth__intro {
        min-height: 0;
        padding: 22px 18px;
    }

    .kh-account-auth__intro h2,
    .kh-account-dashboard__hero h2 {
        font-size: 26px;
    }

    body.woocommerce-account #customer_login {
        grid-template-columns: 1fr;
    }

    body.woocommerce-account #customer_login .u-column1,
    body.woocommerce-account #customer_login .u-column2,
    body.woocommerce-account .woocommerce-MyAccount-content,
    .kh-account-dashboard {
        padding: 18px;
        border-radius: 16px;
    }

    body.woocommerce-account .woocommerce button.button,
    body.woocommerce-account .woocommerce .button,
    body.woocommerce-account .woocommerce a.button {
        width: 100%;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation {
        width: calc(100% - 24px);
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation .account-tiles {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation .tile-link {
        width: 100%;
        min-height: 42px;
        padding: 0 10px;
        font-size: 13px;
    }

    body.woocommerce-account .woocommerce-MyAccount-content {
        width: calc(100% - 24px);
        margin-bottom: 40px;
    }

    .kh-account-dashboard__grid {
        grid-template-columns: 1fr;
    }

}

/* Final mobile overrides for FAQ cards and category pagination. */
@media (max-width: 767px) {
    html body header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding {
        width: min(222px, 56vw) !important;
        max-width: min(222px, 56vw) !important;
        height: 54px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        justify-self: center !important;
        transform: translateX(18px) !important;
    }

    html body header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding .site-logotype.site-logotype,
    html body header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding a {
        width: 100% !important;
        height: 54px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    html body.is-mobile header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding .site-logotype.site-logotype img,
    html body header.site-header.site-header .site-header-inner.site-header-inner .site-branding.site-branding .site-logotype.site-logotype img {
        width: min(214px, 54vw) !important;
        max-width: min(214px, 54vw) !important;
        height: auto !important;
        max-height: 52px !important;
        object-fit: contain !important;
        object-position: center center !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq,
    .kh-product-faq,
    .kh-category-faq__list {
        gap: 10px !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item,
    .kh-product-faq__item {
        overflow: hidden;
        border: 1px solid #dfe9f7 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 10px 24px rgba(58, 105, 165, 0.06) !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary,
    .kh-product-faq__item summary,
    .kh-category-faq .kh-product-faq__item summary {
        min-height: 56px !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 32px !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 12px 12px 12px 14px !important;
        color: #071122 !important;
        font-size: 15px !important;
        line-height: 1.28 !important;
        font-weight: 900 !important;
        background: #f8fbff !important;
        list-style: none !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary::-webkit-details-marker,
    .kh-product-faq__item summary::-webkit-details-marker {
        display: none !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary::marker,
    .kh-product-faq__item summary::marker {
        content: "" !important;
        font-size: 0 !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary span,
    .kh-product-faq__item summary span {
        display: block !important;
        min-width: 0 !important;
        padding-right: 2px;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary i,
    .kh-product-faq__item summary i {
        grid-column: 2 !important;
        justify-self: end !important;
        flex: 0 0 32px !important;
        width: 32px !important;
        height: 32px !important;
        border-radius: 10px !important;
        background: linear-gradient(180deg, #eef5ff 0%, #e8f2ff 100%) !important;
        box-shadow: inset 0 0 0 1px #d5e5fb !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary i::before,
    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item summary i::after,
    .kh-product-faq__item summary i::before,
    .kh-product-faq__item summary i::after {
        left: 10px !important;
        top: 15px !important;
        width: 12px !important;
        background: #2f68ff !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__item[open] summary,
    .kh-product-faq__item[open] summary {
        border-bottom: 1px solid #eaf1fb !important;
        background: #eef6ff !important;
    }

    .woocommerce-Tabs-panel--kh_product_faq .kh-product-faq__answer,
    .kh-product-faq__answer,
    .kh-category-faq .kh-product-faq__answer {
        padding: 14px 14px 16px !important;
        color: #394b68 !important;
        font-size: 15px !important;
        line-height: 1.6 !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers,
    .woocommerce-pagination ul.page-numbers {
        gap: 8px !important;
        margin-top: 24px !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers,
    .woocommerce-pagination ul.page-numbers li .page-numbers,
    .kh-pagination .page-numbers,
    .navigation.pagination .page-numbers {
        min-width: 38px !important;
        width: 38px !important;
        height: 38px !important;
        padding: 0 !important;
        border-radius: 12px !important;
        background: #fff !important;
        color: #526173 !important;
        box-shadow: 0 8px 18px rgba(18, 35, 68, .05) !important;
        -webkit-tap-highlight-color: transparent;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:hover,
    .woocommerce-pagination ul.page-numbers li .page-numbers:hover,
    .kh-pagination .page-numbers:hover,
    .navigation.pagination .page-numbers:hover {
        border-color: #dfe9f7 !important;
        background: #fff !important;
        color: #526173 !important;
        box-shadow: 0 8px 18px rgba(18, 35, 68, .05) !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers.current,
    .woocommerce-pagination ul.page-numbers li .page-numbers.current,
    .kh-pagination .page-numbers.current,
    .navigation.pagination .page-numbers.current {
        border-color: transparent !important;
        background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
        color: #fff !important;
        box-shadow: 0 12px 22px rgba(70, 118, 255, .20) !important;
    }

    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:focus,
    .woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers:active,
    .woocommerce-pagination ul.page-numbers li .page-numbers:focus,
    .woocommerce-pagination ul.page-numbers li .page-numbers:active,
    .kh-pagination .page-numbers:focus,
    .kh-pagination .page-numbers:active,
    .navigation.pagination .page-numbers:focus,
    .navigation.pagination .page-numbers:active {
        outline: none !important;
        transform: none !important;
    }
}
/* True final typography override for product readability. */
html body.single-product,
html body.single-product input,
html body.single-product button,
html body.single-product select,
html body.single-product textarea,
html body.woocommerce,
html body.woocommerce-page {
    font-family: var(--kh-ui-font) !important;
    letter-spacing: 0 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html body.single-product .product_title,
html body.single-product h1.product_title {
    font-weight: 700 !important;
    line-height: 1.16 !important;
}

html body.single-product .kh-product-picker__header,
html body.single-product .kh-product-option__title,
html body.single-product .kh-product-feature-title,
html body.single-product .kh-sidebar-recommendations-widget__title,
html body.single-product .support-title,
html body.single-product .woocommerce-product-attributes th,
html body.single-product .woocommerce-product-attributes-item__label,
html body.woocommerce .products .product .woocommerce-loop-product__title,
html body.woocommerce-page .products .product .woocommerce-loop-product__title {
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

html body.single-product .kh-product-picker__chip,
html body.single-product .kh-product-picker__tab,
html body.single-product .download-item,
html body.single-product .single_add_to_cart_button,
html body.single-product .button,
html body.single-product .kh-single-product-card__title,
html body.single-product .kh-single-product-card__more,
html body.woocommerce .products .product .button,
html body.woocommerce-page .products .product .button {
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

html body.single-product .woocommerce-product-attributes th,
html body.single-product .woocommerce-product-attributes-item__label,
html body.single-product .kh-product-feature-label,
html body.single-product .support-description,
html body.single-product .kh-single-product-card__old-price {
    color: #5f6f86 !important;
    font-weight: 500 !important;
}

html body.single-product .woocommerce-product-attributes td,
html body.single-product .woocommerce-product-attributes-item__value,
html body.single-product .kh-product-feature-value {
    font-weight: 600 !important;
}

html body.single-product .price,
html body.single-product .price .amount,
html body.single-product .kh-single-product-card__price,
html body.woocommerce .products .product .price,
html body.woocommerce-page .products .product .price {
    font-weight: 700 !important;
}

html body.single-product .product-info,
html body.single-product .product-info p,
html body.single-product .product-info li,
html body.single-product .woocommerce-product-attributes,
html body.single-product .kh-product-picker,
html body.single-product .kh-product-features,
html body.single-product .kh-sidebar-recommendations-widget,
html body.single-product .support-section {
    line-height: 1.48 !important;
}

/* Codex product desktop responsive fix */
html body.single-product .site-content-inner {
    grid-template-columns: minmax(0, 980px) minmax(280px, 340px) !important;
    column-gap: clamp(22px, 2.4vw, 34px) !important;
}

html body.single-product .product-container {
    grid-template-columns: minmax(320px, 360px) minmax(0, 600px) !important;
    column-gap: clamp(28px, 3vw, 48px) !important;
}

html body.single-product .product-images {
    width: 100% !important;
    max-width: 360px !important;
}

html body.single-product .product-info,
html body.single-product .product-sidebar,
html body.single-product .download-options,
html body.single-product .download-item {
    min-width: 0 !important;
}

@media (min-width: 1200px) and (max-width: 1360px) {
    html body.single-product .site-content-inner {
        width: min(100% - 32px, 1240px) !important;
        grid-template-columns: minmax(0, 1fr) 280px !important;
        column-gap: 22px !important;
    }

    html body.single-product .product-container {
        grid-template-columns: minmax(300px, 320px) minmax(0, 1fr) !important;
        column-gap: 24px !important;
    }

    html body.single-product .product-images {
        max-width: 320px !important;
    }

    html body.single-product .product-sidebar,
    html body.single-product .product-authenticity-widget,
    html body.single-product .related-products-widget {
        width: 100% !important;
        max-width: 280px !important;
    }

    html body.single-product .product-authenticity-widget,
    html body.single-product .related-products-widget {
        padding: 14px !important;
    }

    html body.single-product .download-item {
        grid-template-columns: 34px minmax(0, 1fr) !important;
    }

    html body.single-product .download-button {
        justify-self: stretch !important;
        grid-column: 2 !important;
        width: 100% !important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    html body.single-product .site-content-inner {
        display: block !important;
        width: min(100% - 32px, 1080px) !important;
    }

    html body.single-product .product-container {
        grid-template-columns: minmax(280px, 300px) minmax(0, 1fr) !important;
        column-gap: 24px !important;
    }

    html body.single-product .product-images {
        max-width: 300px !important;
    }

    html body.single-product .product-sidebar {
        width: 100% !important;
        max-width: none !important;
        margin-top: 24px !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }

    html body.single-product .product-authenticity-widget,
    html body.single-product .related-products-widget {
        width: 100% !important;
        max-width: none !important;
    }
}
/* Codex product live sidebar width fix */
html body.single-product #secondary,
html body.single-product #secondary .sticky-sidebar,
html body.single-product #secondary .widget,
html body.single-product #secondary .keyhub-sidebar,
html body.single-product #secondary .kh-sidebar-recommendations-widget {
    min-width: 0 !important;
}

@media (min-width: 1200px) and (max-width: 1360px) {
    html body.single-product #secondary,
    html body.single-product #secondary .sticky-sidebar,
    html body.single-product #secondary .widget,
    html body.single-product #secondary .keyhub-sidebar,
    html body.single-product #secondary .kh-sidebar-recommendations-widget {
        width: 100% !important;
        max-width: 280px !important;
    }

    html body.single-product #secondary .keyhub-sidebar,
    html body.single-product #secondary .kh-sidebar-recommendations-widget {
        padding: 14px !important;
    }
}
/* Codex product desktop width refinement */
@media (min-width: 1200px) and (max-width: 1360px) {
    html body.single-product #content.site-content.fixed {
        width: min(100% - 32px, 1240px) !important;
        max-width: 1240px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    html body.single-product .site-content-inner {
        width: 100% !important;
        grid-template-columns: minmax(0, 1fr) 300px !important;
        column-gap: 24px !important;
    }

    html body.single-product #primary.content-area {
        min-width: 0 !important;
        padding-right: 0 !important;
    }

    html body.single-product #main.site-main,
    html body.single-product div.product,
    html body.single-product .product-container {
        width: 100% !important;
        max-width: none !important;
    }

    html body.single-product .product-container {
        grid-template-columns: minmax(300px, 320px) minmax(0, 1fr) !important;
        column-gap: 28px !important;
    }

    html body.single-product #secondary,
    html body.single-product #secondary .sticky-sidebar,
    html body.single-product #secondary .widget,
    html body.single-product #secondary .keyhub-sidebar,
    html body.single-product #secondary .kh-sidebar-recommendations-widget {
        width: 100% !important;
        max-width: 300px !important;
    }

    html body.single-product #secondary .keyhub-sidebar,
    html body.single-product #secondary .kh-sidebar-recommendations-widget {
        padding: 16px !important;
    }

    html body.single-product #secondary .download-item {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }

    html body.single-product #secondary .download-item .info {
        width: auto !important;
        min-width: 0 !important;
    }

    html body.single-product #secondary .download-item a {
        grid-column: auto !important;
        width: auto !important;
        justify-self: end !important;
    }
}
/* Codex product variations containment fix */
@media (min-width: 1200px) and (max-width: 1360px) {
    html body.single-product .product-info,
    html body.single-product .kh-product-dashboard,
    html body.single-product .woocommerce-product-form-wrap,
    html body.single-product .variations-container,
    html body.single-product .features-grid,
    html body.single-product form.cart,
    html body.single-product .kh-b2b-action,
    html body.single-product .woocommerce-product-details__short-description,
    html body.single-product .product_meta {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    html body.single-product .variations-container,
    html body.single-product .features-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    html body.single-product form.cart {
        grid-template-columns: 96px minmax(0, 1fr) !important;
    }

    html body.single-product .variation-card,
    html body.single-product .product-card,
    html body.single-product .feature-item {
        min-width: 0 !important;
        max-width: 100% !important;
    }
}
/* Codex desktop header cart alignment fix */
@media (min-width: 992px) {
    html body:not(.is-mobile) header.site-header .header-customer-account,
    html body:not(.is-mobile) header.site-header .header-customer-account > a,
    html body:not(.is-mobile) header.site-header .header-favorite,
    html body:not(.is-mobile) header.site-header .header-favorite > a,
    html body:not(.is-mobile) header.site-header .site-header-cart,
    html body:not(.is-mobile) header.site-header .site-header-cart .header-cart__link {
        width: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        max-height: 48px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    html body:not(.is-mobile) header.site-header .site-header-cart {
        justify-self: center !important;
        align-self: center !important;
    }

    html body:not(.is-mobile) header.site-header .site-header-cart .header-cart__link {
        position: relative !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) header.site-header .site-header-cart .bono_header_widget_shopping_cart_count {
        position: absolute !important;
        top: -3px !important;
        right: -3px !important;
        margin: 0 !important;
        transform: none !important;
        z-index: 2 !important;
    }
}
/* Codex wide desktop product layout refinement */
@media (min-width: 1361px) {
    html body.single-product #content.site-content.fixed {
        width: min(100% - 96px, 1680px) !important;
        max-width: 1680px !important;
    }

    html body.single-product .site-content-inner {
        width: 100% !important;
        grid-template-columns: minmax(0, 1fr) 340px !important;
        column-gap: clamp(30px, 2.2vw, 42px) !important;
    }

    html body.single-product #primary.content-area {
        min-width: 0 !important;
        padding-right: 0 !important;
    }

    html body.single-product #main.site-main,
    html body.single-product div.product,
    html body.single-product .product-container {
        width: 100% !important;
        max-width: none !important;
    }

    html body.single-product .product-container {
        grid-template-columns: minmax(340px, 380px) minmax(0, 660px) !important;
        column-gap: clamp(34px, 2.8vw, 56px) !important;
        justify-content: center !important;
    }

    html body.single-product .product-images {
        width: 100% !important;
        max-width: 380px !important;
    }

    html body.single-product .product-info,
    html body.single-product .kh-product-dashboard,
    html body.single-product .woocommerce-product-form-wrap,
    html body.single-product .variations-container,
    html body.single-product .features-grid,
    html body.single-product form.cart,
    html body.single-product .kh-b2b-action,
    html body.single-product .woocommerce-product-details__short-description,
    html body.single-product .product_meta {
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    html body.single-product #secondary,
    html body.single-product #secondary .sticky-sidebar,
    html body.single-product #secondary .widget,
    html body.single-product #secondary .keyhub-sidebar,
    html body.single-product #secondary .kh-sidebar-recommendations-widget {
        width: 100% !important;
        max-width: 340px !important;
    }
}
/* Codex wide desktop product gap tightening */
@media (min-width: 1361px) {
    html body.single-product .site-content-inner {
        grid-template-columns: minmax(0, 1fr) 340px !important;
        column-gap: clamp(24px, 1.8vw, 36px) !important;
    }

    html body.single-product .product-container {
        grid-template-columns: minmax(340px, 400px) minmax(0, 1fr) !important;
        column-gap: clamp(30px, 2.2vw, 42px) !important;
        justify-content: stretch !important;
        align-items: start !important;
    }

    html body.single-product .product-info,
    html body.single-product .kh-product-dashboard,
    html body.single-product .woocommerce-product-form-wrap {
        width: 100% !important;
        max-width: none !important;
    }

    html body.single-product .kh-product-dashboard {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    html body.single-product .variations-container,
    html body.single-product .features-grid {
        width: 100% !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    html body.single-product form.cart {
        width: 100% !important;
        grid-template-columns: 96px minmax(0, 1fr) !important;
    }
}
/* Codex wide desktop product tabs alignment */
@media (min-width: 1361px) {
    html body.single-product .woocommerce-tabs,
    html body.single-product .woocommerce-tabs .tabs,
    html body.single-product .woocommerce-Tabs-panel,
    html body.single-product .woocommerce-tabs .woocommerce-Tabs-panel,
    html body.single-product .woocommerce-tabs .panel {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    html body.single-product .woocommerce-tabs {
        margin: 34px 0 0 !important;
    }

    html body.single-product .woocommerce-tabs .tabs {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }

    html body.single-product .woocommerce-Tabs-panel,
    html body.single-product .woocommerce-tabs .panel {
        padding-left: clamp(24px, 2vw, 36px) !important;
        padding-right: clamp(24px, 2vw, 36px) !important;
    }
}
/* Codex wide desktop tabs offset reset */
@media (min-width: 1361px) {
    html body.single-product .woocommerce-tabs {
        position: static !important;
        left: auto !important;
        right: auto !important;
        transform: none !important;
    }
}
/* Codex desktop tabs offset reset */
@media (min-width: 1200px) {
    html body.single-product .woocommerce-tabs {
        position: static !important;
        left: auto !important;
        right: auto !important;
        transform: none !important;
    }
}
/* Codex wide desktop align content to header */
@media (min-width: 1361px) {
    html body.single-product #content.site-content.fixed {
        width: min(100% - 96px, 1460px) !important;
        max-width: 1460px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    html body.single-product .site-content-inner {
        width: 100% !important;
        grid-template-columns: minmax(0, 1fr) 340px !important;
        column-gap: 32px !important;
    }

    html body.single-product #primary.content-area {
        min-width: 0 !important;
        padding-right: 0 !important;
    }

    html body.single-product #main.site-main,
    html body.single-product div.product,
    html body.single-product .product-container {
        width: 100% !important;
        max-width: none !important;
    }

    html body.single-product .product-container {
        grid-template-columns: minmax(340px, 360px) minmax(0, 1fr) !important;
        column-gap: 36px !important;
        justify-content: stretch !important;
    }

    html body.single-product .product-images {
        max-width: 360px !important;
        margin-right: 0 !important;
    }

    html body.single-product .product-info,
    html body.single-product .kh-product-dashboard,
    html body.single-product .woocommerce-product-form-wrap {
        width: 100% !important;
        max-width: none !important;
    }

    html body.single-product #secondary,
    html body.single-product #secondary .sticky-sidebar,
    html body.single-product #secondary .widget,
    html body.single-product #secondary .keyhub-sidebar,
    html body.single-product #secondary .kh-sidebar-recommendations-widget {
        width: 100% !important;
        max-width: 340px !important;
    }

    html body.single-product .woocommerce-tabs {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
    }
}
/* Codex desktop lower sections alignment */
@media (min-width: 1200px) {
    html body.single-product .kh-single-lower-section,
    html body.single-product .kh-single-products-section,
    html body.single-product .kh-single-recently-viewed,
    html body.single-product .kh-single-reviews-section {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    html body.single-product .kh-single-product-grid {
        width: 100% !important;
        max-width: none !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }

    html body.single-product .kh-single-reviews-layout,
    html body.single-product .admin-product-reviews {
        width: 100% !important;
        max-width: none !important;
    }
}
/* Codex desktop lower sections offset reset */
@media (min-width: 1200px) {
    html body.single-product .kh-single-lower-section,
    html body.single-product .kh-single-products-section,
    html body.single-product .kh-single-recently-viewed,
    html body.single-product .kh-single-reviews-section {
        position: static !important;
        left: auto !important;
        right: auto !important;
        transform: none !important;
    }
}
/* Codex product reviews 1280 containment */
@media (min-width: 1200px) and (max-width: 1360px) {
    html body.single-product .kh-single-reviews-section {
        overflow: hidden !important;
    }

    html body.single-product .kh-single-reviews-layout {
        grid-template-columns: 220px minmax(0, 1fr) !important;
        gap: 14px !important;
        align-items: stretch !important;
    }

    html body.single-product .kh-single-reviews-summary {
        min-width: 0 !important;
        padding: 16px !important;
    }

    html body.single-product .kh-single-reviews-list,
    html body.single-product .kh-single-reviews-list .admin-product-reviews,
    html body.single-product .kh-single-reviews-list .apr-review,
    html body.single-product .kh-single-reviews-list .apr-review-body,
    html body.single-product .kh-single-reviews-list .apr-product {
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    html body.single-product .kh-single-reviews-list .admin-product-reviews {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    html body.single-product .kh-single-reviews-list .apr-review {
        overflow: hidden !important;
    }

    html body.single-product .kh-single-reviews-list .apr-review *,
    html body.single-product .kh-single-reviews-list .apr-product-title,
    html body.single-product .kh-single-reviews-list .apr-review-body h4,
    html body.single-product .kh-single-reviews-list .apr-review-body p {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
    }

    html body.single-product .kh-single-reviews-list .apr-date,
    html body.single-product .kh-single-reviews-list .apr-author,
    html body.single-product .kh-single-reviews-list .apr-email {
        display: block !important;
        max-width: 100% !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        text-align: left !important;
    }
}
/* Codex desktop super header readability */
@media (min-width: 1361px) {
    html body .super-header {
        padding-top: 6px !important;
    }

    html body .super-header .super-header-inner {
        width: min(100% - 96px, 1600px) !important;
        max-width: 1600px !important;
        min-height: 42px !important;
        height: auto !important;
        padding: 7px 16px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 16px !important;
    }

    html body .super-header .super-header__item,
    html body .super-header .dim-top-left,
    html body .super-header .dim-header-top {
        height: auto !important;
        min-height: 28px !important;
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        gap: 8px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    html body .super-header .super-header__item--1 {
        padding-right: 0 !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
    }

    html body .super-header .super-header__item--6 {
        padding-left: 0 !important;
        flex: 0 0 auto !important;
    }

    html body .super-header a {
        min-height: 28px !important;
        height: 28px !important;
        padding: 6px 11px !important;
        font-size: 12px !important;
        line-height: 14px !important;
        align-items: center !important;
        white-space: nowrap !important;
    }
}
/* Codex desktop super header overlap fix */
@media (min-width: 1361px) {
    html body .super-header .super-header-inner {
        width: min(100% - 96px, 1600px) !important;
        max-width: 1600px !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        column-gap: 18px !important;
        row-gap: 6px !important;
        overflow: visible !important;
    }

    html body .super-header .super-header__item--1,
    html body .super-header .dim-top-left {
        min-width: 0 !important;
        width: 100% !important;
        justify-content: flex-start !important;
    }

    html body .super-header .super-header__item--6,
    html body .super-header .dim-header-top {
        min-width: 0 !important;
        width: auto !important;
        justify-content: flex-end !important;
    }

    html body .super-header .dim-top-left,
    html body .super-header .dim-header-top {
        flex-wrap: nowrap !important;
        overflow: visible !important;
    }

    html body .super-header a {
        flex: 0 0 auto !important;
        box-sizing: border-box !important;
    }
}
/* Codex desktop super header align to main header */
@media (min-width: 1361px) {
    html body .super-header .super-header-inner {
        width: min(100% - 96px, 1460px) !important;
        max-width: 1460px !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        column-gap: 16px !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    html body .super-header .dim-top-left,
    html body .super-header .dim-header-top {
        gap: 7px !important;
    }

    html body .super-header a {
        min-height: 28px !important;
        height: 28px !important;
        padding-left: 9px !important;
        padding-right: 9px !important;
        font-size: 12px !important;
    }
}
/* Codex desktop super header slight enlarge */
@media (min-width: 1361px) {
    html body .super-header .super-header-inner {
        min-height: 45px !important;
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }

    html body .super-header .dim-top-left,
    html body .super-header .dim-header-top {
        gap: 6px !important;
    }

    html body .super-header a {
        min-height: 30px !important;
        height: 30px !important;
        padding: 7px 8px !important;
        font-size: 12.5px !important;
        line-height: 14px !important;
    }
}
/* Codex desktop super header font override */
@media (min-width: 1361px) {
    html body .super-header.super-header .super-header-inner.super-header-inner a,
    html body .super-header.super-header .super-header-inner.super-header-inner a:link,
    html body .super-header.super-header .super-header-inner.super-header-inner a:visited,
    html body .super-header.super-header .super-header-inner.super-header-inner a span {
        font-size: 12.5px !important;
        line-height: 14px !important;
        font-weight: 700 !important;
    }
}

/* Desktop super header calm link strip. */
@media (min-width: 1361px) {
    html body .super-header.super-header {
        padding-top: 5px !important;
        background: transparent !important;
    }

    html body .super-header.super-header .super-header-inner.super-header-inner {
        width: min(100% - 96px, 1460px) !important;
        min-height: 34px !important;
        padding: 5px 18px !important;
        border: 1px solid rgba(219, 231, 245, .76) !important;
        border-bottom: 0 !important;
        border-radius: 18px 18px 0 0 !important;
        background: linear-gradient(180deg, rgba(255, 255, 255, .96) 0%, rgba(248, 251, 255, .82) 100%) !important;
        box-shadow: none !important;
    }

    html body .super-header.super-header .dim-top-left,
    html body .super-header.super-header .dim-header-top {
        gap: 0 !important;
        min-height: 22px !important;
    }

    html body .super-header.super-header .super-header-inner.super-header-inner a,
    html body .super-header.super-header .super-header-inner.super-header-inner a:link,
    html body .super-header.super-header .super-header-inner.super-header-inner a:visited {
        min-height: 22px !important;
        height: 22px !important;
        padding: 0 11px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: #44546a !important;
        font-size: 12px !important;
        font-weight: 760 !important;
        line-height: 22px !important;
        text-decoration: none !important;
        transition: color .18s ease, background .18s ease !important;
    }

    html body .super-header.super-header .super-header-inner.super-header-inner a + a {
        border-left: 1px solid rgba(203, 213, 225, .68) !important;
    }

    html body .super-header.super-header .super-header-inner.super-header-inner a::before {
        width: 14px !important;
        height: 14px !important;
        margin-right: 5px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background-color: #667eea !important;
        box-shadow: none !important;
        opacity: .82 !important;
    }

    html body .super-header.super-header .super-header-inner.super-header-inner a:hover,
    html body .super-header.super-header .super-header-inner.super-header-inner a:focus {
        background: rgba(239, 246, 255, .78) !important;
        color: #2563eb !important;
    }

    html body .super-header.super-header .super-header-inner.super-header-inner a:hover::before,
    html body .super-header.super-header .super-header-inner.super-header-inner a:focus::before {
        background-color: #2563eb !important;
        opacity: 1 !important;
    }
}

.kh-seo-tag-tiles {
    width: min(100% - 32px, 1180px);
    margin: 24px auto 38px;
    padding: 0;
    text-align: center;
}

/* The homepage content wrapper is a wrapping flex row and assigns the main
 * content order:2. Keep the SEO navigation after that content, not above it. */
html body.home #content .site-content-inner > .kh-seo-tag-tiles,
html body.archive.woocommerce #content .site-content-inner > .kh-seo-tag-tiles {
    order: 3;
}

.kh-seo-tag-tiles__toggle:disabled {
    cursor: default;
}

.kh-seo-tag-tiles__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 10px 12px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: #71809a;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    transition: color .2s ease, background .2s ease;
}

.kh-seo-tag-tiles__toggle:hover,
.kh-seo-tag-tiles__toggle:focus {
    background: #f5f8fc;
    color: #2563eb;
    outline: 0;
}

.kh-seo-tag-tiles__toggle:focus-visible {
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .18);
}

.kh-seo-tag-tiles__icon {
    width: 9px;
    height: 9px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    transition: transform .2s ease;
}

.kh-seo-tag-tiles.is-open .kh-seo-tag-tiles__icon {
    transform: rotate(225deg) translate(-1px, -1px);
}

.kh-seo-tag-tiles__panel {
    margin-top: 14px;
    padding: 18px;
    border: 1px solid #e5edf8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(18, 35, 68, .06);
    text-align: left;
}

.kh-seo-tag-tiles__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.kh-seo-tag-tiles__item a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 8px 12px;
    border: 1px solid #e5edf8;
    border-radius: 10px;
    background: #f8fbff;
    color: #334155;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
    transition: border-color .2s ease, color .2s ease, background .2s ease;
}

.kh-seo-tag-tiles__item a:hover,
.kh-seo-tag-tiles__item a:focus {
    border-color: #9cc9ff;
    background: #fff;
    color: #2563eb;
    outline: 0;
}

@media (max-width: 640px) {
    .kh-seo-tag-tiles {
        width: min(100% - 24px, 1180px);
        margin: 18px auto 30px;
    }

    .kh-seo-tag-tiles__toggle {
        width: auto;
        max-width: 100%;
    }

    .kh-seo-tag-tiles__panel {
        padding: 14px;
    }

    .kh-seo-tag-tiles__grid {
        gap: 8px;
    }

.kh-seo-tag-tiles__item,
    .kh-seo-tag-tiles__item a {
        width: 100%;
    }
}

/* Contract offer page redesign. Text is kept in page content; only presentation changes here. */
body.page-id-6039 {
    background:
        radial-gradient(circle at 14% 7%, rgba(67, 132, 255, .10), transparent 30%),
        linear-gradient(180deg, #f7fbff 0%, #ffffff 42%, #f8fbff 100%);
    overflow-x: hidden;
}

body.page-id-6039 .site-content {
    background: transparent;
}

body.page-id-6039 .site-content-inner {
    width: min(1180px, calc(100vw - 36px));
    margin: 0 auto;
    display: block !important;
}

body.page-id-6039 .content-area {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    flex: 0 0 100% !important;
}

body.page-id-6039 #secondary,
body.page-id-6039 .widget-area,
body.page-id-6039 .sidebar {
    display: none !important;
}

body.page-id-6039 .article-post {
    position: relative;
    width: 100%;
    max-width: 1120px;
    margin: 34px auto 70px;
    padding: 0;
    box-sizing: border-box;
}

body.page-id-6039 .article-meta {
    margin: 0 0 14px;
}

body.page-id-6039 .breadcrumb,
body.page-id-6039 .breadcrumb a,
body.page-id-6039 .breadcrumb span {
    color: #66758a !important;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}

body.page-id-6039 .page-title {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin: 0 0 28px !important;
    padding: 34px 40px 38px;
    overflow: hidden;
    border: 1px solid #dfeaf8;
    border-radius: 24px;
    background:
        linear-gradient(135deg, rgba(117, 103, 255, .10), rgba(53, 199, 255, .13)),
        #ffffff;
    box-shadow: 0 24px 58px rgba(18, 35, 68, .10);
    color: #172033 !important;
    font-size: clamp(30px, 4vw, 48px) !important;
    font-weight: 950;
    text-align: center;
    line-height: 1.05;
}

body.page-id-6039 .page-title::before {
    content: "Юридический документ";
    display: inline-flex;
    width: fit-content;
    margin: 0;
    padding: 7px 12px;
    border: 1px solid #cfe0ff;
    border-radius: 999px;
    background: rgba(255, 255, 255, .78);
    color: #526070;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
}

body.page-id-6039 .page-title::after {
    display: none;
    content: none;
}

body.page-id-6039 .entry-content {
    max-width: none;
    padding: 0;
    overflow-x: hidden;
}

body.page-id-6039 .entry-content p[id^="politics_sec"] {
    position: relative;
    box-sizing: border-box;
    margin: 0 0 16px !important;
    padding: 28px 32px 30px;
    border: 1px solid #e1eaf7;
    border-radius: 20px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 16px 36px rgba(18, 35, 68, .055);
    color: #26334d;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.78;
    overflow-wrap: anywhere;
    word-break: normal;
}

body.page-id-6039 .entry-content p[id^="politics_sec"]:hover {
    border-color: #cfe0ff;
    box-shadow: 0 20px 42px rgba(18, 35, 68, .075);
}

body.page-id-6039 .entry-content p[id^="politics_sec"] strong {
    display: block;
    margin: 0 0 16px;
    padding-bottom: 13px;
    border-bottom: 1px solid #edf3fb;
    color: #172033;
    font-size: clamp(18px, 2vw, 22px);
    font-weight: 950;
    line-height: 1.24;
}

body.page-id-6039 .entry-content p[id^="politics_sec"] strong + br,
body.page-id-6039 .entry-content p[id^="politics_sec"] strong + br + br {
    display: none;
}

body.page-id-6039 .entry-content p#politics_sec1 {
    border-color: #d6e6ff;
    background:
        linear-gradient(135deg, rgba(248, 251, 255, .98), rgba(238, 247, 255, .96)),
        #ffffff;
}

body.page-id-6039 .entry-content p#politics_sec1::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    border-radius: 20px 0 0 20px;
    background: linear-gradient(180deg, #7567ff, #35c7ff);
}

body.page-id-6039 .entry-content a {
    color: #2563eb;
    font-weight: 800;
    text-decoration: none;
}

body.page-id-6039 .entry-content a:hover,
body.page-id-6039 .entry-content a:focus {
    color: #172033;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 767px) {
    body.page-id-6039 .site-content,
    body.page-id-6039 .site-content.fixed {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100vw !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow-x: hidden !important;
    }

    body.page-id-6039 .site-content-inner {
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body.page-id-6039 .article-post {
        width: 100% !important;
        max-width: 100% !important;
        margin: 18px auto 42px;
    }

    body.page-id-6039 .entry-content,
    body.page-id-6039 .page-title,
    body.page-id-6039 .entry-content p[id^="politics_sec"] {
        width: calc(100vw - 32px) !important;
        max-width: calc(100vw - 32px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body.page-id-6039 .page-title {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        padding: 26px 22px 30px;
        border-radius: 20px;
        text-align: left;
        line-height: 1.15;
    }

    body.page-id-6039 .page-title::before {
        margin: 0;
    }

    body.page-id-6039 .page-title::after {
        display: none;
        content: none;
    }

    body.page-id-6039 .entry-content p[id^="politics_sec"] {
        padding: 22px 18px 24px;
        border-radius: 17px;
        font-size: 14px;
        line-height: 1.7;
    }
}

@media print {
    body.page-id-6039 {
        background: #fff !important;
    }

    body.page-id-6039 .page-title,
    body.page-id-6039 .entry-content p[id^="politics_sec"] {
        border: 0 !important;
        box-shadow: none !important;
        background: #fff !important;
    }
}

/* Homepage activation support block. */
.home .section-html:has(.kh-support) {
    padding-top: 42px !important;
    padding-bottom: 26px !important;
}

.home .kh-support {
    width: min(1140px, calc(100vw - 32px));
    min-height: 210px;
    position: relative;
    display: grid;
    grid-template-columns: minmax(500px, .98fr) minmax(420px, 1.02fr);
    align-items: center;
    column-gap: 8px;
    margin: 0 auto;
    padding: 24px 44px 24px 74px;
    overflow: hidden;
    border: 0;
    border-radius: 24px;
    background: linear-gradient(135deg, #ffffff 0%, #fbfcff 58%, #f7fbff 100%);
    box-shadow: 0 18px 42px rgba(18, 35, 68, .075);
}

.home .kh-support::before {
    content: "";
    position: absolute;
    top: -14px;
    right: -18px;
    bottom: -14px;
    width: min(650px, 56%);
    z-index: 1;
    pointer-events: none;
    background: url("assets/support-activation-bg-compact.webp") right center / auto 100% no-repeat;
}

.home .kh-support::after {
    content: none;
}

.home .kh-support__badge,
.home .kh-support__title,
.home .kh-support__text {
    grid-column: 1;
    position: relative;
    z-index: 2;
}

.home .kh-support__badge {
    width: fit-content;
    margin: 0 0 14px;
    padding: 6px 11px;
    border: 1px solid #dfe6ff;
    border-radius: 999px;
    background: rgba(255, 255, 255, .82);
    color: #7567ff;
    font-size: 12px;
    font-weight: 950;
    line-height: 1;
}

.home .kh-support__title {
    max-width: 520px;
    margin: 0 0 10px !important;
    color: #111827;
    font-size: clamp(29px, 2.65vw, 38px);
    font-weight: 950;
    line-height: 1.08;
    letter-spacing: 0;
}

.home .kh-support__text {
    max-width: 530px;
    margin: 0 0 16px;
    color: #66758a;
    font-size: 15.5px;
    font-weight: 650;
    line-height: 1.55;
}

.home .kh-support__actions {
    grid-column: 1;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    z-index: 3;
}

.home .kh-support__actions a {
    min-width: 160px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 18px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.home .kh-support__actions a::before {
    content: "";
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    display: block;
    background: currentColor;
}

.home .kh-support__actions .kh-btn-secondary {
    border: 1px solid #dce7f7;
    background: #fff;
    box-shadow: 0 11px 24px rgba(18, 35, 68, .08);
    color: #172033 !important;
}

.home .kh-support__actions .kh-btn-secondary::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h10a4 4 0 0 1 4 4z'/%3E%3Cpath d='M8 10h.01'/%3E%3Cpath d='M12 10h.01'/%3E%3Cpath d='M16 10h.01'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h10a4 4 0 0 1 4 4z'/%3E%3Cpath d='M8 10h.01'/%3E%3Cpath d='M12 10h.01'/%3E%3Cpath d='M16 10h.01'/%3E%3C/svg%3E") center / contain no-repeat;
}

.home .kh-support__actions .kh-btn-primary {
    border: 0;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    box-shadow: 0 14px 28px rgba(70, 118, 255, .22);
    color: #ffffff !important;
}

.home .kh-support__actions .kh-btn-primary::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 2 11 13'/%3E%3Cpath d='m22 2-7 20-4-9-9-4Z'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 2 11 13'/%3E%3Cpath d='m22 2-7 20-4-9-9-4Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.home .kh-support__actions a:hover,
.home .kh-support__actions a:focus {
    transform: translateY(-1px);
}

.home .kh-support__actions .kh-btn-secondary:hover,
.home .kh-support__actions .kh-btn-secondary:focus {
    border-color: #c9d8ff;
    box-shadow: 0 14px 26px rgba(18, 35, 68, .10);
}

.home .kh-support__actions .kh-btn-primary:hover,
.home .kh-support__actions .kh-btn-primary:focus {
    box-shadow: 0 16px 32px rgba(70, 118, 255, .32);
}

@media (max-width: 980px) {
    .home .kh-support {
        grid-template-columns: 1fr;
        row-gap: 18px;
        padding: 28px 24px 20px;
    }

    .home .kh-support::before {
        top: auto;
        right: -30px;
        bottom: -12px;
        width: min(700px, 112%);
        height: 250px;
        background-size: auto 100%;
    }

    .home .kh-support::after {
        content: "";
        grid-column: 1;
        height: 220px;
    }

    .home .kh-support__title {
        font-size: clamp(30px, 8vw, 42px);
    }
}

@media (max-width: 560px) {
    .home .section-html:has(.kh-support) {
        padding-top: 26px !important;
    }

    .home .kh-support {
        width: min(100% - 24px, 1240px);
        min-height: 0;
        padding: 22px 18px 18px;
        border-radius: 22px;
    }

    .home .kh-support::before {
        right: -70px;
        bottom: -12px;
        width: 500px;
        height: 194px;
    }

    .home .kh-support::after {
        height: 160px;
    }

    .home .kh-support__badge {
        margin-bottom: 18px;
    }

    .home .kh-support__text {
        margin-bottom: 22px;
        font-size: 15px;
    }

    .home .kh-support__actions {
        gap: 10px;
    }

    .home .kh-support__actions a {
        flex: 1 1 145px;
        min-height: 48px;
        padding: 0 14px;
        gap: 5px;
        border-radius: 12px;
        font-size: 13px;
    }

    .home .kh-support__actions a::before {
        width: 16px;
        height: 16px;
        flex-basis: 16px;
    }
}

/* Compact mobile version of the homepage activation support block. */
@media (max-width: 560px) {
    .home .section-html:has(.kh-support) {
        padding-top: 18px !important;
        padding-bottom: 18px !important;
    }

    .home .kh-support {
        width: calc(100% - 24px) !important;
        display: block !important;
        min-height: 0 !important;
        margin: 0 auto !important;
        padding: 16px 14px 152px !important;
        border-radius: 18px !important;
        background: linear-gradient(145deg, #ffffff 0%, #fbfdff 62%, #f3f8ff 100%) !important;
        box-shadow: 0 12px 30px rgba(18, 35, 68, .07) !important;
    }

    .home .kh-support::before {
        top: auto !important;
        right: auto !important;
        left: 50% !important;
        bottom: 6px !important;
        width: min(300px, calc(100% - 20px)) !important;
        height: 140px !important;
        transform: translateX(-50%) !important;
        background-position: center bottom !important;
        background-size: auto 140px !important;
        opacity: .95 !important;
    }

    .home .kh-support::after {
        content: none !important;
        display: none !important;
        height: 0 !important;
    }

    .home .kh-support__badge {
        display: block !important;
        width: max-content !important;
        max-width: 100% !important;
        margin: 0 auto 10px !important;
        padding: 5px 9px !important;
        font-size: 10px !important;
        line-height: 1 !important;
    }

    .home .kh-support__title {
        max-width: 270px !important;
        margin-bottom: 8px !important;
        font-size: 24px !important;
        line-height: 1.08 !important;
    }

    .home .kh-support__text {
        max-width: 285px !important;
        margin-bottom: 12px !important;
        color: #64748b !important;
        font-size: 12.5px !important;
        line-height: 1.38 !important;
        font-weight: 650 !important;
    }

    .home .kh-support__actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        max-width: 292px !important;
    }

    .home .kh-support__actions a {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 40px !important;
        height: 40px !important;
        flex: none !important;
        padding: 0 10px !important;
        border-radius: 10px !important;
        gap: 6px !important;
        font-size: 11px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        box-shadow: 0 8px 18px rgba(18, 35, 68, .08) !important;
    }

    .home .kh-support__actions a::before {
        width: 14px !important;
        height: 14px !important;
        flex: 0 0 14px !important;
    }
}

@media (max-width: 374px) {
    .home .kh-support {
        padding-bottom: 140px !important;
    }

    .home .kh-support::before {
        right: auto !important;
        left: 50% !important;
        bottom: 6px !important;
        width: min(270px, calc(100% - 16px)) !important;
        height: 126px !important;
        transform: translateX(-50%) !important;
        background-position: center bottom !important;
        background-size: auto 126px !important;
    }

    .home .kh-support__actions {
        max-width: 100% !important;
    }
}

/* Homepage articles: featured + side list concept. */
.home .kh-articles-fix {
    width: min(1460px, calc(100vw - 32px));
    margin: -8px auto 0 !important;
}

.home .kh-home-articles-showcase {
    width: 100% !important;
    max-width: none !important;
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr);
    gap: 18px;
    margin: 0 auto !important;
    padding: 0 !important;
}

.home .kh-home-article-featured,
.home .kh-home-articles-side {
    min-width: 0;
    border: 1px solid #e6edf7;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(18, 35, 68, .075);
}

.home .kh-home-article-featured {
    display: grid;
    grid-template-columns: minmax(250px, .92fr) minmax(0, 1.08fr);
    overflow: hidden;
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.home .kh-home-article-featured:hover {
    transform: translateY(-3px);
    border-color: #cbd9ff;
    box-shadow: 0 22px 44px rgba(62, 95, 180, .13);
}

.home .kh-home-article-featured__media,
.home .kh-home-article-row__media {
    position: relative;
    overflow: hidden;
    display: block;
    background: linear-gradient(135deg, #f8fbff 0%, #eef4fb 100%);
}

.home .kh-home-article-featured__image,
.home .kh-home-article-row__image {
    position: absolute;
    inset: 0;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    transition: transform .42s ease, filter .42s ease;
}

.home .kh-home-article-featured:hover .kh-home-article-featured__image,
.home .kh-home-article-row:hover .kh-home-article-row__image {
    transform: scale(1.025);
    filter: saturate(1.04);
}

.home .kh-home-article-featured__media {
    min-height: 300px;
}

.home .kh-home-article-featured__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 58%, rgba(15, 23, 42, .06) 100%);
}

.home .kh-home-article-featured__tag,
.home .kh-home-article-row__tag,
.home .kh-home-article-featured__eyebrow {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
}

.home .kh-home-article-featured__tag {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 2;
    padding: 7px 10px;
    background: rgba(255, 255, 255, .9);
    color: #5b55e8;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .10);
}

.home .kh-home-article-featured__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding: 22px 24px 22px;
}

.home .kh-home-article-featured__eyebrow {
    margin-bottom: 14px;
    padding: 7px 10px;
    background: #f1f4ff;
    color: #675cff;
}

.home .kh-home-article-featured__title {
    margin: 0 0 12px !important;
    font-size: clamp(20px, 1.72vw, 25px);
    font-weight: 850;
    line-height: 1.12;
    letter-spacing: 0;
}

.home .kh-home-article-featured__title a,
.home .kh-home-article-row__title a {
    color: #0f172a !important;
    text-decoration: none !important;
}

.home .kh-home-article-featured__title a:hover,
.home .kh-home-article-row__title a:hover {
    color: #315dff !important;
}

.home .kh-home-article-featured__excerpt {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    margin: 0 0 18px;
    color: #5f6f86;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.55;
}

.home .kh-home-article-featured__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-top: auto;
    color: #7a8798;
    font-size: 12px;
    font-weight: 700;
}

.home .kh-home-article-featured__more {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    color: #315dff !important;
    font-size: 13px;
    font-weight: 850;
    text-decoration: none !important;
}

.home .kh-home-article-featured__more::after {
    content: "→";
    transition: transform .2s ease;
}

.home .kh-home-article-featured:hover .kh-home-article-featured__more::after {
    transform: translateX(4px);
}

.home .kh-home-articles-side {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px;
}

.home .kh-home-articles-side__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 34px;
    padding: 0 2px 4px;
    color: #0f172a;
    font-size: 13px;
    font-weight: 850;
}

.home .kh-home-articles-side__head i {
    width: 44px;
    height: 6px;
    border-radius: 999px;
    background: linear-gradient(90deg, #7567ff 0%, #35c7ff 100%);
    box-shadow: 0 0 18px rgba(79, 163, 255, .32);
}

.home .kh-home-article-row {
    position: relative;
    min-height: 104px;
    display: grid;
    grid-template-columns: 116px minmax(0, 1fr) 32px;
    gap: 13px;
    align-items: center;
    padding: 9px;
    border: 1px solid transparent;
    border-radius: 14px;
    background: #f8fbff;
    transition: transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.home .kh-home-article-row:hover {
    transform: translateX(3px);
    border-color: #dbe6ff;
    background: #fff;
    box-shadow: 0 12px 26px rgba(18, 35, 68, .08);
}

.home .kh-home-article-row__media {
    width: 116px;
    height: 82px;
    border-radius: 10px;
}

.home .kh-home-article-row__body {
    min-width: 0;
}

.home .kh-home-article-row__tag {
    margin-bottom: 7px;
    padding: 5px 8px;
    background: #eef4ff;
    color: #5361d9;
}

.home .kh-home-article-row__title {
    margin: 0 0 6px !important;
    font-size: 14px;
    font-weight: 850;
    line-height: 1.25;
}

.home .kh-home-article-row__excerpt {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin: 0;
    color: #66758a;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.4;
}

.home .kh-home-article-row__arrow {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    color: #315dff !important;
    text-decoration: none !important;
    box-shadow: 0 8px 16px rgba(18, 35, 68, .08);
    transition: transform .22s ease, background .22s ease, color .22s ease;
}

.home .kh-home-article-row__arrow::before {
    content: "→";
    font-size: 15px;
    font-weight: 900;
    line-height: 1;
}

.home .kh-home-article-row:hover .kh-home-article-row__arrow {
    transform: translateX(2px);
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff !important;
}

.home .kh-home-articles-dots {
    display: flex;
    justify-content: center;
    gap: 7px;
    padding: 8px 0 0;
}

.home .kh-home-articles-dots span {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: #d7e1ef;
}

.home .kh-home-articles-dots span.is-active {
    width: 24px;
    background: linear-gradient(90deg, #7567ff 0%, #35c7ff 100%);
}

.home .kh-all-articles-wrap {
    margin-top: 22px !important;
}

@media (max-width: 980px) {
    .home .kh-home-articles-showcase {
        grid-template-columns: 1fr;
    }

    .home .kh-home-article-featured {
        grid-template-columns: minmax(220px, .84fr) minmax(0, 1.16fr);
    }

    .home .kh-home-article-featured__media {
        min-height: 280px;
    }
}

@media (max-width: 680px) {
    .home .kh-articles-fix {
        width: calc(100% - 24px);
        margin-top: -4px !important;
    }

    .home .kh-home-articles-showcase {
        display: block;
    }

    .home .kh-home-article-featured {
        display: flex;
        flex-direction: column;
        border-radius: 16px;
    }

    .home .kh-home-article-featured__media {
        min-height: 150px;
    }

    .home .kh-home-article-featured__body {
        padding: 15px 14px 14px;
    }

    .home .kh-home-article-featured__eyebrow {
        margin-bottom: 10px;
        font-size: 10px;
    }

    .home .kh-home-article-featured__title {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
        font-size: 18px;
    }

    .home .kh-home-article-featured__excerpt {
        -webkit-line-clamp: 2;
        margin-bottom: 10px;
        font-size: 12.5px;
        line-height: 1.42;
    }

    .home .kh-home-articles-side {
        margin-top: 12px;
        padding: 12px;
        overflow: hidden;
        border-radius: 16px;
    }

    .home .kh-home-articles-side__head {
        padding-bottom: 8px;
    }

    .home .kh-home-articles-side .kh-home-article-row {
        width: min(305px, 82vw);
        min-height: 0;
        flex: 0 0 auto;
    }

    .home .kh-home-articles-side {
        display: flex;
    }

    .home .kh-home-articles-side__head,
    .home .kh-home-articles-dots {
        flex: 0 0 auto;
    }

    .home .kh-home-article-row {
        grid-template-columns: 86px minmax(0, 1fr) 28px;
        gap: 10px;
        padding: 8px;
    }

    .home .kh-home-article-row__media {
        width: 86px;
        height: 78px;
    }

    .home .kh-home-article-row__title {
        font-size: 13px;
        line-height: 1.24;
    }

    .home .kh-home-article-row__excerpt {
        font-size: 11.5px;
        -webkit-line-clamp: 2;
    }

    .home .kh-home-article-row__arrow {
        width: 28px;
        height: 28px;
    }
}

/* Homepage articles: compact card grid concept. */
.home .kh-articles-fix {
    width: min(1460px, calc(100vw - 32px));
    margin: -8px auto 0 !important;
}

.home .kh-home-articles-grid {
    width: 100% !important;
    max-width: none !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 18px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.home .kh-home-article-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #e4ebf6;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 14px 32px rgba(18, 35, 68, .07);
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.home .kh-home-article-card:hover {
    transform: translateY(-2px);
    border-color: #dde4ec;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .07);
}

.home .kh-home-article-card__media {
    position: relative;
    display: block;
    aspect-ratio: auto;
    overflow: hidden;
    background: linear-gradient(135deg, #f7fbff 0%, #eef4fb 100%);
}

.home .kh-home-article-card__image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    transition: filter .38s ease;
}

.home .kh-home-article-card:hover .kh-home-article-card__image {
    transform: none;
    filter: saturate(1.04);
}

.home .kh-home-article-card__body {
    position: relative;
    min-width: 0;
    min-height: 92px;
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 12px 13px 11px;
}

.home .kh-home-article-card__tag {
    position: absolute;
    left: 13px;
    bottom: 12px;
    max-width: calc(100% - 58px);
    display: inline-flex;
    align-items: center;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #7a879b;
    font-size: 10.5px;
    font-weight: 850;
    line-height: 1.2;
    letter-spacing: .055em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.home .kh-home-article-card__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    min-height: 40px;
    margin: 0 0 8px !important;
    color: #0f172a;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.28;
    letter-spacing: 0;
}

.home .kh-home-article-card__title a {
    color: inherit !important;
    text-decoration: none !important;
}

.home .kh-home-article-card__title a:hover {
    color: #0f172a !important;
}

.home .kh-home-article-card__excerpt {
    display: none;
}

.home .kh-home-article-card__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-top: auto;
    color: #6d7d94;
    font-size: 12px;
    font-weight: 750;
}

.home .kh-home-article-card__footer > span {
    display: none;
}

.home .kh-home-article-card__footer a {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    background: transparent;
    color: #8c98a9 !important;
    text-decoration: none !important;
    transition: transform .22s ease, background .22s ease, color .22s ease;
}

.home .kh-home-article-card__footer a::before {
    content: "→";
    font-size: 15px;
    font-weight: 750;
    line-height: 1;
}

.home .kh-home-article-card:hover .kh-home-article-card__footer a {
    transform: translateX(3px);
    background: transparent;
    color: #5f6b7a !important;
}

.home .kh-all-articles-wrap {
    margin-top: 16px !important;
}

.home .kh-articles-heading {
    margin-bottom: 0 !important;
    padding: 0 !important;
}

.home .kh-articles-heading__badge {
    margin: 0 0 10px !important;
}

.home .kh-articles-heading__title {
    margin: 0 0 8px !important;
}

.home .kh-articles-heading__text {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.home .section-html.section-4 {
    padding-bottom: 12px !important;
}

.home .section-html.section-5 {
    padding-top: 20px !important;
}

@media (max-width: 1100px) {
    .home .kh-home-articles-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 820px) {
    .home .kh-home-articles-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 620px) {
    .home .kh-articles-fix {
        width: calc(100% - 24px);
        margin-top: -4px !important;
    }

    .home .kh-home-articles-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .home .kh-home-article-card {
        border-radius: 13px;
    }

    .home .kh-home-article-card__body {
        padding: 14px;
    }

    .home .kh-home-article-card__title {
        min-height: 0;
        font-size: 14px;
    }

    .home .kh-home-article-card__excerpt {
        -webkit-line-clamp: 2;
        margin-bottom: 12px;
    }

    html body.home .kh-home-article-card__footer {
        display: flex !important;
        justify-content: flex-end !important;
    }

    html body.home .kh-home-article-card__footer > span {
        display: none !important;
    }
}
/* Key-Hub premium home hero */
.home #kh-main-hero.kh-main-hero-premium,
#kh-main-hero.kh-main-hero-premium {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: min(1460px, calc(100% - 28px));
    min-height: 340px;
    margin: 18px auto 38px;
    padding: 34px 64px 24px;
    border-radius: 28px;
    background: #f6f9ff;
    box-shadow: 0 28px 80px rgba(37, 75, 145, .12);
    font-family: var(--kh-ui-font);
}

#kh-main-hero.kh-main-hero-premium::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.82) 38%, rgba(255,255,255,.18) 68%, rgba(255,255,255,.04) 100%),
        radial-gradient(circle at 22% 24%, rgba(74, 194, 255, .14), transparent 32%);
}

.kh-main-hero-premium__media {
    position: absolute;
    inset: 0;
    z-index: -3;
    transform: scale(1.015);
    animation: khHeroImageBreathe 9s ease-in-out infinite;
}

.kh-main-hero-premium__media picture,
.kh-main-hero-premium__media img {
    width: 100%;
    height: 100%;
    display: block;
}

.kh-main-hero-premium__media img {
    object-fit: cover;
    object-position: center right;
}

.kh-main-hero-premium__shine,
.kh-main-hero-premium__orb {
    position: absolute;
    pointer-events: none;
}

.kh-main-hero-premium__shine {
    top: -28%;
    bottom: -28%;
    left: 33%;
    z-index: -1;
    width: 28%;
    transform: rotate(12deg) translateX(-120%);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.48), transparent);
    filter: blur(10px);
    animation: khHeroShine 7.5s ease-in-out infinite;
}

.kh-main-hero-premium__orb {
    z-index: -1;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(47, 128, 255, .24), transparent 68%);
    filter: blur(8px);
    opacity: .7;
}

.kh-main-hero-premium__orb--one {
    right: 18%;
    top: 12%;
    width: 190px;
    height: 190px;
    animation: khHeroOrbOne 8s ease-in-out infinite;
}

.kh-main-hero-premium__orb--two {
    right: 5%;
    bottom: 5%;
    width: 240px;
    height: 240px;
    background: radial-gradient(circle, rgba(115, 91, 255, .18), transparent 68%);
    animation: khHeroOrbTwo 10s ease-in-out infinite;
}

.kh-main-hero-premium__inner {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 500px) minmax(360px, 1fr);
    grid-template-rows: 1fr auto;
    gap: 22px 34px;
    min-height: 282px;
}

.kh-main-hero-premium__content {
    align-self: center;
}

.kh-main-hero-premium__eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    margin-bottom: 16px;
    padding: 0 12px;
    border: 1px solid rgba(47, 128, 255, .18);
    border-radius: 999px;
    background: rgba(255, 255, 255, .78);
    color: #245bb1;
    box-shadow: 0 12px 28px rgba(37, 75, 145, .08);
    font-size: 12px;
    font-weight: 800;
}

#kh-main-hero.kh-main-hero-premium h1 {
    max-width: 520px;
    margin: 0;
    color: #111827;
    font-size: clamp(34px, 3.2vw, 48px);
    font-weight: 850;
    line-height: 1.04;
    letter-spacing: 0;
}

#kh-main-hero.kh-main-hero-premium p {
    max-width: 520px;
    margin: 22px 0 0;
    color: #4d5b73;
    font-size: 17px;
    line-height: 1.65;
}

.kh-main-hero-premium__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 24px;
}

.kh-main-hero-premium__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 22px;
    border-radius: 13px;
    text-decoration: none !important;
    font-size: 14px;
    font-weight: 800;
    transition: transform .24s ease, box-shadow .24s ease, filter .24s ease, border-color .24s ease, color .24s ease;
}

.kh-main-hero-premium__btn--primary {
    color: #fff !important;
    background: linear-gradient(135deg, #6c59ff 0%, #2fbfff 100%);
    box-shadow: 0 18px 42px rgba(47, 128, 255, .28);
}

.kh-main-hero-premium__btn--ghost {
    border: 1px solid rgba(139, 170, 220, .32);
    color: #172033 !important;
    background: rgba(255, 255, 255, .8);
    box-shadow: 0 14px 34px rgba(37, 75, 145, .09);
}

.kh-main-hero-premium__btn:hover {
    transform: translateY(-3px);
}

.kh-main-hero-premium__btn--primary:hover {
    filter: brightness(1.04);
    box-shadow: 0 22px 52px rgba(47, 128, 255, .36);
}

.kh-main-hero-premium__btn--ghost:hover {
    border-color: rgba(47, 128, 255, .42);
    color: #245bb1 !important;
    box-shadow: 0 18px 42px rgba(37, 75, 145, .13);
}

.kh-main-hero-premium__benefits {
    grid-column: 1 / 3;
    align-self: end;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: min(620px, 100%);
    overflow: hidden;
    border: 1px solid rgba(139, 170, 220, .24);
    border-radius: 20px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 22px 56px rgba(37, 75, 145, .12);
    backdrop-filter: blur(18px);
    animation: khHeroBenefitsIn .8s ease both;
}

.kh-main-hero-premium__benefits span {
    min-height: 90px;
    padding: 14px 18px;
    border-right: 1px solid rgba(139, 170, 220, .18);
}

.kh-main-hero-premium__benefits span:last-child {
    border-right: 0;
}

.kh-main-hero-premium__benefits i {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(114, 87, 255, .12), rgba(49, 199, 243, .14));
    color: #5a4df0;
    font-style: normal;
    font-size: 0;
    font-weight: 950;
}

.kh-main-hero-premium__benefits i svg {
    width: 18px;
    height: 18px;
    display: block;
    stroke: currentColor;
    fill: none;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.kh-main-hero-premium__benefits b {
    display: block;
    margin-top: 9px;
    color: #111827;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.2;
}

.kh-main-hero-premium__benefits small {
    display: block;
    margin-top: 6px;
    color: #71809b;
    font-size: 12px;
    line-height: 1.35;
}

@keyframes khHeroImageBreathe {
    0%, 100% {
        transform: scale(1) translate3d(0, 0, 0);
    }
    50% {
        transform: scale(1.01) translate3d(-2px, 1px, 0);
    }
}

@keyframes khHeroShine {
    0%, 55%, 100% {
        opacity: 0;
        transform: rotate(12deg) translateX(-120%);
    }
    68% {
        opacity: .75;
    }
    84% {
        opacity: 0;
        transform: rotate(12deg) translateX(175%);
    }
}

@keyframes khHeroOrbOne {
    0%, 100% {
        transform: translate3d(0, 0, 0) scale(1);
    }
    50% {
        transform: translate3d(-18px, 12px, 0) scale(1.08);
    }
}

@keyframes khHeroOrbTwo {
    0%, 100% {
        transform: translate3d(0, 0, 0) scale(.98);
    }
    50% {
        transform: translate3d(16px, -16px, 0) scale(1.08);
    }
}

@keyframes khHeroBenefitsIn {
    from {
        opacity: 0;
        transform: translateY(16px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .kh-main-hero-premium__media,
    .kh-main-hero-premium__shine,
    .kh-main-hero-premium__orb,
    .kh-main-hero-premium__benefits {
        animation: none !important;
    }
}

@media (max-width: 991px) {
    .home #kh-main-hero.kh-main-hero-premium,
    #kh-main-hero.kh-main-hero-premium {
        width: calc(100% - 10px);
        min-height: 0;
        margin: 8px auto 22px;
        padding: 10px 10px 14px;
        border-radius: 22px;
    }

    #kh-main-hero.kh-main-hero-premium::before {
        background:
            linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.76) 45%, rgba(255,255,255,.16) 100%),
            radial-gradient(circle at 50% 18%, rgba(74, 194, 255, .16), transparent 36%);
    }

    .kh-main-hero-premium__media {
        position: relative;
        inset: auto;
        z-index: 0;
        height: auto;
        aspect-ratio: 2.16 / 1;
        margin: 0 -4px 0;
        border-radius: 18px;
        overflow: hidden;
        box-shadow: 0 14px 34px rgba(37, 75, 145, .10);
        order: 2;
        animation: none;
    }

    .kh-main-hero-premium__media img {
        object-fit: cover;
        object-position: center center;
    }

    .kh-main-hero-premium__inner {
        display: flex;
        flex-direction: column;
        min-height: 0;
        gap: 16px;
    }

    .kh-main-hero-premium__content {
        order: -1;
    }

    .kh-main-hero-premium__eyebrow {
        min-height: 30px;
        margin-bottom: 12px;
        padding: 0 10px;
        font-size: 11px;
    }

    #kh-main-hero.kh-main-hero-premium h1 {
        font-size: 30px;
        line-height: 1.05;
    }

    #kh-main-hero.kh-main-hero-premium p {
        margin-top: 14px;
        font-size: 13px;
        line-height: 1.45;
    }

    .kh-main-hero-premium__actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        margin-top: 18px;
    }

    .kh-main-hero-premium__btn {
        min-height: 42px;
        padding: 0 8px;
        border-radius: 10px;
        font-size: 12px;
    }

    .kh-main-hero-premium__benefits {
        grid-template-columns: 1fr;
        width: 100%;
        border-radius: 16px;
        order: 3;
    }

    .kh-main-hero-premium__benefits span {
        min-height: 74px;
        display: grid;
        grid-template-columns: 34px minmax(0, 1fr);
        grid-template-rows: auto auto;
        column-gap: 10px;
        align-items: center;
        padding: 12px 14px;
        text-align: left;
        border-right: 0;
        border-bottom: 1px solid rgba(139, 170, 220, .18);
    }

    .kh-main-hero-premium__benefits span:last-child {
        border-bottom: 0;
    }

    .kh-main-hero-premium__benefits i {
        width: 28px;
        height: 28px;
        grid-row: 1 / 3;
        margin: 0;
        border-radius: 10px;
        font-size: 11px;
    }

    .kh-main-hero-premium__benefits b {
        margin-top: 0;
        font-size: 12px;
        line-height: 1.18;
    }

    .kh-main-hero-premium__benefits small {
        margin-top: 3px;
        font-size: 10px;
        line-height: 1.3;
    }
}

/* Codex: final override so the super header does not fall back to the info icon. */
@media (min-width: 768px) {
    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a::before,
    html body:not(.is-mobile) .dim-header-top a::before {
        -webkit-mask: var(--kh-top-icon, var(--kh-top-icon-info)) center / contain no-repeat !important;
        mask: var(--kh-top-icon, var(--kh-top-icon-info)) center / contain no-repeat !important;
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="dostav"],
    html body:not(.is-mobile) .super-header.super-header a[href*="delivery"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(2) {
        --kh-top-icon: var(--kh-top-icon-truck);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="obmen"],
    html body:not(.is-mobile) .super-header.super-header a[href*="vozvrat"],
    html body:not(.is-mobile) .super-header.super-header a[href*="refund"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(3) {
        --kh-top-icon: var(--kh-top-icon-refresh);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="vopros"],
    html body:not(.is-mobile) .super-header.super-header a[href*="faq"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(4) {
        --kh-top-icon: var(--kh-top-icon-help);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="skid"],
    html body:not(.is-mobile) .super-header.super-header a[href*="discount"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(5) {
        --kh-top-icon: var(--kh-top-icon-percent);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="pomosh"],
    html body:not(.is-mobile) .super-header.super-header a[href*="help"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--1 a:nth-child(6) {
        --kh-top-icon: var(--kh-top-icon-life);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="magazin"],
    html body:not(.is-mobile) .super-header.super-header a[href*="shop"],
    html body:not(.is-mobile) .super-header.super-header a[href*="store"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(1) {
        --kh-top-icon: var(--kh-top-icon-store);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="kontakt"],
    html body:not(.is-mobile) .super-header.super-header a[href*="contact"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(2) {
        --kh-top-icon: var(--kh-top-icon-contact);
    }

    html body:not(.is-mobile) .super-header.super-header a[href^="tel:"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(3) {
        --kh-top-icon: var(--kh-top-icon-phone);
    }

    html body:not(.is-mobile) .super-header.super-header a[href^="mailto:"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(4) {
        --kh-top-icon: var(--kh-top-icon-mail);
    }

    html body:not(.is-mobile) .super-header.super-header a[href*="telegram"],
    html body:not(.is-mobile) .super-header.super-header a[href*="t.me"],
    html body:not(.is-mobile) .super-header.super-header .super-header__item--2 a:nth-child(5) {
        --kh-top-icon: var(--kh-top-icon-send);
    }
}
/* Codex: stable desktop header grid for guest/logged-in states and browser zoom. */
@media (min-width: 1200px) {
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        width: min(100% - 64px, 1460px) !important;
        max-width: 1460px !important;
        min-width: 0 !important;
        min-height: 74px !important;
        display: grid !important;
        grid-template-columns: minmax(196px, 230px) minmax(470px, 1fr) minmax(260px, 360px) 48px 48px 48px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        align-items: center !important;
        gap: clamp(10px, .85vw, 16px) !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding: 12px 18px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .site-branding.site-branding {
        grid-area: logo !important;
        min-width: 0 !important;
        max-width: 230px !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu.top-menu {
        grid-area: menu !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu ul.menu {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        gap: clamp(18px, 1.5vw, 34px) !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu ul.menu > li > a {
        white-space: nowrap !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        grid-area: search !important;
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 44px !important;
        margin: 0 !important;
        opacity: 1 !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search .search-form {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 38px !important;
        align-items: center !important;
        width: 100% !important;
        height: 44px !important;
        min-width: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search label {
        min-width: 0 !important;
        width: 100% !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search .search-field {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 44px !important;
        opacity: 1 !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search .search-submit {
        width: 38px !important;
        min-width: 38px !important;
        height: 44px !important;
        position: static !important;
        transform: none !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account {
        grid-area: account !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite {
        grid-area: favorite !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart {
        grid-area: cart !important;
    }
}

@media (min-width: 1200px) and (max-width: 1440px) {
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: minmax(188px, 220px) minmax(410px, 1fr) minmax(240px, 320px) 48px 48px 48px !important;
        gap: 10px !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu ul.menu {
        gap: clamp(14px, 1vw, 22px) !important;
    }
}

@media (min-width: 1200px) and (max-width: 1360px) {
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: minmax(178px, 212px) minmax(0, 1fr) 48px 48px 48px !important;
        grid-template-areas:
            "logo menu account favorite cart"
            "search search search search search" !important;
        gap: 10px 12px !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        width: 100% !important;
        max-width: none !important;
        justify-self: stretch !important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        width: min(100% - 28px, 1180px) !important;
        max-width: 1180px !important;
        display: grid !important;
        grid-template-columns: minmax(176px, 220px) minmax(360px, 1fr) 48px 48px 48px !important;
        grid-template-areas:
            "logo menu account favorite cart"
            "search search search search search" !important;
        align-items: center !important;
        gap: 10px 12px !important;
        padding: 12px 18px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search.header-search,
    html body:not(.is-mobile) header.site-header.site-header .header-search .search-form,
    html body:not(.is-mobile) header.site-header.site-header .header-search .search-field {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        opacity: 1 !important;
    }
}

/* Codex: keep desktop nav items visible before the search field. */
@media (min-width: 1200px) {
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: minmax(188px, 220px) minmax(0, 1fr) minmax(240px, 320px) 48px 48px 48px !important;
        gap: 10px !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu.top-menu {
        overflow: visible !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu ul.menu {
        gap: clamp(12px, 1.05vw, 22px) !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        max-width: 320px !important;
        justify-self: stretch !important;
    }
}

@media (min-width: 1200px) and (max-width: 1440px) {
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: minmax(178px, 212px) minmax(0, 1fr) minmax(230px, 300px) 48px 48px 48px !important;
        gap: 9px !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu ul.menu {
        gap: clamp(10px, .8vw, 16px) !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        max-width: 300px !important;
    }
}

@media (min-width: 1200px) and (max-width: 1360px) {
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: minmax(178px, 212px) minmax(0, 1fr) 48px 48px 48px !important;
        grid-template-areas:
            "logo menu account favorite cart"
            "search search search search search" !important;
        gap: 10px 12px !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        grid-area: search !important;
        width: 100% !important;
        max-width: none !important;
        justify-self: stretch !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search .search-form {
        width: 100% !important;
        max-width: none !important;
    }
}

/* Codex: keep long product-picker labels readable in the single product sidebar. */
html body.single-product .kh-product-picker__panel {
    grid-auto-rows: auto !important;
    grid-template-columns: 1fr !important;
}

html body.single-product .kh-product-picker__panel[data-kh-product-picker-panel="adobe"] {
    grid-template-columns: 1fr !important;
}

html body.single-product .kh-product-picker__chip {
    height: auto !important;
    min-height: 44px !important;
    align-items: center !important;
}

html body.single-product .kh-product-picker__chip span:first-child {
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    line-height: 1.18 !important;
}

html body.single-product .kh-product-picker__arrow {
    align-self: center !important;
    white-space: nowrap !important;
}

/* Codex: make the product variation block calmer at normal 100% browser zoom. */
@media (min-width: 992px) {
    html body.single-product .variations-container {
        gap: 12px !important;
        margin: 12px 0 14px !important;
    }

    html body.single-product .variation-card {
        padding: 14px 16px !important;
        border-radius: 14px !important;
        box-shadow: 0 8px 20px rgba(18, 35, 68, .045) !important;
    }

    html body.single-product .variation-card:hover {
        box-shadow: 0 12px 26px rgba(70, 118, 255, .11) !important;
    }

    html body.single-product .variation-card.current-product {
        box-shadow: 0 12px 26px rgba(34, 197, 94, .1) !important;
    }

    html body.single-product .variation-title {
        font-size: 14px !important;
        line-height: 1.28 !important;
        margin-bottom: 8px !important;
    }

    html body.single-product .variation-price {
        font-size: 22px !important;
        line-height: 1.15 !important;
        margin-bottom: 4px !important;
    }

    html body.single-product .variation-price .old-price {
        font-size: .78em !important;
    }

    html body.single-product .current-indicator {
        font-size: 13px !important;
        line-height: 1.2 !important;
    }

    html body.single-product .variation-badge {
        top: -8px !important;
        right: 10px !important;
        padding: 3px 7px !important;
        font-size: 11px !important;
    }
}

/* Codex: calmer article sidebar product recommendations. */
html body.single-post .kh-single-products {
    background: #ffffff !important;
    border-color: #e6edf6 !important;
    box-shadow: 0 12px 30px rgba(20, 35, 58, .06) !important;
}

html body.single-post .kh-single-products h2 {
    color: #121826 !important;
    font-size: 19px !important;
    font-weight: 800 !important;
}

html body.single-post .kh-single-products-list {
    gap: 10px !important;
}

html body.single-post .kh-single-product {
    grid-template-columns: 62px minmax(0, 1fr) !important;
    min-height: 78px !important;
    padding: 10px 12px !important;
    border-color: #e8eef6 !important;
    border-radius: 13px !important;
    background: #fbfdff !important;
    box-shadow: none !important;
}

html body.single-post .kh-single-product:hover {
    border-color: #cfdcec !important;
    background: #ffffff !important;
    box-shadow: 0 10px 22px rgba(20, 35, 58, .08) !important;
}

html body.single-post .kh-single-product__image {
    min-height: 58px !important;
}

html body.single-post .kh-single-product__image img {
    max-width: 54px !important;
    max-height: 62px !important;
}

html body.single-post .kh-single-product__title {
    color: #1f2937 !important;
    font-size: 14px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
}

html body.single-post .kh-single-product:hover .kh-single-product__title {
    color: #3155dc !important;
}

html body.single-post .kh-single-product__price {
    color: #2563eb !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

html body.single-post .kh-single-product__price del {
    color: #9aa8b8 !important;
    font-weight: 600 !important;
}

html body.single-post .kh-single-product__price ins {
    color: #2563eb !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

/* Cart checkout facade */
body.woocommerce-cart .woocommerce {
    width: min(100%, 1180px);
    max-width: 1180px;
    margin: 0 auto;
}

html body.woocommerce-cart #content.site-content.fixed,
html body.woocommerce-cart #content.site-content.fixed .site-content-inner,
html body.woocommerce-cart #primary.content-area,
html body.woocommerce-cart #main.site-main,
html body.woocommerce-cart .cart-content,
html body.woocommerce-cart .cart-content .woocommerce,
html body.woocommerce-cart .kh-cart-page {
    width: min(100%, 1180px) !important;
    max-width: 1180px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.woocommerce-cart .site-content,
body.woocommerce-cart #content.site-content.fixed,
body.woocommerce-cart .site-content-inner,
body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main,
body.woocommerce-cart .cart-content,
body.woocommerce-cart .entry-content {
    width: 100%;
    max-width: none;
    overflow: visible;
}

body.woocommerce-cart .site-content-inner,
body.woocommerce-cart #primary.content-area,
body.woocommerce-cart #main.site-main,
body.woocommerce-cart .cart-content {
    max-width: 1180px;
    margin-right: auto;
    margin-left: auto;
}

body.woocommerce-cart .entry-title,
body.woocommerce-cart .page-title,
body.woocommerce-cart .breadcrumb,
body.woocommerce-cart .woocommerce-breadcrumb {
    display: none;
}

body.woocommerce-cart .woocommerce-notices-wrapper {
    width: min(100%, 1180px);
    max-width: 1180px;
    margin: 0 auto 18px;
}

.kh-cart-page {
    padding: 18px 0 58px;
    color: #0f172a;
}

.kh-cart-head {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 16px;
    margin-bottom: 26px;
}

.kh-cart-back,
.kh-cart-clear {
    color: #7b86a4 !important;
    font-size: 14px;
    font-weight: 750;
    text-decoration: none !important;
}

.kh-cart-back::before {
    content: "<";
    margin-right: 8px;
    color: #4d73ff;
}

.kh-cart-clear {
    justify-self: end;
}

.kh-cart-clear::before {
    content: "";
    width: 17px;
    height: 17px;
    display: inline-block;
    margin-right: 7px;
    vertical-align: -3px;
    background: #98a3b7;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-title {
    margin: 0;
    font-size: 42px;
    font-weight: 950;
    line-height: 1.05;
    letter-spacing: 0;
    order: -1;
}

.kh-cart-title span {
    color: #a7b1c6;
}

.kh-cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 370px;
    gap: 28px;
    align-items: start;
}

body.woocommerce-cart form.woocommerce-cart-form.kh-cart-layout {
    float: none !important;
    width: 100% !important;
    max-width: none;
    clear: both;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 370px !important;
    gap: 28px !important;
    align-items: start;
}

.kh-cart-main {
    display: grid;
    grid-column: 1;
    gap: 10px;
}

.kh-cart-card,
.kh-cart-trust__item,
.kh-cart-flow,
.kh-cart-welcome {
    border: 1px solid #dfe9f7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(25, 48, 86, .06);
}

.kh-cart-products,
.kh-cart-total-card {
    padding: 22px;
}

.kh-cart-products {
    container-type: inline-size;
}

.kh-cart-section-title {
    margin: 0 0 18px;
    color: #172033;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.25;
}

.kh-cart-item {
    display: grid;
    grid-template-columns: 148px minmax(190px, 1fr) 88px 34px 96px;
    gap: 16px;
    align-items: center;
    padding: 18px 0;
    border-top: 1px solid #edf2f8;
}

.kh-cart-item:first-of-type {
    border-top: 0;
    padding-top: 0;
}

.kh-cart-item__media a,
.kh-cart-item__media {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
}

.kh-cart-item__media img {
    width: 154px;
    height: 168px;
    object-fit: contain;
    border-radius: 0;
    background: transparent;
    transform: scale(1.22);
    transform-origin: center;
}

.kh-cart-item__body {
    min-width: 0;
}

.kh-cart-item__name a,
.kh-cart-item__name {
    color: #111827 !important;
    font-size: 16px;
    font-weight: 850;
    line-height: 1.25;
    text-decoration: none !important;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
}

.kh-cart-item__meta {
    margin-top: 6px;
    color: #748099;
    font-size: 13px;
    font-weight: 650;
}

.kh-cart-item__qty .quantity {
    display: flex;
    align-items: center;
    justify-content: center;
}

.kh-cart-item__qty input.qty {
    width: 86px !important;
    min-height: 38px;
    border: 1px solid #dfe8f6 !important;
    border-radius: 8px !important;
    background: #f8fbff !important;
    color: #172033 !important;
    font-size: 15px;
    font-weight: 850;
    text-align: center;
}

.kh-cart-item__price {
    grid-column: 5;
    grid-row: 1;
    color: #111827;
    font-size: 17px;
    font-weight: 950;
    text-align: right;
    white-space: nowrap;
}

.kh-cart-item__price .amount {
    color: #111827 !important;
    font-weight: 950 !important;
}

.kh-cart-item__remove .remove {
    width: 34px !important;
    height: 34px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border: 1px solid #e5edf7 !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: transparent !important;
    font-size: 0 !important;
    text-decoration: none !important;
}

.kh-cart-item__remove {
    grid-column: 4;
    grid-row: 1;
}

.kh-cart-item__remove .remove::before {
    content: "";
    width: 16px;
    height: 16px;
    background: #98a3b7;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5'/%3E%3Cpath d='M14 11v5'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-update {
    min-height: 40px !important;
    margin-top: 4px !important;
    border: 1px solid #dce7f5 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #4264ff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

.kh-cart-trust {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.kh-cart-trust__item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 14px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 900;
    text-align: center;
}

.kh-cart-trust__icon {
    width: 30px;
    height: 30px;
    display: inline-flex;
    flex: 0 0 30px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.kh-cart-trust__icon::before {
    content: "";
    width: 16px;
    height: 16px;
    display: block;
    background: currentColor;
}

.kh-cart-trust__item--delivery .kh-cart-trust__icon {
    color: #16a34a;
    background: #dcfce7;
}

.kh-cart-trust__item--official .kh-cart-trust__icon {
    color: #16a34a;
    background: #dcfce7;
}

.kh-cart-trust__item--warranty .kh-cart-trust__icon {
    color: #4d73ff;
    background: #eaf1ff;
}

.kh-cart-trust__item--delivery .kh-cart-trust__icon::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h7l-1 8 10-13h-7l0-7Z'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h7l-1 8 10-13h-7l0-7Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-trust__item--official .kh-cart-trust__icon::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-trust__item--warranty .kh-cart-trust__icon::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10Z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10Z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-flow {
    position: relative;
    padding: 18px 22px 20px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 18px 42px rgba(25, 48, 86, .05);
}

.kh-cart-flow__head {
    max-width: 620px;
    margin-bottom: 14px;
}

.kh-cart-flow__head h2 {
    margin: 0;
    color: #071122;
    font-size: 20px;
    font-weight: 950;
    line-height: 1.18;
}

.kh-cart-flow__head p {
    margin: 0;
    color: #64748b;
    font-size: 14px;
    font-weight: 650;
    line-height: 1.45;
}

.kh-cart-flow__steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.kh-cart-flow__step {
    position: relative;
    display: grid;
    grid-template-rows: 86px 46px auto;
    justify-items: center;
    min-width: 0;
    text-align: center;
}

.kh-cart-flow__step:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 34px;
    right: -19px;
    width: 22px;
    height: 12px;
    background: #9db8f5;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='18' fill='none' viewBox='0 0 34 18'%3E%3Cpath d='M1 9h29m0 0-7-7m7 7-7 7' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='18' fill='none' viewBox='0 0 34 18'%3E%3Cpath d='M1 9h29m0 0-7-7m7 7-7 7' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-flow__icon {
    position: relative;
    width: 76px;
    height: 74px;
    display: grid;
    place-items: center;
    align-self: start;
    margin-bottom: 0;
}

.kh-cart-flow__icon::before {
    content: none;
}

.kh-cart-flow__icon img {
    width: 76px;
    height: 74px;
    display: block;
    object-fit: contain;
}

.kh-cart-flow__step--pay .kh-cart-flow__icon {
    color: #2563eb;
    background: linear-gradient(145deg, #eaf2ff 0%, #dbeafe 100%);
}

.kh-cart-flow__step--mail .kh-cart-flow__icon {
    color: #f97316;
    background: linear-gradient(145deg, #fff7ed 0%, #ffedd5 100%);
}

.kh-cart-flow__step--activate .kh-cart-flow__icon {
    color: #16a34a;
    background: linear-gradient(145deg, #ecfdf5 0%, #dcfce7 100%);
}

.kh-cart-flow__step--support .kh-cart-flow__icon {
    color: #334155;
    background: linear-gradient(145deg, #f8fafc 0%, #eef2f7 100%);
}

.kh-cart-flow__step--pay .kh-cart-flow__icon::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='M3 10h18M7 15h4'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='M3 10h18M7 15h4'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-flow__step--mail .kh-cart-flow__icon::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3Cpath d='M16 15h4m-2-2v4'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3Cpath d='M16 15h4m-2-2v4'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-flow__step--activate .kh-cart-flow__icon::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 12l2 2 4-5'/%3E%3Crect x='4' y='4' width='16' height='16' rx='4'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 12l2 2 4-5'/%3E%3Crect x='4' y='4' width='16' height='16' rx='4'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-flow__step--support .kh-cart-flow__icon::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10Z'/%3E%3Cpath d='M9 12h6M9 16h4'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10Z'/%3E%3Cpath d='M9 12h6M9 16h4'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-flow__step .kh-cart-flow__icon {
    border: 0;
    background: transparent;
    box-shadow: none;
}

.kh-cart-flow__step strong {
    position: relative;
    display: block;
    width: 144px;
    min-height: 46px;
    padding-left: 22px;
    margin-bottom: 4px;
    color: #172033;
    font-size: 12px;
    font-weight: 950;
    line-height: 1.22;
    text-align: left;
    text-wrap: auto;
}

.kh-cart-flow__step strong span {
    position: absolute;
    left: 0;
    top: 0;
    width: 17px;
    height: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #1264e8;
    color: #fff;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
}

.kh-cart-flow__step strong b {
    display: block;
    margin-left: -22px;
    text-align: center;
    font: inherit;
}

.kh-cart-flow__step em {
    display: block;
    max-width: 144px;
    margin: 0 auto;
    color: #64748b;
    font-size: 11px;
    font-style: normal;
    font-weight: 650;
    line-height: 1.45;
    text-wrap: balance;
}

.kh-cart-welcome {
    position: relative;
    display: grid;
    grid-template-columns: 154px minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    min-height: 142px;
    padding: 20px 26px;
    overflow: hidden;
    border-color: #bfe9d6;
    background:
        radial-gradient(circle at 12% 28%, rgba(54, 177, 255, .18) 0 3px, transparent 4px),
        radial-gradient(circle at 18% 75%, rgba(68, 120, 255, .2) 0 3px, transparent 4px),
        radial-gradient(circle at 22% 17%, rgba(39, 190, 121, .24) 0 4px, transparent 5px),
        linear-gradient(105deg, #f0fff8 0%, #f8fffb 54%, #ffffff 100%);
    box-shadow: 0 18px 42px rgba(39, 174, 96, .08);
}

.kh-cart-welcome__gift {
    position: relative;
    width: 154px;
    height: 154px;
    justify-self: center;
    background: url("img/cart-welcome-gift.webp") center / contain no-repeat;
}

.kh-cart-welcome__gift::before {
    content: none;
}

.kh-cart-welcome__gift::after {
    content: none;
}

.kh-cart-welcome__content {
    min-width: 0;
}

.kh-cart-welcome__eyebrow {
    margin-bottom: 4px;
    color: #172033;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.25;
}

.kh-cart-welcome h2 {
    margin: 0;
    color: #172033;
    font-size: 22px;
    font-weight: 950;
    line-height: 1.15;
}

.kh-cart-welcome p {
    margin: 0;
    color: #64748b;
    font-size: 14px;
    font-weight: 700;
}

.kh-cart-welcome p strong {
    color: #16a34a;
    font-weight: 900;
}

.kh-cart-welcome__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 16px;
}

.kh-cart-welcome__code {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-width: 180px;
    min-height: 42px;
    padding: 0 14px 0 18px;
    border: 1px dashed #97dfbd;
    border-radius: 8px;
    background: rgba(255, 255, 255, .8);
}

.kh-cart-welcome__code span {
    color: #13a456;
    font-size: 17px;
    font-weight: 950;
    letter-spacing: .02em;
}

.kh-cart-welcome__code i {
    width: 18px;
    height: 18px;
    display: block;
    background: #7b86a4;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='11' height='11' rx='2'/%3E%3Cpath d='M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='11' height='11' rx='2'/%3E%3Cpath d='M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-copy-code {
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid #9ee5c0;
    border-radius: 8px;
    background: rgba(255, 255, 255, .9);
    color: #16a34a;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}

.kh-cart-welcome__hint {
    position: relative;
    margin-top: 10px;
    padding-left: 24px;
    color: #7b86a4;
    font-size: 13px;
    font-weight: 700;
}

.kh-cart-welcome__hint::before {
    content: "i";
    position: absolute;
    left: 0;
    top: 1px;
    width: 15px;
    height: 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #aeb9cc;
    border-radius: 50%;
    color: #7b86a4;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
}

.kh-cart-summary {
    position: sticky;
    grid-column: 2;
    top: 18px;
}

.kh-cart-summary__row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
    padding: 9px 0;
    color: #526070;
    font-size: 14px;
    font-weight: 750;
}

.kh-cart-summary__row strong,
.kh-cart-summary__row .amount {
    color: #172033 !important;
    font-size: 15px;
    font-weight: 900 !important;
}

.kh-cart-summary__row--total {
    padding-top: 0;
    color: #172033;
    font-size: 22px;
    font-weight: 950;
}

.kh-cart-summary__row--total strong,
.kh-cart-summary__row--total .amount {
    font-size: 25px !important;
    font-weight: 950 !important;
}

.kh-cart-summary__row--discount {
    color: #16a34a;
}

.kh-cart-field {
    display: block;
    margin-top: 18px;
    padding-top: 20px;
    border-top: 1px solid #edf2f8;
}

.kh-cart-field span,
.kh-cart-coupon label {
    display: block;
    margin-bottom: 8px;
    color: #172033;
    font-size: 14px;
    font-weight: 900;
}

.kh-cart-field input,
.kh-cart-coupon input {
    width: 100%;
    min-height: 48px;
    border: 1px solid #dfe8f6 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #172033 !important;
    font-size: 15px;
    font-weight: 700;
    outline: 0;
    padding: 0 14px !important;
}

.kh-cart-field em {
    display: block;
    margin-top: 7px;
    color: #7b86a4;
    font-size: 12px;
    font-style: normal;
    font-weight: 650;
}

.kh-cart-coupon {
    margin-top: 18px;
}

.kh-cart-coupon__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 112px;
    gap: 8px;
}

.kh-cart-coupon button,
.kh-cart-pay-button {
    min-height: 48px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    text-transform: none !important;
}

.kh-cart-coupon button {
    border: 1px solid #dfe8f6 !important;
    background: #f8fbff !important;
    color: #3155dc !important;
}

.kh-cart-pay-button {
    width: 100%;
    margin-top: 16px !important;
    border: 0 !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%) !important;
    box-shadow: 0 14px 26px rgba(70, 118, 255, .24) !important;
    color: #fff !important;
}

.kh-cart-pay-note {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 10px;
    color: #7b86a4;
    font-size: 12px;
    font-weight: 750;
    text-align: center;
}

.kh-cart-pay-note span {
    width: 15px;
    height: 15px;
    display: inline-block;
    background: #9aa8b8;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='10' rx='2'/%3E%3Cpath d='M7 11V8a5 5 0 0 1 10 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='10' rx='2'/%3E%3Cpath d='M7 11V8a5 5 0 0 1 10 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}

.kh-cart-payment-methods {
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid #edf2f8;
    text-align: center;
}

.kh-cart-payment-methods > span {
    display: block;
    margin-bottom: 11px;
    color: #9aa4b8;
    font-size: 13px;
    font-weight: 800;
}

.kh-cart-payment-methods > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 12px;
}

.kh-cart-payment-methods img {
    max-width: 52px;
    max-height: 22px;
    height: auto;
    display: block;
    object-fit: contain;
}

.kh-cart-payment-methods img.kh-cart-payment-methods__sbp-icon {
    max-width: 34px;
    max-height: 28px;
}

.kh-cart-payment-methods img.kh-cart-payment-methods__tbank-icon {
    max-width: 24px;
    max-height: 24px;
}

.kh-cart-support-card {
    margin-top: 26px;
    overflow: hidden;
    border: 1px solid #e5edf8;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #f1f7ff 0%, #fbfdff 100%) !important;
    box-shadow: 0 18px 42px rgba(18, 35, 68, .08);
}

.kh-cart-support-card .support-card {
    padding: 18px !important;
}

.kh-cart-support-card .support-content {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 112px;
    align-items: center;
    gap: 12px;
}

.kh-cart-support-card .support-text {
    min-width: 0;
}

.kh-cart-support-card .support-title {
    margin: 0 0 10px !important;
    color: #162033;
    font-size: 1.06rem !important;
    font-weight: 900 !important;
    line-height: 1.25;
}

.kh-cart-support-card .support-description {
    margin: 0 0 14px !important;
    color: #475569;
    font-size: .9rem;
    line-height: 1.45;
}

.kh-cart-support-card .support-action {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 10px;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff !important;
    font-size: .84rem;
    font-style: normal;
    font-weight: 900;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .22);
    transition: transform .2s ease, box-shadow .2s ease;
}

.kh-cart-support-card .kh-support-link,
.kh-cart-support-card .kh-support-link:hover,
.kh-cart-support-card .kh-support-link:focus,
.kh-cart-support-card .kh-support-link .support-action,
.kh-cart-support-card .kh-support-link:hover .support-action,
.kh-cart-support-card .kh-support-link:focus .support-action {
    color: #fff !important;
    text-decoration: none !important;
}

.kh-cart-support-card .kh-support-link:hover .support-action,
.kh-cart-support-card .kh-support-link:focus .support-action {
    transform: translateY(-1px);
    box-shadow: 0 13px 26px rgba(70, 118, 255, .32);
}

.kh-cart-support-card .support-image {
    width: 112px;
}

.kh-cart-support-card .support-image img {
    width: 112px !important;
    height: auto !important;
    object-fit: contain;
}

@media (max-width: 1024px) {
    .kh-cart-layout,
    body.woocommerce-cart form.woocommerce-cart-form.kh-cart-layout {
        grid-template-columns: 1fr !important;
    }

    .kh-cart-summary {
        grid-column: 1;
        position: static;
    }

    .kh-cart-flow__steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kh-cart-flow__step:nth-child(2)::after {
        content: none;
    }
}

@container (max-width: 680px) {
    .kh-cart-item {
        grid-template-columns: 132px minmax(130px, 1fr) 86px 34px 86px;
        gap: 12px;
    }

    .kh-cart-item__body {
        align-self: center;
    }

    .kh-cart-item__qty {
        grid-column: 3;
        grid-row: 1;
        justify-self: center;
    }

    .kh-cart-item__price {
        grid-column: 5;
        grid-row: 1;
        justify-self: end;
        text-align: right;
    }

    .kh-cart-item__remove {
        grid-column: 4;
        grid-row: 1;
    }

    .kh-cart-item__media img {
        width: 142px;
        height: 156px;
    }

    .kh-cart-flow__steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kh-cart-flow__step:nth-child(2)::after {
        content: none;
    }
}

@media (max-width: 760px) {
    .kh-cart-head {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .kh-cart-title {
        font-size: 34px;
    }

    .kh-cart-clear {
        justify-self: start;
    }

    .kh-cart-item {
        grid-template-columns: 64px minmax(0, 1fr) 34px;
        gap: 12px;
    }

    .kh-cart-item__qty,
    .kh-cart-item__price {
        grid-column: 2 / 4;
        text-align: left;
    }

    .kh-cart-item__remove {
        grid-column: 3;
        grid-row: 1;
    }

    .kh-cart-trust {
        grid-template-columns: 1fr;
    }

    .kh-cart-trust__item {
        justify-content: flex-start;
        text-align: left;
    }

    .kh-cart-flow {
        padding: 20px;
    }

    .kh-cart-flow__head h2 {
        font-size: 20px;
    }

    .kh-cart-flow__steps {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .kh-cart-flow__step {
        display: grid;
        grid-template-columns: 62px minmax(0, 1fr);
        grid-template-rows: auto auto;
        justify-items: start;
        text-align: left;
        column-gap: 12px;
        padding-right: 0;
    }

    .kh-cart-flow__step::after {
        content: none !important;
    }

    .kh-cart-flow__icon {
        width: 62px;
        height: 62px;
        grid-row: span 2;
        margin-bottom: 0;
    }

    .kh-cart-flow__icon::before {
        width: 34px;
        height: 34px;
    }

    .kh-cart-flow__icon img {
        width: 62px;
        height: 62px;
    }

    .kh-cart-flow__step strong {
        justify-content: flex-start;
        margin-top: 4px;
    }

    .kh-cart-welcome {
        grid-template-columns: 1fr;
        align-items: stretch;
        padding: 22px;
    }

    .kh-cart-welcome__gift {
        width: 88px;
        height: 88px;
        justify-self: start;
    }

    .kh-cart-welcome__code,
    .kh-cart-coupon__row {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .kh-cart-welcome__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .kh-cart-support-card {
        border-radius: 18px !important;
    }

    .kh-cart-support-card .support-content {
        grid-template-columns: minmax(0, 1fr) 92px;
    }

    .kh-cart-support-card .support-image,
    .kh-cart-support-card .support-image img {
        width: 92px !important;
    }
}

/* Final cart spacing tune. Keep checkout facade blocks visually tight and even. */
body.woocommerce-cart .kh-cart-main {
    row-gap: 10px !important;
    gap: 10px !important;
}

body.woocommerce-cart .kh-cart-products {
    padding-bottom: 16px !important;
}

body.woocommerce-cart .kh-cart-update {
    margin-top: 2px !important;
}

body.woocommerce-cart .kh-cart-products + .kh-cart-trust {
    margin-top: -22px !important;
}

body.woocommerce-cart .kh-cart-trust + .kh-cart-flow {
    margin-top: -21px !important;
}

body.woocommerce-cart .kh-cart-flow + .kh-cart-welcome {
    margin-top: 9px !important;
}

/* Codex: keep cart product rows readable on narrow mobile screens. */
@media (max-width: 760px) {
    body.woocommerce-cart .kh-cart-products {
        padding: 18px !important;
    }

    body.woocommerce-cart .kh-cart-section-title {
        margin-bottom: 16px !important;
    }

    body.woocommerce-cart .kh-cart-item {
        grid-template-columns: 58px minmax(0, 1fr) minmax(74px, max-content) !important;
        grid-template-rows: auto auto !important;
        grid-template-areas:
            "media body remove"
            "media qty price" !important;
        column-gap: 12px !important;
        row-gap: 10px !important;
        align-items: start !important;
        padding: 14px 0 !important;
    }

    body.woocommerce-cart .kh-cart-item:first-of-type {
        padding-top: 0 !important;
    }

    body.woocommerce-cart .kh-cart-item__media {
        grid-area: media !important;
        align-self: start !important;
        justify-content: flex-start !important;
    }

    body.woocommerce-cart .kh-cart-item__media a {
        width: 58px !important;
        min-width: 58px !important;
    }

    body.woocommerce-cart .kh-cart-item__media img {
        width: 54px !important;
        height: 66px !important;
        max-width: 54px !important;
        transform: none !important;
        object-fit: contain !important;
    }

    body.woocommerce-cart .kh-cart-item__body {
        grid-area: body !important;
        align-self: start !important;
        min-width: 0 !important;
        padding-top: 2px !important;
    }

    body.woocommerce-cart .kh-cart-item__name,
    body.woocommerce-cart .kh-cart-item__name a {
        max-width: 100% !important;
        color: #334155 !important;
        font-size: 13px !important;
        font-weight: 850 !important;
        line-height: 1.2 !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    body.woocommerce-cart .kh-cart-item__meta {
        margin-top: 6px !important;
        color: #7b879b !important;
        font-size: 11px !important;
        font-weight: 750 !important;
        line-height: 1.25 !important;
    }

    body.woocommerce-cart .kh-cart-item__qty {
        grid-area: qty !important;
        align-self: center !important;
        justify-self: start !important;
        min-width: 0 !important;
    }

    body.woocommerce-cart .kh-cart-item__qty .quantity {
        justify-content: flex-start !important;
    }

    body.woocommerce-cart .kh-cart-item__qty input.qty {
        width: 78px !important;
        min-height: 34px !important;
        font-size: 14px !important;
    }

    body.woocommerce-cart .kh-cart-item__price {
        grid-area: price !important;
        align-self: center !important;
        justify-self: end !important;
        min-width: 74px !important;
        color: #111827 !important;
        font-size: 15px !important;
        font-weight: 950 !important;
        line-height: 1.1 !important;
        text-align: right !important;
        white-space: nowrap !important;
    }

    body.woocommerce-cart .kh-cart-item__remove {
        grid-area: remove !important;
        align-self: start !important;
        justify-self: end !important;
    }

    body.woocommerce-cart .kh-cart-item__remove .remove {
        width: 30px !important;
        height: 30px !important;
    }
}

@media (max-width: 380px) {
    body.woocommerce-cart .kh-cart-products {
        padding: 16px !important;
    }

    body.woocommerce-cart .kh-cart-item {
        grid-template-columns: 52px minmax(0, 1fr) minmax(66px, max-content) !important;
        column-gap: 10px !important;
    }

    body.woocommerce-cart .kh-cart-item__media a {
        width: 52px !important;
        min-width: 52px !important;
    }

    body.woocommerce-cart .kh-cart-item__media img {
        width: 48px !important;
        height: 60px !important;
        max-width: 48px !important;
    }

    body.woocommerce-cart .kh-cart-item__name,
    body.woocommerce-cart .kh-cart-item__name a {
        font-size: 12px !important;
    }

    body.woocommerce-cart .kh-cart-item__price {
        min-width: 66px !important;
        font-size: 14px !important;
    }
}

/* Codex: reveal the header on upward scroll and hide it on downward scroll. */
html body.kh-smart-header {
    --kh-smart-header-admin-offset: 0px;
    --kh-smart-header-super-height: 0px;
    --kh-smart-header-height: 0px;
}

html body.kh-smart-header #page {
    padding-top: var(--kh-smart-header-height) !important;
}

html body.kh-smart-header .super-header,
html body.kh-smart-header header.site-header.site-header {
    position: fixed !important;
    right: 0 !important;
    left: 0 !important;
    z-index: 9990 !important;
    will-change: transform !important;
    transition: transform .26s ease, box-shadow .26s ease !important;
}

html body.kh-smart-header .super-header {
    top: var(--kh-smart-header-admin-offset) !important;
}

html body.kh-smart-header header.site-header.site-header {
    top: calc(var(--kh-smart-header-admin-offset) + var(--kh-smart-header-super-height)) !important;
}

html body.kh-smart-header-hidden .super-header,
html body.kh-smart-header-hidden header.site-header.site-header {
    transform: translateY(calc(-1 * (var(--kh-smart-header-height) + 12px))) !important;
}

html body.kh-smart-header .super-header,
html body.kh-smart-header header.site-header.site-header {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body.kh-smart-header-pinned:not(.kh-smart-header-hidden) header.site-header.site-header .site-header-inner {
    box-shadow: 0 16px 34px rgba(18, 35, 68, .1) !important;
}

@media (prefers-reduced-motion: reduce) {
    html body.kh-smart-header .super-header,
    html body.kh-smart-header header.site-header.site-header {
        transition: none !important;
    }
}
/* Codex: keep the floating header stable at browser zoom levels like 125%. */
@media (min-width: 1200px) and (max-width: 1700px) {
    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner,
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        width: min(100% - 112px, 1460px) !important;
        max-width: 1460px !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner {
        flex-wrap: nowrap !important;
        gap: 6px !important;
        padding-right: 12px !important;
        padding-left: 12px !important;
        overflow: hidden !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header__item,
    html body:not(.is-mobile) .super-header.super-header .dim-header-top {
        min-width: 0 !important;
        flex-wrap: nowrap !important;
        gap: 4px !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a,
    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner span,
    html body:not(.is-mobile) .dim-header-top a {
        min-height: 24px !important;
        padding-right: 7px !important;
        padding-left: 7px !important;
        font-size: 10.5px !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        grid-template-columns: minmax(188px, 218px) minmax(0, 1fr) minmax(210px, 280px) 44px 44px 44px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        gap: 8px !important;
        padding-right: 14px !important;
        padding-left: 14px !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu.top-menu {
        min-width: 0 !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu ul.menu {
        gap: clamp(8px, .55vw, 12px) !important;
        min-width: 0 !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu ul.menu > li > a,
    html body:not(.is-mobile) header.site-header.site-header .top-menu ul.menu > li > span {
        font-size: 13px !important;
        white-space: nowrap !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        max-width: 280px !important;
        min-width: 0 !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search .search-form,
    html body:not(.is-mobile) header.site-header.site-header .header-search .search-field {
        height: 42px !important;
        min-width: 0 !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account,
    html body:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite,
    html body:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart,
    html body:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account > a,
    html body:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite > a,
    html body:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart .header-cart__link {
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
    }
}
html body.kh-smart-header .super-header.super-header {
    padding-top: 0 !important;
}

/* Codex: SEO download pages. */
.kh-downloads-page {
    width: min(100% - 32px, 1460px);
    margin: 0 auto 56px;
    color: #101828;
}

.kh-downloads-page a { text-decoration: none !important; }
.kh-downloads-page h1,
.kh-downloads-page h2,
.kh-downloads-page h3 { letter-spacing: 0; }

.kh-dl-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    margin-bottom: 12px;
    padding: 0 13px;
    border: 1px solid #dce8fb;
    border-radius: 999px;
    background: #fff;
    color: #3157d6;
    font-size: 13px;
    font-weight: 900;
}

.kh-dl-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
    gap: 28px;
    align-items: center;
    margin: 24px 0 22px;
    padding: 42px;
    border: 1px solid #dce8fb;
    border-radius: 28px;
    background: radial-gradient(circle at 78% 18%, rgba(47, 184, 255, .22), transparent 30%), radial-gradient(circle at 45% 100%, rgba(98, 92, 255, .12), transparent 34%), #fff;
    box-shadow: 0 24px 60px rgba(30, 64, 175, .10);
    overflow: hidden;
}

.kh-dl-hero h1,
.kh-downloads-category h1,
.kh-downloads-detail h1 {
    max-width: 840px;
    margin: 0 0 16px;
    font-size: clamp(34px, 4vw, 56px);
    line-height: 1.06;
    font-weight: 950;
}

.kh-dl-hero p,
.kh-dl-category-intro p {
    max-width: 780px;
    margin: 0 0 24px;
    color: #667085;
    font-size: 17px;
    line-height: 1.55;
}

.kh-dl-search {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    width: min(100%, 650px);
    min-height: 58px;
    align-items: center;
    border: 1px solid #dce8fb;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 14px 28px rgba(30, 64, 175, .08);
    overflow: hidden;
}

.kh-dl-search__icon {
    color: #6a7cff;
    text-align: center;
    font-size: 24px;
}

.kh-dl-search input {
    width: 100%;
    min-width: 0;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #101828;
    font-size: 15px;
}

.kh-dl-search button,
.kh-dl-btn--primary,
.kh-dl-row-actions .is-buy {
    border: 0 !important;
    background: linear-gradient(135deg, #625cff 0%, #2fb8ff 100%) !important;
    color: #fff !important;
    box-shadow: 0 14px 26px rgba(47, 184, 255, .22);
}

.kh-dl-search button {
    min-height: 58px;
    padding: 0 26px;
    border-radius: 14px;
    font-weight: 900;
}

.kh-dl-hero__art {
    min-height: 260px;
    display: grid;
    place-items: center;
}

.kh-dl-hero-orb {
    width: 180px;
    height: 180px;
    display: grid;
    place-items: center;
    border-radius: 46px;
    background: rgba(255,255,255,.86);
    color: #3157d6;
    font-size: 74px;
    font-weight: 950;
    box-shadow: 0 28px 70px rgba(30, 64, 175, .16);
    transform: rotate(7deg);
}

.kh-dl-category-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    margin: 22px 0 30px;
}

.kh-dl-category-card,
.kh-dl-product-card,
.kh-dl-table,
.kh-dl-category-intro,
.kh-dl-product-hero,
.kh-dl-spec-card,
.kh-dl-article-card,
.kh-dl-side-card,
.kh-dl-trust-row,
.kh-dl-empty {
    border: 1px solid #dce8fb;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 16px 38px rgba(30, 64, 175, .07);
}

.kh-dl-category-card {
    min-height: 106px;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) 20px;
    gap: 14px;
    align-items: center;
    padding: 18px;
    transition: transform .2s ease, box-shadow .2s ease;
}

.kh-dl-category-card:hover,
.kh-dl-product-card:hover,
.kh-dl-table-row:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 44px rgba(30, 64, 175, .11);
}

.kh-dl-category-card strong,
.kh-dl-category-card em {
    display: block;
}

.kh-dl-category-card strong { color: #101828; font-size: 17px; font-weight: 950; }
.kh-dl-category-card em { margin-top: 4px; color: #7a89a5; font-size: 13px; font-style: normal; line-height: 1.35; }
.kh-dl-category-card b { color: #6a7cff; font-size: 22px; }

.kh-dl-icon {
    width: 58px;
    height: 58px;
    display: inline-grid;
    place-items: center;
    border-radius: 18px;
    background: #f3f7ff;
    color: #3157d6;
    font-size: 24px;
    font-weight: 950;
}

.kh-dl-icon--office { color: #e44924; }
.kh-dl-icon--autodesk { color: #16a085; }
.kh-dl-icon--adobe { color: #ef233c; }
.kh-dl-icon--visio { color: #1e62c7; }
.kh-dl-icon--project { color: #1f9d55; }

.kh-dl-section { margin-top: 32px; }
.kh-dl-section__head { display: flex; justify-content: space-between; gap: 16px; align-items: end; margin-bottom: 16px; }
.kh-dl-section__head h2 { margin: 0; font-size: 26px; font-weight: 950; }
.kh-dl-section__head span,
.kh-dl-section__head a { color: #667085; font-weight: 800; }

.kh-dl-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.kh-dl-product-card { padding: 16px; display: flex; flex-direction: column; gap: 14px; }
.kh-dl-product-card__media { min-height: 126px; display: grid; place-items: center; border-radius: 0; background: transparent; }
.kh-dl-product-card__media .kh-dl-product-img { max-width: 136px !important; max-height: 126px !important; width: auto !important; height: auto !important; object-fit: contain !important; }
.kh-dl-product-card h3 { min-height: 46px; margin: 0 0 8px; font-size: 17px; line-height: 1.25; font-weight: 950; }
.kh-dl-product-card__meta { display: flex; flex-wrap: wrap; gap: 6px; }
.kh-dl-product-card__meta span,
.kh-dl-row-meta,
.kh-dl-filter-row a,
.kh-dl-filter-row span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    background: #f4f7fc;
    color: #667085;
    font-size: 12px;
    font-weight: 850;
}

.kh-dl-product-card__actions { display: grid; gap: 8px; margin-top: auto; }
.kh-dl-btn { min-height: 42px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 14px; border: 1px solid #dce8fb; border-radius: 12px; font-weight: 950; text-align: center; }
.kh-dl-btn--ghost { background: #fff; color: #5263f5 !important; }
.kh-dl-btn--wide { width: 100%; min-height: 52px; }

.kh-dl-trust-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin-top: 24px; padding: 18px; }
.kh-dl-trust-row div { display: grid; grid-template-columns: 44px 1fr; gap: 4px 12px; padding: 8px 16px; border-right: 1px solid #e8eef8; }
.kh-dl-trust-row div:last-child { border-right: 0; }
.kh-dl-trust-row span {
  grid-row: span 2;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: #f3f7ff;
  color: #4568ff;
}
.kh-dl-trust-row span svg {
  width: 27px;
  height: 27px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.kh-dl-trust-row span.kh-dl-trust-icon--speed svg,
.kh-dl-trust-row span.kh-dl-trust-icon--key svg,
.kh-dl-trust-row span.kh-dl-trust-icon--support svg {
  width: 29px;
  height: 29px;
}
.kh-dl-trust-row strong { font-weight: 950; }
.kh-dl-trust-row em { color: #667085; font-style: normal; font-size: 13px; line-height: 1.4; }

.kh-dl-breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 16px; color: #7a89a5; font-size: 14px; font-weight: 800; }
.kh-dl-breadcrumbs a { color: #5263f5; }

.kh-dl-category-intro { display: flex; justify-content: space-between; gap: 24px; align-items: center; padding: 30px; margin-bottom: 18px; }
.kh-dl-category-intro h1 { margin-bottom: 12px; }
.kh-dl-category-intro__badge { max-width: 330px; display: flex; gap: 14px; align-items: center; padding: 16px; border-radius: 16px; background: #f8fbff; color: #33415c; font-weight: 900; }

.kh-dl-filter-row { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 16px; }
.kh-dl-filter-row .is-active { color: #fff; background: linear-gradient(135deg, #625cff, #2fb8ff); }

.kh-dl-table { overflow: hidden; }
.kh-dl-table__head,
.kh-dl-table-row { display: grid; grid-template-columns: minmax(280px, 1.4fr) 110px 140px 140px minmax(300px, .9fr); gap: 14px; align-items: center; }
.kh-dl-table__head { padding: 16px 20px; color: #7a89a5; font-size: 13px; font-weight: 950; background: #f8fbff; }
.kh-dl-table-row { padding: 14px 20px; border-top: 1px solid #e8eef8; transition: transform .2s ease, box-shadow .2s ease; }
/* Codex: align downloads table meta pills after distributive column update. */
.kh-downloads-page .kh-dl-table__head > span:nth-child(2),
.kh-downloads-page .kh-dl-table__head > span:nth-child(3),
.kh-downloads-page .kh-dl-table__head > span:nth-child(4) { justify-self: stretch; text-align: center; }
.kh-downloads-page .kh-dl-table__head > span:nth-child(5) { justify-self: stretch; text-align: right; padding-right: 12px; }
.kh-downloads-page .kh-dl-table-row > .kh-dl-row-meta { width: 100%; justify-content: center; text-align: center; line-height: 1; white-space: nowrap; box-sizing: border-box; }
.kh-dl-row-product { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 14px; align-items: center; }
.kh-dl-row-product .kh-dl-product-img { max-width: 58px !important; max-height: 58px !important; }
.kh-dl-row-product strong,
.kh-dl-row-product em { display: block; }
.kh-dl-row-product strong { color: #101828; font-weight: 950; line-height: 1.25; }
.kh-dl-row-product em { margin-top: 4px; color: #7a89a5; font-style: normal; }
.kh-dl-row-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.kh-dl-row-actions a { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; padding: 0 13px; border: 1px solid #dce8fb; border-radius: 12px; background: #fff; color: #5263f5; font-weight: 950; }
.kh-dl-download-count { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 11px; border: 1px solid #dce8fb; border-radius: 12px; background: #f8fbff; color: #667085; font-size: 13px; font-weight: 950; line-height: 1; white-space: nowrap; }
.kh-dl-download-count__icon { width: 14px; height: 14px; display: inline-block; flex: 0 0 14px; background-repeat: no-repeat; background-position: center; background-size: 14px 14px; background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 2.2v7.1' stroke='%235263f5' stroke-width='1.7' stroke-linecap='round'/%3E%3Cpath d='m5.3 6.7 2.7 2.8 2.7-2.8' stroke='%235263f5' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M3.4 10.5v1.6c0 .82.66 1.48 1.48 1.48h6.24c.82 0 1.48-.66 1.48-1.48v-1.6' stroke='%235263f5' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E"); }
.kh-dl-download-count__value { display: inline-block; min-width: 1ch; }
.kh-dl-row-actions .is-buy { flex-direction: column; line-height: 1.05; }
.kh-dl-row-actions small { margin-top: 3px; font-size: 12px; }

.kh-dl-detail-layout { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 24px; align-items: start; }
.kh-dl-product-hero { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 28px; align-items: center; padding: 28px; margin-bottom: 18px; }
.kh-dl-product-hero__image { min-height: 240px; display: grid; place-items: center; border-radius: 18px; background: #f8fbff; }
.kh-dl-product-hero__image .kh-dl-product-img { max-width: 220px !important; max-height: 220px !important; }
.kh-dl-product-hero h2 { margin: 0 0 10px; font-size: 28px; font-weight: 950; }
.kh-dl-product-hero p { max-width: 640px; color: #667085; line-height: 1.55; }
.kh-dl-feature-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 20px; }
.kh-dl-feature-row span { min-height: 46px; display: flex; align-items: center; justify-content: center; padding: 0 10px; border: 1px solid #dce8fb; border-radius: 14px; background: #f8fbff; color: #33415c; font-weight: 900; text-align: center; }
.kh-dl-spec-card,
.kh-dl-article-card { padding: 24px; margin-bottom: 18px; }
.kh-dl-spec-card h2,
.kh-dl-article-card h2,
.kh-dl-side-card h2 { margin: 0 0 16px; font-size: 22px; font-weight: 950; }
.kh-dl-spec-card dl { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; margin: 0; }
.kh-dl-spec-card dl div { display: grid; grid-template-columns: minmax(110px, .75fr) 1fr; gap: 12px; padding: 13px 0; border-bottom: 1px solid #e8eef8; }
.kh-dl-spec-card dt { color: #667085; }
.kh-dl-spec-card dd { margin: 0; font-weight: 950; }
.kh-dl-article-card li { margin: 10px 0; color: #33415c; }
.kh-dl-side { position: sticky; top: calc(var(--kh-smart-header-height, 0px) + 18px); display: grid; gap: 14px; }
.kh-dl-side-card { padding: 18px; }
.kh-dl-download-action { display: grid; grid-template-columns: 48px minmax(0, 1fr) 18px; gap: 12px; align-items: center; min-height: 74px; margin-bottom: 10px; padding: 12px; border: 1px solid #dce8fb; border-radius: 16px; background: #fff; color: #101828; }
.kh-dl-download-action::after { content: '›'; color: #7a89a5; font-size: 24px; }
.kh-dl-download-action--main { color: #fff !important; background: linear-gradient(135deg, #625cff, #2fb8ff); border: 0; }
.kh-dl-download-action span { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; background: rgba(255,255,255,.82); color: #5263f5; font-size: 22px; }
.kh-dl-download-action strong,
.kh-dl-download-action em { display: block; }
.kh-dl-download-action strong { font-weight: 950; }
.kh-dl-download-action em { margin-top: 3px; color: inherit; opacity: .72; font-style: normal; font-size: 13px; }
.kh-dl-buy-panel__top { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; gap: 12px; align-items: center; margin-bottom: 16px; }
.kh-dl-buy-panel__top > span { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 18px; background: #f3f7ff; color: #5263f5; font-size: 28px; }
.kh-dl-buy-panel__top h2 { margin: 0 0 4px; font-size: 18px; }
.kh-dl-buy-panel__top p { margin: 0; color: #667085; font-size: 13px; line-height: 1.35; }
.kh-dl-buy-panel__top b { padding: 10px 14px; border-radius: 14px; background: #f3f7ff; color: #3157d6; font-size: 18px; white-space: nowrap; }
.kh-dl-note { margin: 13px 0 0; color: #667085; text-align: center; font-weight: 850; }
.kh-dl-empty { padding: 30px; color: #667085; font-weight: 800; }

@media (max-width: 1200px) {
    .kh-dl-category-grid,
    .kh-dl-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .kh-dl-detail-layout,
    .kh-dl-hero { grid-template-columns: 1fr; }
    .kh-dl-side { position: static; }
    .kh-dl-table__head { display: none; }
    .kh-dl-table-row { grid-template-columns: 1fr; }
    .kh-dl-row-actions { justify-content: flex-start; }
}

@media (max-width: 760px) {
    .kh-downloads-page { width: min(100% - 20px, 1460px); }
    .kh-dl-hero { padding: 24px; border-radius: 20px; }
    .kh-dl-category-grid,
    .kh-dl-product-grid,
    .kh-dl-trust-row,
    .kh-dl-feature-row,
    .kh-dl-spec-card dl { grid-template-columns: 1fr; }
    .kh-dl-product-hero { grid-template-columns: 1fr; padding: 20px; }
    .kh-dl-category-intro { display: block; padding: 22px; }
    .kh-dl-category-intro__badge { margin-top: 18px; max-width: none; }
    .kh-dl-trust-row div { border-right: 0; border-bottom: 1px solid #e8eef8; }
    .kh-dl-trust-row div:last-child { border-bottom: 0; }
}
/* Codex: downloads visual polish to match Key-Hub catalog/home design. */
.kh-downloads-page {
    font-family: var(--kh-ui-font, Inter, Arial, sans-serif);
    color: #111827;
}

.kh-downloads-page h1,
.kh-downloads-page h2,
.kh-downloads-page h3,
.kh-downloads-page strong,
.kh-downloads-page b {
    color: #111827;
}

.kh-downloads-page p,
.kh-downloads-page em,
.kh-downloads-page dt,
.kh-dl-product-card__meta span,
.kh-dl-row-meta,
.kh-dl-section__head span,
.kh-dl-section__head a {
    color: #64748b;
}

.kh-dl-hero,
.kh-dl-category-intro {
    border-color: rgba(139, 170, 220, .32);
    background:
        linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.86) 45%, rgba(240,248,255,.58) 100%),
        radial-gradient(circle at 82% 18%, rgba(47, 184, 255, .22), transparent 30%),
        radial-gradient(circle at 62% 86%, rgba(108, 89, 255, .12), transparent 34%),
        #f6f9ff;
    box-shadow: 0 28px 80px rgba(37, 75, 145, .12);
}

.kh-dl-hero h1,
.kh-downloads-category h1,
.kh-downloads-detail h1 {
    color: #111827;
    font-weight: 850;
}

.kh-dl-hero p,
.kh-dl-category-intro p,
.kh-dl-product-hero p,
.kh-dl-article-card li {
    color: #4d5b73;
}

.kh-dl-kicker {
    border-color: rgba(47, 128, 255, .18);
    background: rgba(255,255,255,.78);
    color: #245bb1;
    box-shadow: 0 12px 28px rgba(37, 75, 145, .08);
}

.kh-dl-hero__art {
    min-height: 285px;
}

.kh-dl-hero-orb {
    display: none;
}

.kh-dl-hero-visual {
    position: relative;
    width: min(100%, 430px);
    aspect-ratio: 1.45;
    margin-left: auto;
}

.kh-dl-hero-visual::before {
    content: "";
    position: absolute;
    inset: 18% 4% 8%;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(47,184,255,.22), transparent 65%);
    filter: blur(18px);
}

.kh-dl-hero-visual__core,
.kh-dl-hero-visual__tile {
    position: absolute;
    display: grid;
    place-items: center;
    border: 1px solid rgba(139, 170, 220, .26);
    background: rgba(255,255,255,.86);
    box-shadow: 0 24px 58px rgba(37,75,145,.16);
    backdrop-filter: blur(12px);
}

.kh-dl-hero-visual__core {
    left: 34%;
    top: 18%;
    width: 155px;
    height: 155px;
    border-radius: 34px;
    transform: rotate(7deg);
}

.kh-dl-hero-visual__core .kh-dl-icon {
    width: 98px;
    height: 98px;
    border-radius: 28px;
}

.kh-dl-hero-visual__tile {
    width: 82px;
    height: 82px;
    border-radius: 24px;
}

.kh-dl-hero-visual__tile img,
.kh-dl-brand-visual img {
    display: block;
    max-width: 76%;
    max-height: 76%;
    width: auto;
    height: auto;
    object-fit: contain;
}

.kh-dl-hero-visual__tile--windows { left: 18%; top: 4%; transform: rotate(-8deg); }
.kh-dl-hero-visual__tile--office { left: 18%; bottom: 4%; transform: rotate(8deg); }
.kh-dl-hero-visual__tile--autodesk { right: 5%; bottom: 10%; transform: rotate(-7deg); }
.kh-dl-hero-visual__tile--adobe { right: 10%; top: 12%; transform: rotate(10deg); }

.kh-dl-category-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.kh-dl-category-card {
    position: relative;
    min-height: 178px;
    grid-template-columns: minmax(0, 1fr) 132px;
    gap: 18px;
    align-items: center;
    padding: 24px;
    overflow: hidden;
    border-color: rgba(139,170,220,.28);
    border-radius: 22px;
    background: linear-gradient(135deg, #fff 0%, #f6fbff 100%);
    box-shadow: 0 24px 58px rgba(37,75,145,.10);
}

.kh-dl-category-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 22px;
    bottom: 22px;
    width: 4px;
    border-radius: 999px;
    background: linear-gradient(180deg, #6c59ff, #2fbfff);
}

.kh-dl-category-card b {
    align-self: end;
    justify-self: end;
    color: #4164ff;
}

.kh-dl-category-card strong {
    font-size: 20px;
    font-weight: 850;
}

.kh-dl-category-card em {
    max-width: 230px;
    margin-top: 10px;
    color: #667085;
    font-size: 15px;
    line-height: 1.45;
}

.kh-dl-brand-visual {
    width: 118px;
    height: 118px;
    display: grid;
    place-items: center;
    justify-self: end;
    border: 1px solid rgba(139,170,220,.22);
    border-radius: 28px;
    background: rgba(255,255,255,.9);
    box-shadow: 0 18px 36px rgba(25,54,111,.16), inset 0 -8px 18px rgba(37,75,145,.06);
}

.kh-dl-icon {
    color: transparent;
    font-size: 0;
    background: linear-gradient(135deg, rgba(108,89,255,.10), rgba(47,191,255,.14));
}

.kh-dl-icon::before {
    content: "";
    width: 30px;
    height: 30px;
    display: block;
    border-radius: 8px;
    background: linear-gradient(135deg, #6c59ff, #2fbfff);
    box-shadow: 16px 0 0 rgba(47,191,255,.82), 0 16px 0 rgba(108,89,255,.72), 16px 16px 0 rgba(47,128,255,.72);
    transform: translate(-8px, -8px);
}

.kh-dl-icon--office::before,
.kh-dl-icon--adobe::before,
.kh-dl-icon--autodesk::before,
.kh-dl-icon--visio::before,
.kh-dl-icon--project::before {
    box-shadow: none;
    transform: none;
    border-radius: 10px;
}

.kh-dl-icon--office::before { background: linear-gradient(135deg, #f24822, #ff8a3d); }
.kh-dl-icon--adobe::before { background: linear-gradient(135deg, #ff1744, #c4002f); }
.kh-dl-icon--autodesk::before { background: linear-gradient(135deg, #05a889, #33d1ff); }
.kh-dl-icon--visio::before { background: linear-gradient(135deg, #155bd5, #3aa8ff); }
.kh-dl-icon--project::before { background: linear-gradient(135deg, #128846, #4bd889); }

.kh-dl-product-card,
.kh-dl-table,
.kh-dl-product-hero,
.kh-dl-spec-card,
.kh-dl-article-card,
.kh-dl-side-card,
.kh-dl-trust-row,
.kh-dl-empty {
    border-color: rgba(139,170,220,.28);
    border-radius: 18px;
    box-shadow: 0 18px 44px rgba(37,75,145,.08);
}

.kh-dl-product-card h3 a,
.kh-dl-row-product strong,
.kh-dl-breadcrumbs a,
.kh-dl-row-actions a,
.kh-dl-btn--ghost {
    color: #3157d6 !important;
}

.kh-dl-table__head {
    color: #71809b;
    background: #f6f9ff;
}

.kh-dl-detail-layout {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 360px);
}

.kh-dl-side {
    min-width: 0;
}

.kh-dl-download-action {
    grid-template-columns: 48px minmax(0, 1fr) 18px;
    min-width: 0;
    color: #111827 !important;
}

.kh-dl-download-action strong,
.kh-dl-download-action em {
    min-width: 0;
    overflow-wrap: anywhere;
}

.kh-dl-download-action--main {
    color: #fff !important;
}

.kh-dl-buy-panel__top {
    grid-template-columns: 54px minmax(0, 1fr);
}

.kh-dl-buy-panel__top b {
    grid-column: 1 / -1;
    justify-self: start;
    margin-top: 6px;
}

@media (max-width: 1200px) {
    .kh-dl-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .kh-dl-detail-layout { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
    .kh-dl-category-grid { grid-template-columns: 1fr; }
    .kh-dl-category-card { grid-template-columns: minmax(0, 1fr) 104px; min-height: 150px; padding: 20px; }
    .kh-dl-brand-visual { width: 96px; height: 96px; border-radius: 24px; }
    .kh-dl-hero-visual { width: 100%; max-width: 320px; margin: 0 auto; }
}
/* Codex: downloads center visual consistency with Key-Hub UI. */
.kh-downloads-page {
    font-family: var(--kh-ui-font, Inter, Roboto, Arial, sans-serif);
    color: #111827;
}

.kh-downloads-page h1,
.kh-downloads-page h2,
.kh-downloads-page h3,
.kh-downloads-page strong {
    color: #111827;
    font-weight: 850;
    letter-spacing: 0;
}

.kh-downloads-page p,
.kh-downloads-page em,
.kh-downloads-page dt,
.kh-dl-product-card__meta span,
.kh-dl-row-meta,
.kh-dl-section__head span {
    color: #667085;
}

.kh-dl-hero {
    border-color: rgba(139, 170, 220, .32);
    background:
        radial-gradient(circle at 74% 26%, rgba(47,184,255,.24), transparent 34%),
        radial-gradient(circle at 42% 100%, rgba(108,89,255,.10), transparent 36%),
        linear-gradient(135deg, #fff 0%, #f6fbff 100%);
    box-shadow: 0 24px 64px rgba(37,75,145,.10);
}

.kh-dl-kicker {
    border-color: rgba(47,128,255,.18);
    background: rgba(255,255,255,.86);
    color: #245bb1;
    font-weight: 800;
    box-shadow: 0 12px 28px rgba(37,75,145,.08);
}

.kh-dl-hero h1,
.kh-downloads-category h1,
.kh-downloads-detail h1 {
    color: #111827;
    font-weight: 850;
}

.kh-dl-hero p,
.kh-dl-category-intro p,
.kh-dl-product-hero p {
    color: #4d5b73;
}

.kh-dl-search {
    border-color: rgba(139,170,220,.32);
    box-shadow: 0 14px 34px rgba(37,75,145,.08);
}

.kh-dl-search input {
    color: #111827;
}

.kh-dl-search button,
.kh-dl-btn--primary,
.kh-dl-row-actions .is-buy {
    min-height: 46px;
    border: 0 !important;
    border-radius: 13px;
    background: linear-gradient(135deg, #6c59ff 0%, #2fbfff 100%) !important;
    color: #fff !important;
    font-weight: 850;
    box-shadow: 0 18px 42px rgba(47,128,255,.24);
}

.kh-dl-btn--ghost,
.kh-dl-row-actions a:not(.is-buy) {
    border-color: rgba(139,170,220,.34);
    background: rgba(255,255,255,.9);
    color: #5263f5 !important;
    font-weight: 850;
    box-shadow: 0 10px 24px rgba(37,75,145,.06);
}

.kh-dl-category-card,
.kh-dl-product-card,
.kh-dl-table,
.kh-dl-category-intro,
.kh-dl-product-hero,
.kh-dl-spec-card,
.kh-dl-article-card,
.kh-dl-side-card,
.kh-dl-trust-row,
.kh-dl-empty {
    border-color: rgba(139,170,220,.28);
    background: #fff;
    box-shadow: 0 18px 44px rgba(37,75,145,.08);
}

.kh-dl-category-card {
    background: linear-gradient(135deg, #fff 0%, #f7fbff 100%);
}

.kh-dl-category-card strong {
    color: #111827;
    font-weight: 850;
}

.kh-dl-category-card em {
    color: #667085;
}

.kh-dl-product-card h3 a,
.kh-dl-row-product strong {
    color: #3157d6 !important;
    font-weight: 850;
}

.kh-dl-section__head h2 {
    color: #111827;
    font-weight: 850;
}

.kh-dl-table__head {
    color: #71809b;
    background: #f6f9ff;
}

.kh-dl-download-action {
    color: #111827 !important;
}

.kh-dl-download-action--main {
    color: #fff !important;
    background: linear-gradient(135deg, #6c59ff 0%, #2fbfff 100%);
}
/* Codex: restore compact download-center layout, keep Key-Hub typography/buttons. */
.kh-downloads-home .kh-dl-hero {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 360px);
    min-height: 300px;
    padding: 42px;
}

.kh-downloads-home .kh-dl-hero__art {
    min-height: 220px;
    display: grid;
    place-items: center;
}

.kh-downloads-home .kh-dl-hero-orb {
    width: 154px;
    height: 154px;
    display: grid !important;
    place-items: center;
    border-radius: 38px;
    background: rgba(255,255,255,.88);
    color: #365adf;
    font-size: 72px;
    font-weight: 850;
    box-shadow: 0 28px 70px rgba(37,75,145,.16);
    transform: rotate(7deg);
}

.kh-downloads-home .kh-dl-category-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    margin: 22px 0 70px;
}

.kh-downloads-home .kh-dl-category-card {
    min-height: 108px;
    grid-template-columns: 58px minmax(0, 1fr) 20px;
    gap: 14px;
    padding: 18px;
    border-radius: 16px;
}

.kh-downloads-home .kh-dl-category-card::before {
    display: none;
}

.kh-downloads-home .kh-dl-category-card strong {
    font-size: 16px;
    line-height: 1.2;
}

.kh-downloads-home .kh-dl-category-card em {
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.3;
}

.kh-downloads-home .kh-dl-category-card b {
    color: #5263f5;
    font-size: 18px;
}

.kh-downloads-home .kh-dl-icon {
    width: 48px;
    height: 48px;
    display: inline-grid;
    place-items: center;
    border-radius: 14px;
    background: #f3f7ff;
    color: #5263f5;
    font-size: 0;
    font-weight: 850;
    box-shadow: none;
}

.kh-downloads-home .kh-dl-icon::before {
    width: auto;
    height: auto;
    display: block;
    border-radius: 0;
    background: none;
    box-shadow: none;
    transform: none;
    color: currentColor;
    font-size: 20px;
    line-height: 1;
    font-weight: 850;
}

.kh-downloads-home .kh-dl-icon--win::before { content: "⊞"; color: #365adf; }
.kh-downloads-home .kh-dl-icon--office::before { content: "O"; color: #ff4b24; }
.kh-downloads-home .kh-dl-icon--doc::before { content: "▤"; color: #5263f5; }
.kh-downloads-home .kh-dl-icon--autodesk::before { content: "A"; color: #16a085; }
.kh-downloads-home .kh-dl-icon--adobe::before { content: "Ai"; color: #ef233c; font-size: 18px; }
.kh-downloads-home .kh-dl-icon--keyhub::before { content: "⌘"; color: #5263f5; }

@media (max-width: 1200px) {
    .kh-downloads-home .kh-dl-category-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .kh-downloads-home .kh-dl-hero {
        grid-template-columns: 1fr;
        padding: 24px;
    }

    .kh-downloads-home .kh-dl-category-grid {
        grid-template-columns: 1fr;
        margin-bottom: 42px;
    }
}
/* Codex: download-center final spacing tune. */
.kh-downloads-home .kh-dl-hero {
    min-height: 258px;
    margin: 24px 0 34px;
    padding: 30px 42px;
}

.kh-downloads-home .kh-dl-hero h1 {
    max-width: 720px;
    margin-bottom: 18px;
    font-size: clamp(32px, 3.1vw, 46px);
}

.kh-downloads-home .kh-dl-hero p {
    max-width: 760px;
    margin-bottom: 20px;
}

.kh-downloads-home .kh-dl-hero__art {
    min-height: 190px;
}

.kh-downloads-home .kh-dl-hero-orb {
    width: 132px;
    height: 132px;
    border-radius: 32px;
    font-size: 62px;
}

.kh-downloads-home .kh-dl-category-grid {
    margin: 0 0 34px;
}

.kh-downloads-home .kh-dl-category-card {
    min-height: 104px;
    padding: 16px;
}

.kh-downloads-home .kh-dl-category-card strong {
    font-size: 15px;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: manual;
}

.kh-downloads-home .kh-dl-category-card em {
    font-size: 12px;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: manual;
}

.kh-downloads-home .kh-dl-section {
    margin-top: 20px;
}

@media (max-width: 760px) {
    .kh-downloads-home .kh-dl-hero {
        min-height: 0;
        padding: 24px;
    }
}
/* Codex: fix download detail sidebar action text wrapping. */
.kh-dl-download-action {
    grid-template-columns: 48px minmax(0, 1fr) 18px;
    grid-template-rows: auto auto;
}

.kh-dl-download-action > span {
    grid-column: 1;
    grid-row: 1 / span 2;
}

.kh-dl-download-action > strong {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    color: #111827;
    line-height: 1.2;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
}

.kh-dl-download-action > em {
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
    color: #667085;
    line-height: 1.25;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
}

.kh-dl-download-action::after {
    grid-column: 3;
    grid-row: 1 / span 2;
    align-self: center;
}

.kh-dl-download-action--main > strong,
.kh-dl-download-action--main > em {
    color: #fff !important;
}

.kh-dl-download-action--main > em {
    opacity: .78;
}

/* Codex: compact brand icons for downloads center categories. */
.kh-downloads-home .kh-dl-category-card .kh-dl-brand-visual {
    width: 52px;
    height: 52px;
    justify-self: start;
    border-radius: 15px;
    background: #f7faff;
    box-shadow: none;
}

.kh-downloads-home .kh-dl-category-card .kh-dl-brand-visual img {
    max-width: 74%;
    max-height: 74%;
}
/* Codex: keep download product titles in native Key-Hub text color. */
.kh-dl-product-card h3 a,
.kh-dl-row-product strong {
    color: #101828 !important;
    font-weight: 850;
}

.kh-dl-product-card h3 a:hover,
.kh-dl-row-product strong:hover {
    color: #3157d6 !important;
}
/* Codex: polish download cards after visual review. */
.kh-downloads-home .kh-dl-category-card {
    grid-template-columns: 74px minmax(0, 1fr) 18px;
}

.kh-downloads-home .kh-dl-category-card .kh-dl-brand-visual {
    width: 68px;
    height: 68px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.kh-downloads-home .kh-dl-category-card .kh-dl-brand-visual img {
    max-width: 100%;
    max-height: 100%;
}

.kh-dl-product-card__meta {
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
}

.kh-dl-product-card__meta span {
    white-space: nowrap;
    min-width: 0;
    padding: 0 9px;
    color: #667085;
    font-size: 11px;
}

.kh-dl-product-card__actions {
    gap: 9px;
}

.kh-dl-btn {
    font-size: 15px;
    text-decoration: none !important;
}

/* Codex: premium download detail hero, variant 4. */
.kh-downloads-detail > h1 {
    margin-bottom: 24px;
}

.kh-downloads-detail .kh-dl-detail-layout {
    grid-template-columns: minmax(0, 1fr) minmax(310px, 348px);
    gap: 20px;
    align-items: start;
}

.kh-downloads-detail .kh-dl-product-hero {
    position: relative;
    overflow: hidden;
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 30px;
    align-items: center;
    min-height: 306px;
    padding: 30px;
    border: 1px solid rgba(133, 174, 238, .42);
    border-radius: 24px;
    background:
        radial-gradient(circle at 18% 28%, rgba(90, 191, 255, .22), transparent 34%),
        radial-gradient(circle at 88% 8%, rgba(101, 92, 255, .16), transparent 32%),
        linear-gradient(135deg, #ffffff 0%, #f7fbff 52%, #edf6ff 100%);
    box-shadow: 0 24px 70px rgba(37, 75, 145, .13);
}

.kh-downloads-detail .kh-dl-product-hero::before,
.kh-downloads-detail .kh-dl-product-hero::after {
    content: "";
    position: absolute;
    pointer-events: none;
    border-radius: 999px;
}

.kh-downloads-detail .kh-dl-product-hero::before {
    width: 420px;
    height: 420px;
    right: -170px;
    top: -220px;
    background: rgba(47, 184, 255, .16);
    filter: blur(4px);
}

.kh-downloads-detail .kh-dl-product-hero::after {
    width: 220px;
    height: 70px;
    left: 42px;
    bottom: 28px;
    background: rgba(82, 99, 245, .12);
    filter: blur(24px);
}

.kh-downloads-detail .kh-dl-product-hero__image,
.kh-downloads-detail .kh-dl-product-hero__content {
    position: relative;
    z-index: 1;
}

.kh-downloads-detail .kh-dl-product-hero__content::before {
    content: "✓ Официальный образ для установки Windows";
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    margin-bottom: 16px;
    padding: 0 14px;
    border: 1px solid rgba(82,99,245,.22);
    border-radius: 999px;
    background: rgba(255,255,255,.76);
    color: #3157d6;
    font-size: 13px;
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(37,75,145,.08);
    backdrop-filter: blur(10px);
}

.kh-downloads-detail .kh-dl-product-hero__image {
    min-height: 230px;
    border: 0;
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.88), rgba(245,250,255,.72)),
        radial-gradient(circle at 50% 85%, rgba(47,184,255,.22), transparent 45%);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.9),
        0 20px 42px rgba(59, 111, 194, .13);
}

.kh-downloads-detail .kh-dl-product-hero__image .kh-dl-product-img {
    max-width: 230px !important;
    max-height: 230px !important;
    filter: drop-shadow(0 18px 22px rgba(32, 62, 120, .16));
}

.kh-downloads-detail .kh-dl-product-hero h2 {
    max-width: 620px;
    margin-bottom: 12px;
    color: #101828;
    font-size: 30px;
    line-height: 1.12;
    letter-spacing: 0;
}

.kh-downloads-detail .kh-dl-product-hero p {
    max-width: 650px;
    color: #44546f;
    font-size: 16px;
    line-height: 1.6;
}

.kh-downloads-detail .kh-dl-feature-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.kh-downloads-detail .kh-dl-feature-row span {
    min-height: 38px;
    justify-content: flex-start;
    padding: 0 13px;
    border: 1px solid rgba(136, 170, 224, .36);
    border-radius: 999px;
    background: rgba(255, 255, 255, .72);
    color: #29405f;
    font-size: 13px;
    font-weight: 900;
    box-shadow: 0 10px 22px rgba(37, 75, 145, .07);
    backdrop-filter: blur(10px);
}

.kh-downloads-detail .kh-dl-side {
    position: sticky;
    top: calc(var(--kh-smart-header-height, 0px) + 18px);
    gap: 12px;
}

.kh-downloads-detail .kh-dl-side-card {
    border: 1px solid rgba(133, 174, 238, .42);
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,251,255,.9));
    box-shadow: 0 24px 70px rgba(37, 75, 145, .12);
}

.kh-downloads-detail .kh-dl-download-panel {
    padding: 18px;
}

.kh-downloads-detail .kh-dl-download-panel h2,
.kh-downloads-detail .kh-dl-buy-panel h2 {
    font-size: 18px;
}

.kh-downloads-detail .kh-dl-download-action {
    min-height: 70px;
    margin-bottom: 9px;
    padding: 11px;
    border: 1px solid rgba(133, 174, 238, .36);
    border-radius: 18px;
    background: rgba(255,255,255,.76);
    box-shadow: 0 12px 28px rgba(37, 75, 145, .07);
}

.kh-downloads-detail .kh-dl-download-action--main {
    background: linear-gradient(135deg, #625cff 0%, #2fb8ff 100%);
    box-shadow: 0 16px 34px rgba(47, 126, 255, .28);
}

.kh-downloads-detail .kh-dl-download-action span {
    border-radius: 16px;
}

.kh-downloads-detail .kh-dl-buy-panel {
    padding: 18px;
    background:
        radial-gradient(circle at 10% 10%, rgba(82, 99, 245, .12), transparent 34%),
        linear-gradient(180deg, #ffffff, #f8fbff);
}

.kh-downloads-detail .kh-dl-buy-panel__top {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 12px;
}

.kh-downloads-detail .kh-dl-buy-panel__top > span {
    width: 48px;
    height: 48px;
    border-radius: 16px;
}

.kh-downloads-detail .kh-dl-buy-panel__top b {
    grid-column: 1 / -1;
    justify-self: start;
    margin-top: 4px;
    background: #eff6ff;
}

.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    min-height: 46px;
    border-radius: 14px;
    background: linear-gradient(135deg, #25b44b, #1fa341);
    box-shadow: 0 14px 28px rgba(31, 163, 65, .22);
}

@media (max-width: 1200px) {
    .kh-downloads-detail .kh-dl-detail-layout {
        grid-template-columns: 1fr;
    }

    .kh-downloads-detail .kh-dl-side {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .kh-downloads-detail .kh-dl-product-hero {
        grid-template-columns: 1fr;
        padding: 22px;
    }

    .kh-downloads-detail .kh-dl-side {
        grid-template-columns: 1fr;
    }

    .kh-downloads-detail .kh-dl-feature-row span {
        width: 100%;
    }
}

/* Codex: bring detail hero closer to approved v4 mockup. */
.kh-downloads-detail .kh-dl-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 0 0;
    align-items: stretch;
}

.kh-downloads-detail .kh-dl-detail-main {
    display: contents;
}

.kh-downloads-detail .kh-dl-product-hero {
    grid-column: 1;
    grid-row: 1;
    grid-template-columns: minmax(260px, 330px) minmax(0, 1fr);
    min-height: 0;
    height: 430px;
    margin: 0;
    padding: 34px 34px 34px 42px;
    border-right: 0;
    border-radius: 26px 0 0 26px;
    background:
        radial-gradient(circle at 14% 60%, rgba(47, 184, 255, .26), transparent 36%),
        radial-gradient(circle at 48% 0%, rgba(98, 92, 255, .12), transparent 34%),
        linear-gradient(135deg, #eaf5ff 0%, #ffffff 42%, #eef7ff 100%);
}

.kh-downloads-detail .kh-dl-product-hero__image {
    min-height: 300px;
    border-radius: 30px;
    background:
        radial-gradient(circle at 50% 88%, rgba(47,184,255,.28), transparent 46%),
        linear-gradient(180deg, rgba(255,255,255,.84), rgba(246,251,255,.62));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.95),
        0 26px 52px rgba(42, 93, 171, .16);
}

.kh-downloads-detail .kh-dl-product-hero__image .kh-dl-product-img {
    max-width: 286px !important;
    max-height: 286px !important;
}

.kh-downloads-detail .kh-dl-product-hero h2 {
    font-size: 34px;
    line-height: 1.08;
}

.kh-downloads-detail .kh-dl-feature-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    max-width: 520px;
}

.kh-downloads-detail .kh-dl-feature-row span {
    min-height: 58px;
    align-items: center;
    padding: 10px 16px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .74);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.88),
        0 12px 28px rgba(37,75,145,.08);
}

.kh-downloads-detail .kh-dl-side {
    grid-column: 2;
    grid-row: 1;
    position: relative;
    top: auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: 0;
    height: 430px;
    padding: 26px 24px;
    border: 1px solid rgba(133, 174, 238, .42);
    border-left: 0;
    border-radius: 0 26px 26px 0;
    background:
        linear-gradient(180deg, rgba(255,255,255,.88), rgba(248,251,255,.78));
    box-shadow: 0 24px 70px rgba(37,75,145,.13);
    backdrop-filter: blur(12px);
}

.kh-downloads-detail .kh-dl-side-card {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.kh-downloads-detail .kh-dl-download-panel h2 {
    margin-bottom: 14px;
}

.kh-downloads-detail .kh-dl-download-action {
    min-height: 62px;
    padding: 10px 12px;
    border-radius: 15px;
    background: rgba(255,255,255,.82);
}

.kh-downloads-detail .kh-dl-download-action--main {
    min-height: 70px;
    background: linear-gradient(135deg, #625cff 0%, #2fb8ff 100%) !important;
    color: #fff !important;
    box-shadow: 0 16px 34px rgba(47, 126, 255, .28);
}

.kh-downloads-detail .kh-dl-download-action--main > strong,
.kh-downloads-detail .kh-dl-download-action--main > em {
    color: #fff !important;
}

.kh-downloads-detail .kh-dl-buy-panel {
    margin-top: auto;
    padding-top: 2px;
}

.kh-downloads-detail .kh-dl-buy-panel__top {
    display: none;
}

.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    min-height: 54px;
    border-radius: 16px;
    background: linear-gradient(135deg, #31bf5b, #239e43);
}

.kh-downloads-detail .kh-dl-note {
    margin-top: 10px;
    font-size: 13px;
}

.kh-downloads-detail .kh-dl-spec-card {
    grid-column: 1 / -1;
    grid-row: 2;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    margin: 0 auto 18px;
    padding: 18px 22px;
    width: min(880px, calc(100% - 150px));
    transform: translateY(-18px);
    border-radius: 18px;
    background: rgba(255,255,255,.86);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.92),
        0 18px 40px rgba(37,75,145,.1);
    backdrop-filter: blur(14px);
}

.kh-downloads-detail .kh-dl-spec-card h2 {
    margin: 0;
    font-size: 16px;
    color: #3157d6;
}

.kh-downloads-detail .kh-dl-spec-card dl {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
}

.kh-downloads-detail .kh-dl-spec-card dl div {
    display: block;
    padding: 0 16px;
    border-bottom: 0;
    border-left: 1px solid rgba(133,174,238,.26);
}

.kh-downloads-detail .kh-dl-spec-card dt {
    margin-bottom: 4px;
    font-size: 11px;
}

.kh-downloads-detail .kh-dl-spec-card dd {
    font-size: 13px;
}

.kh-downloads-detail .kh-dl-article-card {
    grid-column: 1 / -1;
    grid-row: 3;
}

@media (max-width: 1200px) {
    .kh-downloads-detail .kh-dl-detail-layout {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .kh-downloads-detail .kh-dl-product-hero,
    .kh-downloads-detail .kh-dl-side,
    .kh-downloads-detail .kh-dl-spec-card,
    .kh-downloads-detail .kh-dl-article-card {
        grid-column: 1;
        grid-row: auto;
        border-radius: 24px;
        border: 1px solid rgba(133, 174, 238, .42);
    }

    .kh-downloads-detail .kh-dl-side {
        min-height: 0;
    }

    .kh-downloads-detail .kh-dl-spec-card {
        width: 100%;
        transform: none;
    }
}

@media (max-width: 900px) {
    .kh-downloads-detail .kh-dl-product-hero,
    .kh-downloads-detail .kh-dl-feature-row,
    .kh-downloads-detail .kh-dl-spec-card,
    .kh-downloads-detail .kh-dl-spec-card dl {
        grid-template-columns: 1fr;
    }

    .kh-downloads-detail .kh-dl-spec-card dl div {
        padding: 10px 0;
        border-left: 0;
        border-top: 1px solid rgba(133,174,238,.26);
    }
}

/* Codex: v4 refinement after comparing against the approved mockup. */
.kh-downloads-detail .kh-dl-detail-layout {
    grid-template-columns: minmax(0, 1fr) 300px;
}

.kh-downloads-detail .kh-dl-product-hero {
    grid-template-columns: minmax(300px, 360px) minmax(0, 1fr);
    height: 440px;
    padding: 32px 30px 44px 34px;
    border-color: rgba(133,174,238,.34);
    background:
        radial-gradient(circle at 10% 64%, rgba(47,184,255,.30), transparent 34%),
        radial-gradient(circle at 48% 8%, rgba(98,92,255,.10), transparent 32%),
        radial-gradient(circle at 82% 12%, rgba(99,210,255,.20), transparent 30%),
        linear-gradient(135deg, #eaf5ff 0%, #ffffff 46%, #edf7ff 100%);
}

.kh-downloads-detail .kh-dl-product-hero__image {
    position: relative;
    overflow: visible;
    min-height: 340px;
    align-self: stretch;
    background:
        radial-gradient(ellipse at 50% 86%, rgba(47,184,255,.34), transparent 46%),
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(246,251,255,.52));
}

.kh-downloads-detail .kh-dl-product-hero__image::before {
    content: "";
    position: absolute;
    left: 11%;
    right: 11%;
    bottom: 34px;
    height: 34px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(65,123,255,.08), rgba(47,184,255,.32), rgba(65,123,255,.08));
    box-shadow:
        0 0 0 1px rgba(91,157,255,.22),
        0 14px 34px rgba(47,184,255,.26);
}

.kh-downloads-detail .kh-dl-product-hero__image::after {
    content: "";
    position: absolute;
    left: 18%;
    right: 18%;
    bottom: 24px;
    height: 8px;
    border-radius: 999px;
    background: rgba(47,184,255,.45);
    filter: blur(5px);
}

.kh-downloads-detail .kh-dl-product-hero__image .kh-dl-product-img {
    position: relative;
    z-index: 1;
    max-width: 330px !important;
    max-height: 330px !important;
    transform: translateY(-8px);
    filter: drop-shadow(0 26px 24px rgba(31, 72, 140, .22));
}

.kh-downloads-detail .kh-dl-product-hero h2 {
    font-size: 32px;
}

.kh-downloads-detail .kh-dl-product-hero p {
    max-width: 560px;
}

.kh-downloads-detail .kh-dl-feature-row {
    gap: 9px;
}

.kh-downloads-detail .kh-dl-feature-row span {
    min-height: 54px;
    padding: 9px 14px;
    font-size: 12px;
}

.kh-downloads-detail .kh-dl-side {
    height: 440px;
    padding: 22px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(247,251,255,.68));
}

.kh-downloads-detail .kh-dl-download-panel {
    display: grid;
    gap: 9px;
}

.kh-downloads-detail .kh-dl-download-panel h2 {
    margin-bottom: 4px;
}

.kh-downloads-detail .kh-dl-download-action {
    min-height: 58px;
    margin-bottom: 0;
    grid-template-columns: 42px minmax(0, 1fr) 14px;
    padding: 9px 10px;
}

.kh-downloads-detail .kh-dl-download-action--main {
    min-height: 68px;
}

.kh-downloads-detail .kh-dl-download-action span {
    width: 42px;
    height: 42px;
}

.kh-downloads-detail .kh-dl-download-action strong {
    font-size: 14px;
}

.kh-downloads-detail .kh-dl-download-action em {
    font-size: 11px;
}

.kh-downloads-detail .kh-dl-buy-panel {
    position: absolute;
    right: 22px;
    bottom: 22px;
    left: 22px;
    margin-top: 0;
}

.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    min-height: 54px;
    padding: 0 14px;
    justify-content: flex-start;
    text-align: left;
}

.kh-downloads-detail .kh-dl-note {
    display: none;
}

.kh-downloads-detail .kh-dl-spec-card {
    width: min(780px, calc(100% - 220px));
    min-height: 64px;
    transform: translateY(-20px);
    padding: 14px 18px;
    grid-template-columns: 1fr;
}

.kh-downloads-detail .kh-dl-spec-card h2 {
    display: none;
}

.kh-downloads-detail .kh-dl-spec-card dl {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: center;
}

.kh-downloads-detail .kh-dl-spec-card dl div {
    min-width: 0;
    padding: 0 12px;
}

.kh-downloads-detail .kh-dl-spec-card dt {
    overflow: hidden;
    color: #667085;
    font-size: 10px;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.kh-downloads-detail .kh-dl-spec-card dd {
    overflow: hidden;
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.15;
    text-overflow: ellipsis;
}

/* Codex: clean final UI alignment for the approved download detail block. */
.kh-downloads-detail .kh-dl-detail-layout {
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 0;
    max-width: 1110px;
    margin: 0 auto;
}

.kh-downloads-detail .kh-dl-product-hero {
    height: 430px;
    grid-template-columns: 350px minmax(0, 1fr);
    gap: 34px;
    padding: 34px 34px 54px;
    border-radius: 24px 0 0 24px;
}

.kh-downloads-detail .kh-dl-product-hero__image {
    min-height: 328px;
    border-radius: 26px;
}

.kh-downloads-detail .kh-dl-product-hero__image .kh-dl-product-img {
    max-width: 320px !important;
    max-height: 320px !important;
}

.kh-downloads-detail .kh-dl-product-hero__content::before {
    margin-bottom: 14px;
}

.kh-downloads-detail .kh-dl-product-hero h2 {
    margin-bottom: 14px;
    font-size: 32px;
}

.kh-downloads-detail .kh-dl-product-hero p {
    margin-bottom: 18px;
    max-width: 570px;
    font-size: 15px;
}

.kh-downloads-detail .kh-dl-feature-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    max-width: 560px;
    margin-top: 0;
}

.kh-downloads-detail .kh-dl-feature-row span {
    position: relative;
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: center;
    min-height: 64px;
    padding: 11px 14px;
    border: 1px solid rgba(133, 174, 238, .42);
    border-radius: 14px;
    background: rgba(255, 255, 255, .82);
    color: transparent;
    font-size: 0;
    box-shadow: 0 12px 26px rgba(37, 75, 145, .08);
}

.kh-downloads-detail .kh-dl-feature-row span::before {
    grid-row: 1 / span 2;
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    color: #3157d6;
    font-size: 18px;
    font-weight: 900;
}

.kh-downloads-detail .kh-dl-feature-row span::after {
    color: #101828;
    font-size: 13px;
    font-weight: 900;
    line-height: 1.18;
    white-space: pre-line;
}

.kh-downloads-detail .kh-dl-feature-row span:nth-child(1)::before { content: "♡"; }
.kh-downloads-detail .kh-dl-feature-row span:nth-child(2)::before { content: "↯"; }
.kh-downloads-detail .kh-dl-feature-row span:nth-child(3)::before { content: "▤"; }
.kh-downloads-detail .kh-dl-feature-row span:nth-child(4)::before { content: "⚿"; }
.kh-downloads-detail .kh-dl-feature-row span:nth-child(1)::after { content: "Проверенные ссылки\AБезопасные и актуальные файлы"; }
.kh-downloads-detail .kh-dl-feature-row span:nth-child(2)::after { content: "Быстрая загрузка\AВысокая скорость без ожидания"; }
.kh-downloads-detail .kh-dl-feature-row span:nth-child(3)::after { content: "Инструкция\AПошаговая помощь по установке"; }
.kh-downloads-detail .kh-dl-feature-row span:nth-child(4)::after { content: "Ключ активации\AПодбор и активация ключа"; }

.kh-downloads-detail .kh-dl-side {
    height: 430px;
    padding: 24px 22px;
    border-radius: 0 24px 24px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.kh-downloads-detail .kh-dl-download-panel {
    display: grid;
    gap: 10px;
}

.kh-downloads-detail .kh-dl-download-panel h2 {
    margin: 0 0 6px;
    font-size: 18px;
}

.kh-downloads-detail .kh-dl-download-action {
    min-height: 62px;
    grid-template-columns: 42px minmax(0, 1fr) 18px;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid rgba(133,174,238,.36);
    border-radius: 14px;
    background: rgba(255,255,255,.86);
    box-shadow: 0 10px 24px rgba(37,75,145,.07);
}

.kh-downloads-detail .kh-dl-download-action--main {
    min-height: 72px;
}

.kh-downloads-detail .kh-dl-download-action span {
    width: 42px;
    height: 42px;
    border-radius: 14px;
}

.kh-downloads-detail .kh-dl-download-action strong {
    font-size: 14px;
    line-height: 1.12;
}

.kh-downloads-detail .kh-dl-download-action em {
    margin-top: 4px;
    font-size: 11px;
}

.kh-downloads-detail .kh-dl-buy-panel {
    position: static;
    margin-top: 10px;
}

.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    min-height: 58px;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 18px;
    gap: 10px;
    align-items: center;
    padding: 0 12px;
    border-radius: 14px;
    color: #fff !important;
    font-size: 14px;
    font-weight: 950;
    background: linear-gradient(135deg, #31bf5b, #239e43) !important;
}

.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    content: "⚿";
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: rgba(255,255,255,.22);
    color: #fff;
    font-size: 19px;
}

.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::after {
    content: "›";
    color: rgba(255,255,255,.86);
    font-size: 24px;
}

.kh-downloads-detail .kh-dl-spec-card {
    width: min(760px, calc(100% - 240px));
    min-height: 60px;
    margin-bottom: 6px;
    padding: 12px 16px;
    transform: translateY(-18px);
    border-radius: 16px;
}

.kh-downloads-detail .kh-dl-spec-card dl {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.kh-downloads-detail .kh-dl-spec-card dl div {
    display: grid;
    grid-template-columns: 26px minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: center;
    padding: 0 10px;
}

.kh-downloads-detail .kh-dl-spec-card dl div::before {
    grid-row: 1 / span 2;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    color: #3157d6;
    font-size: 15px;
}

.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(1)::before { content: "▦"; }
.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(2)::before { content: "▣"; }
.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(3)::before { content: "◎"; }
.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(4)::before { content: "♡"; }
.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(5)::before { content: "▤"; }
.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(6)::before { content: "⌂"; }

.kh-downloads-detail .kh-dl-spec-card dt,
.kh-downloads-detail .kh-dl-spec-card dd {
    min-width: 0;
}

@media (max-width: 1200px) {
    .kh-downloads-detail .kh-dl-detail-layout {
        max-width: none;
    }
}

.kh-dl-btn--primary {
    color: #fff !important;
}

.kh-dl-btn--ghost {
    border-color: #d9e4f5;
    background: #fff;
    color: #1f2937 !important;
}

.kh-dl-btn--ghost:hover {
    border-color: #b9cdf0;
    color: #111827 !important;
}

.kh-dl-btn--buy {
    min-height: 44px;
    border: 0;
    background: linear-gradient(135deg, #31b344 0%, #249c3a 100%);
    color: #fff !important;
    box-shadow: 0 14px 28px rgba(49, 179, 68, .22);
}

.kh-dl-btn--buy:hover {
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(49, 179, 68, .28);
}

.kh-dl-row-actions a:not(.is-buy) {
    color: #1f2937 !important;
}

.kh-dl-row-actions .is-buy {
    border: 0;
    background: linear-gradient(135deg, #31b344 0%, #249c3a 100%);
    color: #fff !important;
    box-shadow: 0 12px 24px rgba(49, 179, 68, .20);
}

.kh-dl-row-actions .is-buy small {
    color: rgba(255,255,255,.92);
}
/* Codex: download search alignment and larger brand cards. */
.kh-downloads-home .kh-dl-search {
    display: flex;
    align-items: center;
    width: min(100%, 690px);
    min-height: 58px;
    padding: 5px 6px 5px 18px;
    gap: 12px;
    overflow: visible;
}

.kh-downloads-home .kh-dl-search__icon {
    width: 22px;
    height: 22px;
    display: inline-flex;
    flex: 0 0 22px;
    align-items: center;
    justify-content: center;
    color: #5263f5;
    font-size: 0;
    line-height: 0;
}

.kh-downloads-home .kh-dl-search__icon svg {
    width: 20px;
    height: 20px;
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.kh-downloads-home .kh-dl-search input {
    height: 48px;
    flex: 1 1 auto;
    padding: 0;
    line-height: 48px;
}

.kh-downloads-home .kh-dl-search button {
    min-width: 108px;
    min-height: 48px;
    align-self: stretch;
    border-radius: 13px;
    padding: 0 26px;
}

.kh-downloads-home .kh-dl-category-grid {
    gap: 18px;
    margin: 0 0 22px;
}

.kh-downloads-home .kh-dl-category-card {
    min-height: 134px;
    grid-template-columns: 90px minmax(0, 1fr) 20px;
    gap: 18px;
    padding: 22px;
}

.kh-downloads-home .kh-dl-category-card .kh-dl-brand-visual {
    width: 82px;
    height: 82px;
}

.kh-downloads-home .kh-dl-category-card strong {
    font-size: 17px;
}

.kh-downloads-home .kh-dl-category-card em {
    font-size: 13px;
    line-height: 1.35;
}

.kh-downloads-home .kh-dl-section {
    margin-top: 6px;
}
/* Codex: readable brand cards after search layout review. */
.kh-downloads-home .kh-dl-category-grid {
    gap: 16px;
    margin: 0 0 20px;
}

.kh-downloads-home .kh-dl-category-card {
    position: relative;
    min-height: 122px;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 14px;
    padding: 20px 18px;
    align-items: center;
}

.kh-downloads-home .kh-dl-category-card .kh-dl-brand-visual {
    width: 72px;
    height: 72px;
}

.kh-downloads-home .kh-dl-category-card span {
    min-width: 0;
}

.kh-downloads-home .kh-dl-category-card strong {
    font-size: 17px;
    line-height: 1.15;
}

.kh-downloads-home .kh-dl-category-card em {
    max-width: 150px;
    font-size: 13px;
    line-height: 1.28;
}

.kh-downloads-home .kh-dl-category-card b {
    position: absolute;
    right: 18px;
    bottom: 18px;
}

/* Codex: downloads hero wide WebP background. */
.kh-downloads-home .kh-dl-hero {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background-image: url("assets/downloads-hero-wide-bg.webp");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% 100%;
}

.kh-downloads-home .kh-dl-hero__content {
    position: relative;
    z-index: 2;
}

.kh-downloads-home .kh-dl-hero__art {
    min-height: 230px;
    pointer-events: none;
}

.kh-downloads-home .kh-dl-hero__art::before,
.kh-downloads-home .kh-dl-hero__art::after {
    content: none !important;
}

@media (max-width: 760px) {
    .kh-downloads-home .kh-dl-hero {
        background-position: center bottom;
        background-size: auto 100%;
    }

    .kh-downloads-home .kh-dl-hero__art {
        min-height: 210px;
    }
}

/* Hide article publish dates in single article hero. */
.kh-single-article-kicker time {
    display: none !important;
}

/* Codex: final geometry fix for download detail v4 UI. */
.kh-downloads-detail .kh-dl-product-hero {
    grid-template-columns: 310px minmax(0, 1fr) !important;
    gap: 24px !important;
}

.kh-downloads-detail .kh-dl-product-hero__image .kh-dl-product-img {
    max-width: 300px !important;
    max-height: 300px !important;
}

.kh-downloads-detail .kh-dl-feature-row span {
    height: 58px !important;
    min-height: 58px !important;
    padding: 8px 12px !important;
}

.kh-downloads-detail .kh-dl-feature-row span::before {
    width: 26px !important;
    height: 26px !important;
}

.kh-downloads-detail .kh-dl-feature-row span::after {
    font-size: 11px !important;
    line-height: 1.16 !important;
}

.kh-downloads-detail .kh-dl-side {
    justify-content: flex-start !important;
    position: relative !important;
}

.kh-downloads-detail .kh-dl-download-action {
    min-height: 56px !important;
}

.kh-downloads-detail .kh-dl-download-action--main {
    min-height: 66px !important;
}

.kh-downloads-detail .kh-dl-download-action strong {
    font-size: 13px !important;
}

.kh-downloads-detail .kh-dl-download-action em {
    font-size: 10px !important;
}

.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    min-height: 54px !important;
}

.kh-downloads-detail .kh-dl-buy-panel {
    position: absolute !important;
    left: 22px !important;
    right: 22px !important;
    bottom: -18px !important;
    margin: 0 !important;
}

.kh-downloads-detail .kh-dl-spec-card {
    height: 68px !important;
    min-height: 68px !important;
    overflow: hidden !important;
}

.kh-downloads-detail .kh-dl-spec-card dl div {
    grid-template-rows: 14px 18px !important;
}

.kh-downloads-detail .kh-dl-spec-card dd {
    white-space: nowrap !important;
}

/* Codex: final clearance between feature cards and the specs ribbon. */
.kh-downloads-detail .kh-dl-spec-card {
    margin-top: -20px !important;
}

/* Codex: keep mobile detail actions before specs and article. */
@media (max-width: 1200px) {
    .kh-downloads-detail .kh-dl-side {
        grid-row: 2 !important;
    }

    .kh-downloads-detail .kh-dl-spec-card {
        grid-row: 3 !important;
        margin-top: 18px !important;
    }

    .kh-downloads-detail .kh-dl-article-card {
        grid-column: 1 !important;
        grid-row: 4 !important;
    }
}

/* Codex: hard final cleanup for the download detail visual noise. */
html body .kh-downloads-detail .kh-dl-product-hero__image {
    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

html body .kh-downloads-detail .kh-dl-product-hero__image::before,
html body .kh-downloads-detail .kh-dl-product-hero__image::after {
    content: none !important;
    display: none !important;
}

html body .kh-downloads-detail .kh-dl-spec-card dl div {
    border: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
}

html body .kh-downloads-detail .kh-dl-spec-card dl div::before,
html body .kh-downloads-detail .kh-dl-feature-row span::before,
html body .kh-downloads-detail .kh-dl-download-action span,
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    content: none !important;
    display: none !important;
}

/* Codex: use the available page width on download detail pages. */
html body .kh-downloads-detail,
html body .kh-downloads-detail .kh-downloads-page,
html body .kh-downloads-detail .kh-dl-page,
html body .kh-downloads-detail .entry-content {
    width: min(100% - 32px, 1480px) !important;
    max-width: 1480px !important;
}

html body .kh-downloads-detail .kh-dl-detail-layout {
    width: min(100%, 1360px) !important;
    max-width: 1360px !important;
    grid-template-columns: minmax(0, 1fr) 340px !important;
    padding: 34px 36px 28px !important;
}

html body .kh-downloads-detail .kh-dl-product-hero {
    grid-template-columns: minmax(300px, 390px) minmax(0, 1fr) !important;
    gap: 36px !important;
    padding-right: 36px !important;
    padding-bottom: 42px !important;
}

html body .kh-downloads-detail .kh-dl-product-hero__image {
    min-height: 350px !important;
}

html body .kh-downloads-detail .kh-dl-product-hero__image .kh-dl-product-img {
    max-width: 330px !important;
    max-height: 330px !important;
}

html body .kh-downloads-detail .kh-dl-product-hero h2 {
    max-width: 640px !important;
    font-size: clamp(34px, 2.55vw, 44px) !important;
}

html body .kh-downloads-detail .kh-dl-product-hero p {
    max-width: 660px !important;
}

html body .kh-downloads-detail .kh-dl-feature-row {
    max-width: 660px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

html body .kh-downloads-detail .kh-dl-side {
    min-height: 430px !important;
}

html body .kh-downloads-detail .kh-dl-spec-card {
    width: min(1040px, calc(100% - 360px)) !important;
    margin-top: -34px !important;
    margin-left: 120px !important;
}

html body .kh-downloads-detail .kh-dl-article-card {
    width: min(100%, 1360px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

@media (max-width: 1200px) {
    html body .kh-downloads-detail,
    html body .kh-downloads-detail .kh-downloads-page,
    html body .kh-downloads-detail .kh-dl-page,
    html body .kh-downloads-detail .entry-content {
        width: min(100% - 24px, 100%) !important;
    }

    html body .kh-downloads-detail .kh-dl-detail-layout {
        grid-template-columns: 1fr !important;
        padding: 22px !important;
    }

    html body .kh-downloads-detail .kh-dl-product-hero {
        padding-right: 0 !important;
        padding-bottom: 0 !important;
    }

    html body .kh-downloads-detail .kh-dl-spec-card {
        width: 100% !important;
        margin-left: 0 !important;
        margin-top: 18px !important;
    }
}

/* Codex: stretch the detail page into the side air of the theme container. */
html body main.kh-downloads-page.kh-downloads-detail {
    width: min(calc(100% + 92px), 1360px) !important;
    max-width: 1360px !important;
    margin-left: -46px !important;
    margin-right: -46px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: 100% !important;
    max-width: 1360px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    grid-template-columns: minmax(0, 1fr) 350px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
    grid-template-columns: minmax(330px, 420px) minmax(0, 1fr) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    width: min(1040px, calc(100% - 380px)) !important;
    margin-top: -10px !important;
    margin-left: 120px !important;
}

@media (max-width: 1200px) {
    html body main.kh-downloads-page.kh-downloads-detail {
        width: min(100% - 24px, 100%) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
        grid-template-columns: 1fr !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
        grid-template-columns: 1fr !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
        width: 100% !important;
        margin-left: 0 !important;
        margin-top: 18px !important;
    }
}

/* Codex: compact right panel so the specs ribbon sits correctly. */
html body .kh-downloads-detail .kh-dl-detail-layout {
    grid-template-columns: minmax(0, 1fr) 320px !important;
}

html body .kh-downloads-detail .kh-dl-side {
    min-height: 390px !important;
    height: auto !important;
    padding: 22px !important;
}

html body .kh-downloads-detail .kh-dl-download-action {
    min-height: 64px !important;
    margin-bottom: 10px !important;
    padding: 12px 14px !important;
    grid-template-columns: minmax(0, 1fr) 14px !important;
    gap: 8px !important;
}

html body .kh-downloads-detail .kh-dl-download-action strong {
    max-width: 210px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
}

html body .kh-downloads-detail .kh-dl-download-action em {
    max-width: 210px !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    min-height: 58px !important;
    padding: 0 14px !important;
    grid-template-columns: minmax(0, 1fr) 14px !important;
}

html body .kh-downloads-detail .kh-dl-spec-card {
    width: min(840px, calc(100% - 300px)) !important;
    margin-top: -34px !important;
    margin-left: 64px !important;
}

@media (max-width: 1200px) {
    html body .kh-downloads-detail .kh-dl-detail-layout {
        grid-template-columns: 1fr !important;
    }

    html body .kh-downloads-detail .kh-dl-spec-card {
        width: 100% !important;
        margin-top: 18px !important;
        margin-left: 0 !important;
    }
}

/* Codex: hard final cleanup for the download detail visual noise. */
html body .kh-downloads-detail .kh-dl-product-hero__image {
    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

html body .kh-downloads-detail .kh-dl-product-hero__image::before,
html body .kh-downloads-detail .kh-dl-product-hero__image::after {
    content: none !important;
    display: none !important;
}

html body .kh-downloads-detail .kh-dl-spec-card dl div {
    border: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
}

html body .kh-downloads-detail .kh-dl-spec-card dl div::before,
html body .kh-downloads-detail .kh-dl-feature-row span::before,
html body .kh-downloads-detail .kh-dl-download-action span,
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    content: none !important;
    display: none !important;
}

/* Codex: clean detail UI after visual review - no noisy icons, borders or product frame. */
.kh-downloads-detail .kh-dl-detail-layout {
    padding-bottom: 28px !important;
}

.kh-downloads-detail .kh-dl-product-hero {
    padding-bottom: 34px !important;
}

.kh-downloads-detail .kh-dl-product-hero__image {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.kh-downloads-detail .kh-dl-product-hero__image::before,
.kh-downloads-detail .kh-dl-product-hero__image::after {
    content: none !important;
}

.kh-downloads-detail .kh-dl-product-hero__image .kh-dl-product-img {
    filter: drop-shadow(0 18px 18px rgba(16, 44, 95, .14)) !important;
}

.kh-downloads-detail .kh-dl-feature-row span {
    display: block !important;
    height: auto !important;
    min-height: 52px !important;
    padding: 12px 14px !important;
    border: 0 !important;
    background: rgba(255,255,255,.62) !important;
    box-shadow: 0 10px 24px rgba(44, 100, 174, .08) !important;
}

.kh-downloads-detail .kh-dl-feature-row span::before {
    content: none !important;
}

.kh-downloads-detail .kh-dl-feature-row span::after {
    display: block !important;
    padding: 0 !important;
    color: #172033 !important;
    font-size: 12px !important;
    line-height: 1.22 !important;
    text-align: center !important;
    white-space: pre-line !important;
}

.kh-downloads-detail .kh-dl-download-action,
.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    grid-template-columns: minmax(0, 1fr) 18px !important;
}

.kh-downloads-detail .kh-dl-download-action span,
.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    display: none !important;
}

.kh-downloads-detail .kh-dl-download-action strong,
.kh-downloads-detail .kh-dl-download-action em {
    grid-column: 1 !important;
}

.kh-downloads-detail .kh-dl-spec-card {
    width: min(880px, calc(100% - 250px)) !important;
    margin-top: 0 !important;
    padding: 10px 18px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.72) !important;
    box-shadow: 0 14px 30px rgba(35, 87, 157, .10) !important;
}

.kh-downloads-detail .kh-dl-spec-card dl {
    gap: 10px !important;
}

.kh-downloads-detail .kh-dl-spec-card dl div {
    display: block !important;
    padding: 4px 6px !important;
    border: 0 !important;
    text-align: center !important;
}

.kh-downloads-detail .kh-dl-spec-card dl div::before {
    content: none !important;
}

.kh-downloads-detail .kh-dl-spec-card dt {
    margin: 0 0 5px !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

.kh-downloads-detail .kh-dl-spec-card dd {
    margin: 0 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

@media (min-width: 1201px) {
    .kh-downloads-detail .kh-dl-spec-card {
        justify-self: start !important;
        margin-left: 88px !important;
    }
}

@media (max-width: 1200px) {
    .kh-downloads-detail .kh-dl-product-hero {
        padding-bottom: 0 !important;
    }

    .kh-downloads-detail .kh-dl-spec-card {
        width: 100% !important;
        margin-top: 18px !important;
        margin-left: 0 !important;
    }
}

@media (max-width: 1200px) {
    .kh-downloads-detail .kh-dl-side {
        grid-row: 2 !important;
    }

    .kh-downloads-detail .kh-dl-spec-card {
        grid-row: 3 !important;
    }

    .kh-downloads-detail .kh-dl-article-card {
        grid-column: 1 !important;
        grid-row: 4 !important;
    }
}

/* Codex: polished download detail composition after v4 visual review. */
.kh-downloads-detail .kh-dl-detail-layout {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 292px !important;
    gap: 0 !important;
    width: min(100%, 1180px) !important;
    max-width: none !important;
    margin: 22px auto 28px !important;
    padding: 28px 28px 22px !important;
    overflow: visible !important;
    border: 1px solid rgba(116, 169, 244, .42) !important;
    border-radius: 26px !important;
    background:
        radial-gradient(circle at 73% 13%, rgba(66, 194, 255, .30), transparent 28%),
        radial-gradient(circle at 14% 80%, rgba(82, 179, 255, .22), transparent 34%),
        linear-gradient(115deg, #eff7ff 0%, #f8fbff 47%, #e9f7ff 100%) !important;
    box-shadow: 0 22px 54px rgba(41, 100, 181, .13) !important;
}

.kh-downloads-detail .kh-dl-detail-main {
    display: contents !important;
}

.kh-downloads-detail .kh-dl-product-hero {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-height: 374px !important;
    margin: 0 !important;
    padding: 0 26px 72px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    grid-template-columns: minmax(250px, 330px) minmax(0, 1fr) !important;
    gap: 28px !important;
    align-items: center !important;
}

.kh-downloads-detail .kh-dl-product-hero__image {
    min-height: 308px !important;
    border-radius: 22px !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.55)),
        radial-gradient(circle at 50% 100%, rgba(55, 183, 255, .25), transparent 45%) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 20px 42px rgba(35, 101, 178, .12) !important;
}

.kh-downloads-detail .kh-dl-product-hero__image .kh-dl-product-img {
    max-width: 286px !important;
    max-height: 286px !important;
    filter: drop-shadow(0 20px 22px rgba(16, 44, 95, .18)) !important;
}

.kh-downloads-detail .kh-dl-product-hero__content {
    min-width: 0 !important;
}

.kh-downloads-detail .kh-dl-product-hero h2 {
    max-width: 520px !important;
    margin: 22px 0 18px !important;
    font-size: clamp(29px, 2.7vw, 38px) !important;
    line-height: 1.04 !important;
    letter-spacing: 0 !important;
}

.kh-downloads-detail .kh-dl-product-hero p {
    max-width: 560px !important;
    margin: 0 0 18px !important;
    color: #4e5f78 !important;
    font-size: 15px !important;
    line-height: 1.58 !important;
}

.kh-downloads-detail .kh-dl-badge {
    display: inline-flex !important;
    max-width: 100% !important;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.74) !important;
    box-shadow: 0 8px 24px rgba(64, 126, 222, .10) !important;
}

.kh-downloads-detail .kh-dl-feature-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    max-width: 560px !important;
    margin-top: 18px !important;
}

.kh-downloads-detail .kh-dl-feature-row span {
    height: 56px !important;
    min-height: 56px !important;
    padding: 8px 14px !important;
    border-color: rgba(105, 153, 226, .34) !important;
    border-radius: 13px !important;
    background: rgba(255,255,255,.70) !important;
    box-shadow: 0 10px 22px rgba(48, 105, 176, .08) !important;
}

.kh-downloads-detail .kh-dl-side {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: stretch !important;
    height: auto !important;
    min-height: 374px !important;
    padding: 22px !important;
    border-radius: 22px !important;
    background: rgba(255,255,255,.86) !important;
    box-shadow: 0 20px 48px rgba(30, 84, 160, .16) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 0 !important;
}

.kh-downloads-detail .kh-dl-side-card {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.kh-downloads-detail .kh-dl-download-panel h2 {
    margin: 0 0 18px !important;
    font-size: 18px !important;
}

.kh-downloads-detail .kh-dl-download-action {
    min-height: 62px !important;
    margin-bottom: 10px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    grid-template-columns: 42px minmax(0, 1fr) 16px !important;
}

.kh-downloads-detail .kh-dl-download-action--main {
    min-height: 66px !important;
}

.kh-downloads-detail .kh-dl-download-action span {
    width: 42px !important;
    height: 42px !important;
    border-radius: 13px !important;
}

.kh-downloads-detail .kh-dl-buy-panel {
    position: static !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
}

.kh-downloads-detail .kh-dl-buy-panel__top,
.kh-downloads-detail .kh-dl-buy-panel .kh-dl-note {
    display: none !important;
}

.kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    min-height: 58px !important;
    border-radius: 14px !important;
}

.kh-downloads-detail .kh-dl-spec-card {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-self: center !important;
    width: min(900px, calc(100% - 220px)) !important;
    height: auto !important;
    min-height: 66px !important;
    margin: -48px 0 0 !important;
    padding: 12px 16px !important;
    transform: none !important;
    z-index: 3 !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    background: rgba(255,255,255,.82) !important;
    box-shadow: 0 16px 34px rgba(35, 87, 157, .12) !important;
    backdrop-filter: blur(12px) !important;
}

.kh-downloads-detail .kh-dl-spec-card dl {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    align-items: center !important;
}

.kh-downloads-detail .kh-dl-spec-card dl div {
    min-width: 0 !important;
    padding: 0 12px !important;
    border-left: 1px solid rgba(105, 153, 226, .20) !important;
}

.kh-downloads-detail .kh-dl-spec-card dl div:first-child {
    border-left: 0 !important;
}

.kh-downloads-detail .kh-dl-spec-card dt {
    color: #65758f !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
}

.kh-downloads-detail .kh-dl-spec-card dd {
    color: #1d2b43 !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
}

.kh-downloads-detail .kh-dl-article-card {
    margin-top: 0 !important;
}

@media (max-width: 1200px) {
    .kh-downloads-detail .kh-dl-detail-layout {
        grid-template-columns: 1fr !important;
        padding: 22px !important;
    }

    .kh-downloads-detail .kh-dl-product-hero,
    .kh-downloads-detail .kh-dl-side,
    .kh-downloads-detail .kh-dl-spec-card {
        grid-column: 1 !important;
        grid-row: auto !important;
    }

    .kh-downloads-detail .kh-dl-product-hero {
        padding: 0 !important;
    }

    .kh-downloads-detail .kh-dl-side {
        min-height: 0 !important;
        margin-top: 18px !important;
    }

    .kh-downloads-detail .kh-dl-spec-card {
        width: 100% !important;
        margin-top: 18px !important;
    }
}

@media (max-width: 760px) {
    .kh-downloads-detail .kh-dl-detail-layout {
        border-radius: 20px !important;
        padding: 16px !important;
    }

    .kh-downloads-detail .kh-dl-product-hero {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .kh-downloads-detail .kh-dl-product-hero h2 {
        font-size: 28px !important;
    }

    .kh-downloads-detail .kh-dl-feature-row,
    .kh-downloads-detail .kh-dl-spec-card dl {
        grid-template-columns: 1fr !important;
    }

    .kh-downloads-detail .kh-dl-spec-card dl div {
        border-left: 0 !important;
        border-top: 1px solid rgba(105, 153, 226, .20) !important;
        padding: 10px 0 !important;
    }

    .kh-downloads-detail .kh-dl-spec-card dl div:first-child {
        border-top: 0 !important;
    }
}

/* Codex: final clearance between feature cards and the specs ribbon. */
.kh-downloads-detail .kh-dl-spec-card {
    margin-top: -20px !important;
}

/* Codex: keep mobile detail actions before specs and article. */
@media (max-width: 1200px) {
    .kh-downloads-detail .kh-dl-side {
        grid-row: 2 !important;
    }

    .kh-downloads-detail .kh-dl-spec-card {
        grid-row: 3 !important;
        margin-top: 18px !important;
    }

    .kh-downloads-detail .kh-dl-article-card {
        grid-column: 1 !important;
        grid-row: 4 !important;
    }
}


/* Codex: hard final cleanup for the download detail visual noise. */
html body .kh-downloads-detail .kh-dl-product-hero__image {
    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

html body .kh-downloads-detail .kh-dl-product-hero__image::before,
html body .kh-downloads-detail .kh-dl-product-hero__image::after {
    content: none !important;
    display: none !important;
}

html body .kh-downloads-detail .kh-dl-spec-card dl div {
    border: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
}

html body .kh-downloads-detail .kh-dl-spec-card dl div::before,
html body .kh-downloads-detail .kh-dl-feature-row span::before,
html body .kh-downloads-detail .kh-dl-download-action span,
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    content: none !important;
    display: none !important;
}

/* Codex: final wide alignment pass for download detail hero. */
html body main.kh-downloads-page.kh-downloads-detail {
    width: min(calc(100% + 92px), 1360px) !important;
    max-width: 1360px !important;
    margin-left: -46px !important;
    margin-right: -46px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    width: 100% !important;
    max-width: 1360px !important;
    grid-template-columns: minmax(0, 1fr) 350px !important;
    padding: 34px 36px 28px !important;
    background:
        radial-gradient(circle at 72% 16%, rgba(74, 191, 255, .22), transparent 32%),
        radial-gradient(circle at 16% 78%, rgba(82, 179, 255, .20), transparent 40%),
        linear-gradient(115deg, #f0f8ff 0%, #f8fbff 58%, #eef9ff 100%) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
    grid-template-columns: minmax(330px, 420px) minmax(0, 1fr) !important;
    gap: 36px !important;
    padding-right: 36px !important;
    padding-bottom: 42px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    min-height: 430px !important;
    width: 350px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    width: min(1040px, calc(100% - 380px)) !important;
    margin-top: -10px !important;
    margin-left: 120px !important;
    justify-self: start !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: 100% !important;
    max-width: 1360px !important;
}

@media (max-width: 1200px) {
    html body main.kh-downloads-page.kh-downloads-detail {
        width: min(100% - 24px, 100%) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
        grid-template-columns: 1fr !important;
        padding: 22px !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
        grid-template-columns: 1fr !important;
        padding-right: 0 !important;
        padding-bottom: 0 !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
        width: auto !important;
        min-height: 0 !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
        width: 100% !important;
        margin-left: 0 !important;
        margin-top: 18px !important;
    }
}

/* Codex: final polish for the wider detail hero - broader specs and softer background. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    background:
        radial-gradient(circle at 72% 16%, rgba(74, 191, 255, .18), transparent 36%),
        radial-gradient(circle at 16% 78%, rgba(82, 179, 255, .18), transparent 42%),
        radial-gradient(circle at 52% 46%, rgba(255,255,255,.70), transparent 46%),
        #f2f9ff !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    width: min(1040px, calc(100% - 160px)) !important;
    margin-left: 120px !important;
    margin-top: -10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl {
    grid-template-columns: repeat(6, minmax(120px, 1fr)) !important;
}

@media (max-width: 1200px) {
    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
        width: 100% !important;
        margin-left: 0 !important;
        margin-top: 18px !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl {
        grid-template-columns: 1fr !important;
    }
}

/* Codex: final geometry fix - full-width detail block, no overlaps, clean spec gap. */
html body main.kh-downloads-page.kh-downloads-detail {
    position: relative !important;
    left: 50% !important;
    width: min(calc(100vw - 24px), 1460px) !important;
    max-width: 1460px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateX(-50%) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: minmax(0, 1fr) 360px !important;
    padding: 34px 36px 36px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
    grid-template-columns: minmax(350px, 430px) minmax(0, 1fr) !important;
    padding-right: 36px !important;
    padding-bottom: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    width: 360px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    width: calc(100% - 72px) !important;
    max-width: none !important;
    margin: 22px 0 0 36px !important;
    justify-self: start !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 72px) !important;
    max-width: none !important;
    margin: 24px 0 0 36px !important;
}

@media (max-width: 1200px) {
    html body main.kh-downloads-page.kh-downloads-detail {
        left: auto !important;
        width: min(100% - 24px, 100%) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        transform: none !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
        grid-template-columns: 1fr !important;
        padding: 22px !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
        grid-template-columns: 1fr !important;
        padding-right: 0 !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
        width: auto !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
        width: 100% !important;
        margin-left: 0 !important;
    }
}

/* Codex: remove the empty sidebar reserve on download detail pages. */
html body #content.site-content:has(main.kh-downloads-page.kh-downloads-detail) .site-content-inner {
    display: block !important;
    width: 100% !important;
}

html body #content.site-content:has(main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail {
    left: auto !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
}

html body #content.site-content:has(main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout,
html body #content.site-content:has(main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: 100% !important;
    max-width: none !important;
}

html body #content.site-content:has(main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    width: calc(100% - 72px) !important;
    margin: 46px 0 0 36px !important;
}

html body #content.site-content:has(main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    margin-top: 26px !important;
}

@media (max-width: 1200px) {
    html body #content.site-content:has(main.kh-downloads-page.kh-downloads-detail) .site-content-inner {
        width: 100% !important;
    }

    html body #content.site-content:has(main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail {
        width: min(100% - 24px, 100%) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    html body #content.site-content:has(main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
        width: 100% !important;
        margin: 18px 0 0 !important;
    }
}

/* Codex: remove parent padding and contain feature cards before the specs ribbon. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) .site-content-inner {
    width: 100% !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    width: 100% !important;
    max-width: none !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    min-height: 480px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    width: calc(100% - 72px) !important;
    margin: 28px 0 0 36px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 72px) !important;
    margin: 28px 0 0 36px !important;
}

@media (max-width: 1200px) {
    html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero,
    html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
        min-height: 0 !important;
    }

    html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
    html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
        width: 100% !important;
        margin-left: 0 !important;
    }
}

/* Codex: remove the visible blue plane behind the right side of detail hero. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    overflow: hidden !important;
    background:
        radial-gradient(circle at 70% 18%, rgba(69, 190, 255, .18) 0, rgba(69, 190, 255, .10) 22%, rgba(69, 190, 255, 0) 45%),
        radial-gradient(circle at 23% 76%, rgba(93, 184, 255, .16) 0, rgba(93, 184, 255, .08) 28%, rgba(93, 184, 255, 0) 52%),
        radial-gradient(circle at 48% 46%, rgba(255,255,255,.82) 0, rgba(255,255,255,.42) 34%, rgba(255,255,255,0) 58%),
        #f3f9ff !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout::before,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout::after,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero::before,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero::after {
    content: none !important;
    display: none !important;
}

/* Codex: OS-aware badge for download detail pages. */
html body .kh-downloads-detail .kh-dl-product-hero__content::before {
    content: none !important;
    display: none !important;
}

html body .kh-downloads-detail .kh-dl-os-badge {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 30px !important;
    margin-bottom: 16px !important;
    padding: 0 14px !important;
    border: 1px solid rgba(82,99,245,.22) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.76) !important;
    color: #3157d6 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    box-shadow: 0 10px 24px rgba(37,75,145,.08) !important;
}

/* Codex: equal spacing between right-panel action buttons. */
html body .kh-downloads-detail .kh-dl-download-panel {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

html body .kh-downloads-detail .kh-dl-download-panel h2 {
    margin: 0 0 14px !important;
}

html body .kh-downloads-detail .kh-dl-download-action {
    margin: 0 !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel {
    margin-top: 14px !important;
}

/* Codex: designed SVG icon buttons for the download detail action panel. */
html body .kh-downloads-detail .kh-dl-download-action,
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) 18px !important;
    column-gap: 14px !important;
    align-items: center !important;
    min-height: 66px !important;
    padding: 10px 14px !important;
    overflow: hidden !important;
}

html body .kh-downloads-detail .kh-dl-download-action span,
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    content: "" !important;
    display: grid !important;
    width: 42px !important;
    height: 42px !important;
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    place-items: center !important;
    border-radius: 14px !important;
    background: #f3f6ff !important;
    color: #5263f5 !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-position: center !important;
    mask-position: center !important;
    -webkit-mask-size: 23px 23px !important;
    mask-size: 23px 23px !important;
}

html body .kh-downloads-detail .kh-dl-download-action span {
    font-size: 0 !important;
}

html body .kh-downloads-detail .kh-dl-download-action strong,
html body .kh-downloads-detail .kh-dl-download-action em,
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    min-width: 0 !important;
}

html body .kh-downloads-detail .kh-dl-download-action strong {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    font-size: 13px !important;
    line-height: 1.16 !important;
}

html body .kh-downloads-detail .kh-dl-download-action em {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    margin-top: 3px !important;
    font-size: 11px !important;
    line-height: 1.18 !important;
}

html body .kh-downloads-detail .kh-dl-download-action::after,
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::after {
    grid-column: 3 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: end !important;
    color: currentColor !important;
    opacity: .78 !important;
}

html body .kh-downloads-detail .kh-dl-download-action--main span {
    background: rgba(255,255,255,.90) !important;
    color: #5263f5 !important;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M7.6 19.5h9.1a4.8 4.8 0 0 0 .7-9.55A6.2 6.2 0 0 0 5.6 8.35 5.7 5.7 0 0 0 7.6 19.5Zm3.35-6.25V8.8h2.1v4.45l1.75-1.75 1.5 1.5L12 17.3 7.7 13l1.5-1.5 1.75 1.75Z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M7.6 19.5h9.1a4.8 4.8 0 0 0 .7-9.55A6.2 6.2 0 0 0 5.6 8.35 5.7 5.7 0 0 0 7.6 19.5Zm3.35-6.25V8.8h2.1v4.45l1.75-1.75 1.5 1.5L12 17.3 7.7 13l1.5-1.5 1.75 1.75Z'/%3E%3C/svg%3E") !important;
}

html body .kh-downloads-detail .kh-dl-download-action:nth-of-type(2) span {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M6 2.8h8.2L19 7.6v13.6H6V2.8Zm7.2 1.9v4h4l-4-4ZM8.1 4.9v14.2h8.8V10.7H11.1V4.9h-3Zm1.6 8.1h5.6v1.7H9.7V13Zm0 3h5.6v1.7H9.7V16Z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M6 2.8h8.2L19 7.6v13.6H6V2.8Zm7.2 1.9v4h4l-4-4ZM8.1 4.9v14.2h8.8V10.7H11.1V4.9h-3Zm1.6 8.1h5.6v1.7H9.7V13Zm0 3h5.6v1.7H9.7V16Z'/%3E%3C/svg%3E") !important;
}

html body .kh-downloads-detail .kh-dl-download-action:nth-of-type(3) span {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='m12 2.7 8.2 4.7v9.2L12 21.3l-8.2-4.7V7.4L12 2.7Zm0 2.4L6.2 8.4l5.8 3.3 5.8-3.3L12 5.1Zm-6.1 5.2v5.1l5 2.9v-5.1l-5-2.9Zm7.2 8 5-2.9v-5.1l-5 2.9v5.1Z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='m12 2.7 8.2 4.7v9.2L12 21.3l-8.2-4.7V7.4L12 2.7Zm0 2.4L6.2 8.4l5.8 3.3 5.8-3.3L12 5.1Zm-6.1 5.2v5.1l5 2.9v-5.1l-5-2.9Zm7.2 8 5-2.9v-5.1l-5 2.9v5.1Z'/%3E%3C/svg%3E") !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    color: #fff !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    background: rgba(255,255,255,.22) !important;
    color: #fff !important;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M8.3 14.9a6 6 0 1 1 5.1 2.8l-1.6 1.6H9.4v2.1H6.9v-2.5H4.4v-2.4l3.9-1.6Zm5.7.3a3.6 3.6 0 1 0 0-7.2 3.6 3.6 0 0 0 0 7.2Zm1.9-3.7a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0Z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M8.3 14.9a6 6 0 1 1 5.1 2.8l-1.6 1.6H9.4v2.1H6.9v-2.5H4.4v-2.4l3.9-1.6Zm5.7.3a3.6 3.6 0 1 0 0-7.2 3.6 3.6 0 0 0 0 7.2Zm1.9-3.7a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0Z'/%3E%3C/svg%3E") !important;
}

/* Codex: make action icons visible as SVGs inside rounded tiles, not as faint masks. */
html body .kh-downloads-detail .kh-dl-download-action span,
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    -webkit-mask-image: none !important;
    mask-image: none !important;
    -webkit-mask: none !important;
    mask: none !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 23px 23px !important;
}

html body .kh-downloads-detail .kh-dl-download-action--main span {
    background-color: rgba(255,255,255,.92) !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%235263f5' d='M7.6 19.5h9.1a4.8 4.8 0 0 0 .7-9.55A6.2 6.2 0 0 0 5.6 8.35 5.7 5.7 0 0 0 7.6 19.5Zm3.35-6.25V8.8h2.1v4.45l1.75-1.75 1.5 1.5L12 17.3 7.7 13l1.5-1.5 1.75 1.75Z'/%3E%3C/svg%3E") !important;
}

html body .kh-downloads-detail .kh-dl-download-action:nth-of-type(2) span {
    background-color: #f3f6ff !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%235263f5' d='M6 2.8h8.2L19 7.6v13.6H6V2.8Zm7.2 1.9v4h4l-4-4ZM8.1 4.9v14.2h8.8V10.7H11.1V4.9h-3Zm1.6 8.1h5.6v1.7H9.7V13Zm0 3h5.6v1.7H9.7V16Z'/%3E%3C/svg%3E") !important;
}

html body .kh-downloads-detail .kh-dl-download-action:nth-of-type(3) span {
    background-color: #f3f6ff !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%235263f5' d='m12 2.7 8.2 4.7v9.2L12 21.3l-8.2-4.7V7.4L12 2.7Zm0 2.4L6.2 8.4l5.8 3.3 5.8-3.3L12 5.1Zm-6.1 5.2v5.1l5 2.9v-5.1l-5-2.9Zm7.2 8 5-2.9v-5.1l-5 2.9v5.1Z'/%3E%3C/svg%3E") !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    background-color: rgba(255,255,255,.22) !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M8.3 14.9a6 6 0 1 1 5.1 2.8l-1.6 1.6H9.4v2.1H6.9v-2.5H4.4v-2.4l3.9-1.6Zm5.7.3a3.6 3.6 0 1 0 0-7.2 3.6 3.6 0 0 0 0 7.2Zm1.9-3.7a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0Z'/%3E%3C/svg%3E") !important;
}

html body .kh-downloads-detail .kh-dl-download-action:nth-of-type(2) span,
html body .kh-downloads-detail .kh-dl-download-action:nth-of-type(3) span {
    -webkit-mask-image: none !important;
    mask-image: none !important;
    -webkit-mask: none !important;
    mask: none !important;
}

/* Codex: clearer download and activation-key icons. */
html body .kh-downloads-detail .kh-dl-download-action--main span {
    background-size: 25px 25px !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%235263f5' d='M11 3h2v8.2l2.65-2.65L17.05 10 12 15.05 6.95 10l1.4-1.45L11 11.2V3Zm-5.5 11.2h2V18h9v-3.8h2V20h-13v-5.8Z'/%3E%3C/svg%3E") !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    background-size: 25px 25px !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M8.2 14.4a5 5 0 1 1 2.1 2.1L8.8 18H6.5v2.2H4.3v-2.2l3.9-3.6Zm6.5.1a2.8 2.8 0 1 0 0-5.6 2.8 2.8 0 0 0 0 5.6Zm1.3-3.7a1.1 1.1 0 1 1 1.55 1.55A1.1 1.1 0 0 1 16 10.8Z'/%3E%3C/svg%3E") !important;
}

/* Codex: unmistakable classic key icon for the activation button. */
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    background-size: 28px 28px !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 28 28' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' fill-rule='evenodd' d='M10.4 9.2a5.7 5.7 0 1 0 2.7 6.8h5.4v2.2h2.2V16h2.1v-2.8h-9.7a5.7 5.7 0 0 0-2.7-4Zm-3.1 6.5a2.6 2.6 0 1 1 0-5.2 2.6 2.6 0 0 1 0 5.2Zm0-1.6a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z'/%3E%3C/svg%3E") !important;
}

/* Codex: lighter diagonal key icon matching the approved reference. */
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    background-size: 24px 24px !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='rotate(-38 12 12)' fill='white'%3E%3Cpath fill-rule='evenodd' d='M7.1 14.8a4.2 4.2 0 1 1 3.75-6.1h8.05v2.25h-2.05v1.7h-2.25v-1.7h-3.75a4.2 4.2 0 0 1-3.75 3.85Zm0-2.45a1.75 1.75 0 1 0 0-3.5 1.75 1.75 0 0 0 0 3.5Zm0-1.1a.65.65 0 1 0 0-1.3.65.65 0 0 0 0 1.3Z'/%3E%3C/g%3E%3C/svg%3E") !important;
}

/* Codex: copy the compact reference buy button. */
html body .kh-downloads-detail .kh-dl-buy-panel {
    margin-top: 14px !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    min-height: 58px !important;
    grid-template-columns: 34px minmax(0, 1fr) 16px !important;
    column-gap: 10px !important;
    padding: 8px 12px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #31bf5b 0%, #229f43 100%) !important;
    box-shadow: 0 16px 32px rgba(34, 159, 67, .22) !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::before {
    width: 34px !important;
    height: 34px !important;
    border-radius: 11px !important;
    background-color: transparent !important;
    background-image: url("/wp-content/themes/key-child/assets/download-buy-key-reference.png") !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn .kh-dl-buy-btn__main,
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn .kh-dl-buy-btn__sub {
    grid-column: 2 !important;
    display: block !important;
    min-width: 0 !important;
    color: #fff !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn .kh-dl-buy-btn__main {
    grid-row: 1 !important;
    align-self: end !important;
    font-size: 13px !important;
    line-height: 1.12 !important;
    font-weight: 950 !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn .kh-dl-buy-btn__sub {
    grid-row: 2 !important;
    align-self: start !important;
    margin-top: 3px !important;
    color: rgba(255,255,255,.86) !important;
    font-size: 10px !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
}

html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn::after {
    font-size: 22px !important;
    opacity: .9 !important;
}

/* Codex: align the compact buy button text column with the download action buttons. */
html body .kh-downloads-detail .kh-dl-buy-panel .kh-dl-btn {
    grid-template-columns: 52px minmax(0, 1fr) 16px !important;
    padding-left: 15px !important;
}
/* Codex: remove the right-side air inside the download detail hero shell. */
html body .kh-downloads-detail .kh-dl-detail-layout {
    padding-right: 0 !important;
    grid-template-columns: minmax(0, 1fr) 397px !important;
}

html body .kh-downloads-detail .kh-dl-side {
    width: 397px !important;
}

html body .kh-downloads-detail .kh-dl-spec-card,
html body .kh-downloads-detail .kh-dl-article-card {
    justify-self: stretch !important;
    width: auto !important;
    max-width: none !important;
    margin-right: 0 !important;
}
/* Codex: high-specificity right-air removal for the active detail layout. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    padding-right: 0 !important;
    grid-template-columns: minmax(0, 1fr) 397px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    width: 397px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    margin-right: 0 !important;
}
/* Codex: restore a controlled right inset after the no-air pass. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    padding-right: 24px !important;
    grid-template-columns: minmax(0, 1fr) 373px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    width: 373px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 60px) !important;
    max-width: none !important;
    margin-right: 0 !important;
}
/* Codex: align lower cards with the restored right inset. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 48px) !important;
}
/* Codex: final right-edge match for spec and article cards. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 42px) !important;
}
/* Codex: reduce vertical air inside the right download action panel. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    height: auto !important;
    min-height: 420px !important;
    justify-content: center !important;
}
/* Codex: force the right panel to the tighter vertical height. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout .kh-dl-side {
    height: 420px !important;
    min-height: 420px !important;
}
/* Codex: balanced hero row height after reducing right-panel vertical air. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero__image,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    height: 440px !important;
    min-height: 440px !important;
}
/* Codex: keep the right panel matched to the balanced hero row. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout .kh-dl-side {
    height: 440px !important;
    min-height: 440px !important;
}
/* Codex: rebalance the download detail hero columns to use the empty image area. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    padding-right: 36px !important;
    grid-template-columns: minmax(0, 800px) 360px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
    grid-template-columns: 360px minmax(0, 372px) !important;
    gap: 32px !important;
    padding-right: 36px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero__content {
    max-width: none !important;
    width: 100% !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    width: 360px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    margin-left: 24px !important;
    width: calc(100% - 60px) !important;
}
/* Codex: keep the lower cards balanced after shifting the hero composition left. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 30px) !important;
}
/* Codex: reduce the remaining right-side empty area after the hero rebalance. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    padding-right: 28px !important;
    grid-template-columns: minmax(0, 800px) 368px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    width: 368px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 16px) !important;
}
/* Codex: keep lower cards from getting tighter than the right action panel. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 24px) !important;
}
/* Codex: fill the remaining right-side blue space in the download detail hero. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    padding-left: 36px !important;
    padding-right: 20px !important;
    grid-template-columns: minmax(0, 860px) 360px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
    width: 860px !important;
    grid-template-columns: 350px minmax(0, 454px) !important;
    gap: 36px !important;
    padding-right: 20px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero__content {
    width: 100% !important;
    max-width: none !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    width: 360px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    margin-left: 24px !important;
    width: calc(100% - 44px) !important;
}
/* Codex: keep the expanded hero content inside the real left grid column. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
    width: auto !important;
    grid-template-columns: 340px minmax(0, 422px) !important;
    gap: 32px !important;
    padding-right: 20px !important;
}
/* Codex: align spec and instruction cards with the filled right action panel edge. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    width: calc(100% - 24px) !important;
}
/* Codex: expand the central hero content and remove the remaining right-side air. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    padding-left: 36px !important;
    padding-right: 16px !important;
    grid-template-columns: minmax(0, 840px) 340px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
    width: auto !important;
    grid-template-columns: 320px minmax(0, 468px) !important;
    gap: 32px !important;
    padding-right: 20px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero__content {
    width: 100% !important;
    max-width: none !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    width: 340px !important;
}

html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    margin-left: 24px !important;
    width: calc(100% - 20px) !important;
}
/* Codex: plain-selector fallback for the active download detail layout. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    padding-left: 36px !important;
    padding-right: 16px !important;
    grid-template-columns: minmax(0, 840px) 340px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
    width: auto !important;
    grid-template-columns: 320px minmax(0, 468px) !important;
    gap: 32px !important;
    padding-right: 20px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero__content {
    width: 100% !important;
    max-width: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    width: 340px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    margin-left: 24px !important;
    width: calc(100% - 20px) !important;
}
/* Codex: fluid hero grid for real local viewport width. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout {
    padding-left: 36px !important;
    padding-right: 16px !important;
    grid-template-columns: minmax(0, 1fr) 340px !important;
    column-gap: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero {
    width: 100% !important;
    grid-template-columns: minmax(280px, 34%) minmax(0, 1fr) !important;
    gap: 28px !important;
    padding-right: 14px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero__image {
    width: 100% !important;
    min-width: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-hero__content {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-side {
    width: 340px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    margin-left: 24px !important;
    width: calc(100% - 40px) !important;
}
/* Codex: download detail multi-source buttons. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi {
    padding-top: 16px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi h2 {
    display: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-action--source {
    min-height: 58px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action {
    min-height: 58px !important;
    margin-bottom: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-action--source span.kh-dl-source-icon {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    border-radius: 10px !important;
    background-color: rgba(255,255,255,.86) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 19px 19px !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-source--keyhub span.kh-dl-source-icon,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-source--download span.kh-dl-source-icon {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 3.5v9.2' stroke='%235C63FF' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='m7.4 9.4 3.6 3.7 3.6-3.7' stroke='%235C63FF' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5.2 14.5v2.1c0 1.05.85 1.9 1.9 1.9h7.8c1.05 0 1.9-.85 1.9-1.9v-2.1' stroke='%235C63FF' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-source--apple span.kh-dl-source-icon {
    background-color: #f3f7ff !important;
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23101728' d='M15.08 11.48c-.02-2.05 1.68-3.05 1.76-3.1-.96-1.4-2.44-1.59-2.96-1.6-1.25-.13-2.45.75-3.08.75-.65 0-1.63-.73-2.68-.71-1.37.02-2.65.8-3.36 2.04-1.43 2.48-.36 6.13 1.02 8.13.69.98 1.49 2.08 2.55 2.04 1.02-.04 1.4-.66 2.64-.66 1.22 0 1.58.66 2.66.64 1.11-.02 1.8-1 2.46-1.99.8-1.13 1.12-2.24 1.13-2.3-.03-.01-2.12-.82-2.14-3.24Z'/%3E%3Cpath fill='%23101728' d='M13.06 5.46c.56-.7.94-1.65.83-2.62-.81.04-1.82.56-2.4 1.24-.52.61-.99 1.6-.86 2.54.92.07 1.85-.46 2.43-1.16Z'/%3E%3C/svg%3E") !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-source--microsoft span.kh-dl-source-icon {
    background-color: #f3f7ff !important;
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='3' y='3' width='7' height='7' rx='1' fill='%23F25022'/%3E%3Crect x='12' y='3' width='7' height='7' rx='1' fill='%237FBA00'/%3E%3Crect x='3' y='12' width='7' height='7' rx='1' fill='%2300A4EF'/%3E%3Crect x='12' y='12' width='7' height='7' rx='1' fill='%23FFB900'/%3E%3C/svg%3E") !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-source--official span.kh-dl-source-icon {
    background-color: #f3f7ff !important;
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='11' cy='11' r='7.5' stroke='%235C63FF' stroke-width='2'/%3E%3Cpath d='M3.8 11h14.4M11 3.5c2.1 2.1 3 4.6 3 7.5s-.9 5.4-3 7.5c-2.1-2.1-3-4.6-3-7.5s.9-5.4 3-7.5Z' stroke='%235C63FF' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}
/* Codex: download detail icons copied from product download widget. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-action--source span.kh-dl-source-icon {
    background-color: #f3f7ff !important;
    background-size: 24px 24px !important;
    box-shadow: inset 0 0 0 1px #e7eefb !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-source--keyhub span.kh-dl-source-icon {
    background-image: url("/wp-content/uploads/2025/09/logo-key-hub.webp") !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-source--apple span.kh-dl-source-icon {
    background-image: url("/wp-content/uploads/2025/10/apple.svg") !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-source--microsoft span.kh-dl-source-icon {
    background-image: url("/wp-content/uploads/2025/09/microsoft.svg") !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel .kh-dl-download-action:not(.kh-dl-download-action--source):last-of-type > span {
    background-color: #f3f7ff !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 23px 23px !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%235263f5' d='m12 2.7 8.2 4.7v9.2L12 21.3l-8.2-4.7V7.4L12 2.7Zm0 2.4L6.2 8.4l5.8 3.3 5.8-3.3L12 5.1Zm-6.1 5.2v5.1l5 2.9v-5.1l-5-2.9Zm7.2 8 5-2.9v-5.1l-5 2.9v5.1Z'/%3E%3C/svg%3E") !important;
    color: transparent !important;
    font-size: 0 !important;
}
/* Codex: keep multi-source download panel inside the right card. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi {
    padding: 14px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action {
    grid-template-columns: 38px minmax(0, 1fr) 14px !important;
    min-height: 48px !important;
    margin-bottom: 8px !important;
    padding: 8px 10px !important;
    border-radius: 14px !important;
    gap: 9px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action:last-child {
    margin-bottom: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action > span {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action > strong {
    font-size: 13px !important;
    line-height: 1.12 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action > em {
    margin-top: 2px !important;
    font-size: 11px !important;
    line-height: 1.12 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action::after {
    font-size: 22px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action:not(.kh-dl-download-action--source):not(:last-of-type) > span {
    background-color: #f3f7ff !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 20px 20px !important;
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 3.5h5.2L16 7.3v11.2H7a1.5 1.5 0 0 1-1.5-1.5V5A1.5 1.5 0 0 1 7 3.5Z' stroke='%235263f5' stroke-width='1.8' stroke-linejoin='round'/%3E%3Cpath d='M12 3.7v3.8h3.8M8.5 11h5M8.5 14h5M8.5 8h1.8' stroke='%235263f5' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    color: transparent !important;
    font-size: 0 !important;
}

/* Codex: extra compact pass for five actions in the download detail sidebar. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi {
    padding: 12px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action {
    grid-template-columns: 34px minmax(0, 1fr) 12px !important;
    min-height: 44px !important;
    margin-bottom: 7px !important;
    padding: 7px 9px !important;
    gap: 8px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action > span,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action--source span.kh-dl-source-icon {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    background-size: 21px 21px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action > strong {
    font-size: 12.5px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi .kh-dl-download-action > em {
    font-size: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel {
    margin-top: 12px !important;
}

/* Codex: align buy button with multi-source action buttons. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel {
    width: auto !important;
    margin: 7px 12px 0 12px !important;
    padding: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel .kh-dl-btn {
    width: 100% !important;
    min-height: 51px !important;
    height: 51px !important;
    grid-template-columns: 34px minmax(0, 1fr) 12px !important;
    gap: 8px !important;
    padding: 7px 9px !important;
    border-radius: 14px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel .kh-dl-btn::before {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    border-radius: 10px !important;
    background-size: cover !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel .kh-dl-btn .kh-dl-buy-btn__main {
    font-size: 12.5px !important;
    line-height: 1.12 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel .kh-dl-btn .kh-dl-buy-btn__sub {
    margin-top: 2px !important;
    font-size: 10px !important;
    line-height: 1.12 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel .kh-dl-btn::after {
    font-size: 22px !important;
}

/* Codex: equalize the gap before the buy button with other action gaps. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel {
    margin-top: 9px !important;
}

/* Codex: add a little bottom air inside the multi-source sidebar card. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi {
    padding-bottom: 18px !important;
}

/* Codex: place the extra bottom air under the buy button, not between buttons. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi {
    padding-bottom: 12px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel {
    margin-top: 9px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-side:has(.kh-dl-download-panel--multi) {
    min-height: 452px !important;
}

/* Codex: visibly increase the bottom air under the aligned buy button. */
html body .kh-downloads-detail .kh-dl-side {
    height: 452px !important;
    min-height: 452px !important;
}

/* Codex: override the specific fixed sidebar height to show bottom air. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout .kh-dl-side {
    height: 452px !important;
    min-height: 452px !important;
}

/* Codex: match top and bottom air in the multi-source sidebar and remove green spill. */
html body #content.site-content:has(.site-content-inner > main.kh-downloads-page.kh-downloads-detail) main.kh-downloads-page.kh-downloads-detail .kh-dl-detail-layout .kh-dl-side:has(.kh-dl-download-panel--multi) {
    height: 464px !important;
    min-height: 464px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-download-panel--multi + .kh-dl-buy-panel .kh-dl-btn {
    box-shadow: none !important;
}

/* Codex: visually equalize top and bottom air in the multi-source sidebar. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-side:has(.kh-dl-download-panel--multi) .kh-dl-download-panel,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-side:has(.kh-dl-download-panel--multi) .kh-dl-buy-panel {
    position: relative !important;
    top: -6px !important;
}


/* Codex: compact download detail specs so the distributive type fits. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl {
    grid-template-columns:
        minmax(90px, .9fr)
        minmax(72px, .7fr)
        minmax(82px, .75fr)
        minmax(118px, 1fr)
        minmax(218px, 1.85fr)
        minmax(118px, 1fr) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div {
    grid-template-columns: minmax(0, 1fr) !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div::before {
    display: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dt {
    margin-bottom: 3px !important;
    font-size: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dd {
    overflow: visible !important;
    text-overflow: clip !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(5) dd {
    font-size: 12px !important;
}


/* Codex: even horizontal rhythm in the download detail specs ribbon. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div {
    justify-items: center !important;
    text-align: center !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(5) dd {
    font-size: 11px !important;
    letter-spacing: -0.01em !important;
}


/* Codex: distribute compact spec groups with equal visual gaps. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(4) {
    min-width: 126px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(5) {
    min-width: 198px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(6) {
    min-width: 108px !important;
}


/* Codex: download detail feature row, variant 2 calm table. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
    max-width: 560px !important;
    margin-top: 18px !important;
    overflow: hidden !important;
    border: 1px solid rgba(119, 163, 230, .28) !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,.82) !important;
    box-shadow: 0 16px 34px rgba(48, 105, 176, .08) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    height: 78px !important;
    min-height: 78px !important;
    padding: 16px 18px 16px 24px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #111827 !important;
    font-size: 0 !important;
    line-height: 1.2 !important;
    text-align: left !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span:nth-child(odd) {
    border-right: 1px solid rgba(119, 163, 230, .20) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span:nth-child(1),
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span:nth-child(2) {
    border-bottom: 1px solid rgba(119, 163, 230, .20) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 18px !important;
    bottom: 18px !important;
    width: 4px !important;
    height: auto !important;
    border-radius: 0 999px 999px 0 !important;
    background: linear-gradient(180deg, #625cff, #2fb8ff) !important;
    box-shadow: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span::after {
    display: block !important;
    color: #111827 !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    white-space: pre-line !important;
}






/* Codex: encoding-safe Russian text for feature row variant 2. */





/* Codex: make variant 2 accent strips visible above the feature cells. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span::before {
    display: block !important;
    z-index: 1 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span::after {
    position: relative !important;
    z-index: 2 !important;
}


/* Codex: soften feature row so it matches the download detail hero. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row {
    gap: 10px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span {
    height: 58px !important;
    min-height: 58px !important;
    padding: 9px 14px 9px 19px !important;
    border: 1px solid rgba(132, 174, 236, .28) !important;
    border-radius: 13px !important;
    background: rgba(255, 255, 255, .58) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .72),
        0 10px 22px rgba(48, 105, 176, .06) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span:nth-child(odd),
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span:nth-child(1),
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span:nth-child(2) {
    border: 1px solid rgba(132, 174, 236, .28) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span::before {
    left: 0 !important;
    top: 12px !important;
    bottom: 12px !important;
    width: 3px !important;
    border-radius: 0 999px 999px 0 !important;
    opacity: .82 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row span::after {
    color: #172033 !important;
    font-size: 12.5px !important;
    line-height: 1.14 !important;
    font-weight: 900 !important;
    text-align: center !important;
    width: 100% !important;
}


/* Codex: feature cards with line icons matching the selected reference. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    max-width: 560px !important;
    margin-top: 18px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 10px !important;
    align-items: center !important;
    height: 58px !important;
    min-height: 58px !important;
    padding: 9px 13px !important;
    border: 1px solid rgba(132, 174, 236, .32) !important;
    border-radius: 13px !important;
    background: rgba(255, 255, 255, .62) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .78),
        0 10px 22px rgba(48, 105, 176, .06) !important;
    color: #172033 !important;
    text-align: left !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature::before,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature::after {
    content: none !important;
    display: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature i {
    grid-row: 1 / span 2 !important;
    width: 28px !important;
    height: 28px !important;
    display: block !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 28px 28px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--check i { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.68%200C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.5%203.8%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4%22%2F%3E%3C%2Fsvg%3E") !important; }
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--speed i { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M13%202%204%2014h7l-1%208%2010-14h-7z%22%2F%3E%3C%2Fsvg%3E") !important; }
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--guide i { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%202H6a2%202%200%200%200-2%202v16a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V8z%22%2F%3E%3Cpath%20d%3D%22M14%202v6h6%22%2F%3E%3Cpath%20d%3D%22M9%2013h6%22%2F%3E%3Cpath%20d%3D%22M9%2017h6%22%2F%3E%3C%2Fsvg%3E") !important; }
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--key i { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%227.5%22%20cy%3D%2215.5%22%20r%3D%223.5%22%2F%3E%3Cpath%20d%3D%22m10%2013%209-9%22%2F%3E%3Cpath%20d%3D%22m15%205%204%204%22%2F%3E%3Cpath%20d%3D%22m13%207%204%204%22%2F%3E%3C%2Fsvg%3E") !important; }

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature b,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature em {
    display: block !important;
    min-width: 0 !important;
    font-style: normal !important;
    line-height: 1.12 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature b {
    align-self: end !important;
    color: #172033 !important;
    font-size: 12.5px !important;
    font-weight: 900 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature em {
    align-self: start !important;
    margin-top: 2px !important;
    color: #6c7d96 !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
}


/* Codex: reference-style plain shield icon for the first feature card. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--check i {
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.68%200C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.5%203.8%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3C%2Fsvg%3E") !important;
}


/* Codex: exact compact reference style for the download feature cards. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row {
    display: grid !important;
    grid-template-columns: repeat(2, 194px) !important;
    gap: 8px !important;
    width: 396px !important;
    max-width: 396px !important;
    margin-top: 18px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 12px !important;
    align-items: center !important;
    width: 194px !important;
    height: 54px !important;
    min-height: 54px !important;
    padding: 10px 13px 10px 14px !important;
    border: 1px solid rgba(121, 162, 227, .32) !important;
    border-radius: 9px !important;
    background: rgba(255, 255, 255, .50) !important;
    box-shadow: none !important;
    color: #172033 !important;
    text-align: left !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature::before,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature::after {
    content: none !important;
    display: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature i {
    grid-row: 1 / span 2 !important;
    width: 24px !important;
    height: 24px !important;
    display: block !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 24px 24px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--check i { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.68%200C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.5%203.8%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4%22%2F%3E%3C%2Fsvg%3E") !important; }
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--speed i { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M13%202%204%2014h7l-1%208%2010-14h-7z%22%2F%3E%3C%2Fsvg%3E") !important; }
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--guide i { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%202H6a2%202%200%200%200-2%202v16a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V8z%22%2F%3E%3Cpath%20d%3D%22M14%202v6h6%22%2F%3E%3Cpath%20d%3D%22M9%2013h6%22%2F%3E%3Cpath%20d%3D%22M9%2017h4%22%2F%3E%3C%2Fsvg%3E") !important; }
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--key i { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%227.5%22%20cy%3D%2214.5%22%20r%3D%223.5%22%2F%3E%3Cpath%20d%3D%22m10%2012%208-8%22%2F%3E%3Cpath%20d%3D%22m15%207%202%202%22%2F%3E%3Cpath%20d%3D%22m17%205%202%202%22%2F%3E%3C%2Fsvg%3E") !important; }

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature b,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature em {
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: clip !important;
    font-style: normal !important;
    letter-spacing: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature b {
    align-self: end !important;
    color: #172033 !important;
    font-size: 10.5px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature em {
    align-self: start !important;
    margin-top: 3px !important;
    color: #8a9ab2 !important;
    font-size: 8.5px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
}


/* Codex: final reference fit so all captions stay visible like the sample. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row {
    grid-template-columns: repeat(2, 201px) !important;
    width: 410px !important;
    max-width: 410px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature {
    width: 201px !important;
    padding-right: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature b {
    font-size: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature em {
    font-size: 8px !important;
}


/* Codex: use available hero space for readable feature cards and match key icon reference. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row {
    grid-template-columns: repeat(2, 240px) !important;
    width: 492px !important;
    max-width: 492px !important;
    gap: 12px !important;
    margin-top: 20px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature {
    grid-template-columns: 30px minmax(0, 1fr) !important;
    column-gap: 13px !important;
    width: 240px !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 11px 15px !important;
    border-radius: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature i {
    width: 28px !important;
    height: 28px !important;
    background-size: 28px 28px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature--key i {
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232f6bff%22%20stroke-width%3D%221.85%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%227.25%22%20cy%3D%2215.25%22%20r%3D%223.15%22%2F%3E%3Cpath%20d%3D%22M9.55%2012.95%2018.5%204%22%2F%3E%3Cpath%20d%3D%22M15.6%206.9%2017.1%208.4%22%2F%3E%3Cpath%20d%3D%22M13.8%208.7%2015.25%2010.15%22%2F%3E%3C%2Fsvg%3E") !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature b {
    font-size: 12px !important;
    line-height: 1.1 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-feature-row .kh-dl-feature em {
    margin-top: 3px !important;
    font-size: 9.5px !important;
    line-height: 1.1 !important;
}


/* Codex: add side air around the download detail specs ribbon. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    width: calc(100% - 96px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl {
    padding-left: 8px !important;
    padding-right: 8px !important;
}

@media (max-width: 900px) {
    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
        width: calc(100% - 32px) !important;
    }
}


/* Codex: increase specs ribbon side air after visual check. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    width: calc(100% - 136px) !important;
}

@media (max-width: 900px) {
    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
        width: calc(100% - 32px) !important;
    }
}


/* Codex: visual inset for the specs ribbon despite inline 100% width. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    position: relative !important;
    padding-left: 72px !important;
    padding-right: 72px !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 48px !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .86) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.92),
        0 18px 40px rgba(37,75,145,.10) !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl {
    position: relative !important;
    z-index: 1 !important;
}


/* Codex: stretch specs ribbon closer to the article card width after visual review. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    padding-left: 34px !important;
    padding-right: 34px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card::before {
    inset-left: auto !important;
    inset-right: auto !important;
    left: 10px !important;
    right: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl {
    padding-left: 0 !important;
    padding-right: 0 !important;
}


/* Codex: download detail specs with file format and compatibility. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card {
    min-height: 112px !important;
    height: auto !important;
    padding-top: 13px !important;
    padding-bottom: 13px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card::before {
    left: 10px !important;
    right: 10px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px 20px !important;
    align-items: center !important;
    justify-content: stretch !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div {
    min-width: 0 !important;
    width: auto !important;
    padding: 0 !important;
    text-align: center !important;
    justify-items: center !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dt {
    margin-bottom: 4px !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dd {
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-spec-card dl div:nth-child(7) dd {
    font-size: 11px !important;
}


/* Codex: download detail included apps, variant 2 list. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 46% !important;
    gap: 28px !important;
    align-items: stretch !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card__install {
    min-width: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps {
    align-self: stretch !important;
    min-width: 0 !important;
    padding: 18px 18px 16px !important;
    border: 1px solid rgba(132, 174, 236, .30) !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, rgba(248, 252, 255, .92), rgba(255, 255, 255, .72)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .90),
        0 16px 34px rgba(37, 75, 145, .07) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__head {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 14px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__head span {
    color: #7d8da6 !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__head strong {
    color: #0f1c32 !important;
    font-size: 16px !important;
    font-weight: 950 !important;
    line-height: 1.1 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps li {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 9px 10px !important;
    border: 1px solid rgba(132, 174, 236, .24) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, .70) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps img {
    width: 42px !important;
    height: 42px !important;
    object-fit: contain !important;
    display: block !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps li span,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps li b,
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps li em {
    display: block !important;
    min-width: 0 !important;
    font-style: normal !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps li b {
    color: #152238 !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    line-height: 1.12 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps li em {
    margin-top: 3px !important;
    color: #718098 !important;
    font-size: 9.5px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
}

@media (max-width: 900px) {
    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-article-card {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps ul {
        grid-template-columns: 1fr !important;
    }
}


/* Codex: short product description inside included apps block. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__description {
    margin: 14px 0 0 !important;
    padding: 14px 16px !important;
    border: 1px solid rgba(132, 174, 236, .22) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, .58) !important;
    color: #53657f !important;
    font-size: 12.5px !important;
    font-weight: 650 !important;
    line-height: 1.55 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps ul:has(+ .kh-dl-included-apps__description) {
    align-content: start !important;
}


/* Codex: merge included apps heading into one calm title. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__head {
    justify-content: flex-start !important;
    margin-bottom: 13px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__head span {
    display: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__head strong {
    display: block !important;
    color: #0f1c32 !important;
    font-size: 16px !important;
    font-weight: 950 !important;
    line-height: 1.15 !important;
    text-align: left !important;
}


/* Codex: Microsoft 365 composition by OS. */
html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps--platforms {
    padding: 18px 20px 16px !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__tabs {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    margin: 0 0 16px !important;
    padding: 4px !important;
    border-radius: 12px !important;
    background: #edf1f6 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__tab {
    appearance: none !important;
    min-width: 78px !important;
    height: 32px !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 9px !important;
    background: transparent !important;
    color: #5e6b80 !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 32px !important;
    cursor: pointer !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__tab.is-active {
    background: #fff !important;
    color: #0f1c32 !important;
    box-shadow: 0 1px 3px rgba(22, 34, 51, .12) !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__platform {
    display: none !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps__platform.is-active {
    display: block !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps--platforms ul.kh-dl-included-apps__icon-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px 12px !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps--platforms ul.kh-dl-included-apps__icon-grid li {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    min-height: 82px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    text-align: center !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps--platforms ul.kh-dl-included-apps__icon-grid img {
    width: 44px !important;
    height: 44px !important;
    object-fit: contain !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps--platforms ul.kh-dl-included-apps__icon-grid li b {
    color: #111827 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps--platforms ul.kh-dl-included-apps__icon-grid li em {
    margin-top: 3px !important;
    color: #8592a6 !important;
    font-size: 9.5px !important;
    font-weight: 650 !important;
    line-height: 1.1 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps--platforms ul.kh-dl-included-apps__icon-grid li.is-disabled {
    opacity: .34 !important;
}

html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps--platforms .kh-dl-included-apps__description {
    margin-top: 12px !important;
    font-size: 11.5px !important;
    line-height: 1.45 !important;
}

@media (max-width: 900px) {
    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-included-apps--platforms ul.kh-dl-included-apps__icon-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}


/* Codex: product page included apps block. */
html body.single-product .kh-product-includes {
    max-width: 1180px !important;
    margin: 28px auto 24px !important;
    padding: 0 15px !important;
}

html body.single-product .kh-product-includes__head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin: 0 0 16px !important;
}

html body.single-product .kh-product-includes__head h2 {
    margin: 0 !important;
    color: #0f172a !important;
    font-size: 24px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

html body.single-product .kh-product-includes__tabs {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    padding: 4px !important;
    border-radius: 13px !important;
    background: #edf1f6 !important;
}

html body.single-product .kh-product-includes__tab {
    appearance: none !important;
    min-width: 76px !important;
    height: 32px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: #556275 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 32px !important;
    cursor: pointer !important;
}

html body.single-product .kh-product-includes__tab.is-active {
    background: #fff !important;
    color: #0f172a !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, .10) !important;
}

html body.single-product .kh-product-includes__body {
    display: grid !important;
    grid-template-columns: minmax(220px, 30%) minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

html body.single-product .kh-product-includes__info {
    padding: 20px !important;
    border: 1px solid #cfe9fb !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #effdf7 0%, #eff8ff 100%) !important;
}

html body.single-product .kh-product-includes__info strong {
    display: block !important;
    margin: 0 0 10px !important;
    color: #0f172a !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.16 !important;
}

html body.single-product .kh-product-includes__info p {
    margin: 0 0 16px !important;
    color: #475569 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.55 !important;
}

html body.single-product .kh-product-includes__info ul {
    display: grid !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html body.single-product .kh-product-includes__info li {
    position: relative !important;
    margin: 0 !important;
    padding: 0 0 0 28px !important;
    color: #334155 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

html body.single-product .kh-product-includes__info li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    top: -1px !important;
    display: grid !important;
    place-items: center !important;
    width: 19px !important;
    height: 19px !important;
    border-radius: 50% !important;
    background: #dcfce7 !important;
    color: #16a34a !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

html body.single-product .kh-product-includes__apps-wrap,
html body.single-product .kh-product-includes__platform {
    min-width: 0 !important;
}

html body.single-product .kh-product-includes__platform {
    display: none !important;
}

html body.single-product .kh-product-includes__platform.is-active {
    display: block !important;
}

html body.single-product .kh-product-includes__apps {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html body.single-product .kh-product-includes__apps li {
    display: grid !important;
    place-items: center !important;
    min-height: 112px !important;
    margin: 0 !important;
    padding: 16px 10px !important;
    border: 1px solid #e8edf3 !important;
    border-radius: 16px !important;
    background: #fff !important;
    text-align: center !important;
}

html body.single-product .kh-product-includes__apps li.is-disabled {
    opacity: .38 !important;
}

html body.single-product .kh-product-includes__apps img {
    display: block !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 0 10px !important;
    object-fit: contain !important;
}

html body.single-product .kh-product-includes__apps span {
    color: #111827 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.15 !important;
}

@media (max-width: 900px) {
    html body.single-product .kh-product-includes__head {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    html body.single-product .kh-product-includes__body {
        grid-template-columns: 1fr !important;
    }

    html body.single-product .kh-product-includes__apps {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}


/* Codex: Autodesk Russia info product block. */
html body.single-product .kh-product-includes--autodesk-russia {
    max-width: 1180px !important;
}

html body.single-product .kh-product-includes__badge {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 31px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    background: #f1f5f9 !important;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
}

html body.single-product .kh-product-includes__autodesk-intro {
    display: grid !important;
    grid-template-columns: 112px minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: center !important;
    padding: 16px !important;
    border: 1px solid #dbeafe !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #f8fbff 0%, #fff 100%) !important;
}

html body.single-product .kh-product-includes__autodesk-product {
    display: grid !important;
    place-items: center !important;
    gap: 8px !important;
    min-height: 96px !important;
    border: 1px solid #e5eaf2 !important;
    border-radius: 14px !important;
    background: #fff !important;
    text-align: center !important;
}

html body.single-product .kh-product-includes__autodesk-product img {
    width: 50px !important;
    height: 50px !important;
    object-fit: contain !important;
}

html body.single-product .kh-product-includes__autodesk-product span {
    color: #111827 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

html body.single-product .kh-product-includes__autodesk-intro p {
    margin: 0 !important;
    color: #334155 !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    line-height: 1.6 !important;
}

html body.single-product .kh-product-includes__autodesk-notice {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    margin-top: 14px !important;
    padding: 16px 18px !important;
    border: 1px solid #fed7aa !important;
    border-radius: 14px !important;
    background: #fff7ed !important;
}

html body.single-product .kh-product-includes__autodesk-alert {
    display: grid !important;
    place-items: center !important;
    width: 22px !important;
    height: 22px !important;
    margin-top: 1px !important;
    border-radius: 50% !important;
    background: #f97316 !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
}

html body.single-product .kh-product-includes__autodesk-notice ul {
    display: grid !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html body.single-product .kh-product-includes__autodesk-notice li {
    position: relative !important;
    margin: 0 !important;
    padding: 0 0 0 28px !important;
    color: #334155 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.28 !important;
}

html body.single-product .kh-product-includes__autodesk-notice li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    top: -2px !important;
    display: grid !important;
    place-items: center !important;
    width: 19px !important;
    height: 19px !important;
    border-radius: 50% !important;
    background: #dcfce7 !important;
    color: #16a34a !important;
    font-size: 12px !important;
    font-weight: 950 !important;
}

html body.single-product .kh-product-includes__autodesk-education-link {
    grid-column: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin-top: 3px !important;
    padding: 8px 12px !important;
    border: 1px solid #fdba74 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #9a3412 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
    transition: border-color .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease !important;
}

html body.single-product .kh-product-includes__autodesk-education-link:hover {
    border-color: #f97316 !important;
    color: #7c2d12 !important;
    box-shadow: 0 8px 18px rgba(249, 115, 22, .14) !important;
    transform: translateY(-1px) !important;
}

html body.single-product .kh-product-includes__autodesk-education-link:focus-visible {
    outline: 3px solid rgba(249, 115, 22, .28) !important;
    outline-offset: 2px !important;
}

@media (max-width: 900px) {
    html body.single-product .kh-product-includes__autodesk-intro {
        grid-template-columns: 1fr !important;
    }

    html body.single-product .kh-product-includes__autodesk-product {
        min-height: 112px !important;
    }
}


/* Codex: Windows license product block. */
html body.single-product .kh-product-includes--windows-license {
    max-width: 1180px !important;
}

html body.single-product .kh-product-includes__windows-card {
    display: grid !important;
    grid-template-columns: 120px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: center !important;
    padding: 18px !important;
    border: 1px solid #dbeafe !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #f8fbff 0%, #fff 100%) !important;
}

html body.single-product .kh-product-includes__windows-product {
    display: grid !important;
    place-items: center !important;
    gap: 8px !important;
    min-height: 112px !important;
    border: 1px solid #e5eaf2 !important;
    border-radius: 16px !important;
    background: #fff !important;
    text-align: center !important;
}

html body.single-product .kh-product-includes__windows-product img {
    width: 50px !important;
    height: 50px !important;
    object-fit: contain !important;
}

html body.single-product .kh-product-includes__windows-product span {
    color: #111827 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

html body.single-product .kh-product-includes__windows-text h3 {
    margin: 0 0 8px !important;
    color: #172033 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}

html body.single-product .kh-product-includes__windows-text p {
    margin: 0 !important;
    color: #334155 !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    line-height: 1.6 !important;
}

html body.single-product .kh-product-includes__windows-chips {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 13px !important;
}

html body.single-product .kh-product-includes__windows-chips span {
    display: grid !important;
    place-items: center !important;
    min-height: 42px !important;
    padding: 8px 10px !important;
    border: 1px solid #e5eaf2 !important;
    border-radius: 13px !important;
    background: #fff !important;
    color: #334155 !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

html body.single-product .kh-product-includes__windows-notice {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    margin-top: 13px !important;
    padding: 14px 16px !important;
    border: 1px solid #fed7aa !important;
    border-radius: 14px !important;
    background: #fff7ed !important;
}

html body.single-product .kh-product-includes__windows-notice p {
    margin: 0 !important;
    color: #334155 !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.45 !important;
}

@media (max-width: 900px) {
    html body.single-product .kh-product-includes__windows-card {
        grid-template-columns: 1fr !important;
    }

    html body.single-product .kh-product-includes__windows-chips {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}


/* Codex: Office account-bound license block. */
html body.single-product .kh-office-binding {
    position: relative !important;
    max-width: 1180px !important;
    margin: 30px auto 28px !important;
    padding: 34px 46px 32px !important;
    overflow: hidden !important;
    border: 1px solid #fed7aa !important;
    border-radius: 12px !important;
    background:
        radial-gradient(circle at 86% 14%, rgba(255, 122, 24, .10), transparent 28%),
        linear-gradient(135deg, #fffaf4 0%, #ffffff 48%, #fff7ed 100%) !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .06) !important;
}

html body.single-product .kh-office-binding__top {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 220px !important;
    gap: 24px !important;
    align-items: start !important;
    margin-bottom: 24px !important;
}

html body.single-product .kh-office-binding__copy h2 {
    max-width: 620px !important;
    margin: 0 0 14px !important;
    color: #101828 !important;
    font-size: 34px !important;
    font-weight: 950 !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
}

html body.single-product .kh-office-binding__copy p {
    margin: 0 !important;
    color: #ff4f12 !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    line-height: 1.45 !important;
}

html body.single-product .kh-office-binding__hero {
    display: flex !important;
    justify-content: flex-end !important;
    min-height: 116px !important;
}

html body.single-product .kh-office-binding__icon {
    display: block !important;
    flex: 0 0 auto !important;
    object-fit: contain !important;
}

html body.single-product .kh-office-binding__icon--office {
    width: 176px !important;
    height: 142px !important;
    filter: drop-shadow(0 18px 20px rgba(255, 93, 0, .18)) !important;
}

html body.single-product .kh-office-binding__icon--fact {
    width: 54px !important;
    height: 54px !important;
    margin: 0 0 13px !important;
}

html body.single-product .kh-office-binding__icon--shield {
    width: 50px !important;
    height: 50px !important;
}

html body.single-product .kh-office-binding__facts {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin: 0 0 28px !important;
}

html body.single-product .kh-office-binding__fact {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 26px !important;
    border-right: 1px solid #fed7aa !important;
}

html body.single-product .kh-office-binding__fact:first-child {
    padding-left: 0 !important;
}

html body.single-product .kh-office-binding__fact:last-child {
    padding-right: 0 !important;
    border-right: 0 !important;
}

html body.single-product .kh-office-binding__fact strong {
    display: block !important;
    margin: 0 0 8px !important;
    color: #111827 !important;
    font-size: 14px !important;
    font-weight: 950 !important;
    line-height: 1.2 !important;
}

html body.single-product .kh-office-binding__fact p {
    margin: 0 !important;
    color: #2f3b4d !important;
    font-size: 12.5px !important;
    font-weight: 650 !important;
    line-height: 1.55 !important;
}

html body.single-product .kh-office-binding__note {
    display: grid !important;
    grid-template-columns: 56px minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: center !important;
    padding: 16px 20px !important;
    border: 1px solid #ff8a3d !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, .78) !important;
}

html body.single-product .kh-office-binding__note p {
    margin: 0 !important;
    color: #1f2937 !important;
    font-size: 14px !important;
    font-weight: 750 !important;
    line-height: 1.45 !important;
}

@media (max-width: 980px) {
    html body.single-product .kh-office-binding {
        padding: 28px 24px !important;
    }

    html body.single-product .kh-office-binding__top {
        grid-template-columns: 1fr !important;
    }

    html body.single-product .kh-office-binding__hero {
        justify-content: flex-start !important;
        min-height: 0 !important;
    }

    html body.single-product .kh-office-binding__facts {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 18px 0 !important;
    }

    html body.single-product .kh-office-binding__fact:nth-child(2) {
        border-right: 0 !important;
    }

    html body.single-product .kh-office-binding__fact:nth-child(3) {
        padding-left: 0 !important;
    }
}

@media (max-width: 620px) {
    html body.single-product .kh-office-binding {
        margin: 24px 15px !important;
        padding: 24px 18px !important;
    }

    html body.single-product .kh-office-binding__copy h2 {
        font-size: 26px !important;
    }

    html body.single-product .kh-office-binding__facts {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    html body.single-product .kh-office-binding__fact,
    html body.single-product .kh-office-binding__fact:first-child,
    html body.single-product .kh-office-binding__fact:nth-child(3) {
        padding: 0 !important;
        border-right: 0 !important;
    }

    html body.single-product .kh-office-binding__note {
        grid-template-columns: 1fr !important;
    }
}

/* Codex: product OS/version picker redesign. */
html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard {
    width: min(620px, 100%) !important;
    padding: 26px 26px 20px !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .055) !important;
}

html body.single-product .variations-container.kh-version-picker {
    display: block !important;
    margin: 0 0 14px !important;
}

html body.single-product .kh-version-picker__head {
    margin: 0 0 14px !important;
}

html body.single-product .kh-version-picker__head h2 {
    margin: 0 0 6px !important;
    color: #101423 !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
}

html body.single-product .kh-version-picker__head p,
html body.single-product .kh-version-picker__os-label,
html body.single-product .kh-version-picker__version-label {
    margin: 0 !important;
    color: #667085 !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.35 !important;
}

html body.single-product .kh-version-picker__os-label {
    margin-bottom: 8px !important;
}

html body.single-product .kh-version-picker__os-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 0 0 13px !important;
}

html body.single-product .kh-version-picker__os-tab {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    min-width: 122px !important;
    min-height: 35px !important;
    padding: 8px 16px !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #1f2937 !important;
    cursor: pointer !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .035) !important;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

html body.single-product .kh-version-picker__os-tab:hover,
html body.single-product .kh-version-picker__os-tab.is-active {
    border-color: #16a34a !important;
    box-shadow: 0 10px 22px rgba(22, 163, 74, .12) !important;
}

html body.single-product .kh-version-picker__os-tab.is-active {
    background: #fbfffd !important;
}

html body.single-product .kh-version-picker__os-icon {
    position: relative !important;
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 auto !important;
    color: #16a34a !important;
}

html body.single-product .kh-version-picker__os-icon--win {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2px !important;
}

html body.single-product .kh-version-picker__os-icon--win::before,
html body.single-product .kh-version-picker__os-icon--win::after {
    content: "" !important;
    display: block !important;
    background: currentColor !important;
    box-shadow: 10px 0 0 currentColor, 0 10px 0 currentColor, 10px 10px 0 currentColor !important;
    width: 8px !important;
    height: 8px !important;
}

html body.single-product .kh-version-picker__os-icon--win::after {
    display: none !important;
}

html body.single-product .kh-version-picker__os-icon--mac::before {
    content: "" !important;
    position: absolute !important;
    left: 4px !important;
    top: 5px !important;
    width: 11px !important;
    height: 11px !important;
    border-radius: 48% 52% 46% 54% !important;
    background: #4b5563 !important;
    box-shadow: -4px 2px 0 -1px #4b5563 !important;
}

html body.single-product .kh-version-picker__os-icon--mac::after {
    content: "" !important;
    position: absolute !important;
    left: 10px !important;
    top: 0 !important;
    width: 5px !important;
    height: 8px !important;
    border-radius: 100% 0 100% 0 !important;
    background: #4b5563 !important;
    transform: rotate(28deg) !important;
}

html body.single-product .kh-version-picker__panel {
    display: none !important;
}

html body.single-product .kh-version-picker__panel.is-active {
    display: block !important;
}

html body.single-product .kh-version-picker__version-label {
    margin: 0 0 10px !important;
}

html body.single-product .kh-version-picker__grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

html body.single-product .kh-version-picker .variation-card {
    position: relative !important;
    display: flex !important;
    min-width: 0 !important;
    min-height: 124px !important;
    padding: 24px 10px 14px !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid #dfe7f2 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #111827 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transform: none !important;
    transition: border-color .18s ease, box-shadow .18s ease, opacity .18s ease !important;
}

html body.single-product .kh-version-picker .variation-card:hover {
    border-color: #b9c8de !important;
    box-shadow: 0 10px 20px rgba(15, 23, 42, .06) !important;
    transform: none !important;
}

html body.single-product .kh-version-picker .variation-card.current-product {
    border-color: #16a34a !important;
    background: #ffffff !important;
    box-shadow: 0 12px 26px rgba(22, 163, 74, .09) !important;
}

html body.single-product .kh-version-picker .variation-badge {
    position: absolute !important;
    top: 9px !important;
    right: 9px !important;
    padding: 2px 7px !important;
    border-radius: 999px !important;
    background: #ffe4e8 !important;
    color: #ef4444 !important;
    box-shadow: none !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
}

html body.single-product .kh-version-picker__check {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    display: inline-flex !important;
    width: 17px !important;
    height: 17px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: #16a34a !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

html body.single-product .kh-version-picker .variation-title {
    display: block !important;
    margin: 0 0 5px !important;
    color: #111827 !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

html body.single-product .kh-version-picker .variation-price {
    display: grid !important;
    gap: 1px !important;
    margin: 0 !important;
    color: #2563eb !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

html body.single-product .kh-version-picker .variation-price .old-price {
    margin: 0 !important;
    color: #8b95a5 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    text-decoration: line-through !important;
}

html body.single-product .kh-version-picker .current-indicator {
    display: block !important;
    margin-top: 9px !important;
    color: #16a34a !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

html body.single-product .features-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px 10px !important;
    margin: 12px 0 15px !important;
}

html body.single-product .feature-item {
    min-height: 34px !important;
    padding: 7px 14px !important;
    border: 1px solid #dfe7f2 !important;
    border-radius: 8px !important;
    background: #fbfdff !important;
    color: #111827 !important;
    box-shadow: none !important;
}

html body.single-product .feature-item .feature-icon,
html body.single-product .feature-icon {
    width: 20px !important;
    height: 20px !important;
    color: #16a34a !important;
    stroke: #16a34a !important;
}

html body.single-product .feature-text {
    color: #1f2937 !important;
    font-size: 12.5px !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
}

@media (max-width: 1180px) {
    html body.single-product .kh-version-picker__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 640px) {
    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard {
        padding: 20px 14px 16px !important;
        border-radius: 10px !important;
    }

    html body.single-product .kh-version-picker__head h2 {
        font-size: 20px !important;
    }

    html body.single-product .kh-version-picker__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    html body.single-product .kh-version-picker .variation-card {
        min-height: 112px !important;
        padding: 23px 8px 12px !important;
    }

    html body.single-product .features-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Codex: product OS/version picker feedback fixes. */
html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard {
    width: min(560px, 100%) !important;
    padding: 22px 22px 18px !important;
}

html body.single-product .kh-product-dashboard__title {
    margin: 0 0 8px !important;
    color: #101423 !important;
    font-size: 24px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
}

html body.single-product .kh-version-picker__head {
    margin: 0 0 10px !important;
}

html body.single-product .kh-version-picker__os-tabs {
    margin-bottom: 10px !important;
}

html body.single-product .kh-version-picker__grid {
    gap: 10px !important;
}

html body.single-product .kh-version-picker .variation-card {
    min-height: 96px !important;
    padding: 20px 8px 10px !important;
}

html body.single-product .kh-version-picker .variation-title {
    font-size: 20px !important;
}

html body.single-product .kh-version-picker .variation-price {
    font-size: 17px !important;
}

html body.single-product .kh-version-picker__os-icon {
    display: block !important;
    color: #16a34a !important;
}

html body.single-product .kh-version-picker__os-tab[data-kh-version-os="macos"] .kh-version-picker__os-icon {
    color: #4b5563 !important;
}

html body.single-product .kh-version-picker__os-icon::before,
html body.single-product .kh-version-picker__os-icon::after {
    display: none !important;
    content: none !important;
}

@media (max-width: 640px) {
    html body.single-product .kh-product-dashboard__title {
        font-size: 22px !important;
    }

    html body.single-product .kh-version-picker .variation-card {
        min-height: 98px !important;
    }
}

/* Codex: remove excess air around the product purchase panel. */
@media (min-width: 1361px) {
    html body.single-product #content.site-content.fixed {
        width: min(100% - 96px, 1300px) !important;
        max-width: 1300px !important;
    }

    html body.single-product .site-content-inner {
        grid-template-columns: minmax(0, 936px) 340px !important;
        column-gap: 24px !important;
        justify-content: center !important;
    }

    html body.single-product .product-container {
        grid-template-columns: 340px 560px !important;
        column-gap: 24px !important;
        justify-content: start !important;
        margin-bottom: 12px !important;
    }

    html body.single-product .product-images {
        max-width: 340px !important;
    }

    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product .kh-product-dashboard {
        width: 560px !important;
        max-width: 560px !important;
    }
}

@media (min-width: 1200px) and (max-width: 1360px) {
    html body.single-product .site-content-inner {
        grid-template-columns: minmax(0, 900px) 300px !important;
        column-gap: 20px !important;
        justify-content: center !important;
    }

    html body.single-product .product-container {
        grid-template-columns: 300px minmax(0, 560px) !important;
        column-gap: 20px !important;
        margin-bottom: 12px !important;
    }
}

@media (min-width: 1200px) and (max-width: 1400px) {
    html body.single-product #content.site-content.fixed {
        width: min(100% - 48px, 1260px) !important;
        max-width: 1260px !important;
    }

    html body.single-product .site-content-inner {
        grid-template-columns: minmax(0, 920px) 320px !important;
        column-gap: 20px !important;
    }

    html body.single-product .product-container {
        grid-template-columns: 300px 560px !important;
        column-gap: 20px !important;
    }

    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product .kh-product-dashboard {
        width: 560px !important;
        max-width: 560px !important;
    }

    html body.single-product #secondary,
    html body.single-product #secondary .sticky-sidebar,
    html body.single-product #secondary .widget,
    html body.single-product #secondary .keyhub-sidebar,
    html body.single-product #secondary .kh-sidebar-recommendations-widget {
        width: 100% !important;
        max-width: 320px !important;
    }
}

@media (min-width: 1401px) {
    html body.single-product #content.site-content.fixed {
        width: min(100% - 96px, 1460px) !important;
        max-width: 1460px !important;
    }

    html body.single-product .site-content-inner {
        grid-template-columns: minmax(0, 1096px) 340px !important;
        column-gap: 24px !important;
        justify-content: center !important;
    }

    html body.single-product .product-container {
        width: 1096px !important;
        max-width: 1096px !important;
        justify-self: start !important;
        grid-template-columns: 380px 688px !important;
        column-gap: 28px !important;
        justify-content: start !important;
        margin-left: -12px !important;
        margin-bottom: 12px !important;
    }

    html body.single-product .product-images {
        max-width: 380px !important;
    }

    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product .kh-product-dashboard {
        width: 688px !important;
        max-width: 688px !important;
    }

    html body.single-product .kh-product-includes,
    html body.single-product .woocommerce-tabs,
    html body.single-product .product_meta {
        max-width: 1096px !important;
        margin-left: -12px !important;
        margin-right: 0 !important;
    }
}

/* Codex: align sidebar top and give version cards breathing room. */
@media (min-width: 1200px) {
    html body.single-product #secondary.widget-area--desktop {
        padding-top: 41px !important;
    }

    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    html body.single-product .kh-version-picker__grid {
        gap: 8px !important;
    }

    html body.single-product .kh-version-picker .variation-card {
        min-height: 104px !important;
        padding-top: 30px !important;
    }

    html body.single-product .kh-version-picker .variation-badge {
        top: 8px !important;
        right: 8px !important;
    }

    html body.single-product .kh-version-picker__check {
        top: 9px !important;
        left: 9px !important;
    }
}

html body.single-product .kh-version-picker__grid--count-1 {
    grid-template-columns: minmax(160px, 220px) !important;
}

html body.single-product .kh-version-picker__grid--count-2 {
    grid-template-columns: repeat(2, minmax(150px, 220px)) !important;
}

html body.single-product .kh-version-picker__grid--count-3 {
    grid-template-columns: repeat(3, minmax(150px, 1fr)) !important;
}

html body.single-product .kh-version-picker__grid--count-1 .variation-card,
html body.single-product .kh-version-picker__grid--count-2 .variation-card,
html body.single-product .kh-version-picker__grid--count-3 .variation-card {
    min-height: 112px !important;
}

html body.single-product .kh-version-picker__grid--count-3 .variation-title {
    max-width: none !important;
    white-space: nowrap !important;
}


/* Codex: Office annual OS and binding picker. */
html body.single-product .kh-version-picker__binding-label {
    margin: 0 0 8px !important;
    color: #667085 !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.35 !important;
}

html body.single-product .kh-version-picker__binding-tabs {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 0 13px !important;
}

html body.single-product .kh-version-picker__binding-tab {
    display: flex !important;
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 8px 12px !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #1f2937 !important;
    cursor: pointer !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .035) !important;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}

html body.single-product .kh-version-picker__binding-tab span {
    display: block !important;
    color: inherit !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

html body.single-product .kh-version-picker__binding-tab small {
    display: block !important;
    margin-top: 3px !important;
    color: #7b8797 !important;
    font-size: 11px !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
}

html body.single-product .kh-version-picker__binding-tab:hover,
html body.single-product .kh-version-picker__binding-tab.is-active {
    border-color: #16a34a !important;
    background: #fbfffd !important;
    box-shadow: 0 10px 22px rgba(22, 163, 74, .12) !important;
}

html body.single-product .kh-version-picker__binding-panel {
    display: none !important;
}

html body.single-product .kh-version-picker__binding-panel.is-active {
    display: block !important;
}

@media (max-width: 640px) {
    html body.single-product .kh-version-picker__binding-tabs {
        grid-template-columns: 1fr !important;
    }
}


/* Codex: Office version cards show edition below year. */
html body.single-product .kh-version-picker .variation-edition {
    display: block !important;
    max-width: 100% !important;
    margin: -2px 0 5px !important;
    color: #111827 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
    overflow-wrap: anywhere !important;
    text-align: center !important;
}

html body.single-product .kh-version-picker .variation-title + .variation-edition + .variation-price {
    margin-top: 0 !important;
}

html body.single-product .kh-version-picker .variation-card:has(.variation-edition) {
    padding-top: 18px !important;
}

@media (max-width: 640px) {
    html body.single-product .kh-version-picker .variation-edition {
        font-size: 12px !important;
    }
}

/* Codex: keep discount badges clear of Office edition labels. */
html body.single-product .kh-version-picker .variation-card:has(.variation-edition) {
    min-height: 128px !important;
    padding-top: 30px !important;
}

html body.single-product .kh-version-picker .variation-card:has(.variation-edition) .variation-badge {
    top: 9px !important;
    right: 8px !important;
    z-index: 3 !important;
}

html body.single-product .kh-version-picker .variation-card:has(.variation-edition) .kh-version-picker__check {
    top: 9px !important;
    left: 9px !important;
    z-index: 3 !important;
}

@media (max-width: 640px) {
    html body.single-product .kh-version-picker .variation-card:has(.variation-edition) {
        min-height: 122px !important;
        padding-top: 29px !important;
    }
}


/* Codex: stronger active state for Office binding switch. */
html body.single-product .kh-version-picker__binding-tab {
    text-decoration: none !important;
}

html body.single-product .kh-version-picker__binding-tab.is-active {
    border-color: #16a34a !important;
    background: #f8fffb !important;
    box-shadow: inset 0 0 0 1px rgba(22, 163, 74, .2) !important;
    color: #07111f !important;
}

html body.single-product .kh-version-picker__binding-tab.is-active span::before {
    content: "✓" !important;
    display: inline-flex !important;
    width: 16px !important;
    height: 16px !important;
    margin-right: 6px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: #16a34a !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    vertical-align: 1px !important;
}

/* Codex: critical single product layout fallback for async CSS/LiteSpeed scenarios. */
html body.single-product #content.site-content,
html body.single-product #content.site-content.fixed {
    box-sizing: border-box !important;
    width: min(100% - clamp(32px, 5vw, 96px), 1460px) !important;
    max-width: 1460px !important;
    min-width: 0 !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    float: none !important;
    position: relative !important;
    transform: none !important;
}

html body.single-product .site-content-inner,
html body.single-product .product-container,
html body.single-product #primary.content-area,
html body.single-product .product-images,
html body.single-product .product-info,
html body.single-product #secondary.widget-area--desktop,
html body.single-product #secondary .sticky-sidebar {
    box-sizing: border-box !important;
    min-width: 0 !important;
    float: none !important;
    transform: none !important;
}

html body.single-product .site-content-inner {
    width: 100% !important;
    max-width: 1460px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1096px) minmax(300px, 340px) !important;
    column-gap: 24px !important;
    align-items: start !important;
    justify-content: center !important;
}

html body.single-product #primary.content-area {
    width: 100% !important;
    max-width: none !important;
    grid-column: 1 !important;
}

html body.single-product #secondary.widget-area--desktop {
    width: 100% !important;
    max-width: 340px !important;
    grid-column: 2 !important;
    padding-top: 41px !important;
    position: relative !important;
}

html body.single-product #secondary .sticky-sidebar {
    width: 100% !important;
    max-width: 340px !important;
    position: sticky !important;
    top: 16px !important;
}

html body.single-product .product-container {
    width: 100% !important;
    max-width: 1096px !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    display: grid !important;
    grid-template-columns: 380px minmax(0, 688px) !important;
    column-gap: 28px !important;
    align-items: start !important;
    justify-content: start !important;
    position: relative !important;
}

html body.single-product .product-container > .woocommerce-breadcrumb {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: 100% !important;
}

html body.single-product .product-container > .product-images {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

html body.single-product .product-container > .product-info {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

html body.single-product .product-images {
    width: 100% !important;
    max-width: 380px !important;
    position: relative !important;
}

html body.single-product .product-info {
    width: 100% !important;
    max-width: 688px !important;
    position: relative !important;
}

html body.single-product .product-images .woocommerce-product-gallery,
html body.single-product .product-images .woocommerce-product-gallery__wrapper,
html body.single-product .product-images .woocommerce-product-gallery__image,
html body.single-product .product-images .support-section-p,
html body.single-product .product-images .support-section-p .container,
html body.single-product .product-images .support-card {
    width: 100% !important;
    max-width: none !important;
}

html body.single-product .product-images img,
html body.single-product .woocommerce-product-gallery img {
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
}

html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
html body.single-product .kh-product-dashboard {
    width: 100% !important;
    max-width: 688px !important;
    min-width: 0 !important;
}

@media (min-width: 1200px) and (max-width: 1400px) {
    html body.single-product #content.site-content,
    html body.single-product #content.site-content.fixed {
        width: min(100% - 48px, 1260px) !important;
        max-width: 1260px !important;
    }

    html body.single-product .site-content-inner {
        max-width: 1260px !important;
        grid-template-columns: minmax(0, 920px) minmax(280px, 320px) !important;
        column-gap: 20px !important;
    }

    html body.single-product #secondary.widget-area--desktop,
    html body.single-product #secondary .sticky-sidebar {
        max-width: 320px !important;
    }

    html body.single-product .product-container {
        max-width: 920px !important;
        grid-template-columns: 300px minmax(0, 560px) !important;
        column-gap: 20px !important;
    }

    html body.single-product .product-images {
        max-width: 300px !important;
    }

    html body.single-product .product-info,
    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product .kh-product-dashboard {
        max-width: 560px !important;
    }
}

@media (min-width: 1024px) and (max-width: 1199px) {
    html body.single-product #content.site-content,
    html body.single-product #content.site-content.fixed {
        width: min(100% - 32px, 1080px) !important;
        max-width: 1080px !important;
    }

    html body.single-product .site-content-inner {
        display: block !important;
        max-width: 1080px !important;
    }

    html body.single-product .product-container {
        max-width: none !important;
        grid-template-columns: 300px minmax(0, 1fr) !important;
        column-gap: 24px !important;
    }

    html body.single-product .product-images {
        max-width: 300px !important;
    }

    html body.single-product .product-info,
    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product .kh-product-dashboard {
        max-width: none !important;
    }

    html body.single-product #secondary.widget-area--desktop {
        width: 100% !important;
        max-width: none !important;
        padding-top: 24px !important;
    }

    html body.single-product #secondary .sticky-sidebar {
        width: 100% !important;
        max-width: none !important;
        position: static !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }
}

@media (max-width: 1023px) {
    html body.single-product #content.site-content,
    html body.single-product #content.site-content.fixed {
        width: min(100% - 24px, 760px) !important;
        max-width: 760px !important;
    }

    html body.single-product .site-content-inner,
    html body.single-product .product-container {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
    }

    html body.single-product .product-images,
    html body.single-product .product-info,
    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product .kh-product-dashboard,
    html body.single-product #secondary.widget-area--desktop,
    html body.single-product #secondary .sticky-sidebar {
        width: 100% !important;
        max-width: none !important;
        position: static !important;
    }

    html body.single-product #secondary.widget-area--desktop {
        padding-top: 20px !important;
    }
}

/* Codex: softer desktop density for single product pages without changing the resilient layout grid. */
@media (min-width: 1200px) {
    html body.single-product .product-container {
        row-gap: 18px !important;
    }

    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product .kh-product-dashboard {
        border-radius: 14px !important;
    }

    html body.single-product .kh-product-dashboard__title,
    html body.single-product .product_title.entry-title {
        margin-bottom: 22px !important;
        font-size: clamp(24px, 1.55vw, 30px) !important;
        line-height: 1.18 !important;
    }

    html body.single-product .kh-version-picker,
    html body.single-product .variations-container.kh-version-picker {
        gap: 8px !important;
        margin-bottom: 18px !important;
    }

    html body.single-product .kh-version-picker .variation-card {
        min-height: 112px !important;
        padding: 22px 10px 12px !important;
        border-radius: 8px !important;
    }

    html body.single-product .kh-version-picker .variation-title {
        font-size: 22px !important;
        line-height: 1.05 !important;
    }

    html body.single-product .kh-version-picker .variation-edition {
        margin-top: 2px !important;
        font-size: 11px !important;
        line-height: 1.15 !important;
    }

    html body.single-product .kh-version-picker .variation-price {
        margin-top: 5px !important;
        font-size: 18px !important;
        line-height: 1.05 !important;
    }

    html body.single-product .kh-version-picker .variation-price .old-price {
        font-size: 13px !important;
    }

    html body.single-product .kh-version-picker .variation-badge {
        top: 8px !important;
        right: 8px !important;
        min-height: 18px !important;
        padding: 2px 7px !important;
        font-size: 10px !important;
    }

    html body.single-product .kh-product-dashboard .product-feature-grid,
    html body.single-product .product-feature-grid {
        gap: 8px !important;
        margin: 18px 0 !important;
    }

    html body.single-product .kh-product-dashboard .product-feature,
    html body.single-product .product-feature {
        min-height: 38px !important;
        padding: 8px 12px !important;
        border-radius: 8px !important;
        font-size: 13px !important;
    }

    html body.single-product .product-info form.cart {
        padding: 12px !important;
        border-radius: 14px !important;
    }

    html body.single-product .product-info .quantity {
        min-height: 48px !important;
    }

    html body.single-product .single_add_to_cart_button {
        min-height: 48px !important;
        border-radius: 10px !important;
        font-size: 15px !important;
    }

    html body.single-product .characteristics {
        margin-top: 22px !important;
        padding: 22px 30px !important;
        border-radius: 14px !important;
    }

    html body.single-product .characteristics h2,
    html body.single-product .characteristics-title {
        margin-bottom: 18px !important;
        font-size: 22px !important;
    }

    html body.single-product .support-section-p {
        margin-top: 26px !important;
    }

    html body.single-product .product-images .support-section-p {
        margin-top: 28px !important;
    }

    html body.single-product .product-images .support-card {
        padding: 16px 14px !important;
        border-radius: 14px !important;
    }

    html body.single-product #secondary.widget-area--desktop {
        padding-top: 32px !important;
    }

    html body.single-product .keyhub-sidebar,
    html body.single-product .kh-sidebar-recommendations-widget,
    html body.single-product .kh-product-articles-widget {
        padding: 16px !important;
        border-radius: 16px !important;
        box-shadow: 0 14px 32px rgba(18, 35, 68, .07) !important;
    }

    html body.single-product .sidebar-status,
    html body.single-product .kh-sidebar-recommendations__head,
    html body.single-product .kh-product-articles__head {
        padding-bottom: 12px !important;
        margin-bottom: 10px !important;
    }

    html body.single-product .download-item {
        min-height: 58px !important;
        padding: 10px !important;
        border-radius: 12px !important;
    }

    html body.single-product .kh-sidebar-product {
        height: 112px !important;
        padding: 9px !important;
        border-radius: 12px !important;
    }

    html body.single-product .kh-sidebar-product__thumb {
        width: 50px !important;
        height: 50px !important;
        border-radius: 10px !important;
    }

    html body.single-product .kh-sidebar-product__title {
        font-size: 12px !important;
        line-height: 1.2 !important;
    }

    html body.single-product .kh-sidebar-product__button {
        min-height: 32px !important;
        border-radius: 8px !important;
        font-size: 12px !important;
    }
}

/* Codex: narrower desktop product composition, layered after the resilience fallback. */
@media (min-width: 1401px) {
    html body.single-product #content.site-content,
    html body.single-product #content.site-content.fixed {
        width: min(100% - clamp(40px, 6vw, 112px), 1360px) !important;
        max-width: 1360px !important;
    }

    html body.single-product .site-content-inner {
        max-width: 1360px !important;
        grid-template-columns: minmax(0, 1016px) minmax(300px, 320px) !important;
        column-gap: 24px !important;
    }

    html body.single-product #secondary.widget-area--desktop,
    html body.single-product #secondary .sticky-sidebar,
    html body.single-product .keyhub-sidebar,
    html body.single-product .kh-sidebar-recommendations-widget,
    html body.single-product .kh-product-articles-widget {
        max-width: 320px !important;
    }

    html body.single-product .product-container {
        max-width: 992px !important;
        grid-template-columns: 340px minmax(0, 628px) !important;
        column-gap: 24px !important;
    }

    html body.single-product .product-images {
        max-width: 340px !important;
    }

    html body.single-product .product-info,
    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product .kh-product-dashboard {
        max-width: 628px !important;
    }
}

@media (min-width: 1200px) and (max-width: 1400px) {
    html body.single-product #content.site-content,
    html body.single-product #content.site-content.fixed {
        width: min(100% - 48px, 1200px) !important;
        max-width: 1200px !important;
    }

    html body.single-product .site-content-inner {
        max-width: 1200px !important;
        grid-template-columns: minmax(0, 860px) minmax(280px, 320px) !important;
        column-gap: 20px !important;
    }

    html body.single-product .product-container {
        max-width: 840px !important;
        grid-template-columns: 290px minmax(0, 530px) !important;
        column-gap: 20px !important;
    }

    html body.single-product .product-images {
        max-width: 290px !important;
    }

    html body.single-product .product-info,
    html body.single-product .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product .kh-product-dashboard {
        max-width: 530px !important;
    }
}

/* Codex: compact Windows edition labels inside product version cards. */
html body.single-product .kh-version-picker .variation-card--windows-compact {
    min-height: 122px !important;
    padding: 28px 10px 12px !important;
}

html body.single-product .kh-version-picker .variation-title--windows-compact {
    display: grid !important;
    gap: 1px !important;
    margin: 0 auto 7px !important;
    max-width: 100% !important;
    color: #07111f !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    line-height: 1.06 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    white-space: normal !important;
}

html body.single-product .kh-version-picker .variation-title--windows-compact span {
    display: block !important;
}

html body.single-product .kh-version-picker .variation-card--windows-compact .variation-price {
    margin-top: 2px !important;
}

html body.single-product .kh-version-picker .variation-card--windows-compact .current-price {
    font-size: 18px !important;
    line-height: 1.05 !important;
}

html body.single-product .kh-version-picker .variation-card--windows-compact .old-price {
    font-size: 12px !important;
    line-height: 1.05 !important;
}

html body.single-product .kh-version-picker .variation-card--windows-compact .current-indicator {
    margin-top: 5px !important;
    font-size: 11px !important;
    line-height: 1.05 !important;
}

html body.single-product .kh-version-picker__grid--count-4 .variation-title--windows-compact,
html body.single-product .kh-version-picker__grid--count-5 .variation-title--windows-compact {
    gap: 0 !important;
    font-size: 14px !important;
    line-height: 1.06 !important;
}

html body.single-product .kh-version-picker__grid--count-4 .variation-card--windows-compact,
html body.single-product .kh-version-picker__grid--count-5 .variation-card--windows-compact {
    min-height: 126px !important;
    padding-right: 6px !important;
    padding-left: 6px !important;
}

html body.single-product .kh-version-picker__grid--count-4 .variation-card--windows-compact .current-price,
html body.single-product .kh-version-picker__grid--count-5 .variation-card--windows-compact .current-price {
    font-size: 16px !important;
}

html body.single-product .kh-version-picker__grid--count-4:has(.variation-card--windows-compact) {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

html body.single-product .kh-version-picker__grid--count-4:has(.variation-card--windows-compact) .variation-card--windows-compact {
    width: 100% !important;
    min-width: 0 !important;
}

html body.single-product .kh-version-picker__grid--count-4:has(.variation-card--windows-compact) .variation-title--windows-compact {
    font-size: 15px !important;
}

@media (min-width: 1200px) and (max-width: 1400px) {
    html body.single-product .kh-version-picker .variation-title--windows-compact {
        font-size: 16px !important;
    }

    html body.single-product .kh-version-picker .variation-card--windows-compact {
        min-height: 118px !important;
        padding-right: 8px !important;
        padding-left: 8px !important;
    }
}

@media (max-width: 640px) {
    html body.single-product .kh-version-picker .variation-title--windows-compact {
        font-size: 16px !important;
    }
}

/* Codex: premium downloads category intro badge. */
html body .kh-downloads-page .kh-dl-category-intro__badge {
    position: relative;
    width: min(100%, 360px);
    max-width: 360px;
    min-height: 118px;
    padding: 18px 22px 18px 116px;
    gap: 0;
    overflow: hidden;
    border: 0;
    border-radius: 22px;
    background:
        radial-gradient(circle at 16% 50%, rgba(47, 184, 255, .16), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,.92) 0%, rgba(244,248,255,.86) 100%);
    color: #17233d;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 850;
    letter-spacing: 0;
    box-shadow: 0 20px 54px rgba(37,75,145,.10);
}

html body .kh-downloads-page .kh-dl-category-intro__badge::before {
    content: "";
    position: absolute;
    left: 22px;
    top: 50%;
    width: 76px;
    height: 76px;
    border-radius: 22px;
    background: radial-gradient(circle, rgba(255,255,255,.78) 0%, rgba(255,255,255,0) 70%);
    box-shadow: none;
    transform: translateY(-50%);
}

html body .kh-downloads-page .kh-dl-category-intro__badge .kh-dl-icon,
html body .kh-downloads-page .kh-dl-category-intro__badge img {
    position: absolute;
    left: 30px;
    top: 50%;
    z-index: 1;
    width: 60px !important;
    height: 60px !important;
    max-width: 60px !important;
    max-height: 60px !important;
    object-fit: contain;
    filter: drop-shadow(0 7px 12px rgba(37,75,145,.14));
    transform: translateY(-50%);
}

html body .kh-downloads-page .kh-dl-category-intro__badge > .kh-dl-brand-visual {
    position: absolute !important;
    left: 22px !important;
    top: 50% !important;
    z-index: 1;
    width: 76px !important;
    height: 76px !important;
    min-width: 76px !important;
    min-height: 76px !important;
    max-width: 76px !important;
    max-height: 76px !important;
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 16px !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) !important;
}

html body .kh-downloads-page .kh-dl-category-intro__badge > .kh-dl-brand-visual img {
    position: static !important;
    transform: none !important;
}

html body .kh-downloads-page .kh-dl-category-intro__badge > span:not(.kh-dl-brand-visual) {
    position: relative;
    z-index: 1;
    display: block;
    max-width: 230px;
}

@media (max-width: 760px) {
    html body .kh-downloads-page .kh-dl-category-intro__badge {
        width: 100%;
        max-width: none;
        min-height: 104px;
        padding: 16px 18px 16px 104px;
        font-size: 15px;
    }

    html body .kh-downloads-page .kh-dl-category-intro__badge::before {
        left: 18px;
    }

    html body .kh-downloads-page .kh-dl-category-intro__badge .kh-dl-icon,
    html body .kh-downloads-page .kh-dl-category-intro__badge img {
        left: 26px;
    }

html body .kh-downloads-page .kh-dl-category-intro__badge > .kh-dl-brand-visual {
        left: 18px !important;
    }
}

/* Codex: visible SEO copy for downloads branch only. */
html body .kh-downloads-page .kh-dl-seo-copy {
    margin: 22px 0 0;
    padding: 26px 30px;
    border: 1px solid rgba(139,170,220,.28);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(255,255,255,.98) 0%, rgba(247,251,255,.92) 100%);
    box-shadow: 0 18px 44px rgba(37,75,145,.07);
}

html body .kh-downloads-page .kh-dl-seo-copy h2 {
    margin: 0 0 14px;
    color: #111827;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 850;
}

html body .kh-downloads-page .kh-dl-seo-copy p {
    max-width: 980px;
    margin: 0;
    color: #4d5b73;
    font-size: 15px;
    line-height: 1.65;
}

html body .kh-downloads-page .kh-dl-seo-copy p + p {
    margin-top: 10px;
}

@media (max-width: 760px) {
    html body .kh-downloads-page .kh-dl-seo-copy {
        padding: 22px;
    }

    html body .kh-downloads-page .kh-dl-seo-copy h2 {
        font-size: 20px;
    }
}

/* Codex: align compact desktop header actions on service pages. */
@media (min-width: 1361px) and (max-width: 1700px) {
    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container {
        grid-column: search / cart !important;
        grid-row: 1 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 280px) 44px 44px !important;
        align-items: center !important;
        column-gap: 8px !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-search.header-search {
        grid-column: 1 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        padding-right: 0 !important;
    }

    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-mobile-item {
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: grid !important;
        place-items: center !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-mobile-item:has(.header-customer-account) {
        grid-column: 2 !important;
    }

    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-mobile-item:has(.header-favorite) {
        grid-column: 3 !important;
    }

    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-mobile-item > a,
    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner > .site-header-cart.site-header-cart,
    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner > .site-header-cart.site-header-cart .header-cart__link {
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }
}

/* Codex: final homepage desktop header icon rail specificity lock. */
@media (min-width: 1361px) and (max-width: 1700px) {
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner,
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner.full {
        grid-template-columns: minmax(188px, 218px) minmax(0, 1fr) 44px 44px 44px 44px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        grid-column: 3 !important;
        grid-row: 1 !important;
        grid-area: search !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account {
        grid-column: 4 !important;
        grid-row: 1 !important;
        grid-area: account !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite {
        grid-column: 5 !important;
        grid-row: 1 !important;
        grid-area: favorite !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart {
        grid-column: 6 !important;
        grid-row: 1 !important;
        grid-area: cart !important;
    }
}

/* Codex: final mobile containment for single-product variation cards. */
@media (max-width: 767px) {
    html,
    body,
    html body.single-product {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    html body.single-product #page,
    html body.single-product #content.site-content,
    html body.single-product #content.site-content.fixed,
    html body.single-product .site-content-inner,
    html body.single-product #primary.content-area,
    html body.single-product #main.site-main,
    html body.single-product div.product,
    html body.single-product .product-container,
    html body.single-product .product-info,
    html body.single-product .woocommerce-product-form-wrap,
    html body.single-product .kh-product-dashboard,
    html body.single-product .variations-container,
    html body.single-product .features-grid,
    html body.single-product form.cart {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        overflow-x: clip !important;
    }

    html body.single-product .product-container,
    html body.single-product .woocommerce-product-form-wrap,
    html body.single-product .kh-product-dashboard {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
    }

    html body.single-product .kh-product-dashboard {
        padding: 14px !important;
        border-radius: 16px !important;
    }

    html body.single-product .variations-container {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        margin: 14px 0 16px !important;
    }

    html body.single-product .variation-card {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: 118px !important;
        padding: 14px 8px 12px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        overflow: hidden !important;
    }

    html body.single-product .variation-title,
    html body.single-product .variation-price,
    html body.single-product .variation-price span,
    html body.single-product .current-indicator {
        max-width: 100% !important;
        min-width: 0 !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        text-align: center !important;
    }

    html body.single-product .variation-title {
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 3 !important;
        overflow: hidden !important;
        font-size: clamp(13px, 3.6vw, 15px) !important;
        line-height: 1.12 !important;
        margin: 0 0 8px !important;
    }

    html body.single-product .variation-price {
        display: grid !important;
        gap: 1px !important;
        justify-items: center !important;
        font-size: clamp(17px, 4.5vw, 20px) !important;
        line-height: 1.08 !important;
        margin: 0 !important;
    }

    html body.single-product .variation-price .old-price {
        margin-left: 0 !important;
        font-size: .76em !important;
        line-height: 1 !important;
    }

    html body.single-product .current-indicator {
        margin-top: 6px !important;
        font-size: 11px !important;
        line-height: 1.1 !important;
    }

    html body.single-product .variation-badge {
        top: 6px !important;
        right: 7px !important;
        max-width: calc(100% - 14px) !important;
        padding: 2px 6px !important;
        font-size: 10px !important;
        line-height: 1.1 !important;
    }
}

@media (max-width: 374px) {
    html body.single-product .variations-container {
        grid-template-columns: 1fr !important;
    }
}

/* Codex: MacBook desktop header action row lock. */
@media (min-width: 1361px) and (max-width: 1700px) {
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        display: grid !important;
        grid-template-columns: minmax(188px, 218px) minmax(0, 1fr) minmax(210px, 280px) 44px 44px 44px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        grid-auto-rows: 44px !important;
        align-items: center !important;
        gap: 8px !important;
        min-height: 86px !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .site-branding.site-branding {
        grid-area: logo !important;
        align-self: center !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu.top-menu {
        grid-area: menu !important;
        align-self: center !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-mobile-items-container,
    html body:not(.is-mobile) header.site-header.site-header .header-mobile-item {
        display: contents !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        grid-area: search !important;
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: stretch !important;
        width: 100% !important;
        max-width: 280px !important;
        min-width: 0 !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search .search-form,
    html body:not(.is-mobile) header.site-header.site-header .header-search .search-field {
        width: 100% !important;
        max-width: none !important;
        height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account {
        grid-area: account !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite {
        grid-area: favorite !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart {
        grid-area: cart !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account,
    html body:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite,
    html body:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart,
    html body:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account > a,
    html body:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite > a,
    html body:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart .header-cart__link {
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: stretch !important;
        width: 100% !important;
        min-width: 210px !important;
        max-width: 280px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
    }
}

/* Codex: final homepage desktop header icon rail specificity lock. */
@media (min-width: 1361px) and (max-width: 1700px) {
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner,
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner.full {
        grid-template-columns: minmax(188px, 218px) minmax(0, 1fr) 44px 44px 44px 44px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        grid-column: 3 !important;
        grid-row: 1 !important;
        grid-area: search !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account {
        grid-column: 4 !important;
        grid-row: 1 !important;
        grid-area: account !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite {
        grid-column: 5 !important;
        grid-row: 1 !important;
        grid-area: favorite !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart {
        grid-column: 6 !important;
        grid-row: 1 !important;
        grid-area: cart !important;
    }
}

/* Codex: final override for compact Windows version grids on mobile. */
@media (max-width: 767px) {
    html body.single-product .kh-version-picker__grid--count-3,
    html body.single-product .kh-version-picker__grid--count-4,
    html body.single-product .kh-version-picker__grid--count-4:has(.variation-card--windows-compact) {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }
}

/* Codex: MacBook homepage header actions wrapper lock. */
@media (min-width: 1361px) and (max-width: 1700px) {
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner {
        display: grid !important;
        grid-template-columns: minmax(188px, 218px) minmax(0, 1fr) minmax(210px, 280px) 44px 44px 44px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        grid-auto-rows: 44px !important;
        align-items: center !important;
        gap: 8px !important;
        min-height: 86px !important;
        overflow: visible !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container {
        grid-column: search / cart !important;
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: stretch !important;
        display: grid !important;
        grid-template-columns: minmax(0, 280px) 44px 44px !important;
        align-items: center !important;
        column-gap: 8px !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: static !important;
        transform: none !important;
        overflow: visible !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-search.header-search {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: stretch !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: static !important;
        transform: none !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-mobile-item {
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: center !important;
        display: grid !important;
        place-items: center !important;
        width: 100% !important;
        min-width: 210px !important;
        max-width: 280px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: static !important;
        transform: none !important;
        overflow: visible !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-mobile-item:has(.header-customer-account) {
        grid-column: 2 !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-mobile-item:has(.header-favorite) {
        grid-column: 3 !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container .header-mobile-item > a,
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .site-header-cart.site-header-cart,
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .site-header-cart.site-header-cart .header-cart__link {
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .site-header-cart.site-header-cart {
        grid-area: cart !important;
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: center !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-search.header-search {
        grid-area: search !important;
        grid-row: 1 !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-item {
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: center !important;
        display: grid !important;
        place-items: center !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        transform: none !important;
        overflow: visible !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-item:has(.header-customer-account) {
        grid-area: account !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-item:has(.header-favorite) {
        grid-area: favorite !important;
    }

    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-item > .header-customer-account,
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-item > .header-favorite {
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        transform: none !important;
    }
}

/* Codex: final desktop header icon rail for 1361-1700px. */
@media (min-width: 1361px) and (max-width: 1700px) {
    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner,
    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner,
    html body:not(.is-mobile):not(.single-product) header.site-header.site-header .site-header-inner.site-header-inner.full,
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner,
    html body.home:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner.full {
        display: grid !important;
        grid-template-columns: minmax(188px, 218px) minmax(0, 1fr) minmax(210px, 280px) 44px 44px 44px !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        grid-auto-rows: 44px !important;
        align-items: center !important;
        column-gap: 8px !important;
        row-gap: 0 !important;
        min-height: 86px !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .site-branding.site-branding {
        grid-area: logo !important;
        align-self: center !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .top-menu.top-menu {
        grid-area: menu !important;
        align-self: center !important;
        min-width: 0 !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-items-container {
        grid-column: search / cart !important;
        grid-row: 1 !important;
        display: grid !important;
        grid-template-columns: minmax(210px, 280px) 44px 44px !important;
        align-items: center !important;
        justify-content: end !important;
        column-gap: 8px !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: static !important;
        transform: none !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search.header-search {
        grid-area: search !important;
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: stretch !important;
        width: 100% !important;
        min-width: 210px !important;
        max-width: 280px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: block !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search .search-form {
        width: 100% !important;
        min-width: 210px !important;
        max-width: 280px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 44px !important;
        grid-template-rows: 44px !important;
        place-items: center !important;
        position: relative !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search .search-field {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 44px !important;
        padding: 0 10px 0 14px !important;
        border: 0 !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-search .search-submit {
        grid-column: 2 !important;
        grid-row: 1 !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        inset: auto !important;
        float: none !important;
        translate: none !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account {
        grid-area: account !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite {
        grid-area: favorite !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart {
        grid-area: cart !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .site-header-inner.site-header-inner > .header-mobile-item {
        display: grid !important;
        place-items: center !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        transform: none !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account,
    html body:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite,
    html body:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart,
    html body:not(.is-mobile) header.site-header.site-header .header-customer-account.header-customer-account > a,
    html body:not(.is-mobile) header.site-header.site-header .header-favorite.header-favorite > a,
    html body:not(.is-mobile) header.site-header.site-header .site-header-cart.site-header-cart .header-cart__link {
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: center !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
    }
}
/* Codex: mobile cart drawer must keep checkout entry reachable. */
@media (max-width: 767px) {
    html body .site-header-cart-hidden {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        min-height: 100vh !important;
        min-height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        overflow: hidden !important;
        z-index: 2147483647 !important;
        box-sizing: border-box !important;
    }

    html body .site-header-cart-hidden .header-cart__title {
        min-height: calc(56px + env(safe-area-inset-top, 0px)) !important;
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: env(safe-area-inset-top, 0px) 58px 0 18px !important;
        border-bottom: 1px solid #e7edf6 !important;
        background: #fff !important;
        color: #2563eb !important;
        font-size: 17px !important;
        font-weight: 850 !important;
        line-height: 1.2 !important;
        box-shadow: 0 8px 20px rgba(18, 35, 68, .08) !important;
        box-sizing: border-box !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart__close {
        position: absolute !important;
        top: calc(16px + env(safe-area-inset-top, 0px)) !important;
        right: 18px !important;
        z-index: 3 !important;
    }

    html body .site-header-cart-hidden .widget_shopping_cart_content {
        height: calc(100vh - 56px - env(safe-area-inset-top, 0px)) !important;
        height: calc(100dvh - 56px - env(safe-area-inset-top, 0px)) !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        padding: 14px 16px calc(14px + env(safe-area-inset-bottom, 0px)) !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 2px 0 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart-item {
        position: relative !important;
        min-height: 78px !important;
        display: grid !important;
        grid-template-columns: 46px minmax(0, 1fr) 34px !important;
        grid-template-rows: auto auto !important;
        column-gap: 10px !important;
        row-gap: 4px !important;
        align-items: start !important;
        margin: 0 !important;
        padding: 0 0 12px !important;
        border-bottom: 0 !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart-item > a:not(.remove),
    html body .site-header-cart-hidden .woocommerce-mini-cart-item > span:not(.quantity) {
        grid-column: 1 / 3 !important;
        grid-row: 1 !important;
        min-width: 0 !important;
        display: grid !important;
        grid-template-columns: 46px minmax(0, 1fr) !important;
        column-gap: 10px !important;
        align-items: start !important;
        margin: 0 !important;
        color: #2563eb !important;
        font-size: 12px !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        text-decoration: none !important;
        overflow-wrap: anywhere !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart-item > a:not(.remove) img,
    html body .site-header-cart-hidden .woocommerce-mini-cart-item > span:not(.quantity) img {
        grid-column: 1 !important;
        float: none !important;
        width: 40px !important;
        height: 40px !important;
        margin: 0 !important;
        object-fit: contain !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart-item .quantity {
        grid-column: 2 !important;
        grid-row: 2 !important;
        position: static !important;
        align-self: start !important;
        justify-self: start !important;
        margin: 0 !important;
        color: #6b7280 !important;
        font-size: 12px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        text-align: left !important;
        white-space: nowrap !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
        color: #374151 !important;
        font-size: 12px !important;
        font-weight: 800 !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button {
        grid-column: 3 !important;
        grid-row: 1 / span 2 !important;
        position: static !important;
        align-self: center !important;
        justify-self: end !important;
        width: 30px !important;
        height: 30px !important;
        transform: none !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:hover,
    html body .site-header-cart-hidden .woocommerce-mini-cart-item .remove.remove_from_cart_button:focus {
        transform: scale(1.04) !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart__total {
        flex: 0 0 auto !important;
        margin: 12px 0 0 !important;
        padding: 12px 0 0 !important;
        border-top: 1px solid #e7edf6 !important;
        background: #fff !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons {
        flex: 0 0 auto !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        margin: 12px 0 0 !important;
        padding: 0 !important;
        background: #fff !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons .button {
        min-height: 48px !important;
        border-radius: 12px !important;
        font-size: 14px !important;
    }

    html body .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons .button.checkout,
    html body .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons .button.wc-forward:not(.checkout) {
        grid-column: 1 !important;
        grid-row: auto !important;
    }
}
/* Codex: align the single-article sidebar with the article hero. The theme's
 * overflow container prevents viewport sticking and turns the sticky top
 * inset into visible empty space at the top of the sidebar. */
@media (min-width: 1101px) {
    html body.single-post .kh-single-article-sidebar {
        position: static;
        top: auto;
        align-self: start;
    }
}
/* Codex: final desktop rhythm for every single-product page.
 * Keep gallery, product dashboard, and sidebar on one top line and use the
 * same gutter between all three columns. */
@media (min-width: 1200px) {
    html body.single-product #main.site-main > div.product {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    html body.single-product #main.site-main div.product > .product-container {
        width: 100% !important;
        max-width: none !important;
        row-gap: 0 !important;
    }

    html body.single-product #main.site-main div.product > .product-container > .product-images,
    html body.single-product #main.site-main div.product > .product-container > .product-info {
        grid-row: 1 !important;
    }

    html body.single-product #main.site-main div.product > .product-container > .product-info,
    html body.single-product #main.site-main div.product > .product-container > .product-info .woocommerce-product-form-wrap.kh-product-dashboard,
    html body.single-product #main.site-main div.product > .product-container > .product-info .kh-product-dashboard {
        width: 100% !important;
        max-width: none !important;
    }

    html body.single-product #content.site-content .site-content-inner > #secondary.widget-area--desktop {
        padding-top: 41px !important;
    }
}

@media (min-width: 1200px) and (max-width: 1400px) {
    html body.single-product #main.site-main div.product > .product-container {
        grid-template-columns: 290px minmax(0, 1fr) !important;
        column-gap: 20px !important;
    }
}

@media (min-width: 1401px) {
    html body.single-product #main.site-main div.product > .product-container {
        grid-template-columns: 340px minmax(0, 1fr) !important;
        column-gap: 24px !important;
    }
}
/* Codex: conversion-focused mini-cart drawer (variant 3). */
html body .site-header-cart-hidden {
    width: min(460px, 100vw) !important;
    max-width: 460px !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid #dce7f5 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: -24px 0 70px rgba(18, 35, 68, .18) !important;
}

html body .site-header-cart-hidden .header-cart__title {
    min-height: 64px !important;
    margin: 0 !important;
    padding: 0 64px 0 24px !important;
    border-bottom: 1px solid #e7edf6 !important;
    background: #fff !important;
    color: #111827 !important;
    font-size: 20px !important;
    font-weight: 900 !important;
}

html body .site-header-cart-hidden .widget_shopping_cart_content {
    height: calc(100vh - 64px) !important;
    height: calc(100dvh - 64px) !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 18px 24px 22px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

html body .site-header-cart-hidden ul.woocommerce-mini-cart.cart_list {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: grid !important;
    align-content: start !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 0 3px 16px 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    scrollbar-width: thin;
    scrollbar-color: #cbd8eb transparent;
}

html body .site-header-cart-hidden li.kh-mini-cart-item {
    width: 100% !important;
    min-height: 0 !important;
    display: block !important;
    margin: 0 !important;
    padding: 16px !important;
    border: 1px solid #dce8f7 !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, #fbfdff 0%, #f5f9ff 100%) !important;
    box-shadow: 0 10px 26px rgba(18, 35, 68, .06) !important;
    box-sizing: border-box !important;
    transition: opacity .2s ease, border-color .2s ease !important;
}

html body .site-header-cart-hidden li.kh-mini-cart-item.is-updating {
    opacity: .58 !important;
    pointer-events: none !important;
}

html body .site-header-cart-hidden .kh-mini-cart-product {
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 7px 12px !important;
    align-items: start !important;
}

html body .site-header-cart-hidden .kh-mini-cart-product__main {
    grid-column: 1 / -1 !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: center !important;
    margin: 0 !important;
    color: #172033 !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
}

html body .site-header-cart-hidden .kh-mini-cart-product__main img {
    float: none !important;
    width: 64px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 6px !important;
    border: 1px solid #dce8f7 !important;
    border-radius: 12px !important;
    background: #fff !important;
    object-fit: contain !important;
    box-sizing: border-box !important;
}

html body .site-header-cart-hidden .kh-mini-cart-product__unit-price {
    grid-column: 2 !important;
    justify-self: end !important;
    color: #2563eb !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

html body .site-header-cart-hidden .kh-mini-cart-controls {
    display: grid !important;
    grid-template-columns: auto minmax(76px, 1fr) auto !important;
    gap: 12px !important;
    align-items: center !important;
    margin-top: 14px !important;
    padding-top: 14px !important;
    border-top: 1px solid #e1e9f5 !important;
}

html body .site-header-cart-hidden .kh-mini-cart-quantity {
    display: grid !important;
    grid-template-columns: 44px 48px 44px !important;
    min-height: 44px !important;
    overflow: hidden !important;
    border: 1px solid #cbdcff !important;
    border-radius: 12px !important;
    background: #fff !important;
}

html body .site-header-cart-hidden .kh-mini-cart-quantity__button,
html body .site-header-cart-hidden .kh-mini-cart-quantity__value {
    min-width: 0 !important;
    min-height: 44px !important;
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #172033 !important;
    font: inherit !important;
    font-size: 18px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

html body .site-header-cart-hidden .kh-mini-cart-quantity__button {
    cursor: pointer !important;
    touch-action: manipulation !important;
    transition: background .18s ease, color .18s ease !important;
}

html body .site-header-cart-hidden .kh-mini-cart-quantity__button:hover:not(:disabled),
html body .site-header-cart-hidden .kh-mini-cart-quantity__button:focus-visible {
    background: #eef5ff !important;
    color: #2563eb !important;
}

html body .site-header-cart-hidden .kh-mini-cart-quantity__button:disabled {
    color: #b6c0cf !important;
    cursor: not-allowed !important;
}

html body .site-header-cart-hidden .kh-mini-cart-quantity__value {
    border-right: 1px solid #e1e9f5 !important;
    border-left: 1px solid #e1e9f5 !important;
    font-size: 15px !important;
}

html body .site-header-cart-hidden .kh-mini-cart-product__subtotal {
    justify-self: end !important;
    color: #111827 !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

html body .site-header-cart-hidden a.kh-mini-cart-remove.remove_from_cart_button {
    position: static !important;
    width: auto !important;
    min-width: 44px !important;
    height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 0 8px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: #738096 !important;
    font-size: 0 !important;
    text-decoration: none !important;
    transform: none !important;
}

html body .site-header-cart-hidden a.kh-mini-cart-remove::before {
    content: "" !important;
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    background: currentColor !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 6h18M8 6V4h8v2m3 0-1 14H6L5 6m5 5v5m4-5v5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

html body .site-header-cart-hidden a.kh-mini-cart-remove:hover,
html body .site-header-cart-hidden a.kh-mini-cart-remove:focus-visible {
    background: #fff1f2 !important;
    color: #dc2626 !important;
}

html body .site-header-cart-hidden li.kh-mini-cart-benefits {
    width: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #d9e7fa !important;
    border-radius: 16px !important;
    background: #f4f8ff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

html body .site-header-cart-hidden .kh-mini-cart-benefits__details > summary {
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 16px !important;
    color: #172033 !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    cursor: pointer !important;
    list-style: none !important;
}

html body .site-header-cart-hidden .kh-mini-cart-benefits__details > summary::-webkit-details-marker {
    display: none !important;
}

html body .site-header-cart-hidden .kh-mini-cart-benefits__details > summary::after {
    content: "⌄" !important;
    color: #6b7a90 !important;
    font-size: 17px !important;
    transition: transform .2s ease !important;
}

html body .site-header-cart-hidden .kh-mini-cart-benefits__details[open] > summary::after {
    transform: rotate(180deg) !important;
}

html body .site-header-cart-hidden .kh-mini-cart-benefits__grid {
    display: grid !important;
    gap: 0 !important;
    padding: 0 10px 10px !important;
}

html body .site-header-cart-hidden .kh-mini-cart-benefits__grid > span {
    min-height: 58px !important;
    display: grid !important;
    grid-template-columns: 32px minmax(0, 1fr) !important;
    gap: 2px 10px !important;
    align-items: center !important;
    padding: 9px 10px !important;
    border: 0 !important;
    border-top: 1px solid #e4ecf8 !important;
    border-radius: 0 !important;
    background: rgba(255, 255, 255, .72) !important;
}

html body .site-header-cart-hidden .kh-mini-cart-benefits__grid > span:first-child {
    border-radius: 11px 11px 0 0 !important;
}

html body .site-header-cart-hidden .kh-mini-cart-benefits__grid > span:last-child {
    border-radius: 0 0 11px 11px !important;
}

html body .site-header-cart-hidden .kh-mini-cart-benefits__grid i {
    grid-row: 1 / span 2 !important;
    width: 30px !important;
    height: 30px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, #7567ff, #35c7ff) !important;
}

html body .site-header-cart-hidden .woocommerce-mini-cart__total {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    margin: 0 !important;
    padding: 18px 0 12px !important;
    border-top: 1px solid #dfe8f4 !important;
    background: #fff !important;
    color: #111827 !important;
    font-size: 19px !important;
    font-weight: 900 !important;
}

html body .site-header-cart-hidden .woocommerce-mini-cart__total .woocommerce-Price-amount {
    font-size: 20px !important;
    font-weight: 950 !important;
}

html body .site-header-cart-hidden .woocommerce-mini-cart__buttons.buttons {
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
}

html body .site-header-cart-hidden .woocommerce-mini-cart__buttons .button {
    width: 100% !important;
    min-height: 50px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    border-radius: 12px !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

html body .site-header-cart-hidden .woocommerce-mini-cart__buttons .checkout {
    border: 0 !important;
    background: linear-gradient(135deg, #7567ff 0%, #22c5ee 100%) !important;
    color: #fff !important;
    box-shadow: 0 12px 26px rgba(70, 118, 255, .25) !important;
}

html body .site-header-cart-hidden .woocommerce-mini-cart__buttons .kh-mini-cart-continue {
    border: 1px solid #bfd3f5 !important;
    background: #fff !important;
    color: #2563eb !important;
    box-shadow: none !important;
}

@media (max-width: 767px) {
    html body .site-header-cart-hidden {
        width: 100vw !important;
        max-width: 100vw !important;
    }

    html body .site-header-cart-hidden .widget_shopping_cart_content {
        padding: 14px 16px calc(14px + env(safe-area-inset-bottom, 0px)) !important;
    }

    html body .site-header-cart-hidden li.kh-mini-cart-item {
        padding: 13px !important;
    }

    html body .site-header-cart-hidden .kh-mini-cart-controls {
        grid-template-columns: auto 1fr 44px !important;
        gap: 8px !important;
    }

    html body .site-header-cart-hidden .kh-mini-cart-quantity {
        grid-template-columns: 42px 42px 42px !important;
    }

    html body .site-header-cart-hidden .kh-mini-cart-product__subtotal {
        font-size: 14px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html body .site-header-cart-hidden *,
    html body .site-header-cart-hidden *::before,
    html body .site-header-cart-hidden *::after {
        transition-duration: .01ms !important;
    }
}
/* Codex: specificity lock for mini-cart v3 against legacy desktop/mobile cart rules. */
html body .site-header-cart-hidden:has(#kh-mini-cart-v3) {
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: min(460px, 100vw) !important;
    max-width: 460px !important;
    height: 100vh !important;
    height: 100dvh !important;
}

html body .site-header-cart-hidden .widget_shopping_cart_content:has(#kh-mini-cart-v3) {
    width: 100% !important;
    max-width: none !important;
    height: calc(100dvh - 64px) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 18px 24px 22px !important;
    overflow: hidden !important;
}

html body .site-header-cart-hidden ul#kh-mini-cart-v3.woocommerce-mini-cart.cart_list {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: grid !important;
    align-content: start !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 0 3px 16px 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

html body .site-header-cart-hidden ul#kh-mini-cart-v3 li.woocommerce-mini-cart-item.kh-mini-cart-item {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    display: block !important;
    margin: 0 !important;
    padding: 16px !important;
    border: 1px solid #dce8f7 !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, #fbfdff 0%, #f5f9ff 100%) !important;
    box-sizing: border-box !important;
}

html body .site-header-cart-hidden ul#kh-mini-cart-v3 .kh-mini-cart-product {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
}

html body .site-header-cart-hidden ul#kh-mini-cart-v3 .kh-mini-cart-controls {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: auto minmax(72px, 1fr) 44px !important;
    gap: 10px !important;
    align-items: center !important;
    margin: 14px 0 0 !important;
    padding: 14px 0 0 !important;
    border-top: 1px solid #e1e9f5 !important;
    box-sizing: border-box !important;
}

html body .site-header-cart-hidden ul#kh-mini-cart-v3 .kh-mini-cart-quantity {
    width: 138px !important;
    min-width: 138px !important;
    display: grid !important;
    grid-template-columns: 44px 48px 44px !important;
}

html body .site-header-cart-hidden ul#kh-mini-cart-v3 .kh-mini-cart-product__subtotal {
    position: static !important;
    justify-self: end !important;
    max-width: 100% !important;
}

html body .site-header-cart-hidden ul#kh-mini-cart-v3 a.kh-mini-cart-remove.remove_from_cart_button {
    grid-column: 3 !important;
    grid-row: 1 !important;
    position: static !important;
    justify-self: end !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
}

html body .site-header-cart-hidden ul#kh-mini-cart-v3 li.kh-mini-cart-benefits {
    width: 100% !important;
    min-height: 0 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #d9e7fa !important;
    border-radius: 16px !important;
    background: #f4f8ff !important;
}

html body .site-header-cart-hidden p#kh-mini-cart-v3-total.woocommerce-mini-cart__total {
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 18px 0 12px !important;
}

html body .site-header-cart-hidden p#kh-mini-cart-v3-buttons.woocommerce-mini-cart__buttons.buttons {
    flex: 0 0 auto !important;
    width: 100% !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body .site-header-cart-hidden p#kh-mini-cart-v3-buttons .button {
    grid-column: 1 !important;
    width: 100% !important;
    min-height: 50px !important;
    margin: 0 !important;
}

@media (max-width: 500px) {
    html body .site-header-cart-hidden:has(#kh-mini-cart-v3) {
        width: 100vw !important;
        max-width: 100vw !important;
    }

    html body .site-header-cart-hidden .widget_shopping_cart_content:has(#kh-mini-cart-v3) {
        padding: 14px 16px calc(14px + env(safe-area-inset-bottom, 0px)) !important;
    }

    html body .site-header-cart-hidden ul#kh-mini-cart-v3 li.woocommerce-mini-cart-item.kh-mini-cart-item {
        padding: 14px !important;
    }

    html body .site-header-cart-hidden ul#kh-mini-cart-v3 .kh-mini-cart-controls {
        grid-template-columns: 126px minmax(64px, 1fr) 44px !important;
        gap: 8px !important;
    }

    html body .site-header-cart-hidden ul#kh-mini-cart-v3 .kh-mini-cart-quantity {
        width: 126px !important;
        min-width: 126px !important;
        grid-template-columns: 42px 42px 42px !important;
    }
}

/* Unified in-cart state for home popular and recently viewed product cards. */
html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.kh-loop-is-in-cart,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart.kh-loop-is-in-cart {
    color: #fff !important;
    background: linear-gradient(135deg, #25bd49 0%, #159b34 100%) !important;
    border-color: #159b34 !important;
    box-shadow: 0 8px 20px rgba(21, 155, 52, .22) !important;
    cursor: pointer;
}

html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.kh-loop-is-in-cart:hover,
html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth a.kh-loop-is-in-cart:focus-visible,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart.kh-loop-is-in-cart:hover,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart.kh-loop-is-in-cart:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, #1daa3f 0%, #128c2d 100%) !important;
    border-color: #128c2d !important;
    box-shadow: 0 10px 24px rgba(18, 140, 45, .28) !important;
}

html body.home .shop-item .shop-item__actions .shop-item__add-to-cart-fullwidth > .added_to_cart,
html body.single-product .kh-single-recently-viewed .added_to_cart {
    display: none !important;
}

/* Recently viewed: preserve the blue CTA on hover until the item is added. */
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart:not(.kh-loop-is-in-cart):hover,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart:not(.kh-loop-is-in-cart):focus,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart:not(.kh-loop-is-in-cart):focus-visible {
    display: inline-flex !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background-color: #22b7f3 !important;
    background-image: linear-gradient(135deg, #6656f4 0%, #22b7f3 100%) !important;
    border: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .3) !important;
}

html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart:not(.kh-loop-is-in-cart):hover::before,
html body.single-product .kh-single-recently-viewed a.kh-single-product-card__cart:not(.kh-loop-is-in-cart):hover::after {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Product page: keep the confirmed cart state green after all legacy rules. */
html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart,
html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart.button,
html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart.alt {
    color: #fff !important;
    background: linear-gradient(135deg, #25bd49 0%, #159b34 100%) !important;
    border-color: #159b34 !important;
    box-shadow: 0 10px 24px rgba(21, 155, 52, .24) !important;
}

html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart:hover,
html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, #1daa3f 0%, #128c2d 100%) !important;
    border-color: #128c2d !important;
    box-shadow: 0 12px 28px rgba(18, 140, 45, .3) !important;
}

html body.single-product .product-info form.cart button.single_add_to_cart_button.kh-is-in-cart:focus-visible {
    outline: 3px solid rgba(24, 169, 54, .28) !important;
    outline-offset: 3px;
}

/* Recommendation block — must remain last to override legacy sidebar rules. */
html body.single-product .kh-sidebar-recommendations-widget,
html body.single-post .kh-single-side-card.kh-single-products {
    box-sizing: border-box !important;
    padding: 16px !important;
    border: 1px solid #e6ebf4 !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(30, 64, 120, .055) !important;
}

html body.single-product .kh-sidebar-recommendations__head,
html body.single-post .kh-single-products h2 {
    margin-bottom: 16px !important;
}

html body.single-product .kh-sidebar-recommendations__list,
html body.single-post .kh-single-products-list {
    gap: 8px !important;
}

html body.single-product .kh-sidebar-product[style],
html body.single-post .kh-single-product[style] {
    grid-template-columns: minmax(102px, 40%) minmax(0, 1fr) 44px !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 142px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid #e7edf7 !important;
    border-radius: 16px !important;
    background: #fff !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb,
html body.single-post .kh-single-product[style] .kh-single-product__image {
    position: relative !important;
    z-index: 0 !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 140px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 15px 0 0 15px !important;
    background: linear-gradient(145deg, var(--kh-rec-bg-start), var(--kh-rec-bg-end)) !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb::before,
html body.single-post .kh-single-product[style] .kh-single-product__image::before {
    width: 116px !important;
    height: 116px !important;
    left: -31px !important;
    bottom: -29px !important;
    background: var(--kh-rec-orb) !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb img,
html body.single-post .kh-single-product[style] .kh-single-product__image img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 132px !important;
    max-height: 132px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    transform: scale(1.12) !important;
    filter: drop-shadow(0 8px 9px rgba(32, 55, 92, .14)) !important;
}

html body.single-product .kh-sidebar-product[style]:hover .kh-sidebar-product__thumb img,
html body.single-post .kh-single-product[style]:hover .kh-single-product__image img {
    transform: scale(1.15) !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__body,
html body.single-post .kh-single-product[style] .kh-single-product__body {
    align-self: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 14px !important;
    min-width: 0 !important;
    padding: 10px 0 10px 4px !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__title,
html body.single-post .kh-single-product[style] .kh-single-product__title {
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.27 !important;
    -webkit-line-clamp: 4 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__price,
html body.single-post .kh-single-product[style] .kh-single-product__price {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 3px !important;
    color: #0865f5 !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__price del,
html body.single-post .kh-single-product[style] .kh-single-product__price del {
    display: block !important;
    color: #9aa4b2 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__price ins,
html body.single-post .kh-single-product[style] .kh-single-product__price ins {
    display: block !important;
    color: #0865f5 !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__action {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    margin-right: 10px !important;
}

html body.single-product .kh-sidebar-recommendations__more,
html body.single-post .kh-single-products-more {
    min-height: 50px !important;
    margin-top: 10px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: #f3f7ff !important;
    color: #15325f !important;
    box-shadow: none !important;
}

@media (max-width: 360px) {
    html body.single-product .kh-sidebar-product[style],
    html body.single-post .kh-single-product[style] {
        grid-template-columns: 86px minmax(0, 1fr) 42px !important;
        min-height: 134px !important;
        padding: 0 !important;
    }

    html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb,
    html body.single-post .kh-single-product[style] .kh-single-product__image {
        min-height: 132px !important;
    }
}

/* Approved recommendation block — compact reference match. Keep this last. */
html body.single-product .kh-sidebar-recommendations-widget,
html body.single-post .kh-single-side-card.kh-single-products {
    --kh-rec-primary: #0668f7;
    --kh-rec-text: #111827;
    --kh-rec-price: #111827;
    --kh-rec-muted: #9aa4b2;
    --kh-rec-border: #e9eef7;
    --kh-rec-footer: #f3f7ff;
    box-sizing: border-box !important;
    padding: 12px !important;
    border: 1px solid #edf1f7 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(30, 64, 120, .035) !important;
}

html body.single-product .kh-sidebar-recommendations__head,
html body.single-post .kh-single-products h2 {
    min-height: 28px !important;
    margin: 0 0 10px !important;
    padding: 0 4px !important;
    border: 0 !important;
}

html body.single-product .kh-sidebar-recommendations__head h3,
html body.single-post .kh-single-products h2 {
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

html body.single-product .kh-sidebar-recommendations__head span,
html body.single-post .kh-single-products h2::after {
    font-size: 10px !important;
    font-weight: 500 !important;
}

html body.single-product .kh-sidebar-recommendations__list,
html body.single-post .kh-single-products-list {
    display: grid !important;
    gap: 6px !important;
}

html body.single-product .kh-sidebar-product[style],
html body.single-post .kh-single-product[style] {
    position: relative !important;
    isolation: isolate !important;
    display: grid !important;
    grid-template-columns: minmax(92px, 35%) minmax(0, 1fr) 34px !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    height: 116px !important;
    min-height: 116px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--kh-rec-border) !important;
    border-radius: 15px !important;
    background: #fff !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product[style]::before,
html body.single-post .kh-single-product[style]::before {
    content: "" !important;
    position: absolute !important;
    z-index: -1 !important;
    inset: 0 !important;
    pointer-events: none !important;
    background:
        radial-gradient(110px 106px at 12% 78%, var(--kh-rec-orb) 0%, transparent 72%),
        linear-gradient(90deg, var(--kh-rec-bg-start) 0%, var(--kh-rec-bg-end) 32%, rgba(255, 255, 255, 0) 54%) !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb,
html body.single-post .kh-single-product[style] .kh-single-product__image {
    position: relative !important;
    z-index: 1 !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 114px !important;
    min-height: 114px !important;
    margin: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb::before,
html body.single-post .kh-single-product[style] .kh-single-product__image::before {
    display: none !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb img,
html body.single-post .kh-single-product[style] .kh-single-product__image img {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 106px !important;
    max-height: 106px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    transform: scale(1.08) !important;
    filter: drop-shadow(0 6px 7px rgba(32, 55, 92, .13)) !important;
}

html body.single-product .kh-sidebar-product[style]:hover .kh-sidebar-product__thumb img,
html body.single-post .kh-single-product[style]:hover .kh-single-product__image img {
    transform: scale(1.11) !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__body,
html body.single-post .kh-single-product[style] .kh-single-product__body {
    position: relative !important;
    z-index: 1 !important;
    align-self: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 10px !important;
    min-width: 0 !important;
    padding: 8px 0 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__title,
html body.single-post .kh-single-product[style] .kh-single-product__title {
    display: -webkit-box !important;
    margin: 0 !important;
    overflow: hidden !important;
    color: var(--kh-rec-text) !important;
    font-size: 12.5px !important;
    font-weight: 750 !important;
    line-height: 1.22 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__price,
html body.single-post .kh-single-product[style] .kh-single-product__price {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
    color: var(--kh-rec-price) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    font-variant-numeric: tabular-nums;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__price del,
html body.single-post .kh-single-product[style] .kh-single-product__price del {
    display: block !important;
    color: var(--kh-rec-muted) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__price ins,
html body.single-post .kh-single-product[style] .kh-single-product__price ins {
    display: block !important;
    color: var(--kh-rec-price) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__action {
    position: relative !important;
    z-index: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: end !important;
    justify-self: end !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    margin: 0 8px 12px 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #f1f5fc !important;
    color: var(--kh-rec-primary) !important;
    font-size: 0 !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__action::before {
    content: "" !important;
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    background: center / 14px 14px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230668f7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m13 6 6 6-6 6'/%3E%3C/svg%3E") !important;
}

html body.single-post .kh-single-product[style]::after {
    content: "" !important;
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    align-self: end !important;
    justify-self: end !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    margin: 0 8px 12px 0 !important;
    border-radius: 50% !important;
    background: #f1f5fc center / 14px 14px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230668f7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m13 6 6 6-6 6'/%3E%3C/svg%3E") !important;
    color: transparent !important;
}

html body.single-product .kh-sidebar-product[style]:hover .kh-sidebar-product__action,
html body.single-product .kh-sidebar-product[style]:focus-visible .kh-sidebar-product__action,
html body.single-post .kh-single-product[style]:hover::after,
html body.single-post .kh-single-product[style]:focus-visible::after {
    transform: none !important;
    background-color: #eaf1fc !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-recommendations__more,
html body.single-post .kh-single-products-more {
    min-height: 40px !important;
    margin-top: 8px !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: var(--kh-rec-footer) !important;
    color: #15325f !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

html body.single-product .kh-sidebar-product[style]:hover,
html body.single-product .kh-sidebar-product[style]:focus-visible,
html body.single-post .kh-single-product[style]:hover,
html body.single-post .kh-single-product[style]:focus-visible {
    transform: translateY(-1px) !important;
    border-color: #d6e1f1 !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(30, 64, 120, .065) !important;
}

@media (max-width: 360px) {
    html body.single-product .kh-sidebar-recommendations-widget,
    html body.single-post .kh-single-side-card.kh-single-products {
        padding: 10px !important;
    }

    html body.single-product .kh-sidebar-product[style],
    html body.single-post .kh-single-product[style] {
        grid-template-columns: 84px minmax(0, 1fr) 34px !important;
        gap: 7px !important;
        height: 108px !important;
        min-height: 108px !important;
    }

    html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb,
    html body.single-post .kh-single-product[style] .kh-single-product__image {
        height: 106px !important;
        min-height: 106px !important;
    }

    html body.single-product .kh-sidebar-product[style] .kh-sidebar-product__thumb img,
    html body.single-post .kh-single-product[style] .kh-single-product__image img {
        height: 100px !important;
        max-height: 100px !important;
    }
}

/* Mobile product tabs: one compact horizontal rail instead of a tall vertical stack. */
@media (max-width: 768px) {
    html body.single-product .woocommerce-tabs .wc-tabs {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        min-height: 0 !important;
        padding: 0 0 10px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    html body.single-product .woocommerce-tabs .wc-tabs::-webkit-scrollbar {
        display: none;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        scroll-snap-align: start;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li > a {
        height: 52px !important;
        min-height: 52px !important;
        gap: 8px !important;
        padding: 0 10px !important;
        font-size: 14px !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li > a::before {
        flex-basis: 24px !important;
        width: 24px !important;
        height: 24px !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active {
        width: max-content !important;
        min-width: 174px !important;
        max-width: 260px !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active > a {
        width: max-content !important;
        min-width: 174px !important;
        max-width: 260px !important;
        height: 56px !important;
        min-height: 56px !important;
        padding: 28px 12px 6px 54px !important;
        font-size: 15px !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active > a::before {
        left: 18px !important;
        top: 12px !important;
        width: 29px !important;
        height: 32px !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active > a::after {
        top: 9px !important;
        left: 54px !important;
        font-size: 9px !important;
    }

    html body.single-product .woocommerce-tabs .wc-tabs > li.active::after {
        width: 2px !important;
    }
}
/* Key-Hub home hero showcase — static composition before motion pass. */
.home #kh-main-hero.kh-main-hero-showcase,
#kh-main-hero.kh-main-hero-showcase {
    --kh-hero-ink: #071b49;
    --kh-hero-copy: #304c86;
    --kh-hero-blue: #0959f7;
    --kh-hero-blue-bright: #1295ff;
    --kh-hero-line: rgba(112, 151, 221, .22);
    --kh-hero-glass: rgba(255, 255, 255, .7);
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: min(1600px, calc(100% - 20px));
    aspect-ratio: 2.04 / 1;
    min-height: 620px;
    max-height: 784px;
    margin: 14px auto 34px;
    border: 1px solid rgba(255, 255, 255, .92);
    border-radius: 0;
    background: #f2f7ff;
    box-shadow: 0 30px 80px rgba(40, 85, 156, .13);
    color: var(--kh-hero-ink);
    font-family: var(--kh-ui-font, "Montserrat", sans-serif);
}

.kh-main-hero-showcase *,
.kh-main-hero-showcase *::before,
.kh-main-hero-showcase *::after {
    box-sizing: border-box;
}

.kh-main-hero-showcase__background {
    position: absolute;
    inset: 0;
    z-index: -3;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.kh-main-hero-showcase::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(255, 255, 255, .2) 0%, rgba(255, 255, 255, .08) 38%, transparent 62%);
}

.kh-main-hero-showcase__copy {
    position: absolute;
    z-index: 10;
    top: 8.4%;
    left: 5.6%;
    width: 43.5%;
}

.kh-main-hero-showcase__eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 46px;
    padding: 0 17px;
    gap: 10px;
    border: 1px solid rgba(255, 255, 255, .9);
    border-radius: 18px;
    color: var(--kh-hero-blue);
    background: rgba(255, 255, 255, .73);
    box-shadow: 0 12px 30px rgba(46, 93, 170, .09), inset 0 1px 0 #fff;
    backdrop-filter: blur(12px);
    font-size: clamp(12px, .95vw, 16px);
    font-weight: 750;
    line-height: 1;
}

.kh-main-hero-showcase__eyebrow svg {
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

#kh-main-hero.kh-main-hero-showcase h1 {
    max-width: 690px;
    margin: 27px 0 0;
    color: var(--kh-hero-ink);
    font-size: clamp(43px, 3.7vw, 66px);
    font-weight: 850;
    line-height: 1.12;
    letter-spacing: -.035em;
}

#kh-main-hero.kh-main-hero-showcase h1 span {
    color: #7567ff;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

#kh-main-hero.kh-main-hero-showcase p {
    max-width: 650px;
    margin: 23px 0 0;
    color: var(--kh-hero-copy);
    font-size: clamp(14px, 1.15vw, 19px);
    font-weight: 500;
    line-height: 1.55;
}

.kh-main-hero-showcase__actions {
    display: flex;
    align-items: center;
    gap: 26px;
    margin-top: 26px;
}

.kh-main-hero-showcase__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 64px;
    padding: 0 30px;
    gap: 24px;
    border: 1px solid transparent;
    border-radius: 20px;
    text-decoration: none !important;
    font-size: clamp(14px, 1vw, 17px);
    font-weight: 750;
    line-height: 1;
    touch-action: manipulation;
}

.kh-main-hero-showcase__button svg {
    width: 23px;
    height: 23px;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.kh-main-hero-showcase__button--primary {
    min-width: 258px;
    color: #fff !important;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    box-shadow: 0 12px 26px rgba(70, 118, 255, .25), inset 0 1px 0 rgba(255, 255, 255, .3);
}

.kh-main-hero-showcase__button--secondary {
    min-width: 266px;
    color: #0a1635 !important;
    background: rgba(255, 255, 255, .72);
    border-color: rgba(255, 255, 255, .9);
    box-shadow: 0 14px 30px rgba(48, 83, 147, .08), inset 0 1px 0 #fff;
    backdrop-filter: blur(12px);
}

.kh-main-hero-showcase__button--secondary svg {
    color: var(--kh-hero-blue);
}

.kh-main-hero-showcase__button:focus-visible,
.kh-main-hero-showcase__product:focus-visible {
    outline: 3px solid rgba(9, 89, 247, .44);
    outline-offset: 4px;
}

.kh-main-hero-showcase__features {
    position: absolute;
    z-index: 10;
    left: 5.4%;
    top: 59.2%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 42.8%;
    min-height: 21.5%;
    padding: 21px 10px;
    border: 1px solid rgba(255, 255, 255, .92);
    border-radius: 26px;
    background: rgba(255, 255, 255, .65);
    box-shadow: 0 18px 45px rgba(58, 92, 151, .09), inset 0 1px 0 #fff;
    backdrop-filter: blur(16px);
}

.kh-main-hero-showcase__feature {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    align-content: start;
    column-gap: 10px;
    min-width: 0;
    padding: 0 12px;
    border-right: 1px solid var(--kh-hero-line);
}

.kh-main-hero-showcase__feature:last-child {
    border-right: 0;
}

.kh-main-hero-showcase__feature-icon {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(104, 153, 241, .42);
    border-radius: 13px;
    color: var(--kh-hero-blue);
    background: linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(219, 233, 255, .82));
    box-shadow: 0 7px 18px rgba(29, 91, 196, .13), inset 0 1px 0 #fff;
}

.kh-main-hero-showcase__feature-icon svg {
    width: 29px;
    height: 29px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.kh-main-hero-showcase__feature b,
.kh-main-hero-showcase__feature small {
    display: block;
}

.kh-main-hero-showcase__feature b {
    color: #0b1635;
    font-size: clamp(12px, .88vw, 15px);
    font-weight: 800;
    line-height: 1.42;
    overflow-wrap: normal;
    word-break: normal;
}

.kh-main-hero-showcase__feature small {
    margin-top: 21px;
    color: #526b9e;
    font-size: clamp(10px, .72vw, 12px);
    font-weight: 500;
    line-height: 1.55;
}

.kh-main-hero-showcase__trust {
    position: absolute;
    z-index: 10;
    left: 5.1%;
    bottom: 5.7%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, auto));
    align-items: start;
    gap: 24px;
    width: 44.5%;
}

.kh-main-hero-showcase__trust > span {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: start;
    gap: 10px;
    min-width: 0;
}

.kh-main-hero-showcase__trust i {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    color: var(--kh-hero-blue);
    background: rgba(255, 255, 255, .75);
    box-shadow: 0 8px 20px rgba(42, 89, 169, .1);
    font-size: 22px;
    font-style: normal;
    font-weight: 900;
}

.kh-main-hero-showcase__trust b,
.kh-main-hero-showcase__trust small {
    display: block;
}

.kh-main-hero-showcase__trust b {
    color: #101a36;
    font-size: clamp(10px, .72vw, 12px);
    font-weight: 800;
    line-height: 1.35;
}

.kh-main-hero-showcase__trust small {
    margin-top: 10px;
    color: #526b9e;
    font-size: clamp(9px, .67vw, 11px);
    font-weight: 500;
    line-height: 1.3;
}

.kh-main-hero-showcase__visual {
    position: absolute;
    inset: 0;
    z-index: 4;
    pointer-events: none;
}

.kh-main-hero-showcase__service-icon {
    position: absolute;
    z-index: 4;
    top: 5.2%;
    right: 18.6%;
    display: block;
    width: 15.5%;
    height: auto;
    filter: drop-shadow(0 16px 20px rgba(51, 92, 169, .16));
}

.kh-main-hero-showcase__orbit {
    position: absolute;
    z-index: 2;
    top: 17.3%;
    right: 8.1%;
    width: 38.5%;
    height: 9.5%;
    border: 2px solid rgba(255, 255, 255, .8);
    border-radius: 50%;
    box-shadow: 0 0 13px rgba(255, 255, 255, .95), inset 0 0 10px rgba(255, 255, 255, .75);
    transform: rotate(-1deg);
}

.kh-main-hero-showcase__orbit::after {
    content: "";
    position: absolute;
    inset: -6px;
    border-radius: inherit;
    background: repeating-linear-gradient(90deg, transparent 0 9%, rgba(255, 255, 255, .95) 9.2% 9.5%, transparent 9.7% 18%);
    filter: blur(1px);
    opacity: .72;
}

.kh-main-hero-showcase__products {
    position: absolute;
    z-index: 5;
    top: 36.1%;
    right: 5.25%;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    width: 47.8%;
    height: 32.8%;
    pointer-events: auto;
}

.kh-main-hero-showcase__product {
    --kh-card-accent: #16cbe8;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    padding: 13% 8% 10%;
    overflow: hidden;
    border: 1.5px solid color-mix(in srgb, var(--kh-card-accent) 72%, white);
    border-radius: 27px;
    color: #09209c !important;
    background: linear-gradient(150deg, rgba(255, 255, 255, .84), rgba(245, 248, 255, .66));
    box-shadow: 0 16px 30px rgba(48, 83, 148, .1), 0 0 18px color-mix(in srgb, var(--kh-card-accent) 18%, transparent), inset 0 1px 0 #fff;
    text-align: center;
    text-decoration: none !important;
    backdrop-filter: blur(13px);
}

.kh-main-hero-showcase__product::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background: linear-gradient(125deg, rgba(255, 255, 255, .8), transparent 34%, transparent 70%, rgba(255, 255, 255, .42));
}

.kh-main-hero-showcase__product--office {
    --kh-card-accent: #f0b82b;
}

.kh-main-hero-showcase__product--adobe {
    --kh-card-accent: #ff70c8;
}

.kh-main-hero-showcase__product--autodesk {
    --kh-card-accent: #59a8ff;
}

.kh-main-hero-showcase__product img {
    position: relative;
    z-index: 1;
    display: block;
    width: 48%;
    height: auto;
    aspect-ratio: 1;
    object-fit: contain;
}

.kh-main-hero-showcase__product strong,
.kh-main-hero-showcase__product small,
.kh-main-hero-showcase__product > span {
    position: relative;
    z-index: 1;
    display: block;
}

.kh-main-hero-showcase__product strong {
    width: 100%;
    margin-top: 9%;
    overflow: hidden;
    color: #0a1c9c;
    font-size: clamp(11px, .9vw, 16px);
    font-weight: 850;
    line-height: 1.15;
    letter-spacing: -.025em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.kh-main-hero-showcase__product small {
    margin-top: 7%;
    color: #0b3ddb;
    font-size: clamp(9px, .68vw, 12px);
    font-weight: 650;
    line-height: 1.2;
}

.kh-main-hero-showcase__product > span {
    min-width: 62px;
    margin-top: auto;
    padding: 7px 11px;
    border: 1.5px solid var(--kh-card-accent);
    border-radius: 9px;
    color: color-mix(in srgb, var(--kh-card-accent) 88%, #0038c9);
    background: rgba(255, 255, 255, .48);
    font-size: clamp(10px, .75vw, 13px);
    font-weight: 800;
    line-height: 1;
}

.kh-main-hero-showcase__crystal {
    position: absolute;
    z-index: 3;
    display: block;
    width: 3.15%;
    height: auto;
    filter: drop-shadow(0 8px 10px rgba(55, 67, 210, .2));
}

.kh-main-hero-showcase__crystal--1 { top: 27%; right: 48.3%; transform: rotate(-14deg) scale(.83); }
.kh-main-hero-showcase__crystal--2 { top: 28.4%; right: 39.7%; transform: rotate(9deg) scale(.72); }
.kh-main-hero-showcase__crystal--3 { top: 28.7%; right: 12.3%; transform: rotate(17deg) scale(.76); }
.kh-main-hero-showcase__crystal--4 { top: 27.8%; right: 1.8%; transform: rotate(-8deg) scale(.92); }
.kh-main-hero-showcase__crystal--5 { top: 49.2%; right: 52.4%; transform: rotate(18deg) scale(.95); }
.kh-main-hero-showcase__crystal--6 { bottom: 15.1%; right: 1.1%; transform: rotate(11deg) scale(.54); }
.kh-main-hero-showcase__crystal--7 { bottom: 15.3%; right: 50.7%; transform: rotate(-17deg) scale(.52); }

@media (max-width: 1240px) and (min-width: 901px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        min-height: 540px;
    }

    .kh-main-hero-showcase__copy {
        top: 7%;
    }

    #kh-main-hero.kh-main-hero-showcase h1 {
        margin-top: 18px;
        font-size: clamp(36px, 4.2vw, 50px);
    }

    #kh-main-hero.kh-main-hero-showcase p {
        margin-top: 14px;
        font-size: 13px;
    }

    .kh-main-hero-showcase__actions {
        gap: 12px;
        margin-top: 18px;
    }

    .kh-main-hero-showcase__button {
        min-width: 0;
        min-height: 50px;
        padding: 0 17px;
        gap: 10px;
        border-radius: 15px;
        font-size: 12px;
    }

    .kh-main-hero-showcase__features {
        padding: 16px 5px;
    }

    .kh-main-hero-showcase__feature {
        grid-template-columns: 36px minmax(0, 1fr);
        column-gap: 8px;
        padding: 0 9px;
    }

    .kh-main-hero-showcase__feature-icon {
        width: 36px;
        height: 36px;
    }

    .kh-main-hero-showcase__feature-icon svg {
        width: 22px;
        height: 22px;
    }

    .kh-main-hero-showcase__feature small {
        margin-top: 10px;
    }

    .kh-main-hero-showcase__products {
        gap: 9px;
    }

    .kh-main-hero-showcase__product {
        border-radius: 20px;
    }

    .kh-main-hero-showcase__trust {
        gap: 10px;
    }

    .kh-main-hero-showcase__trust > span {
        grid-template-columns: 28px minmax(0, 1fr);
        gap: 6px;
    }

    .kh-main-hero-showcase__trust i {
        width: 28px;
        height: 28px;
        font-size: 16px;
    }
}

@media (max-width: 900px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        display: flex;
        flex-direction: column;
        width: calc(100% - 12px);
        min-height: 0;
        max-height: none;
        aspect-ratio: auto;
        margin: 8px auto 24px;
        padding: 24px 16px 18px;
        border-radius: 24px;
    }

    .kh-main-hero-showcase__background {
        object-position: 69% center;
        opacity: .72;
    }

    .kh-main-hero-showcase::before {
        background: linear-gradient(180deg, rgba(255, 255, 255, .84), rgba(255, 255, 255, .26));
    }

    .kh-main-hero-showcase__copy,
    .kh-main-hero-showcase__features,
    .kh-main-hero-showcase__trust,
    .kh-main-hero-showcase__visual {
        position: relative;
        inset: auto;
        width: 100%;
    }

    .kh-main-hero-showcase__copy {
        order: 1;
        text-align: center;
    }

    .kh-main-hero-showcase__eyebrow {
        min-height: 40px;
        padding: 0 12px;
        border-radius: 14px;
        font-size: 11px;
    }

    #kh-main-hero.kh-main-hero-showcase h1 {
        margin-top: 18px;
        font-size: clamp(34px, 10vw, 46px);
        line-height: 1.08;
    }

    #kh-main-hero.kh-main-hero-showcase p {
        margin: 15px auto 0;
        font-size: 14px;
        line-height: 1.5;
    }

    #kh-main-hero.kh-main-hero-showcase p br {
        display: none;
    }

    .kh-main-hero-showcase__actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        margin-top: 20px;
    }

    .kh-main-hero-showcase__button {
        min-width: 0;
        min-height: 52px;
        padding: 0 12px;
        gap: 9px;
        border-radius: 15px;
        font-size: 12px;
    }

    .kh-main-hero-showcase__button svg {
        width: 18px;
        height: 18px;
    }

    .kh-main-hero-showcase__visual {
        order: 2;
        height: 520px;
        margin-top: 20px;
    }

    .kh-main-hero-showcase__service-icon {
        top: 0;
        right: 50%;
        width: 150px;
        transform: translateX(50%);
    }

    .kh-main-hero-showcase__orbit {
        top: 52px;
        right: 5%;
        width: 90%;
        height: 54px;
    }

    .kh-main-hero-showcase__products {
        top: 172px;
        right: auto;
        left: 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        width: 100%;
        height: 340px;
    }

    .kh-main-hero-showcase__product {
        padding: 12px 10px 10px;
        border-radius: 20px;
    }

    .kh-main-hero-showcase__product img {
        width: 54px;
    }

    .kh-main-hero-showcase__product strong {
        margin-top: 5px;
        font-size: 12px;
    }

    .kh-main-hero-showcase__product small {
        margin-top: 4px;
        font-size: 10px;
    }

    .kh-main-hero-showcase__product > span {
        min-width: 54px;
        padding: 6px 9px;
        font-size: 10px;
    }

    .kh-main-hero-showcase__crystal {
        width: 34px;
    }

    .kh-main-hero-showcase__crystal--1 { top: 76px; right: auto; left: 1%; }
    .kh-main-hero-showcase__crystal--2 { top: 115px; right: 1%; }
    .kh-main-hero-showcase__crystal--3,
    .kh-main-hero-showcase__crystal--4,
    .kh-main-hero-showcase__crystal--5,
    .kh-main-hero-showcase__crystal--6,
    .kh-main-hero-showcase__crystal--7 { display: none; }

    .kh-main-hero-showcase__features {
        order: 3;
        grid-template-columns: 1fr;
        min-height: 0;
        margin-top: 20px;
        padding: 5px 16px;
        border-radius: 20px;
    }

    .kh-main-hero-showcase__feature {
        grid-template-columns: 44px minmax(0, 1fr);
        align-items: center;
        padding: 14px 0;
        border-right: 0;
        border-bottom: 1px solid var(--kh-hero-line);
    }

    .kh-main-hero-showcase__feature:last-child {
        border-bottom: 0;
    }

    .kh-main-hero-showcase__feature-icon {
        width: 40px;
        height: 40px;
    }

    .kh-main-hero-showcase__feature-icon svg {
        width: 24px;
        height: 24px;
    }

    .kh-main-hero-showcase__feature b {
        font-size: 13px;
        line-height: 1.3;
    }

    .kh-main-hero-showcase__feature b br,
    .kh-main-hero-showcase__feature small br {
        display: none;
    }

    .kh-main-hero-showcase__feature small {
        margin-top: 4px;
        font-size: 11px;
    }

    .kh-main-hero-showcase__trust {
        order: 4;
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 18px;
    }

    .kh-main-hero-showcase__trust > span {
        grid-template-columns: 36px minmax(0, 1fr);
        align-items: center;
        gap: 10px;
    }

    .kh-main-hero-showcase__trust i {
        width: 34px;
        height: 34px;
        font-size: 19px;
    }

    .kh-main-hero-showcase__trust b {
        font-size: 12px;
    }

    .kh-main-hero-showcase__trust small {
        margin-top: 2px;
        font-size: 10px;
    }
}

@media (max-width: 430px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        padding-right: 12px;
        padding-left: 12px;
    }

    #kh-main-hero.kh-main-hero-showcase h1 {
        font-size: 34px;
    }

    .kh-main-hero-showcase__actions {
        grid-template-columns: 1fr;
    }

    .kh-main-hero-showcase__button {
        min-height: 50px;
    }

    .kh-main-hero-showcase__visual {
        height: 530px;
    }

    .kh-main-hero-showcase__products {
        height: 350px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kh-main-hero-showcase *,
    .kh-main-hero-showcase *::before,
    .kh-main-hero-showcase *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }
}

/* Exact wide hero canvas — final cascade lock. */
@media (min-width: 901px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        left: auto;
        width: min(1460px, calc(100% - 50px)) !important;
        min-height: 0;
        max-width: 1460px !important;
        max-height: none;
        aspect-ratio: 2089 / 753;
        margin-right: auto !important;
        margin-left: auto !important;
        transform: none;
    }

    .kh-main-hero-showcase__background {
        object-fit: fill;
        object-position: center;
    }

    .kh-main-hero-showcase__copy {
        top: 7.1%;
        left: 5.25%;
        width: 36.4%;
    }

    .kh-main-hero-showcase__eyebrow {
        min-height: 40px;
        padding: 0 15px;
        gap: 9px;
        border-radius: 16px;
        font-size: clamp(11px, .72vw, 15px);
    }

    .kh-main-hero-showcase__eyebrow svg {
        width: 20px;
        height: 20px;
    }

    #kh-main-hero.kh-main-hero-showcase h1 {
        max-width: 720px;
        margin-top: 18px;
        font-size: clamp(38px, 2.65vw, 60px);
        line-height: 1.08;
    }

    #kh-main-hero.kh-main-hero-showcase p {
        max-width: 660px;
        margin-top: 16px;
        font-size: clamp(12px, .82vw, 17px);
        line-height: 1.5;
    }

    .kh-main-hero-showcase__actions {
        gap: 18px;
        margin-top: 18px;
    }

    .kh-main-hero-showcase__button {
        min-height: 54px;
        padding: 0 24px;
        gap: 17px;
        border-radius: 17px;
        font-size: clamp(12px, .76vw, 16px);
    }

    .kh-main-hero-showcase__button--primary { min-width: 238px; }
    .kh-main-hero-showcase__button--secondary { min-width: 244px; }

    .kh-main-hero-showcase__features {
        top: 55.6%;
        left: 5.2%;
        width: 36.4%;
        min-height: 19.1%;
        padding: 17px 8px;
        border-radius: 23px;
    }

    .kh-main-hero-showcase__feature {
        grid-template-columns: 40px minmax(0, 1fr);
        column-gap: 9px;
        padding: 0 11px;
    }

    .kh-main-hero-showcase__feature-icon {
        width: 40px;
        height: 40px;
        border-radius: 12px;
    }

    .kh-main-hero-showcase__feature-icon svg {
        width: 26px;
        height: 26px;
    }

    .kh-main-hero-showcase__feature b { font-size: clamp(11px, .68vw, 14px); }

    .kh-main-hero-showcase__feature small {
        margin-top: 13px;
        font-size: clamp(9px, .57vw, 12px);
    }

    .kh-main-hero-showcase__trust {
        left: 5.05%;
        bottom: 4.7%;
        width: 37.5%;
        gap: 19px;
    }

    .kh-main-hero-showcase__trust > span {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 9px;
    }

    .kh-main-hero-showcase__trust i {
        width: 34px;
        height: 34px;
        font-size: 19px;
    }

    .kh-main-hero-showcase__trust b { font-size: clamp(9px, .57vw, 12px); }

    .kh-main-hero-showcase__trust small {
        margin-top: 7px;
        font-size: clamp(8px, .52vw, 11px);
    }

    .kh-main-hero-showcase__service-icon {
        top: 4.2%;
        right: 19.4%;
        width: 11.9%;
    }

    .kh-main-hero-showcase__orbit {
        top: 14.9%;
        right: 8.6%;
        width: 35.3%;
        height: 8.1%;
    }

    .kh-main-hero-showcase__products {
        top: 35.2%;
        right: 5.7%;
        width: 40.2%;
        height: 34.7%;
        gap: 14px;
    }

    .kh-main-hero-showcase__product {
        padding: 10% 8% 8%;
        border-radius: 23px;
    }

    .kh-main-hero-showcase__product img { width: 44%; }

    .kh-main-hero-showcase__product strong {
        margin-top: 7%;
        font-size: clamp(11px, .72vw, 15px);
    }

    .kh-main-hero-showcase__product small {
        margin-top: 5%;
        font-size: clamp(9px, .57vw, 12px);
    }

    .kh-main-hero-showcase__product > span {
        min-width: 58px;
        padding: 6px 10px;
        font-size: clamp(9px, .58vw, 12px);
    }

    .kh-main-hero-showcase__crystal { width: 2.45%; }
    .kh-main-hero-showcase__crystal--1 { top: 27%; right: 46.8%; }
    .kh-main-hero-showcase__crystal--2 { top: 28.2%; right: 38.5%; }
    .kh-main-hero-showcase__crystal--3 { top: 28.5%; right: 12.4%; }
    .kh-main-hero-showcase__crystal--4 { top: 27.3%; right: 1.8%; }
    .kh-main-hero-showcase__crystal--5 { top: 48.8%; right: 47.9%; }
}

@media (max-width: 900px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        left: auto;
        margin-right: auto !important;
        margin-left: auto !important;
        transform: none;
    }

    .kh-main-hero-showcase__background { object-fit: cover; }
}

/* Hero reference-match pass: composition, depth and motion. */
@media (min-width: 901px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        overflow: hidden;
        border-radius: 24px;
        box-shadow: 0 26px 64px rgba(41, 83, 153, .14);
    }

    .kh-main-hero-showcase__background {
        object-fit: cover;
        object-position: center;
    }

    .kh-main-hero-showcase__podium {
        position: absolute;
        right: -.4%;
        bottom: -1%;
        z-index: 1;
        display: block;
        width: 50.5%;
        height: auto;
        pointer-events: none;
        filter: saturate(1.08) contrast(1.04) drop-shadow(0 18px 20px rgba(17, 70, 164, .11));
    }

    .kh-main-hero-showcase::before {
        background:
            radial-gradient(circle at 73% 28%, rgba(255, 255, 255, .22), transparent 24%),
            linear-gradient(90deg, rgba(255, 255, 255, .16) 0%, rgba(255, 255, 255, .05) 41%, rgba(52, 111, 208, .05) 100%);
    }

    .kh-main-hero-showcase::after {
        content: "";
        position: absolute;
        right: 4%;
        bottom: 4.5%;
        z-index: 3;
        width: 47%;
        height: 22%;
        pointer-events: none;
        background: linear-gradient(105deg, transparent 20%, rgba(255, 255, 255, .72) 44%, rgba(175, 221, 255, .28) 51%, transparent 70%);
        filter: blur(6px);
        opacity: 0;
        transform: translateX(-65%) skewX(-13deg);
        animation: khMainHeroPodiumSheen 9s ease-in-out 2.5s infinite;
    }

    .kh-main-hero-showcase__copy {
        top: 6.7%;
        left: 5.35%;
        width: 41.5%;
    }

    .kh-main-hero-showcase__eyebrow {
        min-height: 40px;
        font-size: 12px;
    }

    #kh-main-hero.kh-main-hero-showcase h1 {
        max-width: 590px;
        margin: 14px 0 0 !important;
        font-size: clamp(38px, 3vw, 50px);
        line-height: 1.06;
    }

    #kh-main-hero.kh-main-hero-showcase p {
        max-width: 570px;
        margin-top: 12px;
        font-size: clamp(12px, .86vw, 15px);
        line-height: 1.5;
    }

    .kh-main-hero-showcase__actions {
        gap: 16px;
        margin-top: 14px;
    }

    .kh-main-hero-showcase__button {
        position: relative;
        min-height: 52px;
        overflow: hidden;
        padding: 0 22px;
        border-radius: 17px;
        font-size: 14px;
    }

    .kh-main-hero-showcase__button--primary { min-width: 224px; }
    .kh-main-hero-showcase__button--secondary { min-width: 232px; }

    .kh-main-hero-showcase__button--primary::after {
        content: "";
        position: absolute;
        inset: -35% auto -35% -40%;
        width: 22%;
        pointer-events: none;
        background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .42), transparent);
        opacity: 0;
        transform: skewX(-18deg);
    }

    .kh-main-hero-showcase__button--primary:is(:hover, :focus-visible)::after {
        animation: khMainHeroButtonSheen .72s ease-out both;
    }

    .kh-main-hero-showcase__features {
        top: 63.5%;
        left: 5.25%;
        width: 41.4%;
        height: 21.5%;
        min-height: 0;
        padding: 12px 8px;
        border-radius: 22px;
        background: rgba(255, 255, 255, .7);
        box-shadow: 0 18px 42px rgba(58, 92, 151, .11), inset 0 1px 0 #fff;
    }

    .kh-main-hero-showcase__feature {
        grid-template-columns: 40px minmax(0, 1fr);
        padding: 0 12px;
    }

    .kh-main-hero-showcase__feature b {
        font-size: clamp(11px, .75vw, 13px);
        line-height: 1.36;
    }

    .kh-main-hero-showcase__feature small {
        margin-top: 9px;
        font-size: clamp(9px, .62vw, 11px);
        line-height: 1.45;
    }

    .kh-main-hero-showcase__trust {
        left: 5.1%;
        bottom: 4.7%;
        width: 42%;
        gap: 16px;
    }

    .kh-main-hero-showcase__trust b {
        font-size: clamp(9px, .66vw, 11px);
    }

    .kh-main-hero-showcase__trust small {
        margin-top: 5px;
        color: #435f98;
        font-size: clamp(8px, .57vw, 10px);
    }

    .kh-main-hero-showcase__service-icon {
        top: 3.8%;
        right: 20.2%;
        width: 13%;
        filter:
            drop-shadow(0 16px 22px rgba(35, 79, 168, .22))
            drop-shadow(0 0 12px rgba(255, 255, 255, .9));
    }

    .kh-main-hero-showcase__orbit {
        top: 13.8%;
        right: 7%;
        width: 39%;
        height: 10.5%;
        border-color: rgba(255, 255, 255, .92);
        box-shadow: 0 0 16px rgba(255, 255, 255, 1), inset 0 0 12px rgba(255, 255, 255, .86);
        animation: khMainHeroOrbit 22s linear infinite;
    }

    .kh-main-hero-showcase__products {
        top: 34.5%;
        right: 4.7%;
        width: 45%;
        height: 39%;
        gap: 13px;
    }

    .kh-main-hero-showcase__product {
        padding: 10px 9px 9px;
        border-width: 1.5px;
        border-radius: 22px;
        background:
            radial-gradient(circle at 50% 12%, rgba(255, 255, 255, .98), transparent 38%),
            linear-gradient(150deg, rgba(255, 255, 255, .91), rgba(240, 246, 255, .69));
        box-shadow:
            0 18px 28px rgba(35, 70, 139, .13),
            0 0 20px color-mix(in srgb, var(--kh-card-accent) 24%, transparent),
            inset 0 1px 0 rgba(255, 255, 255, 1),
            inset 0 -10px 24px rgba(204, 221, 251, .16);
        animation: khMainHeroCardIn 520ms cubic-bezier(.2, .78, .24, 1) backwards;
        transition: transform 220ms ease, box-shadow 220ms ease, filter 220ms ease;
        will-change: transform;
    }

    .kh-main-hero-showcase__product:nth-child(1) { animation-delay: 80ms; }
    .kh-main-hero-showcase__product:nth-child(2) { animation-delay: 150ms; }
    .kh-main-hero-showcase__product:nth-child(3) { animation-delay: 220ms; }
    .kh-main-hero-showcase__product:nth-child(4) { animation-delay: 290ms; }

    .kh-main-hero-showcase__product:is(:hover, :focus-visible) {
        transform: translateY(-6px);
        filter: saturate(1.08);
        box-shadow:
            0 24px 36px rgba(35, 70, 139, .17),
            0 0 27px color-mix(in srgb, var(--kh-card-accent) 33%, transparent),
            inset 0 1px 0 #fff;
    }

    .kh-main-hero-showcase__product img {
        width: 43%;
        max-height: 76px;
    }

    .kh-main-hero-showcase__product strong {
        margin-top: 5px;
        font-size: clamp(11px, .8vw, 14px);
    }

    .kh-main-hero-showcase__product small {
        margin-top: 5px;
        font-size: clamp(9px, .62vw, 11px);
    }

    .kh-main-hero-showcase__product > span {
        min-width: 54px;
        padding: 6px 9px;
        font-size: 10px;
    }

    .kh-main-hero-showcase__crystal {
        width: 2.7%;
        animation: khMainHeroCrystalFloat var(--kh-float-duration, 6.5s) ease-in-out var(--kh-float-delay, 0s) infinite alternate;
        transform: var(--kh-crystal-transform, none);
        will-change: transform;
    }

    .kh-main-hero-showcase__crystal--1 { top: 24%; right: 48%; --kh-crystal-transform: rotate(-14deg) scale(.74); --kh-float-duration: 6.2s; }
    .kh-main-hero-showcase__crystal--2 { top: 27%; right: 39%; --kh-crystal-transform: rotate(9deg) scale(.66); --kh-float-duration: 7.4s; --kh-float-delay: -.8s; }
    .kh-main-hero-showcase__crystal--3 { top: 26%; right: 12%; --kh-crystal-transform: rotate(17deg) scale(.68); --kh-float-duration: 5.8s; --kh-float-delay: -1.6s; }
    .kh-main-hero-showcase__crystal--4 { top: 27%; right: 1.2%; --kh-crystal-transform: rotate(-8deg) scale(.82); --kh-float-duration: 7s; --kh-float-delay: -2.1s; }
    .kh-main-hero-showcase__crystal--5 { top: 48%; right: 49%; --kh-crystal-transform: rotate(18deg) scale(.84); --kh-float-duration: 6.7s; --kh-float-delay: -.5s; }
    .kh-main-hero-showcase__crystal--6 { top: 49%; right: .7%; bottom: auto; --kh-crystal-transform: rotate(11deg) scale(.62); --kh-float-duration: 5.6s; --kh-float-delay: -1.2s; }
    .kh-main-hero-showcase__crystal--7 { right: 49.5%; bottom: 9%; --kh-crystal-transform: rotate(-17deg) scale(.52); --kh-float-duration: 7.7s; --kh-float-delay: -2.8s; }
    .kh-main-hero-showcase__crystal--8 { right: 2.5%; bottom: 8%; --kh-crystal-transform: rotate(13deg) scale(.56); --kh-float-duration: 6.9s; --kh-float-delay: -1.9s; }
}

@media (max-width: 900px) {
    .kh-main-hero-showcase__podium { display: none; }
    .kh-main-hero-showcase__crystal--8 { display: none; }
}

@keyframes khMainHeroCardIn {
    from { opacity: 0; transform: translateY(12px) scale(.985); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes khMainHeroOrbit {
    from { transform: rotate(-1deg); }
    to { transform: rotate(359deg); }
}

@keyframes khMainHeroCrystalFloat {
    from { transform: var(--kh-crystal-transform, none) translateY(0); }
    to { transform: var(--kh-crystal-transform, none) translateY(-7px); }
}

@keyframes khMainHeroPodiumSheen {
    0%, 67% { opacity: 0; transform: translateX(-65%) skewX(-13deg); }
    73% { opacity: .72; }
    82% { opacity: 0; transform: translateX(72%) skewX(-13deg); }
    100% { opacity: 0; transform: translateX(72%) skewX(-13deg); }
}

@keyframes khMainHeroButtonSheen {
    0% {
        left: -40%;
        opacity: 0;
    }
    14% {
        opacity: .72;
    }
    72% {
        opacity: .42;
    }
    88%,
    100% {
        left: 108%;
        opacity: 0;
    }
}

/* Stage 1: refractive glass product cards matched to the sketch. */
@media (min-width: 901px) {
    .kh-main-hero-showcase__products {
        top: 35.1%;
        right: 4.8%;
        width: 43%;
        height: 37%;
        gap: 12px;
    }

    .kh-main-hero-showcase__product {
        --kh-card-accent: #24cfe8;
        padding: 12px 9px 9px;
        border: 1px solid transparent;
        border-radius: 22px;
        background:
            radial-gradient(ellipse at 50% -8%, rgba(255, 255, 255, .92) 0%, rgba(255, 255, 255, .32) 38%, transparent 64%) padding-box,
            linear-gradient(155deg, rgba(255, 255, 255, .68) 0%, rgba(250, 253, 255, .47) 48%, rgba(228, 240, 255, .3) 100%) padding-box,
            linear-gradient(145deg,
                rgba(255, 255, 255, .98) 0%,
                color-mix(in srgb, var(--kh-card-accent) 48%, white) 17%,
                rgba(255, 255, 255, .88) 42%,
                rgba(255, 255, 255, .96) 58%,
                color-mix(in srgb, var(--kh-card-accent) 66%, white) 83%,
                rgba(255, 255, 255, .98) 100%) border-box;
        box-shadow:
            0 14px 28px rgba(44, 77, 142, .11),
            0 0 15px color-mix(in srgb, var(--kh-card-accent) 14%, transparent),
            inset 0 1px 0 rgba(255, 255, 255, .98),
            inset 1px 0 0 rgba(255, 255, 255, .55),
            inset -1px 0 0 rgba(255, 255, 255, .34),
            inset 0 -14px 30px color-mix(in srgb, var(--kh-card-accent) 5%, transparent);
        -webkit-backdrop-filter: blur(18px) saturate(1.24);
        backdrop-filter: blur(18px) saturate(1.24);
    }

    .kh-main-hero-showcase__product--office { --kh-card-accent: #ffc33d; }
    .kh-main-hero-showcase__product--adobe { --kh-card-accent: #ff75ca; }
    .kh-main-hero-showcase__product--autodesk { --kh-card-accent: #79b7ff; }

    .kh-main-hero-showcase__product::before {
        content: "";
        position: absolute;
        inset: 1px;
        z-index: 0;
        border-radius: 21px;
        pointer-events: none;
        background:
            linear-gradient(118deg, rgba(255, 255, 255, .72) 0%, rgba(255, 255, 255, .22) 20%, transparent 42%),
            radial-gradient(ellipse at 48% 0%, rgba(255, 255, 255, .78), transparent 50%),
            linear-gradient(180deg, transparent 62%, color-mix(in srgb, var(--kh-card-accent) 7%, transparent) 100%);
        opacity: .86;
    }

    .kh-main-hero-showcase__product::after {
        content: "";
        position: absolute;
        right: 13%;
        bottom: 0;
        left: 13%;
        z-index: 0;
        height: 1px;
        pointer-events: none;
        border-radius: 50%;
        background: color-mix(in srgb, var(--kh-card-accent) 72%, white);
        box-shadow: 0 0 10px 2px color-mix(in srgb, var(--kh-card-accent) 30%, transparent);
        opacity: .72;
    }

    .kh-main-hero-showcase__product img {
        width: 46%;
        max-height: 72px;
        filter: drop-shadow(0 6px 8px rgba(34, 65, 126, .11));
    }

    .kh-main-hero-showcase__product strong {
        margin-top: 5px;
        color: #071b96;
        font-size: clamp(11px, .79vw, 14px);
        text-shadow: 0 1px 0 rgba(255, 255, 255, .72);
    }

    .kh-main-hero-showcase__product small {
        margin-top: 5px;
        color: #083dd7;
        font-size: clamp(9px, .61vw, 11px);
    }

    .kh-main-hero-showcase__product > span {
        min-width: 52px;
        padding: 6px 9px;
        border-width: 1px;
        border-radius: 8px;
        background: rgba(255, 255, 255, .34);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
    }

    .kh-main-hero-showcase__product:is(:hover, :focus-visible) {
        transform: translateY(-5px);
        box-shadow:
            0 22px 34px rgba(36, 70, 137, .16),
            0 0 21px color-mix(in srgb, var(--kh-card-accent) 25%, transparent),
            inset 0 1px 0 #fff,
            inset 0 -14px 30px color-mix(in srgb, var(--kh-card-accent) 8%, transparent);
    }
}

/* Stage 1 correction: narrow clear-glass plates, no coloured body fill. */
@media (min-width: 901px) {
    .kh-main-hero-showcase__products {
        top: 35.1%;
        right: 5.75%;
        width: 36.8%;
        height: 36.5%;
        gap: 14px;
    }

    .kh-main-hero-showcase__product {
        padding: 12px 7px 9px;
        border: 1px solid color-mix(in srgb, var(--kh-card-accent) 58%, rgba(255, 255, 255, .96));
        border-radius: 21px;
        background:
            linear-gradient(145deg, rgba(255, 255, 255, .57) 0%, rgba(255, 255, 255, .25) 43%, rgba(247, 251, 255, .34) 100%);
        box-shadow:
            0 10px 22px rgba(42, 72, 132, .09),
            0 0 12px color-mix(in srgb, var(--kh-card-accent) 15%, transparent),
            inset 0 1px 0 rgba(255, 255, 255, .96),
            inset 1px 0 0 rgba(255, 255, 255, .46),
            inset -1px 0 0 rgba(255, 255, 255, .34),
            inset 0 -1px 0 color-mix(in srgb, var(--kh-card-accent) 38%, rgba(255, 255, 255, .55));
        -webkit-backdrop-filter: blur(13px) saturate(1.08) brightness(1.04);
        backdrop-filter: blur(13px) saturate(1.08) brightness(1.04);
    }

    .kh-main-hero-showcase__product::before {
        inset: 1px;
        border-radius: 20px;
        background:
            linear-gradient(120deg, rgba(255, 255, 255, .62) 0%, rgba(255, 255, 255, .14) 18%, transparent 39%),
            linear-gradient(180deg, rgba(255, 255, 255, .28), transparent 25%, transparent 78%, rgba(255, 255, 255, .15));
        opacity: .72;
    }

    .kh-main-hero-showcase__product::after {
        display: none;
    }

    .kh-main-hero-showcase__product img {
        width: 48%;
        max-height: 62px;
        filter: none;
    }

    .kh-main-hero-showcase__product strong {
        margin-top: 6px;
        font-size: 13px;
        line-height: 1.15;
        letter-spacing: -.02em;
    }

    .kh-main-hero-showcase__product small {
        margin-top: 6px;
        font-size: 10px;
        line-height: 1.2;
    }

    .kh-main-hero-showcase__product > span {
        min-width: 56px;
        padding: 6px 9px;
        border-width: 1px;
        border-radius: 8px;
        background: rgba(255, 255, 255, .22);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
        font-size: 10px;
    }

    .kh-main-hero-showcase__product:is(:hover, :focus-visible) {
        transform: translateY(-5px);
        box-shadow:
            0 18px 30px rgba(36, 68, 132, .13),
            0 0 17px color-mix(in srgb, var(--kh-card-accent) 22%, transparent),
            inset 0 1px 0 rgba(255, 255, 255, 1),
            inset 0 -1px 0 color-mix(in srgb, var(--kh-card-accent) 45%, white);
    }
}

/* Stage 1.1: reference-matched frosted glass and vertical card rhythm. */
@media (min-width: 901px) {
    .kh-main-hero-showcase__product {
        isolation: isolate;
        padding: 20px 7px 9px;
        border: 1px solid rgba(255, 255, 255, .8);
        background:
            radial-gradient(ellipse at 48% -10%, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .32) 46%, transparent 70%),
            linear-gradient(145deg, rgba(255, 255, 255, .76) 0%, rgba(255, 255, 255, .48) 46%, rgba(242, 248, 255, .62) 100%);
        box-shadow:
            0 12px 24px rgba(38, 69, 128, .1),
            0 0 11px color-mix(in srgb, var(--kh-card-accent) 17%, transparent),
            inset 0 0 0 1px rgba(255, 255, 255, .54),
            inset 0 1px 0 rgba(255, 255, 255, 1),
            inset 0 -14px 24px rgba(226, 239, 255, .17);
        -webkit-backdrop-filter: blur(20px) saturate(1.06) brightness(1.09);
        backdrop-filter: blur(20px) saturate(1.06) brightness(1.09);
    }

    .kh-main-hero-showcase__product::before {
        inset: 2px;
        border-radius: 19px;
        background:
            radial-gradient(circle at 13% 5%, rgba(255, 255, 255, .98) 0 2px, transparent 13px),
            radial-gradient(circle at 88% 5%, rgba(255, 255, 255, .9) 0 2px, transparent 15px),
            linear-gradient(119deg, rgba(255, 255, 255, .67) 0%, rgba(255, 255, 255, .15) 19%, transparent 39%),
            linear-gradient(180deg, rgba(255, 255, 255, .36), transparent 27%, transparent 76%, rgba(255, 255, 255, .2));
        opacity: .84;
    }

    .kh-main-hero-showcase__product::after {
        display: block;
        inset: -1px;
        right: auto;
        bottom: auto;
        left: auto;
        z-index: 0;
        width: auto;
        height: auto;
        padding: 1px;
        border-radius: 22px;
        background: linear-gradient(145deg,
            rgba(255, 255, 255, 1) 0%,
            color-mix(in srgb, var(--kh-card-accent) 64%, white) 18%,
            rgba(255, 255, 255, .65) 38%,
            rgba(255, 255, 255, .94) 59%,
            color-mix(in srgb, var(--kh-card-accent) 72%, white) 83%,
            rgba(255, 255, 255, 1) 100%);
        box-shadow: none;
        opacity: .82;
        filter: drop-shadow(0 0 5px color-mix(in srgb, var(--kh-card-accent) 32%, transparent));
        -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
        -webkit-mask-composite: xor;
        mask-composite: exclude;
    }

    .kh-main-hero-showcase__product img {
        width: 53%;
        max-height: 68px;
    }

    .kh-main-hero-showcase__product--adobe img {
        width: 48%;
        max-height: 62px;
    }

    .kh-main-hero-showcase__product strong {
        margin-top: 6px;
        font-size: 13.5px;
        line-height: 1.14;
        letter-spacing: -.03em;
    }

    .kh-main-hero-showcase__product small {
        margin-top: 5px;
        font-size: 10.5px;
        line-height: 1.2;
    }

    .kh-main-hero-showcase__product > span {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 56px;
        min-height: 27px;
        margin-bottom: 8px;
        padding: 0 9px;
        background: rgba(255, 255, 255, .31);
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, .88),
            0 0 7px color-mix(in srgb, var(--kh-card-accent) 10%, transparent);
        font-size: 10.5px;
    }

    .kh-main-hero-showcase__product:is(:hover, :focus-visible) {
        box-shadow:
            0 18px 30px rgba(36, 68, 132, .13),
            0 0 18px color-mix(in srgb, var(--kh-card-accent) 25%, transparent),
            inset 0 0 0 1px rgba(255, 255, 255, .62),
            inset 0 1px 0 rgba(255, 255, 255, 1),
            inset 0 -14px 24px rgba(226, 239, 255, .2);
    }
}

/* Stage 1.2: slimmer cold glass with a continuous refractive edge. */
@media (min-width: 901px) {
    .kh-main-hero-showcase__products {
        width: 35.7%;
    }

    .kh-main-hero-showcase__product {
        padding: 27px 7px 9px;
        overflow: visible;
        border-color: rgba(255, 255, 255, .94);
        border-radius: 20px;
        background:
            radial-gradient(ellipse at 50% -2%, rgba(255, 255, 255, .86) 0%, rgba(255, 255, 255, .2) 40%, transparent 66%),
            radial-gradient(ellipse at 50% 108%, color-mix(in srgb, var(--kh-card-accent) 11%, rgba(214, 231, 255, .3)) 0%, transparent 58%),
            linear-gradient(155deg, rgba(255, 255, 255, .56) 0%, rgba(238, 247, 255, .38) 47%, rgba(220, 236, 255, .46) 100%);
        box-shadow:
            0 5px 11px rgba(47, 79, 139, .045),
            0 0 13px 1px rgba(255, 255, 255, .7),
            0 0 20px color-mix(in srgb, var(--kh-card-accent) 25%, transparent),
            inset 0 0 0 1px rgba(255, 255, 255, .72),
            inset 2px 0 3px rgba(255, 255, 255, .7),
            inset -2px 0 4px rgba(185, 211, 249, .38),
            inset 0 2px 3px rgba(255, 255, 255, .94),
            inset 0 -3px 5px color-mix(in srgb, var(--kh-card-accent) 17%, rgba(184, 211, 249, .3)),
            inset 9px 0 20px rgba(255, 255, 255, .13),
            inset -9px 0 20px rgba(177, 207, 247, .12);
        -webkit-backdrop-filter: blur(24px) saturate(1.12) brightness(1.06);
        backdrop-filter: blur(24px) saturate(1.12) brightness(1.06);
    }

    .kh-main-hero-showcase__product::before {
        inset: 1px;
        border-radius: 19px;
        background:
            radial-gradient(circle at 10% 5%, rgba(255, 255, 255, 1) 0 2px, rgba(255, 255, 255, .52) 3px, transparent 14px),
            radial-gradient(circle at 90% 5%, rgba(255, 255, 255, .96) 0 2px, rgba(255, 255, 255, .42) 3px, transparent 15px),
            linear-gradient(116deg, rgba(255, 255, 255, .84) 0%, rgba(255, 255, 255, .17) 18%, transparent 38%),
            linear-gradient(180deg, rgba(255, 255, 255, .62) 0%, transparent 5%, transparent 93%, rgba(255, 255, 255, .38) 100%);
        box-shadow:
            inset 1px 0 0 rgba(255, 255, 255, .58),
            inset -1px 0 0 color-mix(in srgb, var(--kh-card-accent) 20%, rgba(255, 255, 255, .42)),
            inset 0 1px 0 rgba(255, 255, 255, .88),
            inset 0 -1px 0 color-mix(in srgb, var(--kh-card-accent) 24%, rgba(255, 255, 255, .5));
        opacity: .86;
    }

    .kh-main-hero-showcase__product::after {
        inset: -2px;
        padding: 1.5px;
        border-radius: 22px;
        background: conic-gradient(from 205deg,
            color-mix(in srgb, var(--kh-card-accent) 82%, white) 0deg,
            rgba(255, 255, 255, 1) 48deg,
            color-mix(in srgb, var(--kh-card-accent) 56%, white) 112deg,
            rgba(255, 255, 255, 1) 182deg,
            color-mix(in srgb, var(--kh-card-accent) 76%, white) 255deg,
            rgba(255, 255, 255, .98) 316deg,
            color-mix(in srgb, var(--kh-card-accent) 82%, white) 360deg);
        opacity: .78;
        filter:
            drop-shadow(0 0 3px rgba(255, 255, 255, .96))
            drop-shadow(0 0 8px color-mix(in srgb, var(--kh-card-accent) 52%, transparent));
    }

    .kh-main-hero-showcase__product img {
        width: 47%;
        max-height: 62px;
    }

    .kh-main-hero-showcase__product--adobe img {
        width: 48%;
        max-height: 62px;
    }

    .kh-main-hero-showcase__product strong {
        margin-top: 14px;
    }

    .kh-main-hero-showcase__product small {
        margin-top: 10px;
    }

    .kh-main-hero-showcase__product > span {
        min-width: 52px;
        min-height: 26px;
    }

    .kh-main-hero-showcase__product:is(:hover, :focus-visible) {
        box-shadow:
            0 8px 16px rgba(36, 68, 132, .07),
            0 0 16px 2px rgba(255, 255, 255, .78),
            0 0 26px color-mix(in srgb, var(--kh-card-accent) 36%, transparent),
            inset 0 0 0 1px rgba(255, 255, 255, .78),
            inset 2px 0 4px rgba(255, 255, 255, .78),
            inset -2px 0 5px rgba(185, 211, 249, .44),
            inset 0 2px 3px rgba(255, 255, 255, 1),
            inset 0 -3px 6px color-mix(in srgb, var(--kh-card-accent) 21%, rgba(184, 211, 249, .34));
    }
}

/* Stage 2 cascade lock: final feature-panel glass and desktop geometry. */
.kh-main-hero-showcase__features {
    isolation: isolate;
    overflow: visible;
    border: 1px solid rgba(255, 255, 255, .94);
    background:
        radial-gradient(ellipse at 50% -8%, rgba(255, 255, 255, .9) 0%, rgba(255, 255, 255, .2) 43%, transparent 68%),
        radial-gradient(ellipse at 50% 112%, color-mix(in srgb, var(--kh-feature-glass-accent) 10%, rgba(214, 231, 255, .3)) 0%, transparent 62%),
        linear-gradient(155deg, rgba(255, 255, 255, .58) 0%, rgba(239, 247, 255, .39) 48%, rgba(220, 236, 255, .47) 100%);
    box-shadow:
        0 6px 13px rgba(47, 79, 139, .05),
        0 0 14px 1px rgba(255, 255, 255, .72),
        0 0 21px color-mix(in srgb, var(--kh-feature-glass-accent) 21%, transparent),
        inset 0 0 0 1px rgba(255, 255, 255, .72),
        inset 2px 0 3px rgba(255, 255, 255, .72),
        inset -2px 0 4px rgba(185, 211, 249, .36),
        inset 0 2px 3px rgba(255, 255, 255, .95),
        inset 0 -3px 5px color-mix(in srgb, var(--kh-feature-glass-accent) 15%, rgba(184, 211, 249, .28)),
        inset 11px 0 24px rgba(255, 255, 255, .12),
        inset -11px 0 24px rgba(177, 207, 247, .11);
    -webkit-backdrop-filter: blur(24px) saturate(1.1) brightness(1.06);
    backdrop-filter: blur(24px) saturate(1.1) brightness(1.06);
}

.kh-main-hero-showcase__feature {
    position: relative;
    z-index: 1;
    border-right: 0;
}

.kh-main-hero-showcase__feature-icon {
    position: relative;
    border-color: color-mix(in srgb, var(--kh-feature-glass-accent) 48%, white);
    background:
        radial-gradient(circle at 22% 12%, rgba(255, 255, 255, 1) 0 1px, transparent 8px),
        linear-gradient(145deg, rgba(255, 255, 255, .88), rgba(220, 235, 255, .58));
    box-shadow:
        0 5px 14px rgba(29, 91, 196, .09),
        0 0 10px rgba(113, 185, 255, .14),
        inset 0 0 0 1px rgba(255, 255, 255, .66),
        inset 1px 1px 2px rgba(255, 255, 255, .95),
        inset -1px -1px 2px rgba(123, 173, 235, .18);
}

@media (min-width: 901px) {
    .kh-main-hero-showcase__features {
        top: 63.2%;
        left: 5.15%;
        width: 42.2%;
        height: 22.2%;
        min-height: 0;
        padding: 13px 10px;
        border-radius: 24px;
    }

    .kh-main-hero-showcase__features::after {
        border-radius: 26px;
    }

    .kh-main-hero-showcase__feature {
        grid-template-columns: 40px minmax(0, 1fr);
        align-content: center;
        column-gap: 11px;
        padding: 0 14px;
    }

    .kh-main-hero-showcase__feature-icon {
        width: 40px;
        height: 40px;
        border-radius: 12px;
    }

    .kh-main-hero-showcase__feature-icon svg {
        width: 25px;
        height: 25px;
    }

    .kh-main-hero-showcase__feature b {
        min-height: 36px;
        font-size: clamp(12px, .75vw, 13px);
        line-height: 1.34;
    }

    .kh-main-hero-showcase__feature small {
        margin-top: 7px;
        font-size: clamp(9px, .61vw, 11px);
        line-height: 1.42;
    }
}

@media (max-width: 900px) {
    .kh-main-hero-showcase__feature {
        border-bottom: 0;
    }
}

/* Stage 2.1: balanced spacing and shared column rhythm for the feature area. */
@media (min-width: 901px) {
    .kh-main-hero-showcase__features {
        top: 61.5%;
        width: 43%;
        height: 21%;
        padding: 11px 10px;
    }

    .kh-main-hero-showcase__feature {
        grid-template-columns: 38px minmax(0, 1fr);
        column-gap: 10px;
        padding: 0 12px;
    }

    .kh-main-hero-showcase__feature-icon {
        width: 38px;
        height: 38px;
        border-radius: 11px;
    }

    .kh-main-hero-showcase__feature-icon svg {
        width: 23px;
        height: 23px;
    }

    .kh-main-hero-showcase__feature b {
        min-height: 34px;
        font-size: clamp(11px, .72vw, 12px);
        line-height: 1.35;
    }

    .kh-main-hero-showcase__feature small {
        margin-top: 5px;
        font-size: clamp(9px, .58vw, 10px);
        line-height: 1.38;
    }

    .kh-main-hero-showcase__trust {
        left: 5.85%;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0;
        width: 41.6%;
    }

    .kh-main-hero-showcase__trust > span {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 9px;
        padding: 0 12px;
    }
}

/* Stage 2.2: metallic graphite icon ink instead of link blue. */
.kh-main-hero-showcase__features,
.kh-main-hero-showcase__trust {
    --kh-feature-icon-ink: #315463;
}

.kh-main-hero-showcase__feature-icon {
    color: var(--kh-feature-icon-ink);
    border-color: rgba(111, 148, 164, .38);
    background:
        radial-gradient(circle at 22% 12%, rgba(255, 255, 255, 1) 0 1px, transparent 8px),
        linear-gradient(145deg, rgba(255, 255, 255, .91), rgba(222, 238, 242, .62));
    box-shadow:
        0 5px 14px rgba(42, 76, 91, .08),
        0 0 10px rgba(91, 154, 166, .12),
        inset 0 0 0 1px rgba(255, 255, 255, .7),
        inset 1px 1px 2px rgba(255, 255, 255, .96),
        inset -1px -1px 2px rgba(94, 142, 159, .17);
}

.kh-main-hero-showcase__feature-icon svg {
    filter: drop-shadow(0 1px 0 rgba(255, 255, 255, .72));
}

.kh-main-hero-showcase__trust i {
    border: 1px solid rgba(255, 255, 255, .82);
    color: var(--kh-feature-icon-ink);
    background:
        radial-gradient(circle at 30% 18%, rgba(255, 255, 255, .98), transparent 34%),
        linear-gradient(145deg, rgba(255, 255, 255, .86), rgba(220, 237, 241, .68));
    box-shadow:
        0 6px 15px rgba(42, 76, 91, .08),
        0 0 10px rgba(91, 154, 166, .1),
        inset 0 0 0 1px rgba(255, 255, 255, .62),
        inset -1px -1px 2px rgba(94, 142, 159, .14);
}

/* Stage 3: compact refractive-glass status badge with an online pulse. */
.kh-main-hero-showcase__eyebrow {
    position: relative;
    isolation: isolate;
    min-height: 34px;
    padding: 0 13px;
    gap: 8px;
    overflow: visible;
    border: 1px solid rgba(255, 255, 255, .94);
    border-radius: 14px;
    color: #315463;
    background:
        radial-gradient(ellipse at 50% -18%, rgba(255, 255, 255, .96) 0%, rgba(255, 255, 255, .22) 50%, transparent 72%),
        radial-gradient(ellipse at 50% 118%, rgba(104, 173, 184, .09) 0%, transparent 62%),
        linear-gradient(155deg, rgba(255, 255, 255, .62), rgba(230, 241, 246, .42));
    box-shadow:
        0 5px 12px rgba(47, 79, 99, .045),
        0 0 11px rgba(255, 255, 255, .72),
        0 0 15px rgba(91, 154, 166, .1),
        inset 0 0 0 1px rgba(255, 255, 255, .7),
        inset 1px 0 2px rgba(255, 255, 255, .78),
        inset -1px 0 3px rgba(133, 174, 191, .2),
        inset 0 2px 2px rgba(255, 255, 255, .94),
        inset 0 -2px 4px rgba(104, 173, 184, .1);
    -webkit-backdrop-filter: blur(20px) saturate(1.08) brightness(1.05);
    backdrop-filter: blur(20px) saturate(1.08) brightness(1.05);
    font-size: clamp(10px, .68vw, 11px);
    line-height: 1;
}

.kh-main-hero-showcase__eyebrow::before,
.kh-main-hero-showcase__eyebrow::after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.kh-main-hero-showcase__eyebrow::before {
    z-index: 0;
    inset: 1px;
    border-radius: 13px;
    background:
        radial-gradient(circle at 7% 13%, rgba(255, 255, 255, 1) 0 1px, transparent 9px),
        radial-gradient(circle at 94% 14%, rgba(255, 255, 255, .94) 0 1px, transparent 10px),
        linear-gradient(116deg, rgba(255, 255, 255, .74), rgba(255, 255, 255, .12) 22%, transparent 43%),
        linear-gradient(180deg, rgba(255, 255, 255, .52), transparent 12%, transparent 86%, rgba(255, 255, 255, .3));
    box-shadow:
        inset 1px 0 0 rgba(255, 255, 255, .52),
        inset -1px 0 0 rgba(111, 159, 177, .14),
        inset 0 1px 0 rgba(255, 255, 255, .84),
        inset 0 -1px 0 rgba(111, 159, 177, .12);
    opacity: .84;
}

.kh-main-hero-showcase__eyebrow::after {
    z-index: 0;
    inset: -2px;
    padding: 1px;
    border-radius: 16px;
    background: conic-gradient(from 205deg,
        rgba(130, 184, 196, .68),
        rgba(255, 255, 255, 1) 56deg,
        rgba(181, 215, 223, .8) 124deg,
        rgba(255, 255, 255, 1) 196deg,
        rgba(121, 178, 192, .58) 272deg,
        rgba(255, 255, 255, .98) 332deg,
        rgba(130, 184, 196, .68));
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask-composite: exclude;
    opacity: .66;
    filter: drop-shadow(0 0 3px rgba(255, 255, 255, .9)) drop-shadow(0 0 6px rgba(91, 154, 166, .2));
}

.kh-main-hero-showcase__eyebrow-text,
.kh-main-hero-showcase__online-dot {
    position: relative;
    z-index: 1;
}

.kh-main-hero-showcase__online-dot {
    display: block;
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
    border: 1px solid rgba(255, 255, 255, .94);
    border-radius: 50%;
    background: #24c96b;
    box-shadow:
        0 0 0 3px rgba(36, 201, 107, .12),
        0 0 9px rgba(36, 201, 107, .62),
        inset 0 1px 1px rgba(255, 255, 255, .78);
}

.kh-main-hero-showcase__online-dot::after {
    content: "";
    position: absolute;
    inset: -5px;
    border: 1px solid rgba(36, 201, 107, .48);
    border-radius: 50%;
    animation: khMainHeroOnlinePulse 1.8s ease-out infinite;
}

@keyframes khMainHeroOnlinePulse {
    0% {
        transform: scale(.68);
        opacity: .78;
    }
    72%,
    100% {
        transform: scale(1.45);
        opacity: 0;
    }
}

@media (max-width: 900px) {
    .kh-main-hero-showcase__eyebrow {
        min-height: 36px;
        padding: 0 12px;
        gap: 8px;
        border-radius: 14px;
        font-size: 10.5px;
    }
}

/* Stage 3.1: premium glass nameplate instead of a browser-style status pill. */
.kh-main-hero-showcase__eyebrow {
    min-height: 38px;
    padding: 0 13px;
    gap: 9px;
    border-color: rgba(151, 187, 201, .58);
    border-radius: 12px;
    color: #183746;
    background:
        radial-gradient(ellipse at 48% -18%, rgba(255, 255, 255, .82), rgba(255, 255, 255, .12) 48%, transparent 70%),
        radial-gradient(ellipse at 50% 115%, rgba(91, 168, 180, .13), transparent 60%),
        linear-gradient(150deg, rgba(255, 255, 255, .42), rgba(218, 237, 243, .25));
    box-shadow:
        0 6px 14px rgba(40, 75, 92, .055),
        0 0 10px rgba(255, 255, 255, .48),
        0 0 13px rgba(91, 154, 166, .09),
        inset 0 0 0 1px rgba(255, 255, 255, .48),
        inset 2px 0 3px rgba(255, 255, 255, .54),
        inset -2px 0 3px rgba(104, 159, 178, .18),
        inset 0 2px 2px rgba(255, 255, 255, .72),
        inset 0 -2px 4px rgba(75, 151, 166, .12);
    font-size: clamp(11px, .76vw, 12px);
    font-weight: 720;
    letter-spacing: .005em;
}

.kh-main-hero-showcase__eyebrow::before {
    border-radius: 11px;
    background:
        radial-gradient(circle at 6% 12%, rgba(255, 255, 255, .96) 0 1px, transparent 9px),
        radial-gradient(circle at 95% 13%, rgba(255, 255, 255, .86) 0 1px, transparent 10px),
        linear-gradient(116deg, rgba(255, 255, 255, .58), rgba(255, 255, 255, .08) 23%, transparent 43%),
        linear-gradient(180deg, rgba(255, 255, 255, .38), transparent 14%, transparent 84%, rgba(255, 255, 255, .24));
    opacity: .78;
}

.kh-main-hero-showcase__eyebrow::after {
    border-radius: 14px;
    opacity: .42;
    filter: drop-shadow(0 0 2px rgba(255, 255, 255, .72)) drop-shadow(0 0 4px rgba(91, 154, 166, .13));
}

.kh-main-hero-showcase__online-dot {
    display: grid;
    place-items: center;
    width: 17px;
    height: 17px;
    flex-basis: 17px;
    border-color: rgba(255, 255, 255, .86);
    background:
        radial-gradient(circle at 32% 22%, rgba(255, 255, 255, .96), transparent 34%),
        linear-gradient(145deg, rgba(247, 255, 251, .82), rgba(192, 229, 211, .58));
    box-shadow:
        0 2px 6px rgba(31, 117, 72, .08),
        inset 0 0 0 1px rgba(255, 255, 255, .58),
        inset -1px -1px 2px rgba(54, 143, 97, .12);
}

.kh-main-hero-showcase__online-dot::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #22c96a;
    box-shadow:
        0 0 0 2px rgba(34, 201, 106, .1),
        0 0 7px rgba(34, 201, 106, .58),
        inset 0 1px 1px rgba(255, 255, 255, .72);
}

.kh-main-hero-showcase__online-dot::after {
    top: 50%;
    left: 50%;
    width: 7px;
    height: 7px;
    inset: auto;
    border-color: rgba(34, 201, 106, .42);
    animation-name: khMainHeroOnlinePulseCompact;
}

@keyframes khMainHeroOnlinePulseCompact {
    0% {
        transform: translate(-50%, -50%) scale(.72);
        opacity: .72;
    }
    72%,
    100% {
        transform: translate(-50%, -50%) scale(2.05);
        opacity: 0;
    }
}

@media (max-width: 900px) {
    .kh-main-hero-showcase__eyebrow {
        min-height: 38px;
        font-size: 11px;
    }
}

/* Stage 4: approved Glass Geometry hero scene. */
#kh-main-hero.kh-main-hero-showcase {
    background:
        radial-gradient(ellipse at 78% 46%, rgba(191, 222, 255, .46) 0%, rgba(225, 239, 255, .26) 27%, transparent 58%),
        radial-gradient(ellipse at 19% 4%, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .46) 35%, transparent 67%),
        linear-gradient(118deg, #f9fcff 0%, #f4f9ff 43%, #eaf3ff 100%);
}

.kh-main-hero-showcase__scene {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

.kh-main-hero-showcase__scene::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, .62) 0%, rgba(255, 255, 255, .26) 42%, transparent 67%),
        linear-gradient(180deg, rgba(255, 255, 255, .38), transparent 29%, rgba(122, 181, 244, .07));
}

.kh-main-hero-showcase__scene-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(30px);
}

.kh-main-hero-showcase__scene-glow--top {
    top: -24%;
    right: 2%;
    width: 54%;
    height: 58%;
    background: rgba(255, 255, 255, .72);
}

.kh-main-hero-showcase__scene-glow--bottom {
    right: -5%;
    bottom: -32%;
    width: 62%;
    height: 65%;
    background: rgba(101, 175, 255, .16);
}

.kh-main-hero-showcase::before {
    z-index: 1;
    background: linear-gradient(90deg, rgba(255, 255, 255, .14), transparent 54%);
}

.kh-main-hero-showcase::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    z-index: 2;
    width: auto;
    height: 24%;
    pointer-events: none;
    background: linear-gradient(180deg, transparent, rgba(111, 174, 245, .08));
    filter: none;
    opacity: 1;
    transform: none;
    animation: none;
}

.kh-main-hero-showcase__background,
.kh-main-hero-showcase__podium,
.kh-main-hero-showcase__service-icon,
.kh-main-hero-showcase__orbit,
.kh-main-hero-showcase__crystal {
    display: none !important;
}

.kh-main-hero-showcase__geometry {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
    pointer-events: none;
}

.kh-main-hero-showcase__geometry-grid {
    position: absolute;
    top: 11%;
    right: 1.5%;
    width: 47%;
    height: 66%;
    opacity: .24;
    background-image:
        linear-gradient(rgba(101, 151, 219, .16) 1px, transparent 1px),
        linear-gradient(90deg, rgba(101, 151, 219, .16) 1px, transparent 1px);
    background-size: 9.4% 13%;
    -webkit-mask-image: radial-gradient(ellipse at 63% 47%, #000 0%, rgba(0, 0, 0, .72) 38%, transparent 75%);
    mask-image: radial-gradient(ellipse at 63% 47%, #000 0%, rgba(0, 0, 0, .72) 38%, transparent 75%);
}

.kh-main-hero-showcase__geometry-ring {
    position: absolute;
    border: 1px solid rgba(155, 194, 237, .48);
    border-radius: 50%;
    background: linear-gradient(145deg, rgba(255, 255, 255, .08), rgba(205, 228, 255, .045));
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, .62),
        0 0 18px rgba(116, 173, 238, .11),
        inset 0 0 18px rgba(255, 255, 255, .48);
}

.kh-main-hero-showcase__geometry-ring::before {
    content: "";
    position: absolute;
    inset: 4px;
    border-top: 1px solid rgba(255, 255, 255, .92);
    border-radius: inherit;
    opacity: .74;
}

.kh-main-hero-showcase__geometry-ring--outer {
    top: 8%;
    right: -4.5%;
    width: 49%;
    height: 68%;
    transform: rotate(-2deg);
}

.kh-main-hero-showcase__geometry-ring--middle {
    top: 13.5%;
    right: 1.3%;
    width: 42.5%;
    height: 58%;
    border-color: rgba(132, 181, 234, .42);
}

.kh-main-hero-showcase__geometry-ring--inner {
    top: 19%;
    right: 6.7%;
    width: 36%;
    height: 48%;
    border-color: rgba(255, 255, 255, .86);
    box-shadow:
        0 0 0 1px rgba(143, 190, 239, .28),
        0 0 24px rgba(255, 255, 255, .55),
        inset 0 0 22px rgba(255, 255, 255, .4);
}

.kh-main-hero-showcase__geometry-base {
    position: absolute;
    top: 73.8%;
    right: 3.8%;
    width: 46.7%;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .96) 13%, rgba(91, 167, 247, .58) 50%, rgba(255, 255, 255, .96) 87%, transparent);
    box-shadow:
        0 -1px 7px rgba(255, 255, 255, .9),
        0 4px 18px rgba(72, 155, 245, .27),
        0 13px 32px rgba(72, 155, 245, .12);
}

.kh-main-hero-showcase__geometry-mark {
    position: absolute;
    top: 15.8%;
    right: 20.2%;
    width: 5.2%;
    height: auto;
    overflow: visible;
    fill: none;
    stroke: #5f8fc8;
    stroke-width: 3.5;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: .38;
    filter: drop-shadow(0 1px 0 rgba(255, 255, 255, .96)) drop-shadow(0 4px 8px rgba(74, 126, 188, .12));
}

@media (max-width: 900px) {
    #kh-main-hero.kh-main-hero-showcase {
        background:
            radial-gradient(ellipse at 70% 72%, rgba(171, 214, 255, .34), transparent 48%),
            linear-gradient(145deg, #fbfdff, #edf6ff);
    }

    .kh-main-hero-showcase__geometry-grid,
    .kh-main-hero-showcase__geometry-ring--outer {
        display: none;
    }

    .kh-main-hero-showcase__geometry-ring--middle {
        top: 49%;
        right: -30%;
        width: 105%;
        height: 43%;
        opacity: .56;
    }

    .kh-main-hero-showcase__geometry-ring--inner {
        top: 54%;
        right: -17%;
        width: 82%;
        height: 33%;
        opacity: .62;
    }

    .kh-main-hero-showcase__geometry-base {
        top: auto;
        right: 8%;
        bottom: 7%;
        width: 84%;
    }

    .kh-main-hero-showcase__geometry-mark {
        top: 49%;
        right: 43%;
        width: 13%;
        opacity: .22;
    }
}

/* Stage 5: exact reconstruction of the approved Glass Geometry concept. */
@media (min-width: 901px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        aspect-ratio: 1710 / 626;
        border: 1px solid rgba(190, 211, 236, .48);
        border-top-color: rgba(225, 235, 247, .22);
        border-radius: 27px;
        background: #f8fbff;
        box-shadow: 0 20px 60px rgba(44, 82, 143, .08);
    }

    .kh-main-hero-showcase__scene,
    .kh-main-hero-showcase::before,
    .kh-main-hero-showcase::after {
        display: none;
    }

    .kh-main-hero-showcase__geometry {
        z-index: 1;
        background-image: url("assets/home-hero/keyhub-glass-arch-raster-v4.webp");
        background-position: center -1px;
        background-size: 100% calc(100% + 1px);
        background-repeat: no-repeat;
    }

    .kh-main-hero-showcase__geometry-scene {
        display: none;
    }

    .kh-main-hero-showcase__geometry-wall {
        opacity: .042;
    }

    .kh-main-hero-showcase__geometry-floor {
        opacity: .34;
    }

    .kh-main-hero-showcase__geometry-dome,
    .kh-main-hero-showcase__geometry-podium {
        transform-box: fill-box;
        transform-origin: center;
    }

    .kh-main-hero-showcase__geometry-highlight {
        filter: drop-shadow(0 0 4px rgba(255, 255, 255, .55));
    }

    .kh-main-hero-showcase__geometry-podium {
        transform: none;
    }

    .kh-main-hero-showcase__geometry-mark {
        top: 17%;
        right: 22.305%;
        width: 4.7%;
        height: auto;
        display: block;
        object-fit: contain;
        z-index: 2;
        opacity: .96;
        mix-blend-mode: multiply;
        filter: contrast(1.12) saturate(1.06);
        -webkit-mask-image: radial-gradient(ellipse at 50% 49%, #000 0 56%, rgba(0, 0, 0, .9) 72%, transparent 96%);
        mask-image: radial-gradient(ellipse at 50% 49%, #000 0 56%, rgba(0, 0, 0, .9) 72%, transparent 96%);
    }

    .kh-main-hero-showcase__geometry-mark-tool {
        fill: #5e8fc8;
        stroke: none;
    }

    .kh-main-hero-showcase__copy {
        top: 9.6%;
        left: 5.4%;
    }

    #kh-main-hero.kh-main-hero-showcase h1 {
        margin-top: 22px !important;
    }

    #kh-main-hero.kh-main-hero-showcase p {
        margin-top: 18px;
    }

    .kh-main-hero-showcase__actions {
        margin-top: 18px;
    }

    .kh-main-hero-showcase__features {
        top: 64.2%;
        left: 5.25%;
        width: 42.8%;
        height: 20.8%;
    }

    .kh-main-hero-showcase__products {
        top: 34.5%;
        right: 6.4%;
        width: 35.8%;
        height: 37.2%;
    }
}

@media (max-width: 900px) {
    .kh-main-hero-showcase__geometry {
        background-image: none;
    }

    .kh-main-hero-showcase__geometry-mark {
        mix-blend-mode: multiply;
        -webkit-mask-image: radial-gradient(ellipse at 50% 49%, #000 0 56%, rgba(0, 0, 0, .9) 72%, transparent 96%);
        mask-image: radial-gradient(ellipse at 50% 49%, #000 0 56%, rgba(0, 0, 0, .9) 72%, transparent 96%);
    }

    .kh-main-hero-showcase__geometry-scene {
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
    }
}

/* Stage 6: dedicated mobile composition for the approved raster Glass Geometry scene. */
@media (max-width: 900px) {
    .home #kh-main-hero.kh-main-hero-showcase,
    #kh-main-hero.kh-main-hero-showcase {
        box-sizing: border-box;
        width: calc(100vw - 16px) !important;
        max-width: calc(100vw - 16px) !important;
        margin: 8px auto 24px !important;
        padding: 22px 16px 18px;
        overflow: hidden;
        border-radius: 24px;
        background: linear-gradient(150deg, #fbfdff 0%, #f4f9ff 54%, #eaf3fd 100%);
    }

    .kh-main-hero-showcase__copy,
    .kh-main-hero-showcase__visual,
    .kh-main-hero-showcase__actions,
    .kh-main-hero-showcase__products,
    .kh-main-hero-showcase__features {
        min-width: 0;
    }

    .kh-main-hero-showcase__copy {
        width: 100%;
        max-width: 440px;
        margin: 0 auto;
        text-align: center;
    }

    .kh-main-hero-showcase__eyebrow {
        max-width: 100%;
        margin-inline: auto;
    }

    #kh-main-hero.kh-main-hero-showcase h1 {
        margin-top: 24px !important;
        font-size: clamp(30px, 8.2vw, 35px);
        line-height: 1.05;
    }

    #kh-main-hero.kh-main-hero-showcase p {
        width: 100%;
        max-width: 420px;
        margin: 20px auto 0;
        white-space: normal;
        overflow-wrap: normal;
        font-size: 14px;
        line-height: 1.48;
    }

    .kh-main-hero-showcase__actions {
        width: 100%;
        max-width: 432px;
        margin: 20px auto 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .kh-main-hero-showcase__button {
        width: 100%;
        min-width: 0 !important;
        min-height: 52px;
        padding-inline: 10px;
        white-space: nowrap;
    }

    .kh-main-hero-showcase__visual {
        width: calc(100% + 32px);
        max-width: none;
        height: 620px;
        margin: 18px -16px 0;
        overflow: hidden;
    }

    .kh-main-hero-showcase__geometry {
        background-image: url("assets/home-hero/keyhub-glass-arch-raster-v4.webp");
        background-position: 82% 70px;
        background-size: auto 620px;
        background-repeat: no-repeat;
    }

    .kh-main-hero-showcase__geometry::after {
        content: "";
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        left: 0;
        height: 118px;
        pointer-events: none;
        background: linear-gradient(to bottom,
            #f5f9fe 0,
            #f5f9fe 52px,
            rgba(245, 249, 254, .92) 70px,
            rgba(245, 249, 254, .42) 92px,
            rgba(245, 249, 254, 0) 118px);
    }

    .kh-main-hero-showcase__geometry-scene {
        display: none !important;
    }

    .kh-main-hero-showcase__geometry-mark {
        top: 102px;
        right: auto;
        left: 50%;
        width: 46px;
        height: auto;
        display: block;
        transform: translateX(-50%);
        z-index: 2;
        opacity: .82;
        filter: contrast(1.08) saturate(1.04);
    }

    .kh-main-hero-showcase__products {
        top: 164px;
        right: auto;
        left: 50%;
        width: min(calc(100% - 32px), 400px);
        max-width: 400px;
        height: auto;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: 180px;
        gap: 14px;
        transform: translateX(-50%);
        z-index: 3;
    }

    .kh-main-hero-showcase__product {
        box-sizing: border-box;
        width: 100%;
        min-width: 0;
        height: 180px;
        padding: 14px 8px 11px;
        overflow: hidden;
        border-radius: 20px;
    }

    .kh-main-hero-showcase__product img {
        width: 52px;
        max-width: 38%;
        max-height: 56px;
    }

    .kh-main-hero-showcase__product strong {
        margin-top: 7px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 13px;
    }

    .kh-main-hero-showcase__product small {
        margin-top: 5px;
        font-size: 10.5px;
        line-height: 1.2;
    }

    .kh-main-hero-showcase__product > span {
        min-width: 54px;
        min-height: 26px;
        padding: 5px 9px;
        font-size: 10px;
    }

    .kh-main-hero-showcase__features {
        width: 100%;
        margin-top: 0;
    }

    .kh-main-hero-showcase__feature b br,
    .kh-main-hero-showcase__feature small br {
        display: block;
    }
}

@media (max-width: 430px) {
    .kh-main-hero-showcase__actions {
        grid-template-columns: 1fr;
        width: calc(100% - 8px);
        gap: 10px;
    }

    .kh-main-hero-showcase__visual {
        height: 600px;
    }

    .kh-main-hero-showcase__geometry {
        background-position: 82% 72px;
        background-size: auto 600px;
    }

    .kh-main-hero-showcase__geometry-mark {
        top: 104px;
        width: 42px;
    }

    .kh-main-hero-showcase__products {
        top: 160px;
        width: calc(100% - 24px);
        grid-auto-rows: 174px;
        gap: 12px;
    }

    .kh-main-hero-showcase__product {
        height: 174px;
        padding-top: 13px;
    }

    .kh-main-hero-showcase__product img {
        width: 48px;
    }
}

/* Stage 9: compact mobile hero without the duplicated product showcase. */
@media (max-width: 900px) {
    .kh-main-hero-showcase__visual {
        display: none !important;
    }

    .kh-main-hero-showcase__features {
        margin-top: 22px;
    }
}

/* Mobile Stage 32: compact three-column hero benefits. */
@media (max-width: 767px) {
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__features {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        align-items: stretch;
        width: 100%;
        min-height: 0;
        margin-top: 18px;
        padding: 13px 6px 14px;
        overflow: visible;
        border-radius: 20px;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 40px minmax(30px, auto);
        align-content: start;
        align-items: start;
        justify-items: center;
        gap: 9px;
        min-width: 0;
        min-height: 79px;
        padding: 0 6px;
        border-right: 0;
        border-bottom: 0;
        text-align: center;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature:not(:last-child)::after {
        top: 5px;
        right: 0;
        bottom: 5px;
        left: auto;
        width: 1px;
        height: auto;
        background: linear-gradient(180deg, transparent, rgba(118, 151, 207, .3) 18%, rgba(255, 255, 255, .86) 50%, rgba(118, 151, 207, .26) 82%, transparent);
        box-shadow: 1px 0 0 rgba(255, 255, 255, .42);
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__features::after {
        border-radius: 22px;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature-icon {
        width: 40px;
        height: 40px;
        margin: 0;
        border-radius: 12px;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature-icon svg {
        width: 24px;
        height: 24px;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature b {
        display: block;
        min-height: 30px;
        margin: 0;
        color: #18335f;
        font-size: 0;
        font-weight: 700;
        line-height: 1.24;
        text-align: center;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature b::after {
        display: block;
        font-size: 10.5px;
        line-height: 1.24;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature:nth-child(1) b::after {
        content: "Доставка на Email";
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature:nth-child(2) b::after {
        content: "Официальные ключи";
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature:nth-child(3) b::after {
        content: "Гарантия активации";
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature small {
        display: none;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__eyebrow {
        min-height: 24px;
        padding: 5px 9px;
        gap: 6px;
        border-radius: 999px;
        font-size: 10px;
        line-height: 1;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__eyebrow::before,
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__eyebrow::after {
        border-radius: inherit;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__online-dot {
        width: 10px;
        height: 10px;
        flex: 0 0 10px;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__eyebrow-text {
        font-size: 0;
    }

    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__eyebrow-text::after {
        content: "Цифровые лицензии";
        font-size: 10px;
        line-height: 1;
    }
}

/* Mobile Stage 35 cascade lock: actual WordPress menu wrapper. */
@media (max-width: 767px) {
    html body .js-mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner,
    html body .mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        padding: 10px !important;
        border: 1px solid rgba(128, 166, 224, .24) !important;
        border-radius: 0 0 20px 20px !important;
        background:
            radial-gradient(circle at 8% 0%, rgba(255, 255, 255, .98), transparent 42%),
            linear-gradient(150deg, rgba(255, 255, 255, .96), rgba(239, 247, 255, .94)) !important;
    }

    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li {
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 48px !important;
        margin: 0 !important;
    }

    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li:first-child {
        grid-column: 1 / -1 !important;
    }

    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li > a,
    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li > span {
        width: 100% !important;
        min-height: 48px !important;
        padding: 0 13px !important;
        font-size: 13px !important;
    }

    html body .js-mobile-menu-placeholder.open,
    html body .mobile-menu-placeholder.open {
        margin-top: 0 !important;
    }
}

/* Mobile Stage 38 cascade lock: header order and compact controls. */
@media (max-width: 767px) {
    html body #masthead.site-header .site-header-inner.full {
        display: grid !important;
        grid-template-areas: "logo search cart account burger" !important;
        grid-template-columns: minmax(104px, 1fr) repeat(4, 44px) !important;
        grid-template-rows: 64px !important;
        align-items: center !important;
        gap: 0 4px !important;
        width: calc(100% - 20px) !important;
        min-height: 64px !important;
        height: 64px !important;
        margin: 0 10px !important;
        padding: 0 !important;
    }

    html body #masthead.site-header .site-branding {
        grid-area: logo !important;
        justify-self: stretch !important;
        justify-content: flex-start !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 48px !important;
        margin: 0 !important;
        padding: 0 4px 0 0 !important;
    }

    html body #masthead.site-header .site-logotype,
    html body #masthead.site-header .site-logotype img {
        width: 100% !important;
        max-width: 148px !important;
        min-width: 0 !important;
        height: 44px !important;
        margin: 0 !important;
        object-fit: contain !important;
        object-position: left center !important;
    }

    html body #masthead.site-header .header-search.header-search {
        grid-area: search !important;
        display: flex !important;
        position: relative !important;
        overflow: visible !important;
        z-index: 10020 !important;
    }

    html body #masthead.site-header .site-header-cart {
        grid-area: cart !important;
    }

    html body #masthead.site-header .js-header-customer-account {
        grid-area: account !important;
    }

    html body #masthead.site-header .js-humburger {
        grid-area: burger !important;
        position: relative !important;
    }

    html body #masthead.site-header .js-header-favorite {
        display: none !important;
    }

    html body #masthead.site-header .header-mobile-items-container {
        display: contents !important;
    }

    html body #masthead.site-header .header-search.header-search,
    html body #masthead.site-header .site-header-cart,
    html body #masthead.site-header .js-header-customer-account,
    html body #masthead.site-header .js-humburger {
        align-self: center !important;
        justify-self: center !important;
        box-sizing: border-box !important;
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid rgba(128, 151, 183, .22) !important;
        border-radius: 13px !important;
        background: linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(244, 248, 253, .96)) !important;
        box-shadow: 0 4px 12px rgba(39, 66, 101, .08), inset 0 1px 0 rgba(255, 255, 255, .95) !important;
        color: #172033 !important;
    }

    html body #masthead.site-header .site-header-cart .js-header-cart-link,
    html body #masthead.site-header .js-header-customer-account,
    html body #masthead.site-header .js-humburger,
    html body #masthead.site-header .header-search .search-submit {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body #masthead.site-header .header-search .search-form {
        display: block !important;
        position: relative !important;
        width: 44px !important;
        height: 44px !important;
        margin: 0 !important;
    }

    html body #masthead.site-header .header-search:not(.kh-search-open) .search-form > label {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
    }

    html body #masthead.site-header .header-search .search-submit {
        position: absolute !important;
        inset: 0 !important;
        border: 0 !important;
        border-radius: 13px !important;
        background: transparent !important;
        color: #172033 !important;
        font-size: 0 !important;
    }

    html body #masthead.site-header .header-search.kh-search-open .search-form {
        position: fixed !important;
        top: 70px !important;
        left: 12px !important;
        right: 12px !important;
        width: auto !important;
        height: 52px !important;
    }

    html body #masthead.site-header .header-search.kh-search-open .search-form > label {
        position: absolute !important;
        inset: 0 50px 0 0 !important;
        width: auto !important;
        height: auto !important;
        overflow: visible !important;
        clip: auto !important;
    }
}

@media (max-width: 359px) {
    html body #masthead.site-header .site-header-inner.full {
        grid-template-columns: minmax(88px, 1fr) repeat(4, 44px) !important;
        gap: 0 2px !important;
        width: calc(100% - 12px) !important;
        margin: 0 6px !important;
    }
}

/* Keep the dormant desktop catalog modal from intercepting the mobile catalog button. */
html body #catalogModal:not(.show),
html body #catalogOverlay:not(.show) {
    pointer-events: none !important;
}

html body #catalogModal.show,
html body #catalogOverlay.show {
    pointer-events: auto !important;
}

/* Desktop Stage 40: compact MacBook header action rail. */
@media (min-width: 1024px) and (max-width: 1700px) {
    html body:not(.is-mobile) #masthead.site-header .site-header-inner.full {
        display: grid !important;
        grid-template-areas: "logo menu search account cart favorite" !important;
        grid-template-columns: minmax(160px, 194px) minmax(0, 1fr) repeat(4, 44px) !important;
        grid-template-rows: 64px !important;
        align-items: center !important;
        gap: 0 8px !important;
        min-height: 76px !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) #masthead.site-header .site-branding {
        grid-area: logo !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) #masthead.site-header .site-logotype,
    html body:not(.is-mobile) #masthead.site-header .site-logotype img {
        width: 100% !important;
        max-width: 188px !important;
        height: 52px !important;
        object-fit: contain !important;
        object-position: left center !important;
    }

    html body:not(.is-mobile) #masthead.site-header .top-menu {
        grid-area: menu !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-mobile-items-container,
    html body:not(.is-mobile) #masthead.site-header .header-mobile-item {
        display: contents !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search.header-search {
        grid-area: search !important;
        display: flex !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-customer-account.header-customer-account {
        grid-area: account !important;
        display: flex !important;
    }

    html body:not(.is-mobile) #masthead.site-header .site-header-cart.site-header-cart {
        grid-area: cart !important;
        display: flex !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-favorite.header-favorite {
        grid-area: favorite !important;
        display: flex !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search.header-search,
    html body:not(.is-mobile) #masthead.site-header .header-customer-account.header-customer-account,
    html body:not(.is-mobile) #masthead.site-header .site-header-cart.site-header-cart,
    html body:not(.is-mobile) #masthead.site-header .header-favorite.header-favorite {
        align-self: center !important;
        justify-self: center !important;
        box-sizing: border-box !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        inset: auto !important;
        border: 1px solid rgba(128, 151, 183, .2) !important;
        border-radius: 13px !important;
        background: linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(245, 248, 252, .96)) !important;
        box-shadow: 0 4px 12px rgba(39, 66, 101, .07), inset 0 1px 0 rgba(255, 255, 255, .95) !important;
        transform: none !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-form {
        display: block !important;
        position: relative !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-form > label {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-submit,
    html body:not(.is-mobile) #masthead.site-header .header-customer-account.header-customer-account,
    html body:not(.is-mobile) #masthead.site-header .site-header-cart .header-cart__link,
    html body:not(.is-mobile) #masthead.site-header .header-favorite.header-favorite {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        inset: auto !important;
        transform: none !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-submit {
        border: 0 !important;
        border-radius: 13px !important;
        background: transparent !important;
        font-size: 0 !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-customer-account__text {
        display: none !important;
    }
}

/* Stage 41: one stable desktop grid after all legacy header rules. */
@media (min-width: 1024px) {
    html body:not(.is-mobile) #masthead.site-header .header-mobile-items-container,
    html body:not(.is-mobile) #masthead.site-header .header-mobile-item {
        display: contents !important;
    }

    html body:not(.is-mobile) #masthead.site-header .site-branding { grid-area: logo !important; }
    html body:not(.is-mobile) #masthead.site-header .top-menu { grid-area: menu !important; }
    html body:not(.is-mobile) #masthead.site-header .header-search { grid-area: search !important; }
    html body:not(.is-mobile) #masthead.site-header .header-customer-account { grid-area: account !important; display: flex !important; }
    html body:not(.is-mobile) #masthead.site-header .site-header-cart { grid-area: cart !important; display: flex !important; }
    html body:not(.is-mobile) #masthead.site-header .header-favorite { grid-area: favorite !important; display: flex !important; }

    html body:not(.is-mobile) #masthead.site-header .header-search,
    html body:not(.is-mobile) #masthead.site-header .header-customer-account,
    html body:not(.is-mobile) #masthead.site-header .site-header-cart,
    html body:not(.is-mobile) #masthead.site-header .header-favorite,
    html body:not(.is-mobile) #masthead.site-header .header-search .search-form,
    html body:not(.is-mobile) #masthead.site-header .header-search .search-submit,
    html body:not(.is-mobile) #masthead.site-header .site-header-cart .header-cart__link {
        transform: none !important;
        transition-property: color, background-color, border-color, box-shadow, opacity !important;
    }
}

@media (min-width: 1701px) {
    html body:not(.is-mobile) #masthead.site-header .site-header-inner.full {
        display: grid !important;
        grid-template-areas: "logo menu search account favorite cart" !important;
        grid-template-columns: minmax(190px, 220px) minmax(0, 1fr) minmax(240px, 320px) repeat(3, 44px) !important;
        grid-template-rows: 64px !important;
        align-items: center !important;
        gap: 0 8px !important;
        min-height: 86px !important;
        overflow: visible !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search.header-search {
        display: block !important;
        width: 100% !important;
        min-width: 240px !important;
        max-width: 320px !important;
        height: 44px !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-form {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 44px !important;
        width: 100% !important;
        min-width: 240px !important;
        max-width: 320px !important;
        height: 44px !important;
        margin: 0 !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-search .search-field {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 44px !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    html body:not(.is-mobile) #masthead.site-header .header-customer-account,
    html body:not(.is-mobile) #masthead.site-header .header-favorite,
    html body:not(.is-mobile) #masthead.site-header .site-header-cart {
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
    }
}

@media (max-width: 767px) {
    html body #masthead.site-header .site-branding {
        inset: auto !important;
        transform: none !important;
    }

    html body #masthead.site-header .js-humburger {
        inset: auto !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
    }
}

/* Stage 42 final cascade lock. Keep this block at the physical end of the file. */
@media (min-width: 1024px) and (max-width: 1700px) {
    html body:not(.is-mobile) #masthead.site-header .site-header-inner.full {
        grid-template-columns: minmax(160px, 194px) minmax(0, 1fr) minmax(180px, 240px) repeat(3, 44px) !important;
    }
    html body:not(.is-mobile) #masthead.site-header .header-search.header-search {
        display: block !important;
        justify-self: stretch !important;
        width: 100% !important;
        min-width: 180px !important;
        max-width: 240px !important;
        padding: 0 !important;
    }
    html body:not(.is-mobile) #masthead.site-header .header-search .search-form {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 44px !important;
        width: 100% !important;
        min-width: 180px !important;
        max-width: 240px !important;
        height: 44px !important;
    }
    html body:not(.is-mobile) #masthead.site-header .header-search .search-form > label {
        position: static !important;
        display: block !important;
        width: auto !important;
        height: 44px !important;
        overflow: visible !important;
        clip: auto !important;
    }
    html body:not(.is-mobile) #masthead.site-header .header-search .search-field {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 44px !important;
        padding: 0 14px !important;
        border: 0 !important;
        background: transparent !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
    html body:not(.is-mobile) #masthead.site-header .header-search .search-submit {
        position: static !important;
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    html body #masthead.site-header .site-header-inner.full {
        display: grid !important;
        grid-template-areas: "logo search cart account burger" !important;
        grid-template-columns: minmax(180px, 1fr) repeat(4, 48px) !important;
        grid-template-rows: 72px !important;
        align-items: center !important;
        gap: 0 6px !important;
        width: calc(100% - 24px) !important;
        height: 72px !important;
        min-height: 72px !important;
        margin: 0 12px !important;
        padding: 0 !important;
        overflow: visible !important;
    }
    html body #masthead.site-header .header-mobile-items-container,
    html body #masthead.site-header .header-mobile-item { display: contents !important; }
    html body #masthead.site-header .site-branding { grid-area: logo !important; inset: auto !important; transform: none !important; justify-self: start !important; }
    html body #masthead.site-header .header-search { grid-area: search !important; display: flex !important; }
    html body #masthead.site-header .site-header-cart { grid-area: cart !important; display: flex !important; }
    html body #masthead.site-header .js-header-customer-account { grid-area: account !important; display: flex !important; }
    html body #masthead.site-header .js-humburger { grid-area: burger !important; display: flex !important; inset: auto !important; transform: none !important; }
    html body #masthead.site-header .top-menu,
    html body #masthead.site-header .js-header-favorite { display: none !important; }
    html body #masthead.site-header .header-search.header-search,
    html body #masthead.site-header .site-header-cart,
    html body #masthead.site-header .js-header-customer-account,
    html body #masthead.site-header .js-humburger {
        align-self: center !important;
        justify-self: center !important;
        box-sizing: border-box !important;
        width: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        max-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid rgba(128, 151, 183, .22) !important;
        border-radius: 14px !important;
        background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(244,248,253,.96)) !important;
        box-shadow: 0 4px 12px rgba(39,66,101,.08), inset 0 1px 0 rgba(255,255,255,.95) !important;
    }
    html body #masthead.site-header .header-search .search-form {
        display: block !important;
        position: relative !important;
        width: 48px !important;
        height: 48px !important;
        margin: 0 !important;
    }
    html body #masthead.site-header .header-search .search-submit,
    html body #masthead.site-header .site-header-cart .header-cart__link,
    html body #masthead.site-header .js-header-customer-account,
    html body #masthead.site-header .js-humburger {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    html body.home #kh-main-hero.kh-main-hero-showcase {
        box-sizing: border-box !important;
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px) !important;
        margin: 16px auto 32px !important;
        padding: 28px 28px 22px !important;
        overflow: hidden !important;
    }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__copy,
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__actions,
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__features {
        position: relative !important;
        inset: auto !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
    }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__copy {
        width: min(100%, 620px) !important;
        max-width: 620px !important;
        margin: 0 auto !important;
        text-align: center !important;
    }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__actions {
        width: min(100%, 480px) !important;
        max-width: 480px !important;
        margin: 20px auto 0 !important;
    }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__visual,
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__products {
        display: none !important;
    }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__features {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        width: min(100%, 620px) !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 18px auto 0 !important;
        padding: 14px 10px !important;
        border-radius: 22px !important;
        overflow: hidden !important;
    }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature {
        display: grid !important;
        grid-template-rows: 42px auto !important;
        align-content: center !important;
        justify-items: center !important;
        gap: 7px !important;
        min-width: 0 !important;
        min-height: 76px !important;
        padding: 0 10px !important;
        text-align: center !important;
    }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature + .kh-main-hero-showcase__feature { border-left: 1px solid rgba(107,141,185,.2) !important; }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature-icon { width: 42px !important; height: 42px !important; margin: 0 !important; }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature b { display: block !important; margin: 0 !important; font-size: 12px !important; line-height: 1.2 !important; text-align: center !important; }
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature b br,
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__feature small { display: none !important; }
}

@media (max-width: 1023px) {
    html body #masthead.site-header .header-search.kh-search-open .search-form {
        position: fixed !important;
        top: 76px !important;
        left: 12px !important;
        right: 12px !important;
        z-index: 10040 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 48px !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 52px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid rgba(116,151,196,.28) !important;
        border-radius: 16px !important;
        background: rgba(255,255,255,.98) !important;
        box-shadow: 0 14px 36px rgba(33,71,122,.18) !important;
        overflow: hidden !important;
    }
    html body #masthead.site-header .header-search.kh-search-open .search-form > label {
        position: static !important;
        display: block !important;
        width: auto !important;
        height: 52px !important;
        margin: 0 !important;
        overflow: visible !important;
        clip: auto !important;
        opacity: 1 !important;
        visibility: visible !important;
        white-space: normal !important;
    }
    html body #masthead.site-header .header-search.kh-search-open .search-field {
        display: block !important;
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 52px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        border: 0 !important;
        outline: 0 !important;
        background: transparent !important;
        color: #172033 !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
    html body #masthead.site-header .header-search.kh-search-open .search-submit {
        position: static !important;
        inset: auto !important;
        right: auto !important;
        left: auto !important;
        display: flex !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 52px !important;
        color: #1167f1 !important;
    }
}

@media (max-width: 767px) {
    html body #masthead.site-header .header-search.kh-search-open .search-form { top: 68px !important; }
}

@media (min-width: 1024px) and (max-width: 1700px) {
    html body.home #kh-main-hero.kh-main-hero-showcase .kh-main-hero-showcase__features {
        top: calc(64.2% + 30px) !important;
    }
}

/* Stage 52 final cascade: precision arrows, shared labels and a neutral utility strip. */
.kh-article-card__more,
.home .kh-home-article-card__footer a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #738198 !important;
    line-height: 1 !important;
}

.kh-article-card__more::before,
.home .kh-home-article-card__footer a::before {
    content: "" !important;
    display: block !important;
    width: 15px !important;
    height: 15px !important;
    background-color: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10h12M11 6l4 4-4 4' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10h12M11 6l4 4-4 4' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.kh-product-picker__arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 16px !important;
    height: 16px !important;
    color: #7a8799 !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

.kh-product-picker__arrow::before {
    content: "" !important;
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    background-color: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10h12M11 6l4 4-4 4' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10h12M11 6l4 4-4 4' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.kh-product-picker__caret {
    color: #7a8799 !important;
}

.kh-product-picker__caret::before {
    content: "" !important;
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    border: 0 !important;
    background-color: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
    transform: none !important;
    transform-origin: center !important;
}

.kh-product-picker__item.is-active .kh-product-picker__caret::before,
.kh-product-picker__item[aria-expanded="true"] .kh-product-picker__caret::before {
    transform: rotate(180deg) !important;
}

.kh-articles-page .kh-article-card__tag,
body.category .kh-article-card__tag {
    color: #7a8799 !important;
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
}

.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .kh-article-card__tag,
body.category .kh-articles-grid > .kh-article-card:first-child .kh-article-card__tag {
    position: static !important;
    inset: auto !important;
    display: inline-flex !important;
    width: fit-content !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-weight: 850 !important;
}

@media (min-width: 768px) {
    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a {
        color: #4f5d70 !important;
        background: transparent !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a::before,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a::before {
        background-color: #6f7c8f !important;
        opacity: .82 !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a:hover,
    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a:focus,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a:hover,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a:focus {
        color: #172033 !important;
        background: #f2f4f7 !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }

    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a:hover::before,
    html body:not(.is-mobile) .super-header.super-header .super-header-inner.super-header-inner a:focus::before,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a:hover::before,
    html body:not(.is-mobile) .dim-header-top.dim-header-top a:focus::before {
        background-color: #4b5565 !important;
        opacity: 1 !important;
    }
}

/* Stage 53 final: overscan the featured-card blur so filter edges remain outside the card. */
@media (min-width: 721px) {
    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child,
    body.category .kh-articles-grid > .kh-article-card:first-child {
        overflow: hidden !important;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail,
    body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail {
        overflow: visible !important;
    }

    .kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail::before,
    body.category .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail::before {
        top: -28px !important;
        bottom: -28px !important;
        height: auto !important;
    }
}

/* Stage 54 final: article archives reuse the approved Popular programs card. */
.kh-articles-sidebar .kh-articles-popular-programs {
    --kh-rec-primary: #0668f7;
    --kh-rec-text: #111827;
    --kh-rec-price: #111827;
    --kh-rec-muted: #9aa4b2;
    --kh-rec-border: #e9eef7;
    --kh-rec-footer: #f3f7ff;
    box-sizing: border-box !important;
    padding: 12px !important;
    border: 1px solid #edf1f7 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(30, 64, 120, .035) !important;
}

.kh-articles-sidebar .kh-articles-popular-programs h2 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    min-height: 28px !important;
    margin: 0 0 10px !important;
    padding: 0 4px !important;
    border: 0 !important;
    color: #111827 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

.kh-articles-sidebar .kh-articles-popular-programs h2::after {
    content: "• подборка";
    flex: 0 0 auto;
    color: var(--kh-rec-primary);
    font-size: 10px;
    font-weight: 500;
    white-space: nowrap;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-products-list {
    display: grid !important;
    gap: 6px !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product {
    position: relative !important;
    isolation: isolate !important;
    display: grid !important;
    grid-template-columns: minmax(92px, 35%) minmax(0, 1fr) 34px !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    height: 116px !important;
    min-height: 116px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--kh-rec-border) !important;
    border-radius: 15px !important;
    background: #fff !important;
    color: var(--kh-rec-text) !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product::before {
    content: "" !important;
    position: absolute !important;
    z-index: -1 !important;
    inset: 0 !important;
    pointer-events: none !important;
    background:
        radial-gradient(110px 106px at 12% 78%, var(--kh-rec-orb, rgba(133, 192, 255, .28)) 0%, transparent 72%),
        linear-gradient(90deg, var(--kh-rec-bg-start, #e8f4ff) 0%, var(--kh-rec-bg-end, #f6fbff) 32%, rgba(255, 255, 255, 0) 54%) !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__image {
    position: relative !important;
    z-index: 1 !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 114px !important;
    min-height: 114px !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__image::before {
    display: none !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__image img {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 106px !important;
    max-height: 106px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    transform: scale(1.08) !important;
    filter: drop-shadow(0 6px 7px rgba(32, 55, 92, .13)) !important;
    transition: transform .2s ease !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__body {
    position: relative !important;
    z-index: 1 !important;
    align-self: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 10px !important;
    min-width: 0 !important;
    padding: 8px 0 !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__title {
    display: -webkit-box !important;
    margin: 0 !important;
    overflow: hidden !important;
    color: var(--kh-rec-text) !important;
    font-size: 12.5px !important;
    font-weight: 750 !important;
    line-height: 1.22 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__price {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
    color: var(--kh-rec-price) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    font-variant-numeric: tabular-nums;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__price del {
    display: block !important;
    color: var(--kh-rec-muted) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__price ins {
    display: block !important;
    color: var(--kh-rec-price) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product::after {
    content: "" !important;
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    align-self: end !important;
    justify-self: end !important;
    width: 34px !important;
    height: 34px !important;
    margin: 0 8px 12px 0 !important;
    border-radius: 50% !important;
    background: #f1f5fc center / 14px 14px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230668f7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m13 6 6 6-6 6'/%3E%3C/svg%3E") !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product:hover,
.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product:focus-visible {
    transform: translateY(-1px) !important;
    border-color: #d6e1f1 !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(30, 64, 120, .065) !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product:hover .kh-single-product__image img,
.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product:focus-visible .kh-single-product__image img {
    transform: scale(1.11) !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product:hover::after,
.kh-articles-sidebar .kh-articles-popular-programs .kh-single-product:focus-visible::after {
    background-color: #eaf1fc !important;
}

.kh-articles-sidebar .kh-articles-popular-programs .kh-single-products-more {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 40px !important;
    margin-top: 8px !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: var(--kh-rec-footer) !important;
    color: #15325f !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

@media (max-width: 360px) {
    .kh-articles-sidebar .kh-articles-popular-programs {
        padding: 10px !important;
    }

    .kh-articles-sidebar .kh-articles-popular-programs .kh-single-product {
        grid-template-columns: 84px minmax(0, 1fr) 34px !important;
        gap: 7px !important;
        height: 108px !important;
        min-height: 108px !important;
    }

    .kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__image {
        height: 106px !important;
        min-height: 106px !important;
    }

    .kh-articles-sidebar .kh-articles-popular-programs .kh-single-product__image img {
        height: 100px !important;
        max-height: 100px !important;
    }
}

/* Stage 55 final: editorial search and category tabs selected from design option 2. */
.kh-articles-content .kh-articles-header h1 {
    margin: 0 0 18px !important;
}

.kh-articles-controls {
    display: grid;
    grid-template-areas: "tabs search";
    grid-template-columns: minmax(0, 1fr) minmax(300px, 410px);
    align-items: end;
    gap: 24px;
    margin: 0 0 28px;
    border-bottom: 1px solid #dfe7f2;
}

.kh-articles-controls .kh-articles-tags {
    grid-area: tabs;
    flex-wrap: nowrap;
    gap: 0;
    min-width: 0;
    margin: 0 !important;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
}

.kh-articles-controls .kh-articles-tags::-webkit-scrollbar {
    display: none;
}

.kh-articles-controls .kh-articles-tag {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 17px;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #536174 !important;
    font-size: 13px;
    font-weight: 700;
    box-shadow: none !important;
    transition: color .18s ease;
}

.kh-articles-controls .kh-articles-tag::after {
    content: "";
    position: absolute;
    right: 17px;
    bottom: -1px;
    left: 17px;
    height: 2px;
    border-radius: 2px 2px 0 0;
    background: transparent;
    transform: scaleX(.55);
    opacity: 0;
    transition: transform .2s ease, opacity .2s ease, background-color .2s ease;
}

.kh-articles-controls .kh-articles-tag:hover {
    color: #172033 !important;
}

.kh-articles-controls .kh-articles-tag.is-active {
    color: #0f5eea !important;
}

.kh-articles-controls .kh-articles-tag.is-active::after {
    background: linear-gradient(90deg, #7567ff 0%, #35bdf8 100%);
    transform: scaleX(1);
    opacity: 1;
}

.kh-articles-controls .kh-articles-search-panel {
    grid-area: search;
    position: relative;
    align-self: center;
    width: 100%;
    margin: 0 0 7px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.kh-articles-controls .kh-articles-search-panel > label {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
}

.kh-articles-controls .kh-articles-search-row {
    position: relative;
    display: block !important;
}

.kh-articles-controls .kh-articles-search-row input,
body.kh-articles-page .kh-articles-controls .kh-articles-search-row input#khArticlesSearch {
    display: block;
    width: 100%;
    height: 44px;
    padding: 0 16px 0 43px !important;
    border: 1px solid #d4deeb;
    border-radius: 12px;
    background: #fff;
    color: #172033;
    font-size: 13px;
    box-shadow: 0 5px 16px rgba(31, 56, 91, .035);
}

.kh-articles-controls .kh-articles-search-row input::placeholder {
    color: #8793a5;
    opacity: 1;
}

.kh-articles-controls .kh-articles-search-row input:focus {
    border-color: #aebfd7;
    box-shadow: 0 0 0 3px rgba(91, 125, 178, .09), 0 8px 20px rgba(31, 56, 91, .05);
}

.kh-articles-controls .kh-articles-search-icon {
    left: 15px;
    width: 17px;
    height: 17px;
    background: #748399;
}

.kh-articles-controls .kh-articles-search-row button {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    border: 0 !important;
    box-shadow: none !important;
    white-space: nowrap !important;
}

.kh-articles-controls .kh-articles-suggestions {
    top: 52px;
    right: 0;
    left: 0;
    z-index: 80;
}

.kh-articles-content > .kh-articles-description {
    max-width: 850px;
    margin: 0 0 28px !important;
}

@media (max-width: 820px) {
    .kh-articles-controls {
        grid-template-areas:
            "search"
            "tabs";
        grid-template-columns: minmax(0, 1fr);
        gap: 10px;
        padding-bottom: 0;
    }

    .kh-articles-controls .kh-articles-search-panel {
        margin: 0 !important;
    }

    .kh-articles-controls .kh-articles-tag {
        min-height: 44px;
        padding: 0 14px;
    }

    .kh-articles-controls .kh-articles-tag::after {
        right: 14px;
        left: 14px;
    }
}

@media (max-width: 480px) {
    .kh-articles-content .kh-articles-header h1 {
        margin-bottom: 14px !important;
        font-size: 30px !important;
    }

    .kh-articles-controls {
        margin-bottom: 22px;
    }

    .kh-articles-controls .kh-articles-tag {
        min-height: 42px;
        padding: 0 12px;
        font-size: 12.5px;
    }
}

/* Stage 56: responsive articles archive repairs */
@media (min-width: 721px) {
    body.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail::before {
        top: 0 !important;
        bottom: 0 !important;
        left: -1px !important;
        width: clamp(64px, 6vw, 88px) !important;
        background: linear-gradient(
            90deg,
            #fff 0%,
            rgba(255, 255, 255, .98) 18%,
            rgba(255, 255, 255, .86) 40%,
            rgba(255, 255, 255, .58) 62%,
            rgba(255, 255, 255, .24) 82%,
            rgba(255, 255, 255, 0) 100%
        ) !important;
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
        -webkit-mask-image: none !important;
        mask-image: none !important;
    }
}

@media (max-width: 720px) {
    body.kh-articles-page .kh-articles-grid > .kh-article-card:first-child {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    body.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail {
        order: 0;
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: auto !important;
        line-height: 0 !important;
        overflow: hidden !important;
    }

    body.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__thumbnail img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        object-fit: contain !important;
    }

    body.kh-articles-page .kh-articles-grid > .kh-article-card:first-child .post-card__body {
        order: 1;
        display: flex !important;
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 20px !important;
        overflow: visible !important;
        justify-content: flex-start !important;
    }
}

@media (max-width: 767px) {
    html body.kh-articles-page #masthead.site-header .site-header-inner.full {
        grid-template-areas: "logo cart account burger" !important;
        grid-template-columns: minmax(116px, 1fr) repeat(3, 44px) !important;
    }

    html body.kh-articles-page #masthead.site-header .header-search.header-search {
        display: none !important;
    }
}

/* Stage 57: stable mobile/tablet header search interaction */
@media (max-width: 1023px) {
    html body #masthead.site-header .header-search:not(.kh-native-search):not(.kh-search-open) .search-form {
        position: absolute !important;
        inset: 0 !important;
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search):not(.kh-search-open) .search-submit {
        position: absolute !important;
        inset: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #172033 !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search) .search-submit::before,
    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open .search-submit::before {
        content: "" !important;
        display: block !important;
        width: 21px !important;
        height: 21px !important;
        background-color: currentColor !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") center / contain no-repeat !important;
        font-size: 0 !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open {
        position: relative !important;
        cursor: pointer !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open::after {
        content: "" !important;
        position: absolute !important;
        inset: 0 !important;
        z-index: 2 !important;
        display: block !important;
        width: 20px !important;
        height: 20px !important;
        margin: auto !important;
        background-color: #536174 !important;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 6l12 12M18 6 6 18' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 6l12 12M18 6 6 18' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
        pointer-events: none !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open .search-form {
        position: fixed !important;
        top: 76px !important;
        right: 12px !important;
        left: 12px !important;
        z-index: 10040 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 48px !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 52px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border: 1px solid rgba(116, 151, 196, .3) !important;
        border-radius: 16px !important;
        background: #fff !important;
        box-shadow: 0 14px 36px rgba(33, 71, 122, .18) !important;
        cursor: default !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open .search-form > label {
        position: static !important;
        inset: auto !important;
        display: block !important;
        width: auto !important;
        height: 52px !important;
        margin: 0 !important;
        overflow: visible !important;
        clip: auto !important;
        clip-path: none !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open .search-field {
        display: block !important;
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 52px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        border: 0 !important;
        outline: 0 !important;
        background: transparent !important;
        color: #172033 !important;
        font-size: 16px !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open .search-submit {
        position: static !important;
        inset: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 48px !important;
        min-width: 48px !important;
        height: 52px !important;
        min-height: 52px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        color: #526277 !important;
        cursor: pointer !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open .live-search-results {
        position: fixed !important;
        top: 136px !important;
        right: 12px !important;
        left: 12px !important;
        z-index: 10039 !important;
        box-sizing: border-box !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }
}

@media (max-width: 767px) {
    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open .search-form {
        top: 68px !important;
    }

    html body #masthead.site-header .header-search:not(.kh-native-search).kh-search-open .live-search-results {
        top: 128px !important;
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    body.kh-articles-page .kh-articles-content {
        padding-top: 12px;
    }

    html body.kh-articles-page #masthead.site-header .site-header-inner.full {
        grid-template-areas: "logo cart account burger" !important;
        grid-template-columns: minmax(180px, 1fr) repeat(3, 48px) !important;
    }

    html body.kh-articles-page #masthead.site-header .header-search.header-search {
        display: none !important;
    }
}
