/*
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. */

/* Stage 191: reference-based FAQ hub with searchable answers and support sidebar. */

/* Stage 193: restore the approved Refund contents card after FAQ stylesheet sync. */

/* === Compact brand description on tablets and phones — stage 291 === */
.kh-category-description-toggle {
    display: none;
}

.kh-category-description-bottom__copy > :first-child {
    margin-top: 0;
}

.kh-category-description-bottom__copy > :last-child {
    margin-bottom: 0;
}

/* 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: 100% !important;
        min-height: 64px !important;
        margin: 0 !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: 100% !important;
        height: 72px !important;
        min-height: 72px !important;
        margin: 0 !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;
    }
}

@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;
    }
}

/* 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 90: the existing floor wave reveals one stationary product family per pulse. */

@keyframes khHeroPulseLabelCycle {
    0%,
    7.6%,
    31.5%,
    100% {
        opacity: 0;
        text-shadow: 0 1px 0 rgba(255, 255, 255, .84);
    }

    8.2% {
        opacity: .08;
    }

    10.4% {
        opacity: .5;
    }

    12.5% {
        opacity: .96;
        text-shadow:
            0 1px 0 rgba(255, 255, 255, .92),
            0 0 12px rgba(209, 226, 247, .52);
    }

    19.9% {
        opacity: .96;
        text-shadow:
            0 1px 0 rgba(255, 255, 255, .92),
            0 0 12px rgba(209, 226, 247, .52);
    }

    26% {
        opacity: .55;
    }

    30.7% {
        opacity: .08;
    }
}

/* Stage 2: refractive cold-glass feature panel matched to the product cards. */

/* 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. */

/* 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. */

    /* Shared native swipe behavior. The exposed next card is the affordance. */

    /* Popular products: one-row rail, current card plus a visible next edge. */

    /* Mobile "Показать всё": remove the legacy overlap with product cards. */

    /* Articles: image-led compact rail; supporting copy stays available on desktop. */

    /* Reviews: one compact swipe row with the next card deliberately exposed. */

    /* 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-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. */

/* Description: outlined document with folded corner and two text lines. */

/* Composition: three distinct stacked layers from the approved icon. */

/* A five-tab product uses custom tab 1 for system requirements. */

/* Four-tab products use custom tab 1 for “How to buy”; five-tab products use custom tab 2. */

/* Codex: approved borderless distribution widget, July 2026. */

/* 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%; }
}

/* 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 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__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. */

/* 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. */

/* 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);
}

.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. */

/* 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 .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) {

    .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) {

    .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;
    }
}

/* Legal entities page v2: exact visual direction from approved mockup */


/* Unified information-page heroes (reference: information-legal-entities). */

/* Legal entities: borderless information cards */

/* Legal entities: centered order-process heading */

/* Legal entities: neutral step numbers matching the Important note icon. */

/* Legal entities hero: the generated WebP already contains the document scene. */

/* Legal entities hero controls: shared visual language with the reference info pages. */

/* Legal entities main pair: equal card edges and a balanced illustration stage. */

/* Legal entities left card: compact page-like list with slim blue markers. */

/* Legal entities application: reuse the visual language of the business cards. */

/* Legal entities documents: borderless continuation of the page-like list. */

/* Legal entities support CTA: compact, centered and component-consistent. */

/* Legal entities responsive proportions: align tablet and phone cards with FAQ. */

@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;
}

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 !important;
    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);
}
/**/
.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);
}
/* Проверено на подлинность */

.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-top: 14px;
}

.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. */

/* 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);
    }
}

.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);
}

.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;
}

.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 */

/* Stage 317: keep desktop download-card shadows clear of the page scrollbar. */

/* Stage 315: match the Autodesk index lower sections to the compact brand-page pattern. */
html body .kh-autodesk-program-index .kh-autodesk-program-index-faq {
    width: 100% !important;
    max-width: none !important;
    margin: 34px 0 28px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-category-faq__head {
    gap: 10px !important;
    margin-bottom: 18px !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-category-faq__head > span {
    min-height: 25px !important;
    padding: 0 10px !important;
    border: 2px solid #dbe5f7 !important;
    border-radius: 999px !important;
    background: #f3f6fb !important;
    color: #122a59 !important;
    font-size: 10px !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-category-faq__list {
    max-width: none !important;
    margin: 0 !important;
    gap: 7px !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item {
    border: 1px solid #edf2f8 !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 3px 12px rgba(36, 66, 116, .055) !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item[open] {
    border-color: #dce8f7 !important;
    box-shadow: 0 8px 22px rgba(36, 66, 116, .075) !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item summary {
    min-height: 44px !important;
    padding: 10px 12px 10px 14px !important;
    background: #fff !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item summary i {
    flex-basis: 20px !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item summary i::before {
    top: 5px !important;
    left: 6px !important;
    width: 6px !important;
    height: 6px !important;
    border: 0 !important;
    border-right: 1.5px solid #6681aa !important;
    border-bottom: 1.5px solid #6681aa !important;
    background: transparent !important;
    transform: rotate(45deg) !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item summary i::after {
    content: none !important;
    display: none !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item[open] summary i::before {
    border-color: #3974d8 !important;
    transform: translateY(3px) rotate(225deg) !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__answer {
    padding: 2px 14px 14px !important;
    border-top: 1px solid #f0f4f9 !important;
    font-size: 13px !important;
    line-height: 1.66 !important;
}

html body .kh-autodesk-program-index .kh-autodesk-program-index-seo {
    margin: 0 0 42px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

@media (max-width: 560px) {
    html body .kh-autodesk-program-index .kh-autodesk-program-index-faq {
        margin-top: 28px !important;
    }
}

.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;
}

img[src*="support-chat-male"] {
    mix-blend-mode: multiply;
}

/* 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-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-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-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;
}

@media (max-width: 1024px) {

  .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));
  }
}

@media (max-width: 767px) {

  .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-discount-hero__visual {
    min-height: 230px;
  }

  .kh-discount-ticket {
    min-height: 210px;
  }

  .kh-discount-ticket strong {
    font-size: 54px;
  }

  .kh-contact-card,
  .kh-contact-topic-grid article,
  .kh-discount-card,
  .kh-discount-rules__grid article {
    min-height: 0;
  }
}

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. */

/* Final product button hover guard. Keep this at the very end. */

/* 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: transparent !important;
    background: #f5f6f8 !important;
    color: #10234d !important;
    box-shadow: 0 8px 18px rgba(15, 31, 61, .05) !important;
    text-decoration: none !important;
}

body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn) > a:focus-visible,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn) > a:focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(16, 35, 77, .14) !important;
}

/* The current WordPress menu item is rendered as a span instead of a link. */
body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn) > span.removed-link,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn) > span.removed-link {
    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, color .18s ease, box-shadow .18s ease;
}

body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn) > span.removed-link:hover,
body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn).current-menu-item > span.removed-link,
body:not(.is-mobile) .top-menu > ul > li:not(.mega-catalog):not(.catalog-btn).current_page_item > span.removed-link,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn) > span.removed-link:hover,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn).current-menu-item > span.removed-link,
body:not(.is-mobile) .top-menu .menu > li:not(.mega-catalog):not(.catalog-btn).current_page_item > span.removed-link {
    border-color: transparent !important;
    background: #f5f6f8 !important;
    color: #10234d !important;
    box-shadow: 0 8px 18px rgba(15, 31, 61, .05) !important;
}

/* Articles archive redesign. */

.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);
}

.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 .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: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-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;
}

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 .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) {

    .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. */

/* Product reviews: the Key-Hub reply is a full-width second row, not a third column. */

/* Final button hover guard. Keep after all theme overrides. */

.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. */

.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;
}

/* 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;
    }
}

/* Homepage reviews: fixed-height preview plus full-review dialog. */

/* Tablet / narrow desktop: give review cards the full content width before
 * the two-column card grid becomes too narrow for product and reply content. */

/* Checkout variant 4 polish: match approved mockup. */

/* Checkout variant 4 final alignment with design mockup. */

/* Checkout variant 4: premium right summary panel. */

/* Checkout payment badges. */

/* 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. */

/* 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. */

.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(4, minmax(0, 1fr));
    gap: 18px;
}

.kh-autodesk-program-card {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 12px;
    min-height: 166px;
    padding: 14px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #071225;
    text-decoration: none;
    box-shadow: none;
    transition: transform .18s ease;
}

.kh-autodesk-program-card:hover,
.kh-autodesk-program-card:focus-visible {
    background: transparent;
    box-shadow: none;
    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: 0;
    border-radius: 8px;
    background: transparent;
}

.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;
    width: 100%;
    color: #071225;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.25;
    text-align: center;
}

@media (min-width: 901px) {
    .kh-autodesk-program-index__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        justify-content: stretch;
        column-gap: 16px;
        row-gap: 4px;
    }

    .kh-autodesk-program-card {
        grid-template-rows: 164px auto;
        min-height: 0;
        gap: 4px;
        padding: 2px 8px 6px;
    }

    .kh-autodesk-program-card__image {
        height: 164px;
        aspect-ratio: auto;
    }

    .kh-autodesk-program-card__image img {
        width: 164px;
        max-width: none;
        height: 164px;
        transform: none;
    }
}

@media (max-width: 900px) {
    .kh-autodesk-program-index__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 10px;
        row-gap: 4px;
    }

    .kh-autodesk-program-card {
        grid-template-rows: 144px auto;
        min-height: 0;
        gap: 4px;
        padding: 2px 4px 6px;
    }

    .kh-autodesk-program-card__image {
        height: 144px;
        aspect-ratio: auto;
    }

    .kh-autodesk-program-card__image img {
        width: 144px;
        max-width: none;
        height: 144px;
        transform: none;
    }
}

@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: repeat(2, minmax(0, 1fr));
        column-gap: 8px;
    }
}

/* Autodesk program index: FAQ first, followed by borderless guide copy. */
.kh-autodesk-program-index .kh-autodesk-program-index-faq {
    width: 100%;
    max-width: none;
    margin: 34px 0 28px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-category-faq__head {
    gap: 10px;
    margin-bottom: 18px;
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-category-faq__head > span {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 25px;
    padding: 0 10px;
    border: 2px solid #dbe5f7;
    border-radius: 999px;
    background: #f3f6fb;
    color: #122a59;
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-category-faq__list {
    max-width: none;
    margin: 0;
    gap: 7px;
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item {
    border: 1px solid #edf2f8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 3px 12px rgba(36, 66, 116, .055);
    transition: border-color .2s ease, box-shadow .2s ease;
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item[open] {
    border-color: #dce8f7;
    box-shadow: 0 8px 22px rgba(36, 66, 116, .075);
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item summary {
    min-height: 44px;
    padding: 10px 12px 10px 14px;
    background: #fff;
    color: #071122;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.35;
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item summary i {
    position: relative;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item summary i::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 6px;
    width: 6px;
    height: 6px;
    border: 0;
    border-right: 1.5px solid #6681aa;
    border-bottom: 1.5px solid #6681aa;
    border-radius: 1px;
    background: transparent;
    transform: rotate(45deg);
    transition: transform .2s ease, border-color .2s ease;
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item summary i::after {
    content: none;
    display: none;
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item[open] summary i::before {
    border-color: #3974d8;
    transform: translateY(3px) rotate(225deg);
}

.kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__answer {
    padding: 2px 14px 14px;
    border-top: 1px solid #f0f4f9;
    color: #53647e;
    font-size: 13px;
    line-height: 1.66;
}

.kh-autodesk-program-index .kh-autodesk-program-index-seo {
    margin: 0 0 42px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

@media (max-width: 560px) {
    .kh-autodesk-program-index .kh-autodesk-program-index-faq {
        margin-top: 28px;
    }

    .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-category-faq__head h2 {
        font-size: 22px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item,
    .kh-autodesk-program-index .kh-autodesk-program-index-faq .kh-product-faq__item summary i::before {
        transition: none;
    }
}

.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;
}

/* Stage 280: natural black, bold links in article content. */
.kh-single-article-content a,
.kh-single-article-content a:visited {
    color: #111827;
    font-weight: 800;
    text-decoration: none;
}

.kh-single-article-content a:hover,
.kh-single-article-content a:focus-visible {
    color: #000;
    text-decoration: underline;
    text-decoration-color: #94a3b8;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.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));
    }
}

/* 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;
}

@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-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-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 .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 .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;
}

/* Codex product desktop responsive fix */
/* Codex product live sidebar width fix */
/* Codex product desktop width refinement */
/* Codex product variations containment fix */
/* 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 */
/* Codex wide desktop product gap tightening */
/* Codex wide desktop product tabs alignment */
/* Codex wide desktop tabs offset reset */
/* Codex desktop tabs offset reset */
/* Codex wide desktop align content to header */
/* Codex desktop lower sections alignment */
/* Codex desktop lower sections offset reset */
/* Codex product reviews 1280 containment */
/* 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;
    }
}

/* 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. */

/* Compact mobile version of the homepage activation support block. */

/* Homepage articles: featured + side list concept. */

/* Homepage articles: compact card grid concept. */
/* Key-Hub premium home hero */

@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);
    }
}

/* 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. */

/* Codex: make the product variation block calmer at normal 100% browser zoom. */

/* Codex: calmer article sidebar product recommendations. */

/* Cart checkout facade */

/* Stage 218: Office programs downloads hero with a responsive editorial title. */

/* Stage 219: neutral downloads breadcrumbs and a more atmospheric Office hero. */
/* Stage 220: clear the Office pedestal from the lower edge and match product breadcrumbs. */

/* Final cart spacing tune. Keep checkout facade blocks visually tight and even. */

/* Codex: keep cart product rows readable on narrow mobile screens. */

/* 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. */
/* Codex: align downloads table meta pills after distributive column update. */
/* Codex: downloads visual polish to match Key-Hub catalog/home design. */
/* Codex: downloads center visual consistency with Key-Hub UI. */
/* Codex: restore compact download-center layout, keep Key-Hub typography/buttons. */
/* Codex: download-center final spacing tune. */
/* Codex: fix download detail sidebar action text wrapping. */

/* Codex: compact brand icons for downloads center categories. */
/* Codex: keep download product titles in native Key-Hub text color. */
/* Codex: polish download cards after visual review. */

/* Codex: premium download detail hero, variant 4. */

/* Codex: bring detail hero closer to approved v4 mockup. */

/* Codex: v4 refinement after comparing against the approved mockup. */

/* Codex: clean final UI alignment for the approved download detail block. */
/* Codex: download search alignment and larger brand cards. */
/* Codex: readable brand cards after search layout review. */

/* Codex: downloads hero wide WebP background. */

/* 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. */

/* Codex: final clearance between feature cards and the specs ribbon. */

/* Codex: keep mobile detail actions before specs and article. */

/* Codex: hard final cleanup for the download detail visual noise. */

/* Codex: use the available page width on download detail pages. */

/* Codex: stretch the detail page into the side air of the theme container. */

/* Codex: compact right panel so the specs ribbon sits correctly. */

/* Codex: hard final cleanup for the download detail visual noise. */

/* Codex: clean detail UI after visual review - no noisy icons, borders or product frame. */

/* Codex: polished download detail composition after v4 visual review. */

/* Codex: final clearance between feature cards and the specs ribbon. */

/* Codex: keep mobile detail actions before specs and article. */


/* Codex: hard final cleanup for the download detail visual noise. */

/* Codex: final wide alignment pass for download detail hero. */

/* Codex: final polish for the wider detail hero - broader specs and softer background. */

/* Codex: final geometry fix - full-width detail block, no overlaps, clean spec gap. */

/* Codex: remove the empty sidebar reserve on download detail pages. */

/* Codex: remove parent padding and contain feature cards before the specs ribbon. */

/* Codex: remove the visible blue plane behind the right side of detail hero. */

/* Codex: OS-aware badge for download detail pages. */

/* Codex: equal spacing between right-panel action buttons. */

/* Codex: designed SVG icon buttons for the download detail action panel. */

/* Codex: make action icons visible as SVGs inside rounded tiles, not as faint masks. */

/* Codex: clearer download and activation-key icons. */

/* Codex: unmistakable classic key icon for the activation button. */

/* Codex: lighter diagonal key icon matching the approved reference. */

/* Codex: copy the compact reference buy button. */

/* Codex: align the compact buy button text column with the download action buttons. */
/* Codex: remove the right-side air inside the download detail hero shell. */
/* Codex: high-specificity right-air removal for the active detail layout. */
/* Codex: restore a controlled right inset after the no-air pass. */
/* Codex: align lower cards with the restored right inset. */
/* Codex: final right-edge match for spec and article cards. */
/* Codex: reduce vertical air inside the right download action panel. */
/* Codex: force the right panel to the tighter vertical height. */
/* Codex: balanced hero row height after reducing right-panel vertical air. */
/* Codex: keep the right panel matched to the balanced hero row. */
/* Codex: rebalance the download detail hero columns to use the empty image area. */
/* Codex: keep the lower cards balanced after shifting the hero composition left. */
/* Codex: reduce the remaining right-side empty area after the hero rebalance. */
/* Codex: keep lower cards from getting tighter than the right action panel. */
/* Codex: fill the remaining right-side blue space in the download detail hero. */
/* Codex: keep the expanded hero content inside the real left grid column. */
/* Codex: align spec and instruction cards with the filled right action panel edge. */
/* Codex: expand the central hero content and remove the remaining right-side air. */
/* Codex: plain-selector fallback for the active download detail layout. */
/* Codex: fluid hero grid for real local viewport width. */
/* Codex: download detail multi-source buttons. */
/* Codex: download detail icons copied from product download widget. */
/* Codex: keep multi-source download panel inside the right card. */

/* Codex: extra compact pass for five actions in the download detail sidebar. */

/* Codex: align buy button with multi-source action buttons. */

/* Codex: equalize the gap before the buy button with other action gaps. */

/* Codex: add a little bottom air inside the multi-source sidebar card. */

/* Codex: place the extra bottom air under the buy button, not between buttons. */

/* Codex: visibly increase the bottom air under the aligned buy button. */

/* Codex: override the specific fixed sidebar height to show bottom air. */

/* Codex: match top and bottom air in the multi-source sidebar and remove green spill. */

/* Codex: visually equalize top and bottom air in the multi-source sidebar. */


/* Codex: compact download detail specs so the distributive type fits. */


/* Codex: even horizontal rhythm in the download detail specs ribbon. */


/* Codex: distribute compact spec groups with equal visual gaps. */


/* Codex: download detail feature row, variant 2 calm table. */






/* Codex: encoding-safe Russian text for feature row variant 2. */





/* Codex: make variant 2 accent strips visible above the feature cells. */


/* Codex: soften feature row so it matches the download detail hero. */


/* Codex: feature cards with line icons matching the selected reference. */


/* Codex: reference-style plain shield icon for the first feature card. */


/* Codex: exact compact reference style for the download feature cards. */


/* Codex: final reference fit so all captions stay visible like the sample. */


/* Codex: use available hero space for readable feature cards and match key icon reference. */


/* Codex: add side air around the download detail specs ribbon. */


/* Codex: increase specs ribbon side air after visual check. */


/* Codex: visual inset for the specs ribbon despite inline 100% width. */


/* Codex: stretch specs ribbon closer to the article card width after visual review. */


/* Codex: download detail specs with file format and compatibility. */


/* Codex: download detail included apps, variant 2 list. */


/* Codex: short product description inside included apps block. */


/* Codex: merge included apps heading into one calm title. */


/* Codex: Microsoft 365 composition by OS. */


/* Codex: product page included apps block. */


/* Codex: Autodesk Russia info product block. */


/* Codex: Windows license product block. */


/* Codex: Office account-bound license block. */

/* Codex: product OS/version picker redesign. */

/* Codex: product OS/version picker feedback fixes. */

/* Codex: remove excess air around the product purchase panel. */

/* Codex: align sidebar top and give version cards breathing room. */


/* Codex: Office annual OS and binding picker. */


/* Codex: Office version cards show edition below year. */

/* Codex: keep discount badges clear of Office edition labels. */


/* Codex: stronger active state for Office binding switch. */

/* Codex: critical single product layout fallback for async CSS/LiteSpeed scenarios. */

/* Codex: softer desktop density for single product pages without changing the resilient layout grid. */

/* Codex: narrower desktop product composition, layered after the resilience fallback. */

/* Codex: compact Windows edition labels inside product version cards. */

/* Codex: premium downloads category intro badge. */

/* Codex: visible SEO copy for downloads branch only. */

/* Codex: align compact desktop header actions on service pages. */

/* Codex: final homepage desktop header icon rail specificity lock. */

/* 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;
    }
}

/* 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. */

/* Codex: final override for compact Windows version grids on mobile. */

/* Codex: MacBook homepage header actions wrapper lock. */

/* 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. */
/* 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. */
/* 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. */

/* Product page: keep the confirmed cart state green after all legacy rules. */

/* 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-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]: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. */
/* Key-Hub home hero showcase — static composition before motion pass. */

/* Exact wide hero canvas — final cascade lock. */

/* Hero reference-match pass: composition, depth and motion. */

@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. */

/* Stage 1 correction: narrow clear-glass plates, no coloured body fill. */

/* Stage 1.1: reference-matched frosted glass and vertical card rhythm. */

/* Stage 1.2: slimmer cold glass with a continuous refractive edge. */

/* Stage 2 cascade lock: final feature-panel glass and desktop geometry. */

/* Stage 2.1: balanced spacing and shared column rhythm for the feature area. */

/* Stage 2.2: metallic graphite icon ink instead of link blue. */

/* Stage 3: compact refractive-glass status badge with an online pulse. */

@keyframes khMainHeroOnlinePulse {
    0% {
        transform: scale(.68);
        opacity: .78;
    }
    72%,
    100% {
        transform: scale(1.45);
        opacity: 0;
    }
}

/* Stage 3.1: premium glass nameplate instead of a browser-style status pill. */

@keyframes khMainHeroOnlinePulseCompact {
    0% {
        transform: translate(-50%, -50%) scale(.72);
        opacity: .72;
    }
    72%,
    100% {
        transform: translate(-50%, -50%) scale(2.05);
        opacity: 0;
    }
}

/* Stage 4: approved Glass Geometry hero scene. */

/* Stage 5: exact reconstruction of the approved Glass Geometry concept. */

/* Stage 6: dedicated mobile composition for the approved raster Glass Geometry scene. */

/* Stage 9: compact mobile hero without the duplicated product showcase. */

/* Mobile Stage 32: compact three-column hero benefits. */

/* 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: 100% !important;
        min-height: 64px !important;
        height: 64px !important;
        margin: 0 !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: 100% !important;
        height: 72px !important;
        min-height: 72px !important;
        margin: 0 !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;
    }
}

@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; }
}

/* 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 */

/* Stage 66: compact and centered downloads home on phones. */

/* Stage 112: premium downloads artwork selected for the downloads home hero. */

/* 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;
    }
}

/* Stage 70: full-width desktop header surface with a centered content rail. */
@media (min-width: 1024px) {
    html body .super-header.super-header {
        background: linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, rgba(248, 251, 255, .92) 100%) !important;
        box-shadow:
            inset 0 2px 0 rgba(219, 231, 245, .76),
            inset 0 -1px 0 rgba(219, 231, 245, .86) !important;
    }

    html body .super-header.super-header .super-header-inner.super-header-inner {
        border: 0 !important;
        border-top: 2px solid transparent !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    html body #masthead.site-header {
        background: rgba(255, 255, 255, .98) !important;
        box-shadow:
            inset 0 -1px 0 rgba(219, 231, 245, .92),
            0 14px 34px rgba(18, 35, 68, .08) !important;
    }

    html body #masthead.site-header .site-header-inner.site-header-inner {
        border: 0 !important;
        border-top: 2px solid transparent !important;
        border-bottom: 2px solid transparent !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }
}

/* Stage 71: remove the old glass seam from the full-width utility strip. */
@media (min-width: 1024px) {
    html body .super-header.super-header .super-header-inner.super-header-inner {
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
    }
}

/* Stage 78: remove the remaining mobile/tablet masthead side air. */
@media (max-width: 1023px) {
    html body #masthead.site-header {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* Stage 79: text-only product marquee with a restrained glass-floor pulse. */

@keyframes khHeroMarqueeScroll {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(-50%, 0, 0); }
}

@keyframes khHeroPulseSource {
    0%, 54%, 79%, 100% { opacity: 0; transform: translateX(-50%) scale(.62); }
    58% { opacity: .36; }
    62% { opacity: .92; transform: translateX(-50%) scale(1); }
    70% { opacity: .2; transform: translateX(-50%) scale(1.42); }
}

@keyframes khHeroArchPulse {
    0%, 53%, 78%, 100% {
        opacity: 0;
        transform: scaleX(.28);
    }
    58% {
        opacity: .28;
    }
    63% {
        opacity: .78;
        transform: scaleX(.72);
    }
    70% {
        opacity: .2;
        transform: scaleX(1.05);
    }
}

@keyframes khHeroFloorPulse {
    0%, 59%, 83%, 100% {
        opacity: 0;
        transform: translate3d(0, -8%, 0) scale(.12, .08);
    }
    63% {
        opacity: .4;
        transform: translate3d(0, -5%, 0) scale(.24, .16);
    }
    69% {
        opacity: .82;
        transform: translate3d(0, 1%, 0) scale(1.05, .58);
    }
    78% {
        opacity: .25;
        transform: translate3d(0, 13%, 0) scale(1.28, .94);
    }
}

@keyframes khHeroFloorSweep {
    0%, 62%, 84%, 100% {
        opacity: 0;
        transform: translate3d(0, -11%, 0) scale(.16, .1);
    }
    68% {
        opacity: .3;
        transform: translate3d(0, -4%, 0) scale(.38, .25);
    }
    73% {
        opacity: .58;
        transform: translate3d(0, 3%, 0) scale(1.06, .68);
    }
    81% {
        opacity: .1;
        transform: translate3d(0, 16%, 0) scale(1.3, .98);
    }
}

@keyframes khHeroTravelSpark {
    0%, 56%, 82%, 100% {
        opacity: 0;
        transform: translate3d(0, 0, 0) rotate(-8deg) scaleX(.25);
    }
    61% {
        opacity: .92;
        transform: translate3d(-35%, 3px, 0) rotate(-8deg) scaleX(.75);
    }
    70% {
        opacity: .72;
        transform: translate3d(-420%, 30px, 0) rotate(-8deg) scaleX(1);
    }
    79% {
        opacity: .08;
        transform: translate3d(-860%, 58px, 0) rotate(-8deg) scaleX(.55);
    }
}

@keyframes khHeroMarqueePulse {
    0%, 70%, 89%, 100% {
        opacity: 0;
        transform: translate3d(365%, 0, 0) skewX(-11deg);
    }
    73% {
        opacity: .3;
    }
    78% {
        opacity: .74;
    }
    86% {
        opacity: .1;
        transform: translate3d(-105%, 0, 0) skewX(-11deg);
    }
}

/* Stage 96: keep the pulse-revealed product families visible on iPad. */

@keyframes khHeroTabletFloorPulse {
    0%, 58%, 84%, 100% {
        opacity: 0;
        transform: scale(.34, .24);
    }
    64% {
        opacity: .26;
        transform: scale(.58, .42);
    }
    72% {
        opacity: .66;
        transform: scale(.92, .7);
    }
    81% {
        opacity: .08;
        transform: scale(1.08, .94);
    }
}

/* Stage 97: quieter, narrower iPad benefits and a clean label reveal. */

/* Stage 98: centre the viewport-wide iPad hero inside its nested content wrapper. */

/* Stage 108: refined customer-review surfaces on home and /reviews/. */
:root {
    --kh-review-ink: #172033;
    --kh-review-copy: #354258;
    --kh-review-muted: #69758a;
    --kh-review-line: #e6eaf0;
    --kh-review-line-soft: #edf1f5;
    --kh-review-surface: #ffffff;
    --kh-review-canvas: #f8fafc;
    --kh-review-blue: #3679ff;
    --kh-review-star: #f6a800;
    --kh-review-shadow: 0 14px 34px rgba(24, 36, 58, .055);
}

/* Homepage preview: keep the approved 2 x 2 structure, remove the dashboard feel. */

/* Full reviews page: the same visual language with long-form reading behavior. */

@media (max-width: 1100px) {
    html body.home .kh-reviews-v2-layout,
    html body.front-page .kh-reviews-v2-layout,
    html body .kh-info-page--reviews .kh-reviews-layout {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html body.home .kh-reviews-v2-button,
    html body.front-page .kh-reviews-v2-button,
    html body.home .kh-reviews-v2-layout .apr-review,
    html body.front-page .kh-reviews-v2-layout .apr-review,
    html body .kh-info-page--reviews .kh-review-card {
        transition: none !important;
    }
}

/* Stage 109: quieter, borderless product artwork in review cards. */

/* Stage 110: use the current header brand mark in shop replies. */
html body.home .kh-reviews-v2-layout .kh-review-reply__mark,
html body.front-page .kh-reviews-v2-layout .kh-review-reply__mark,
html body .kh-info-page--reviews .kh-review-reply__mark {
    flex: 0 0 40px !important;
    width: 40px !important;
    height: 40px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

html body.home .kh-reviews-v2-layout .kh-review-reply__mark img,
html body.front-page .kh-reviews-v2-layout .kh-review-reply__mark img,
html body .kh-info-page--reviews .kh-review-reply__mark img {
    display: block !important;
    width: 40px !important;
    max-width: 40px !important;
    height: 40px !important;
    max-height: 40px !important;
    object-fit: contain !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Stage 113: keep download detail pages fluid on tablets and phones. */

/* Stage 114: align the detail shell and remove redundant outer framing. */

/* Stage 115: replace the blue detail wash with a clean white surface. */

/* Stage 116: replace dated blue text accents with a restrained graphite scale. */

/* Stage 117: neutral informational icons; keep brand and action colors intact. */

/* Stage 118: match product-card breadcrumbs and simplify sidebar icons. */

/* Stage 119: keep sidebar icon tiles truly white; color only the SVG glyphs. */

/* Stage 120: equal-height actions in the download sidebar. */

/* Stage 121: let multi-source sidebars grow with their actions. */

/* Stage 122: tighten the desktop intro gap and simplify secondary source icons. */

/* Stage 123: reduce stacked whitespace before related products. */

/* Stage 124: product specifications — classic single-column dotted leaders. */


/* Stage 194: compact illustrated FAQ support card and balanced section rhythm. */

/* Stage 185: final responsive normalization for the About page. */
@media (min-width: 768px) and (max-width: 1024px) {
    html body .kh-info-page--about .kh-info-hero {
        display: block;
        min-height: 360px;
        padding: 32px;
        background-position: right center;
        background-size: auto 100%;
    }

    html body .kh-info-page--about .kh-info-hero__content {
        max-width: 54%;
    }

    html body .kh-info-page--about .kh-info-hero__visual {
        display: none;
    }

    html body .kh-info-page--about .kh-info-hero h1 {
        max-width: 390px;
        font-size: 34px;
    }

    html body .kh-info-page--about .kh-info-hero p {
        max-width: 360px;
        font-size: 14px;
        line-height: 1.62;
    }

    html body .kh-info-page--about .kh-about-benefits {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: stretch;
    }

    html body .kh-info-page--about .kh-about-benefit--delivery,
    html body .kh-info-page--about .kh-about-benefit--license,
    html body .kh-info-page--about .kh-about-benefit--official-license,
    html body .kh-info-page--about .kh-about-benefit--support {
        min-height: 330px;
        display: flex;
        flex-direction: column;
        gap: 14px;
        padding: 22px 20px 14px;
    }

    html body .kh-info-page--about .kh-about-benefit__copy,
    html body .kh-info-page--about .kh-about-benefit--delivery .kh-about-benefit__copy,
    html body .kh-info-page--about .kh-about-benefit--license .kh-about-benefit__copy,
    html body .kh-info-page--about .kh-about-benefit--official-license .kh-about-benefit__copy,
    html body .kh-info-page--about .kh-about-benefit--support .kh-about-benefit__copy {
        width: 100%;
        max-width: none;
    }

    html body .kh-info-page--about .kh-about-benefit__media,
    html body .kh-info-page--about .kh-about-benefit--delivery .kh-about-benefit__media,
    html body .kh-info-page--about .kh-about-benefit--license .kh-about-benefit__media,
    html body .kh-info-page--about .kh-about-benefit__official-mark,
    html body .kh-info-page--about .kh-about-benefit--support .kh-about-benefit__support-media {
        position: static;
        width: 100%;
        height: 168px;
        min-height: 0;
        flex: 0 0 168px;
        align-items: center;
        justify-content: center;
        margin: auto 0 0;
        overflow: hidden;
    }

    html body .kh-info-page--about .kh-about-benefit__media img,
    html body .kh-info-page--about .kh-about-benefit--delivery .kh-about-benefit__media img,
    html body .kh-info-page--about .kh-about-benefit--license .kh-about-benefit__media img,
    html body .kh-info-page--about .kh-about-benefit__official-mark img,
    html body .kh-info-page--about .kh-about-benefit--support .kh-about-benefit__support-media img {
        width: auto;
        max-width: 100%;
        height: auto;
        max-height: 160px;
        transform: none;
        object-fit: contain;
        object-position: center;
    }

    html body .kh-info-page--about .kh-about-official {
        grid-template-columns: minmax(0, 1fr) 280px;
        gap: 20px 24px;
        padding: 26px;
    }

    html body .kh-info-page--about .kh-about-official__visual {
        height: 190px;
        min-height: 190px;
    }

    html body .kh-info-page--about .kh-about-official__visual img {
        height: 190px;
    }

    html body .kh-info-page--about .kh-about-official__details {
        grid-column: 1 / -1;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        padding-top: 4px;
    }
}

/* Stage 159: About page reference-based content skeleton */

/* Stage 160: user-supplied instant-delivery WebP test */

/* Stage 161: two balanced benefit cards and a separate support row */

/* About page: continuous cool-white surface rhythm across the content cards. */

/* Stage 162: reference-based Delivery and Payment page. */

/* Stage 163: legal-entities banner between delivery recovery and support. */

/* Stage 148: ultra-light lavender surfaces for secondary product actions. */

/* Stage 149: compact horizontal support card on product archive pages. */
html body.archive .kh-archive-layout--brand .kh-archive-support-card {
    padding: 0 !important;
    border: 1px solid #e8e7f6 !important;
    background: linear-gradient(135deg, rgba(248, 248, 255, .98) 0%, #fff 100%) !important;
    box-shadow: 0 12px 28px rgba(73, 68, 130, .055) !important;
}

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

html body.archive .kh-archive-layout--brand .kh-archive-support-card .support-card {
    padding: 14px !important;
}

html body.archive .kh-archive-layout--brand .kh-archive-support-card .support-content {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 78px !important;
    align-items: center !important;
    gap: 10px !important;
}

html body.archive .kh-archive-layout--brand .kh-archive-support-card .support-text {
    min-width: 0 !important;
    width: auto !important;
    padding: 0 !important;
}

html body.archive .kh-archive-layout--brand .kh-archive-support-card .support-title {
    max-width: none !important;
    margin: 0 0 8px !important;
    font-size: 14px !important;
    line-height: 1.24 !important;
    text-align: left !important;
}

html body.archive .kh-archive-layout--brand .kh-archive-support-card .support-description {
    max-width: none !important;
    margin: 0 0 12px !important;
    font-size: 12px !important;
    line-height: 1.42 !important;
    text-align: left !important;
}

html body.archive .kh-archive-layout--brand .kh-archive-support-card .support-action {
    width: auto !important;
    min-height: 34px !important;
    padding: 0 12px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
}

html body.archive .kh-archive-layout--brand .kh-archive-support-card .support-image,
html body.archive .kh-archive-layout--brand .kh-archive-support-card .support-image img {
    display: block !important;
    width: 78px !important;
    height: auto !important;
}

/* Stage 150: quiet nested treatment for the Key-Hub review reply. */

/* Stage 151: use the same quiet reply treatment on home and the reviews page. */
html body.home .kh-reviews-v2-layout .apr-review > .kh-review-reply,
html body.front-page .kh-reviews-v2-layout .apr-review > .kh-review-reply,
html body .kh-info-page--reviews .kh-review-card > .kh-review-reply,
html body .kh-info-page--reviews .kh-review-dialog__body > .kh-review-reply {
    gap: 9px !important;
    padding: 10px 12px !important;
    border: 0 !important;
    border-left: 3px solid #e0dcff !important;
    border-radius: 8px !important;
    background: linear-gradient(90deg, #f8f8ff 0%, #fbfbff 100%) !important;
    box-shadow: none !important;
}

html body.home .kh-reviews-v2-layout .kh-review-reply__mark,
html body.front-page .kh-reviews-v2-layout .kh-review-reply__mark,
html body .kh-info-page--reviews .kh-review-reply__mark {
    flex: 0 0 30px !important;
    width: 30px !important;
    height: 30px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body.home .kh-reviews-v2-layout .kh-review-reply__mark img,
html body.front-page .kh-reviews-v2-layout .kh-review-reply__mark img,
html body .kh-info-page--reviews .kh-review-reply__mark img {
    width: 30px !important;
    max-width: 30px !important;
    height: 30px !important;
    max-height: 30px !important;
}

/* Stage 152: borderless Windows license intro with a larger product mark. */

/* Stage 133: out-rank legacy :has(.characteristic-value a) rules for download rows. */

/* Stage 131: approved leader layout and safe placement for multiple downloads. */


/* Stage 206: FAQ product chooser — expandable brand families. */

/* Stage 210: FAQ questions heading — neutral secondary accents. */

/* Stage 211: FAQ bottom support — exact light banner from the Refund page. */

/* Stage 212: FAQ editorial guide below the answers. */

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

/* Stage 196: illustrated FAQ support card using the approved About specialist. */

/* Stage 197: FAQ support card — win the legacy li/a cascade without affecting other FAQ links. */

/* Stage 198: FAQ support card — composition matched to the approved reference. */

/* Stage 199: FAQ support card — final reference alignment and collision-free composition. */

/* Stage 200: FAQ support contacts — open icons and reference-style chevrons. */

/* Stage 202: FAQ support hero — reclaim the space left by the removed mark. */

/* Stage 203: FAQ support hero — smaller specialist and tighter visual height. */

/* Stage 204: FAQ support hero — remove the remaining empty top-left pocket. */

/* Stage 205: FAQ questions — remove inherited section air around the heading and list. */

/* Stage 195: restore the complete approved Refund design after the FAQ stylesheet merge. */
/* Refund page — legal document concept, 2026-08-14 */

/* Refund hero artwork — preserve the supplied illustration, extended only at the left edge. */

/* Refund contents card — book-style rules navigation. */

@media (min-width: 1025px) {
    html body.page-id-7279 .site,
    html body:has(.kh-info-page--refund) .site {
        overflow: visible;
    }
}

/* Refund support — light after-purchase banner, aligned with Delivery. */

/* Refund legal document — remove dated framed accents. */


/* Stage 185b: cascade-safe About responsive rules (must remain at file end). */

/* Stage 186: blend the mobile hero artwork and rebalance tablet assurance. */

/* Stage 187: keep the mobile hero artwork fully below the CTA row. */

/* Stage 188: use the About artwork as a soft full-card mobile backdrop. */

/* Stage 189: restore artwork presence without reducing copy contrast. */

/* Stage 190: consistent tablet inset for Delivery closing illustrations. */

/* Stage 154: keep standard WooCommerce breadcrumbs clear of the site header. */
html body .site-main > .woocommerce-breadcrumb,
html body:is(.tax-product_cat, .tax-pa_adobe, .tax-pa_autodesk-program, .tax-pa_office, .tax-pa_windows, .tax-pa_office-programs):has(.kh-archive-layout--brand) .site-main > .woocommerce-breadcrumb {
    margin-top: 12px !important;
}

/* Stage 155: align the Autodesk version selector with the archive content grid. */

/* Stage 127: plain text values must wrap as text, not as anonymous flex items. */

/* Stage 126: reserve natural width for long values before allowing them to wrap. */

/* Stage 134: reduce decorative framing on single-product pages.
 * Keep borders on choices, controls and recommendation items; remove only the
 * outer presentation cards highlighted in the approved borderless mockup. */

/* Stage 135: borderless recently viewed cards sized closer to home products. */

/* Stage 136: borderless Autodesk Russia intro with a larger product mark. */

/* Stage 137: remove the decorative shell around product reviews. */

/* Stage 138: product-matched article cards between recent products and reviews. */

/* Stage 139: tighter lower-section rhythm and a centered articles button. */

/* Stage 140: remove stacked internal whitespace between lower product blocks. */

/* Stage 141: borderless Office app tiles with larger product icons. */

/* Stage 142: compact horizontal Office bundle layout. */

/* Stage 143: let Office bundle copy use the full row before its benefits. */

/* Stage 144: double the visible air between lower product sections. */

/* Stage 145: selected OS check matching the active product-year marker. */

/* Stage 146: gently dim the unselected operating system. */

/* Stage 125: let dotted leaders meet each value instead of ending at a fixed column. */

/* Stage 128: keep compact values on one line; give verbose fields a full text column. */

/* Stage 129: prevent one-line values from painting outside their measured box. */

/* Stage 130: final aligned leader table — fixed label, leader and value columns. */

/* Stage 197: blend FAQ and Refund hero artwork into the full mobile card. */

/* Refund hero: the tablet composition does not have room for the intro copy. */

/* Discounts page v2: image-led layout approved from the visual concept. */

/* Discounts: support banner mirrors the approved Refund page component. */

/* Discounts hero: align proportions and full-bleed artwork with the Refund hero. */

/* Discounts support banner: compact horizontal composition for tablets. */

/* Stage 132: authoritative approved leader layout; must remain last in cascade. */
/* Help & installation redesign — Stage 210. */

/* Stage 211: FAQ-style support card shared by articles and product sidebars. */
html body .kh-unified-support-card {
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    padding: 16px !important;
    border: 1px solid #dce6f5 !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 88% 9%, rgba(117, 102, 255, .11), transparent 33%),
        radial-gradient(circle at 11% 17%, rgba(51, 196, 255, .07), transparent 26%),
        linear-gradient(155deg, #fff 0%, #fafaff 49%, #f3f5ff 100%) !important;
    box-shadow: 0 12px 30px rgba(18, 35, 68, .07) !important;
}

html body .kh-unified-support-card__hero {
    position: relative;
    height: 160px;
}

html body .kh-unified-support-card__hero::before {
    content: "";
    position: absolute;
    top: 66px;
    right: 1px;
    z-index: 3;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #73c94b;
    box-shadow: -8px -42px 0 -1px #4dbde9, 2px 23px 0 -1px #5bc75c;
    pointer-events: none;
}

html body .kh-unified-support-card .kh-unified-support-card__copy {
    position: absolute;
    top: 4px;
    left: 0;
    z-index: 4;
    width: 146px;
}

html body .kh-unified-support-card .kh-unified-support-card__copy h2 {
    margin: 0 !important;
    color: #101b35 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    letter-spacing: -.02em;
}

html body .kh-unified-support-card .kh-unified-support-card__copy p {
    max-width: 146px;
    margin: 11px 0 0 !important;
    color: #687994 !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
}

html body .kh-unified-support-card .kh-unified-support-card__agent {
    position: absolute;
    right: -34px;
    bottom: -1px;
    z-index: 2;
    display: block;
    width: 178px !important;
    height: 178px !important;
    max-width: none;
    object-fit: contain;
    mix-blend-mode: normal;
}

html body .kh-unified-support-card .kh-unified-support-card__bubble {
    position: absolute;
    z-index: 4;
    display: block;
    min-height: 0;
    padding: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, #7567ff 0%, #47bfff 100%);
    box-shadow: 0 7px 14px rgba(72, 111, 255, .22);
    pointer-events: none;
}

html body .kh-unified-support-card .kh-unified-support-card__bubble--one {
    top: 34px;
    left: 150px;
    width: 45px;
    height: 27px;
}

html body .kh-unified-support-card .kh-unified-support-card__bubble--one::before {
    content: "•••";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 1px;
}

html body .kh-unified-support-card .kh-unified-support-card__bubble--one::after {
    content: "";
    position: absolute;
    right: 3px;
    bottom: -4px;
    width: 9px;
    height: 9px;
    background: #47bfff;
    clip-path: polygon(0 0, 100% 0, 100% 100%);
}

html body .kh-unified-support-card .kh-unified-support-card__bubble--two {
    top: 18px;
    left: 141px;
    width: 7px;
    height: 7px;
    background: #40bdec;
    box-shadow: none;
}

html body .kh-unified-support-card .kh-unified-support-card__channels {
    display: grid;
    gap: 0;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html body .kh-unified-support-card .kh-unified-support-card__channels li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #e4eaf4;
    list-style: none !important;
}

html body .kh-unified-support-card .kh-unified-support-card__channels li:last-child {
    border-bottom: 0;
}

html body .kh-unified-support-card .kh-unified-support-card__channel {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) 14px;
    align-items: center;
    gap: 10px;
    min-height: 52px;
    padding: 5px 0;
    border-radius: 8px;
    color: #14213a !important;
    text-decoration: none !important;
    transition: background-color .2s ease;
}

html body .kh-unified-support-card .kh-unified-support-card__channel:hover {
    background: rgba(239, 244, 255, .72);
}

html body .kh-unified-support-card .kh-unified-support-card__channel:focus-visible,
html body .kh-unified-support-card .kh-unified-support-card__cta:focus-visible {
    outline: 3px solid rgba(72, 116, 255, .3);
    outline-offset: 2px;
}

html body .kh-unified-support-card .kh-unified-support-card__channel-icon {
    display: grid;
    width: 32px;
    height: 40px;
    min-height: 0;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #5c6fff;
    box-shadow: none;
}

html body .kh-unified-support-card .kh-unified-support-card__channel-icon svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

html body .kh-unified-support-card .kh-unified-support-card__channel-copy {
    display: block;
    min-width: 0;
    min-height: 0;
    padding: 0;
    background: transparent;
    box-shadow: none;
}

html body .kh-unified-support-card .kh-unified-support-card__channel-copy strong,
html body .kh-unified-support-card .kh-unified-support-card__channel-copy small {
    display: block;
    min-height: 0;
    padding: 0;
    background: transparent;
    color: inherit;
    box-shadow: none;
}

html body .kh-unified-support-card .kh-unified-support-card__channel-copy strong {
    color: #17233b;
    font-size: 11px;
    font-weight: 850;
    line-height: 1.25;
}

html body .kh-unified-support-card .kh-unified-support-card__channel-copy small {
    overflow: hidden;
    margin-top: 2px;
    color: #71819a;
    font-size: 9px;
    font-weight: 500;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

html body .kh-unified-support-card .kh-unified-support-card__channel-arrow {
    display: flex;
    width: 14px;
    height: auto;
    min-height: 0;
    align-items: center;
    justify-content: flex-end;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #9aabc2;
    font-size: 25px;
    font-weight: 500;
    line-height: 1;
    box-shadow: none;
    transition: color .2s ease, transform .2s ease;
}

html body .kh-unified-support-card .kh-unified-support-card__channel:hover .kh-unified-support-card__channel-arrow {
    color: #657995;
    transform: translateX(2px);
}

html body .kh-unified-support-card .kh-unified-support-card__cta {
    display: flex;
    min-height: 46px;
    margin-top: 10px;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 14px;
    border-radius: 11px;
    background: linear-gradient(135deg, #7567ff 0%, #35c7ff 100%);
    color: #fff !important;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.2;
    text-decoration: none !important;
    box-shadow: 0 10px 22px rgba(70, 118, 255, .22);
    transition: transform .2s ease, box-shadow .2s ease;
}

html body .kh-unified-support-card .kh-unified-support-card__cta span {
    display: inline;
    min-height: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    box-shadow: none;
    transform: none;
}

html body .kh-unified-support-card .kh-unified-support-card__cta:hover {
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 13px 26px rgba(70, 118, 255, .31);
}

html body .kh-archive-sidebar > .kh-unified-support-card,
html body .kh-articles-sidebar > .kh-unified-support-card,
html body .kh-single-article-sidebar > .kh-unified-support-card,
html body.single-product #secondary .kh-unified-support-card {
    margin-top: 0;
}

@media (max-width: 520px) {
    html body .kh-unified-support-card__hero {
        height: 190px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__copy {
        top: 6px;
        width: 180px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__copy h2 {
        font-size: 22px !important;
    }

    html body .kh-unified-support-card .kh-unified-support-card__copy p {
        max-width: 180px;
        font-size: 12.5px !important;
    }

    html body .kh-unified-support-card .kh-unified-support-card__agent {
        right: -38px;
        width: 210px !important;
        height: 210px !important;
    }

    html body .kh-unified-support-card .kh-unified-support-card__bubble--one {
        top: 39px;
        left: 190px;
        width: 51px;
        height: 30px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__bubble--two {
        top: 22px;
        left: 181px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__channel {
        grid-template-columns: 36px minmax(0, 1fr) 15px;
        gap: 11px;
        min-height: 60px;
        padding-block: 6px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__channel-icon {
        width: 36px;
        height: 42px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__channel-icon svg {
        width: 27px;
        height: 27px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__channel-copy strong {
        font-size: 13px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__channel-copy small {
        font-size: 10.5px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__cta {
        min-height: 54px;
        margin-top: 12px;
        font-size: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html body .kh-unified-support-card .kh-unified-support-card__channel,
    html body .kh-unified-support-card .kh-unified-support-card__channel-arrow,
    html body .kh-unified-support-card .kh-unified-support-card__cta {
        transition: none;
    }
}

/* Stage 213: compact support card with one chat action inside the hero. */
html body .kh-unified-support-card {
    padding: 14px !important;
}

html body .kh-unified-support-card__hero {
    height: 174px;
}

html body .kh-unified-support-card .kh-unified-support-card__copy {
    top: 5px;
    width: 148px;
}

html body .kh-unified-support-card .kh-unified-support-card__copy p {
    max-width: 142px;
}

html body .kh-unified-support-card .kh-unified-support-card__cta {
    position: absolute;
    top: 108px;
    left: 0;
    z-index: 5;
    width: 146px;
    min-height: 44px;
    margin: 0;
    padding: 0 13px;
    font-size: 11px;
}

html body .kh-unified-support-card .kh-unified-support-card__agent {
    right: -32px;
    bottom: -4px;
    width: 190px !important;
    height: 190px !important;
}

html body .kh-unified-support-card .kh-unified-support-card__bubble--one {
    top: 36px;
    left: 148px;
}

html body .kh-unified-support-card .kh-unified-support-card__bubble--two {
    top: 19px;
    left: 140px;
}

@media (max-width: 520px) {
    html body .kh-unified-support-card {
        padding: 16px !important;
    }

    html body .kh-unified-support-card__hero {
        height: 194px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__cta {
        top: 122px;
        width: 176px;
        min-height: 48px;
        font-size: 13px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__agent {
        right: -38px;
        bottom: -5px;
        width: 216px !important;
        height: 216px !important;
    }
}

/* Stage 214: support card spacing, decoration cleanup and CTA alignment. */
html body .kh-unified-support-card__hero::before,
html body .kh-unified-support-card .kh-unified-support-card__bubble {
    display: none !important;
}

html body .kh-unified-support-card .kh-unified-support-card__cta {
    top: 114px;
    width: 148px;
    min-height: 44px;
    justify-content: space-between;
    gap: 8px;
    padding: 0 12px;
    border-radius: 12px;
    font-size: 11.5px;
    line-height: 1;
    white-space: nowrap;
}

html body .kh-unified-support-card .kh-unified-support-card__cta span:first-child {
    overflow: visible;
    white-space: nowrap;
}

html body .kh-unified-support-card .kh-unified-support-card__cta > span,
html body.single-product #secondary .kh-unified-support-card .kh-unified-support-card__cta > span {
    display: block !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font: inherit !important;
    line-height: 1 !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Stage 215: restore air between the archive picker and support card. */
html body .kh-archive-sidebar > .kh-unified-support-card {
    margin-top: 16px;
}

/* Stage 216: replace the sidebar support character with the FAQ headset art. */
html body .kh-unified-support-card .kh-unified-support-card__headset {
    right: -10px;
    bottom: 23px;
    width: 128px !important;
    height: 128px !important;
}

/* Stage 217: visually center the headset in product sidebars. */
html body .kh-archive-sidebar .kh-unified-support-card__headset {
    right: 4px;
    bottom: 35px;
}

@media (max-width: 520px) {
    html body .kh-unified-support-card .kh-unified-support-card__cta {
        top: 124px;
        width: 176px;
        min-height: 48px;
        padding-inline: 14px;
        font-size: 13px;
    }

    html body .kh-unified-support-card .kh-unified-support-card__headset {
        right: 2px;
        bottom: 10px;
        width: 170px !important;
        height: 170px !important;
    }

    html body .kh-archive-sidebar .kh-unified-support-card__headset,
html body.single-product #secondary .kh-unified-support-card__headset {
        right: 2px;
        bottom: 10px;
    }
}

/* Legal entities page: premium business layout, 2026-08-25 */

/* Legal entities page v2: exact visual direction from approved mockup */
/* === Key-Hub empty cart — stage 219 ===================================== */

@keyframes kh-empty-cart-enter {
    from { opacity: 0; transform: translate3d(18px, 4px, 0) scale(.97); }
    to { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
}

/* === Store brand grid and FAQ — stage 220 ============================= */

/* === Store SEO text without an outer card — stage 221 ================ */

/* === FAQ editorial text without an outer card — stage 222 ============ */

/* === Refund benefits without individual card frames — stage 223 ====== */

/* === FAQ benefits without individual card frames — stage 224 ========= */

/* === Discounts offers without individual card frames — stage 225 ===== */

/* === Downloads categories without individual card frames — stage 226 = */

/* === Downloads trust row with WebP illustrations — stage 227 ========= */

/* === Office programs spacing and framing refinements — stage 228 ===== */
/* Stage 232: match the more distant Office-suite product composition. */

/* === Downloads table metadata without pill clutter — stage 229 ====== */

/* === Dedicated downloads-count column and neutral icon — stage 230 == */

/* === Microsoft Office suites hero matching Office programs — stage 231 */

/* === Office category tablet and mobile composition — stage 233 ===== */

/* === Microsoft Windows downloads hero — stage 235 ================== */

/* === Office responsive hero as one continuous surface — stage 234 === */

/* === Autodesk tablet hero framing — stage 243 === */

/* === Product reviews match the approved homepage cards — stage 248 === */

/* === Neutral text link for "All reviews" — stage 250 ============== */

/* === Borderless outer shells on download detail pages — stage 251 === */
/* Keep borders on actions and app tiles; remove only the nested containers. */

/* === Borderless download-detail benefits — stage 252 ============ */
/* These are informational points, not controls, so they stay visually flat. */

/* === Remove transparent blur compositor artifacts — stage 253 === */

/* === Borderless included apps and related products — stage 254 === */

/* === Balanced included-apps grid without the theme clearfix — stage 255 === */

/* === Product-matched articles and support on download details — stage 256 === */

/* === Borderless download hero on tablets and phones — stage 257 === */

/* === Balanced included-apps grid on tablets and phones — stage 258 === */

/* === Compact two-column download actions on iPad — stage 259 === */

/* === Compact downloads-home hero and balanced iPad categories — stage 263 === */

/* === Borderless popular downloads and SEO copy — stage 262 === */

/* === Remove the mobile spec-card blur artifact — stage 261 === */

/* === Four download actions as a 2x2 iPad grid — stage 260 === */

/* === Keep all five download categories in one balanced iPad grid — stage 264 === */

/* === Flat, wider downloads-home hero on phones — stages 265–266 === */
@media (max-width: 760px) {

    /* Stage 268: remove the overlapping form/button shadows that looked like a card edge. */
}

/* === Unified downloads section heading on tablets and phones — stages 267/269 === */

/* === Mobile catalog anchored to the current viewport — stage 270 === */
@media (max-width: 1023px) {
    html body .js-mobile-menu-placeholder.open,
    html body .mobile-menu-placeholder.open {
        position: fixed !important;
        top: var(--kh-mobile-menu-top, 84px) !important;
        right: 0 !important;
        bottom: auto !important;
        left: 0 !important;
        z-index: 9989 !important;
        width: 100% !important;
        max-width: none !important;
        max-height: calc(100dvh - var(--kh-mobile-menu-top, 84px)) !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        background: #fff !important;
        box-shadow: 0 20px 44px rgba(18, 35, 68, .14) !important;
    }

    html body .js-mobile-menu-placeholder.open #site-navigation-mobile,
    html body .mobile-menu-placeholder.open #site-navigation-mobile {
        position: static !important;
        inset: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
}

/* === Borderless brand archives with FAQ-page accordion — stage 271 === */

/* === Align brand FAQ with the product column — stage 272 === */

/* === FAQ before the description on brand archives — stage 273 === */

/* === New neutral color for the product-picker “All” link — stage 275 === */
html body .kh-product-picker__header a,
html body .kh-product-picker__header a:visited {
    color: #64748b !important;
}

html body .kh-product-picker__header a:hover,
html body .kh-product-picker__header a:focus-visible {
    color: #475569 !important;
}

/* === Borderless reviews section on the homepage — stage 276 === */

/* === Wider, compact product names in homepage review cards — stage 279 === */

/* === Center the homepage support artwork on iPad — stage 281 === */

/* === Borderless outer containers on article archive and single articles — stage 282 === */

/* === Neutral breadcrumb interaction on article pages — stage 283 === */

/* === Align brand archive breadcrumbs with the product layout — stage 286 === */

/* === Compact brand-archive support card on tablets and phones — stage 289 === */

/* === Products before the brand navigation on tablets and phones — stage 290 === */

/* === Final category-description button placement — stage 293 === */

/* === Single-product tablet/mobile flow — stage 294 === */

/* === iPad mobile navigation: balanced five-item strip — stage 295 === */
@media (min-width: 768px) and (max-width: 1023px) {
    html body .js-mobile-menu-placeholder.open,
    html body .mobile-menu-placeholder.open {
        display: block !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,
    html body .mobile-menu-placeholder.open #site-navigation-mobile .main-navigation-inner {
        width: 100% !important;
        padding: 12px 16px 14px !important;
        border: 0 !important;
        border-bottom: 1px solid #e5edf8 !important;
        background: #fff !important;
    }

    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu {
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        align-items: stretch !important;
        gap: 8px !important;
        width: min(100%, 720px) !important;
        margin: 0 auto !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: 52px !important;
        margin: 0 !important;
        padding: 0 !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-width: 0 !important;
        min-height: 52px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;
        padding: 0 10px !important;
        border: 1px solid #e2e9f3 !important;
        border-radius: 12px !important;
        background: #f8fafc !important;
        box-shadow: 0 4px 12px rgba(18, 35, 68, .035) !important;
        color: #263247 !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        text-align: center !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        touch-action: manipulation;
    }

    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li.catalog-btn > a,
    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li.mega-catalog > a {
        border-color: #d6e3f5 !important;
        background: #f2f7fd !important;
        color: #172d50 !important;
    }

    html body #site-navigation-mobile li.catalog-btn > a::before,
    html body #site-navigation-mobile li.mega-catalog > a::before {
        width: 15px !important;
        height: 15px !important;
        flex: 0 0 15px !important;
        margin-right: 0 !important;
    }

    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li > a:hover,
    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li > a:focus-visible {
        border-color: #bfcee1 !important;
        background: #fff !important;
        color: #10213c !important;
        outline: 3px solid rgba(50, 115, 220, .16) !important;
        outline-offset: 1px !important;
    }

    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li.current-menu-item > a,
    html body #site-navigation-mobile .main-navigation-inner > div > ul.menu > li.current-menu-ancestor > a {
        border-color: #afc8e8 !important;
        background: #eaf3ff !important;
        color: #102a53 !important;
    }
}

/* === iPad footer: balanced information and legal rows — stage 296 === */
@media (min-width: 768px) and (max-width: 1023px) {
    html body footer.site-footer .site-footer-inner {
        width: min(100%, 920px) !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    html body footer.site-footer .footer-widgets.footer-widgets-5 {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        align-items: start !important;
        gap: 30px 32px !important;
        width: 100% !important;
        margin: 0 0 24px !important;
        padding: 0 0 28px !important;
    }

    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget {
        width: auto !important;
        min-width: 0 !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(1),
    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(2),
    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(3),
    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(4) {
        grid-column: span 1 !important;
    }

    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(5) {
        grid-column: 1 / -1 !important;
        padding-top: 20px !important;
        border-top: 1px solid rgba(255, 255, 255, .12) !important;
    }

    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(5) .textwidget {
        display: grid !important;
        grid-template-columns: auto repeat(4, minmax(0, 1fr)) !important;
        align-items: center !important;
        gap: 12px 24px !important;
    }

    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(5) h3,
    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(5) p {
        margin: 0 !important;
        white-space: nowrap !important;
    }

    html body footer.site-footer .footer-widgets .footer-widget h3 {
        margin: 0 0 14px !important;
    }

    html body footer.site-footer .footer-widgets .footer-widget p {
        margin: 0 0 12px !important;
    }

    html body footer.site-footer .footer-bottom {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 20px !important;
        width: 100% !important;
        padding: 0 !important;
    }

    html body footer.site-footer .footer-info,
    html body footer.site-footer .footer-counters {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        justify-self: stretch !important;
    }

    html body footer.site-footer .footer-brand {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 22px !important;
        width: 100% !important;
        min-height: 74px !important;
    }

    html body footer.site-footer .footer-brand__logo {
        width: 190px !important;
        max-width: 36% !important;
        height: auto !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
    }

    html body footer.site-footer .footer-brand__text {
        width: auto !important;
        max-width: 310px !important;
        margin: 0 !important;
        text-align: left !important;
    }

    html body footer.site-footer .dim-footer.footer-bottom-right {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        justify-items: stretch !important;
        gap: 24px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 18px 0 0 !important;
        border-top: 1px solid rgba(255, 255, 255, .12) !important;
    }

    html body footer.site-footer .footer-links {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 4px 20px !important;
        min-width: 0 !important;
        white-space: normal !important;
    }

    html body footer.site-footer .footer-links a {
        min-height: 44px !important;
        display: inline-flex !important;
        align-items: center !important;
        line-height: 1.35 !important;
    }

    html body footer.site-footer .footer-payments {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 12px !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body footer.site-footer .footer-payments img {
        width: auto !important;
        max-width: 52px !important;
        max-height: 30px !important;
        object-fit: contain !important;
    }
}

/* === iPad homepage support: full-surface artwork like mobile — stage 297 === */

/* Stage 298/307: iPad swipe rails; the dedicated reviews page keeps a vertical feed. */
@media (min-width: 768px) and (max-width: 1023px) {
    html body.home .kh-home-articles-grid,
    html body.front-page .kh-home-articles-grid,
    html body .kh-faq-page .kh-faq-featured-articles .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,
    html body.single-product .kh-single-recently-viewed .kh-single-product-grid,
    html body.single-product .kh-single-articles-section .kh-single-articles-grid,
    html body.single-product .kh-single-reviews-list .admin-product-reviews,
    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-articles__grid {
        width: 100% !important;
        max-width: none !important;
        display: flex !important;
        flex-flow: row nowrap !important;
        align-items: stretch !important;
        gap: 14px !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding: 2px 16px 16px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        box-sizing: border-box !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        overscroll-behavior-inline: contain !important;
        scroll-behavior: smooth !important;
        scroll-padding-inline: 16px !important;
        scroll-snap-type: x mandatory !important;
        -webkit-overflow-scrolling: touch !important;
    }

    html body.home .kh-home-articles-grid::-webkit-scrollbar,
    html body.front-page .kh-home-articles-grid::-webkit-scrollbar,
    html body .kh-faq-page .kh-faq-featured-articles .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,
    html body.single-product .kh-single-recently-viewed .kh-single-product-grid::-webkit-scrollbar,
    html body.single-product .kh-single-articles-section .kh-single-articles-grid::-webkit-scrollbar,
    html body.single-product .kh-single-reviews-list .admin-product-reviews::-webkit-scrollbar,
    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-articles__grid::-webkit-scrollbar {
        display: none !important;
    }

    html body.home .kh-home-articles-grid > .kh-home-article-card,
    html body.front-page .kh-home-articles-grid > .kh-home-article-card,
    html body .kh-faq-page .kh-faq-featured-articles .kh-home-articles-grid > .kh-home-article-card {
        width: min(40vw, 300px) !important;
        min-width: min(40vw, 300px) !important;
        max-width: min(40vw, 300px) !important;
        flex: 0 0 min(40vw, 300px) !important;
        margin: 0 !important;
        scroll-snap-align: start !important;
        scroll-snap-stop: normal !important;
    }

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

    html body.single-product .kh-single-recently-viewed .kh-single-product-card {
        width: min(34vw, 255px) !important;
        min-width: min(34vw, 255px) !important;
        max-width: min(34vw, 255px) !important;
        flex: 0 0 min(34vw, 255px) !important;
        margin: 0 !important;
        scroll-snap-align: start !important;
        scroll-snap-stop: normal !important;
    }

    html body.single-product .kh-single-articles-section .kh-single-article-card,
    html body main.kh-downloads-page.kh-downloads-detail .kh-dl-product-articles__grid > .kh-dl-product-article {
        width: min(42vw, 315px) !important;
        min-width: min(42vw, 315px) !important;
        max-width: min(42vw, 315px) !important;
        flex: 0 0 min(42vw, 315px) !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        scroll-snap-align: start !important;
        scroll-snap-stop: normal !important;
    }

    html body.single-product .kh-single-articles-section .kh-single-article-card:hover,
    html body.single-product .kh-single-articles-section .kh-single-article-card:focus-visible {
        transform: none !important;
    }

    html body.single-product .kh-single-reviews-layout,
    html body.single-product .kh-single-reviews-list {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

}

/* Stage 299: prevent the iPad footer information values from overlapping. */
@media (min-width: 768px) and (max-width: 1023px) {
    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(5) .textwidget {
        grid-template-columns: repeat(4, max-content) !important;
        grid-template-rows: auto auto !important;
        justify-content: space-between !important;
        gap: 10px !important;
    }

    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(5) h3 {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        justify-self: start !important;
    }

    html body footer.site-footer .footer-widgets.footer-widgets-5 > .footer-widget:nth-child(5) p {
        grid-row: 2 !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }
}

/* Stage 300: remove the legacy 72px right offset from iPad product sections. */

/* Stage 301: keep Office 365 bundle benefits inside the iPad card. */

/* Stage 302: native swipe rails for lower product sections on phones. */

/* Stage 308: keep the recommendation and support pair visible while desktop product pages scroll. */

/* Stage 329: shared review dialog for home, products and the reviews page. */
.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-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-review-dialog__product .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-dialog__product .kh-review-card__product-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
