.form-message{display: none;}
.form-message.success{display: block; color: green;}
.form-message.error{display: block; color: red;}
.input-error{    border: 1px solid red!important;}
.hidden{display: none!important;}
.clearlink{color: inherit;}

.noUi-pips{display: none;}
.noUi-handle{
    color: var(--gray-300);
    font-size: var(--text-xs);
    line-height: 1.333;
    text-shadow: none;
    text-indent: -99999px;
    padding: 0;
    width: 18px!important;
    height: 18px!important;
    top: 1px;
    z-index: 2;
    background-color: var(--color-accent);
    border-radius: 100%;
    cursor: pointer;
    border: none;
    box-shadow: none;
}
a.brand_item_w{
    font-family: var(--font-sans);
    color: var(--gray-800);
    text-decoration: none;
    font-weight: var(--fw-bold);
    font-size: var(--text-5xl);
    text-align: center;
    line-height: 1;
    flex-direction: column;
}
.brand_item_w span {
    font-weight: var(--fw-regular);
    font-size: var(--text-lg);
    margin-top: 10px;
    font-size: var(--text-lg);
}
.abs-brand {
    position: relative;
}
.float-image {
    float: right;
    margin: 0 0 20px 20px;
    max-width: 200px;
}
.br-image {
    max-width: 200px;
    display: none;
}
@media only screen and (max-width: 767px) {
    .br-image {
        display: block;
        margin: 0 auto 20px auto;
    }
    .float-image {
        display: none;
    }
}
.noUi-target {
    border-radius: 0;
    border: none;
    box-shadow: none;
}
.noUi-horizontal .noUi-handle {
    top: -7px;
}
.noUi-handle:before, .noUi-handle:after{
    display: none;
}
.scale, .noUi-origin{
    height: 2px;
    background-color: var(--gray-200);
}
.noUi-connect {
    height: 2px;
    background-color: var(--gray-800);
}

.disabled-text{
    opacity: 0.5;
}

.disabled-text2{
    opacity: 0.5;
    text-decoration: line-through;
}

.list_info .list_info_txt2 br{
	margin-bottom: 10px;
}
.disabled-text2 span:before {
    content: "";
    position: absolute;
    width: 1px;
    height: 130%;
    display: block;
    background: #ff0000;
    transform: rotate(45deg);
    left: 14px;
    z-index: 2;
    margin-top: -5px;
    border: 1px solid black;
    border-radius: 50%;
}

.embed-container-1 { 
	position: relative; 
	padding-bottom: 56.25%; 
	height: 0; 
	overflow: hidden; 
	max-width: 100%; 
} 

.embed-container-1 iframe, .embed-container object, .embed-container embed { 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%; 
}




.config-icon path, .specification_table_main_icon path {
    fill: var(--color-accent);
}

.not-stock {
    opacity: 0.7;
}

.main_item_lg_title .option-item, .option-item {
    font-size: var(--text-xs);
    color: var(--gray-600);
}
.conf_list_icon svg {
    width: 24px;
}
.specification_table_main_icon svg, .main_item_list_icon svg {
    width: 20px;
}
.fancybox-close {
    top: 10px;
    right: 20px;
}
.conf_item_box_img {
    background: #fff;
}
.conf_item_box_img img {
    top: 26px;
    left: 26px;
    width: calc(100% - 36px);
    height: calc(100% - 36px);
}
.conf_list_btn.conf-filled {
    color: var(--color-primary);
}
.conf_list_btn.conf-filled:before {
    opacity: 1;
}
.conf_list_btn.conf-filled .conf_list_icon path,
.conf_list_btn.conf-filled .conf_list_icon rect,
.conf_list_btn.conf-filled .conf_list_icon circle,
.conf_list_btn.conf-filled .conf_list_icon polygon,
.conf_list_btn.conf-filled .conf_list_icon ellipse {
    fill: var(--color-primary);
    stroke: var(--color-primary);
}
.config-icon-filled,
.specification_table_main_icon.config-icon-filled {
    color: var(--color-primary);
}
.config-icon-filled svg,
.specification_table_main_icon.config-icon-filled svg {
    color: var(--color-primary);
}
.config-icon-filled path,
.config-icon-filled rect,
.config-icon-filled circle,
.config-icon-filled polygon,
.config-icon-filled ellipse,
.specification_table_main_icon.config-icon-filled path,
.specification_table_main_icon.config-icon-filled rect,
.specification_table_main_icon.config-icon-filled circle,
.specification_table_main_icon.config-icon-filled polygon,
.specification_table_main_icon.config-icon-filled ellipse {
    fill: var(--color-primary) !important;
    stroke: var(--color-primary) !important;
}
.content-clear_configuration .fancybox-title,
.content-discharge .fancybox-title {
    display: none !important;
}

.specification_table_prise_in .specification_table_action {
    display: inline-flex;
    vertical-align: middle;
}

.specification_table_prise_in .specification_table_action + .specification_table_action {
    margin-left: 6px;
}

.specification_product_link {
    color: var(--color-primary);
    cursor: pointer;
    text-decoration: underline;
}

.specification_product_link:hover {
    text-decoration: none;
}

.conf_list_btn.active2:not(.conf-filled) {
    color: var(--color-primary);
}
.conf_list_btn.active2:not(.conf-filled) .conf_list_icon path,
.conf_list_btn.active2:not(.conf-filled) .conf_list_icon rect,
.conf_list_btn.active2:not(.conf-filled) .conf_list_icon circle,
.conf_list_btn.active2:not(.conf-filled) .conf_list_icon polygon,
.conf_list_btn.active2:not(.conf-filled) .conf_list_icon ellipse {
    fill: var(--color-primary);
    stroke: var(--color-primary);
}
/* safety: legacy conf_list_btn.active is not filled */
.conf_list_btn.active:not(.conf-filled):before {
    opacity: 0;
}
.conf_list_btn.active:not(.conf-filled) {
    color: var(--color-primary);
}
.conf_list_btn.active:not(.conf-filled) .conf_list_icon path,
.conf_list_btn.active:not(.conf-filled) .conf_list_icon rect,
.conf_list_btn.active:not(.conf-filled) .conf_list_icon circle,
.conf_list_btn.active:not(.conf-filled) .conf_list_icon polygon,
.conf_list_btn.active:not(.conf-filled) .conf_list_icon ellipse {
    fill: var(--color-primary);
    stroke: var(--color-primary);
}

.conf_list_item {
    position: relative;
}
.conf_list_btn {
    height: auto;
    min-height: 46px;
    padding-top: 6px;
    padding-bottom: 6px;
    align-items: flex-start;
}
.conf_list_btn .conf_list_icon {
    margin-top: 2px;
}
.conf_list_btn .conf_list_meta {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 8px;
    min-width: 0;
    flex: 1;
}
.conf_list_btn .conf_list_icon_cont {
    line-height: 1.25;
}
.conf_list_btn .conf_list_actions {
    margin-left: 0;
    flex-shrink: 0;
}
.conf_list_actions {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    opacity: 1;
    transition: opacity 0.2s;
}
@media (hover: hover) and (pointer: fine) {
    .conf_list_actions {
        opacity: 0;
    }
    .conf_list_item:hover .conf_list_actions,
    .conf_list_item_copy .conf_list_actions {
        opacity: 1;
    }
}
.conf_list_item_copy .conf_list_actions {
    opacity: 1;
}
.conf_list_actions a,
.conf_list_actions button,
.config-slot-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 4px;
    border: 0;
    border-radius: 4px;
    font-size: var(--text-sm);
    line-height: 1;
    color: var(--gray-600);
    background: var(--gray-100);
    text-decoration: none;
    cursor: pointer;
    font-family: inherit;
}
.conf_list_actions a:hover,
.conf_list_actions button.config-add-slot:hover,
.config-slot-actions a:hover {
    color: var(--color-primary);
    background: var(--gray-100);
}
.conf_list_actions button.config-remove-slot {
    color: #fff;
    background: #e53935;
}
.conf_list_actions button.config-remove-slot:hover {
    color: #fff;
    background: #c62828;
}
.config-slot-actions {
    margin-left: auto;
    display: inline-flex;
    gap: 8px;
    font-size: var(--text-sm);
}
.title_box_in {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}
.config-qty-stepper {
    display: inline-flex;
    align-items: stretch;
    height: 30px;
    border: 1px solid var(--gray-200);
    border-radius: 6px;
    background: #fff;
    overflow: hidden;
    flex-shrink: 0;
    vertical-align: middle;
}
.config-qty-btn {
    width: 30px;
    min-width: 30px;
    height: 100%;
    border: none;
    background: var(--gray-50);
    color: var(--gray-600);
    font-size: var(--text-md);
    font-weight: var(--fw-bold);
    cursor: pointer;
    line-height: 1;
    padding: 0;
    transition: background 0.15s, color 0.15s;
}
.config-qty-btn:hover {
    background: var(--gray-100);
    color: var(--color-primary);
}
.config-qty-btn:active {
    background: #e0dcff;
}
.config-qty-val {
    width: 36px;
    min-width: 36px;
    max-width: 48px;
    padding: 0 2px;
    border: none;
    border-left: 1px solid var(--gray-200);
    border-right: 1px solid var(--gray-200);
    text-align: center;
    font-weight: var(--fw-bold);
    font-size: var(--text-sm);
    line-height: 28px;
    color: var(--gray-800);
    background: #fff;
    -moz-appearance: textfield;
}
.config-qty-val::-webkit-outer-spin-button,
.config-qty-val::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.config-qty-val:focus {
    outline: none;
    background: var(--gray-50);
}
.config-qty-stepper--inline {
    margin-right: 12px;
}
.config-qty-stepper--grid {
    margin-top: 8px;
    margin-bottom: 4px;
}
.config-qty-stepper--modal {
    height: 28px;
}
.config-qty-stepper--modal .config-qty-btn {
    width: 28px;
    min-width: 28px;
    font-size: var(--text-sm);
}
.config-qty-stepper--modal .config-qty-val {
    width: 32px;
    min-width: 32px;
    font-size: var(--text-xs);
    line-height: 26px;
}
.config-list-row {
    display: block;
    min-width: 0;
}
.config-list-top {
    min-width: 0;
}
.config-list-top .radio_point + label.config-list-name {
    display: block;
    width: 100%;
    box-sizing: border-box;
    justify-content: flex-start;
    padding-right: 0;
    line-height: 1.35;
    margin: 0;
}
.config-list-meta {
    margin-top: 6px;
    padding-left: 37px;
    min-height: 30px;
}
.config-list-code-group {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 12px;
    min-width: 0;
    min-height: 30px;
}
.config-list-code {
    flex-shrink: 0;
    font-size: var(--text-md);
    line-height: 30px;
    color: var(--gray-400);
    white-space: nowrap;
}
.config-list-icons {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}
.config-list-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    line-height: 0;
}
.config-list-icons svg {
    display: block;
    height: 16px;
    width: auto;
}
.config-list-icons svg[width="16"] {
    width: 16px;
}
.config-list-stepper {
    display: flex;
    flex-shrink: 0;
    min-height: 30px;
    align-items: center;
}
.config-list-stepper .config-qty-stepper--inline {
    margin: 0;
}
.config-list-price {
    margin-top: 4px;
    padding-left: 37px;
    font-size: var(--text-md);
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
    white-space: nowrap;
}
.config-list-price em {
    font-style: normal;
    font-weight: var(--fw-bold);
    color: var(--gray-600);
}
.conf_item_list li.active .config-list-price em {
    color: var(--color-accent);
}
.conf_item_list .config-list-row {
    padding: 2px 0;
}
.conf_item_list li.active {
    background: var(--gray-50);
    border-radius: 4px;
}
.conf_item_box_cont .config-qty-stepper--grid {
    display: inline-flex;
}
.conf_item_box_name {
    padding-top: 10px;
    font-size: var(--text-sm);
    line-height: 1.35;
    font-weight: var(--fw-bold);
    color: var(--gray-800);
}
.conf_item_box.active .conf_item_box_name {
    color: var(--color-accent);
}
.conf_item_box_meta {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    padding-top: 6px;
    min-height: 28px;
    flex-wrap: nowrap;
}
.conf_item_box_meta-left {
    display: flex;
    align-items: center;
    gap: 2px;
    flex: 1 1 auto;
    min-width: 0;
    min-height: 28px;
    max-width: 100%;
}
.conf_item_box_foot {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    padding-top: 8px;
    min-width: 0;
    flex-wrap: wrap;
}
.conf_item_box_stepper {
    display: flex;
    flex-shrink: 0;
    margin-left: 0;
}
.conf_item_box_stepper .config-qty-stepper--grid {
    margin: 0;
}
.conf_item_box_foot .conf_item_box_price {
    padding-top: 0;
}
.conf_item_box_code {
    flex-shrink: 0;
    font-size: var(--text-sm);
    line-height: 24px;
    font-weight: var(--fw-regular);
    color: var(--gray-600);
    white-space: nowrap;
}
.conf_item_box_icons {
    display: inline-flex;
    align-items: center;
    gap: 0;
    flex-shrink: 0;
}
.conf_item_box_icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    line-height: 0;
}
.conf_item_box_icons svg {
    display: block;
    height: 16px;
    width: auto;
}
.conf_item_box_icons svg[width="16"] {
    width: 16px;
}
.conf_item_box_cont .conf_item_box_price {
    padding-top: 0;
    font-size: var(--text-md);
    line-height: 1.2;
    font-weight: var(--fw-bold);
    font-style: normal;
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
    text-align: left;
    white-space: nowrap;
    color: var(--gray-600);
}
.conf_item_box.active .conf_item_box_cont .conf_item_box_price {
    color: var(--color-accent);
}

#nav_conf_mobile {
    display: none;
}
.fancybox-wrap.content-nav_conf_mobile #nav_conf_mobile,
.fancybox-inner #nav_conf_mobile {
    display: block;
}

.fancybox-wrap.content-config_remove_slot .fancybox-skin,
.fancybox-wrap.content-config_remove_slot .fancybox-inner,
.fancybox-inner #config_remove_slot {
    background: #fff;
}

@media only screen and (max-width: 1199px) {
    .conf_list_actions a,
    .conf_list_actions button {
        min-width: 32px;
        height: 32px;
        font-size: var(--text-lg);
    }
    .fancybox-wrap.content-nav_conf .filter_box,
    .fancybox-wrap.content-nav_conf #nav_conf,
    .fancybox-wrap.content-nav_conf_mobile .filter_box,
    .fancybox-wrap.content-nav_conf_mobile #nav_conf_mobile {
        max-height: calc(100vh - 80px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
    .config-slot-actions {
        width: 100%;
        margin-left: 0;
        margin-top: 6px;
        flex-wrap: wrap;
    }
    .config-slot-actions a {
        min-height: 36px;
        padding: 6px 10px;
    }
}

@media only screen and (max-width: 991px) {
    .config-list-code-group {
        gap: 8px 10px;
    }
    .config-list-meta,
    .config-list-code-group,
    .config-list-stepper,
    .conf_item_box_meta,
    .conf_item_box_meta-left {
        min-height: 32px;
    }
    .config-list-code,
    .conf_item_box_code {
        font-size: var(--text-sm);
        line-height: 32px;
    }
    .config-list-icons a,
    .conf_item_box_icons a {
        width: 28px;
        height: 28px;
    }
    .config-list-icons svg,
    .conf_item_box_icons svg {
        height: 18px;
    }
    .config-list-icons svg[width="16"],
    .conf_item_box_icons svg[width="16"] {
        width: 18px;
    }
    .config-list-price {
        font-size: var(--text-md);
    }
    .conf_item_box_cont .conf_item_box_price {
        font-size: var(--text-md);
    }
    .conf_item_box_meta {
        flex-wrap: nowrap;
        gap: 4px;
    }
    .conf_item_box_foot {
        gap: 8px;
    }
    .config-qty-stepper {
        height: 36px;
    }
    .config-qty-btn {
        width: 36px;
        min-width: 36px;
        font-size: var(--text-lg);
    }
    .config-qty-val {
        width: 40px;
        min-width: 40px;
        font-size: var(--text-sm);
        line-height: 34px;
    }
    .config-qty-stepper--inline {
        margin-right: 0;
        margin-bottom: 4px;
    }
    .config-qty-stepper--modal {
        height: 32px;
    }
    .config-qty-stepper--modal .config-qty-btn {
        width: 32px;
        min-width: 32px;
    }
}

@media only screen and (max-width: 1200px) {
    .specification_table_sum {
        width: auto !important;
        max-width: none;
        padding-right: 0 !important;
    }
    .specification_table_sum .config-qty-stepper {
        margin-top: 0;
    }
    .specification_table_prise_in {
        flex-wrap: wrap;
        gap: 8px;
    }
}

.pages_box.pagination-wrap {
    position: relative;
}

.js-load-more {
    position: relative;
    min-width: 160px;
    transition: opacity 0.2s ease;
}

#config-mail {
    position: relative;
    transition: opacity 0.2s ease;
}

.js-load-more.loading,
#config-mail.loading {
    pointer-events: none;
    opacity: 0.75;
    color: transparent !important;
}

.js-load-more.loading::after,
#config-mail.loading::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 22px;
    height: 22px;
    margin: -11px 0 0 -11px;
    border-radius: 50%;
    border: 2px solid;
    border-top-color: color-mix(in srgb, var(--color-primary) 70%, transparent);
    border-bottom-color: color-mix(in srgb, var(--color-primary) 15%, transparent);
    border-left-color: color-mix(in srgb, var(--color-primary) 70%, transparent);
    border-right-color: color-mix(in srgb, var(--color-primary) 15%, transparent);
    animation: geek-load-more-spin 0.8s linear infinite;
}

@keyframes geek-load-more-spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.init-hold {
    position: relative;
}
.init-hold span {
    position: absolute;
    left: 21px;
    top: 11px;
    font-size: var(--text-sm);
    cursor: text;
    transition: 0.3s;
}
.init-hold input:focus + span,.init-hold input:not(:placeholder-shown) + span,
.init-hold textarea:focus + span,.init-hold textarea:not(:placeholder-shown) + span{
    font-size: 70%;
    opacity: 0.5;
    top: -4px;
}
input[readonly] {
    opacity: 0.6;
}
.checkout-list-products .basket_item {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
}
.checkout-list-products .basket_item_img {
    max-width: 70px;
    max-height: 70px;
    margin-right: 13px;
}
.checkout-list-products .basket_item_prise {
    padding-top: 10px;
}
.checkout-list-products .main_item_lg_title a, .checkout-list-products .main_item_lg_title {
    font-size: var(--text-md);
}
.checkout-list-products {
    max-height: 260px;
    overflow: auto;
    margin-right: -20px;
    padding-right: 10px;
}
.flex-edit {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.swiper_tab li {
    padding: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.swiper_tab li img {
    max-height: 100%;
    -webkit-fit-object: contain;
    -moz-fit-object: contain;
    -o-fit-object: contain;
    object-fit: contain;
    mix-blend-mode: multiply;
    background-blend-mode: multiply;
}

.item_gal img {
    top: 7px;
    left: 7px;
    width: calc(100% - 14px);
    height: calc(100% - 14px);
}
.swiper_ba_btn_pos .btn, .swiper_button_vert .swiper_btn {
    box-shadow: 0px 0px 10px rgb(0 0 0 / 30%);
}
.item_info_link {
    cursor: pointer;
    transition: 0.3s;
}
.item_info_link:hover {
    transform: scale(1.2);
}
.sale-ended {
    filter: grayscale(1);
    opacity: 0.9;
}
.compare_cont em {
    font-style: normal;
}
.compare_cont em.diff {
    opacity: 0.5;
}
.compare_title {
    display: flex;
    align-items: center;
}
.compare_title .ocf_helper.ocf_helper_value {
    margin-top: 3px;
}
.tabs-rel {
    position: relative;
}
.swiper-button-box.swiper-btn-abs {
    position: absolute;
    top: -6px;
    right: 0;
}
@media only screen and (max-width: 1200px) {
.swiper-button-box.swiper-btn-abs {
    position: absolute;
    top: auto;
    right: 0;
    bottom: -40px;
    left: 0;
    justify-content: center;
}
}
#fancybox-thumbs ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    /*padding: 7px;*/
}
#fancybox-thumbs ul li img {
    max-width: 100%;
    max-height: 100%;
    height: auto !important;
    width: auto !important;
    left: 0 !important;
    top: 0 !important;
}
.fancybox-skin .btn_filter_clear {
    position: absolute;
    top: 10px;
    left: 30px;
    height: 44px;
    display: flex;
    align-items: center;
}
.list-group-item.selected-options {
    position: static;
}
.fancybox-skin .fancybox-outer, .fancybox-skin .fancybox-inner {
    position: static;
}
.content-ocfilter .fancybox-outer {
    padding-top: 60px;
}
.content-ocfilter .filter_box {
    padding-top: 10px;
}
.range_group.once:before {
    content: none;
}
.range_in {
    align-items: center;
    padding: 0 14px 0 0;
}
.range_in input {
    padding: 14px 14px 14px 5px;
    border: none;
    border-radius: 4px;
    width: 70%;
    background: none;
}
.editable input {
    font-family: var(--font-sans);
    padding: 9px 10px;
    font-weight: var(--fw-bold);
    font-size: var(--text-lg);
    line-height: 16px;
    color: #000;
    background: #FFFFFF;
    border: 1px solid var(--gray-200);
    box-sizing: border-box;
    border-radius: 4px;
    display: none;
}
.editable.active input {
    display: block;
}
.editable.active span {
    display: none;
}
.editable i {
    margin-left: 10px;
}
.editable {
    display: flex !important;
    align-items: center;
}
.panel-mob-custom {
    display: flex;
    align-items: center;
    position: fixed;
    bottom: 0;
    z-index: 19;
    background: var(--gray-50);
        padding: 10px;
        left: 0;
        right: 0;
        display: none;
}
.panel-mob-custom > img {
    max-width: 75px;
    max-height: 75px;
    margin-right: 20px;
    -webkit-fit-object: contain;
    -moz-fit-object: contain;
    -o-fit-object: contain;
    object-fit: contain;
    mix-blend-mode: multiply;
    background-blend-mode: multiply;
}
.panel-mob-custom > div {
    flex-grow: 1;
}
.panel-mob-custom .main_item_lg_title {
    color: var(--gray-800) !important;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin: 0;
}
.panel-mob-custom  .item_main_conf_txt_list_cont {
    flex-direction: column;
    margin-bottom: 5px;
}
.panel-mob-custom  .item_main_conf_prise {
    font-size: var(--text-3xl);
    line-height: 30px;
}
.panel-mob-custom  .back_to_top {
    display: block !important;
    position: static;
    padding: 7px 10px !important;
    height: auto;
    width: 100%;
}
.panel-mob-custom .item_main_conf_btn_box .btn {
    padding-top: 5px;
    padding-bottom: 5px;
}
.panel-mob-custom .btn i {
    margin: 0;
}
.panel-mob-custom .main_item_lg_prise {
    font-size: var(--text-sm);
  }
.navigation_2 > li > a > i svg {
    width: 26px;
    height: 26px;
}
@media only screen and (max-width: 991px) {
    #links_list {
        max-width: 100%;
        width: 992px;
        padding: 60px 30px 30px 30px;
    }
    .panel-mob-custom {
        display: flex;
    }
    .ocf_helper_block {
        max-width: 250px;
    }
}
b.ocf_helper_doit {
    font-weight: inherit;
}
@media only screen and (max-width: 360px) {
    .ocf_helper_block {
        max-width: 170px;
    }
}




































/* Просьба писать стили выше этого комментария.Ниже находятся стили для описаний, чтоб я потом не запутался. */

.scrollto:not(.conf_list_btn) {
  display: block;
}


.icon-img100pr {
  display: block;
  margin: 0 auto;
}

.icon-img140svg {
  width: 140px;
}

.o-nas-svg {
  width: 50px;
}


.icon_item-9 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 30px;
}

.icon_item-9 h4 {
  margin: 0;
  font-size: var(--text-xl);
  line-height: 24px;
  
}

.icon_item-9 h3 {
  margin: 0;
  
}


.icon_item-9 span {
  display: block;
  font-weight: var(--fw-bold);
  font-size: var(--text-md);
  line-height: 20px;
  color: var(--gray-600);
}

.icon_item-9 ol, ul {
  text-align: left;
}

.icon_item-9 ol:not([class]) li:not(:last-child) {
  margin-bottom: 5px;
}
.icon_item-9 ul:not([class]) li:not(:last-child) {
  margin-bottom: 5px;
}


.icon_item-12 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  align-items: center;
  gap: 1rem;
  margin-bottom: 50px;
}

.icon_item-12 h4 {
  margin: 0;
  font-size: var(--text-xl);
  line-height: 25px;
  
}

.icon_item-12 h3 {
  margin: 0;
  
}


.icon_item-12 span {
  display: block;
  font-weight: var(--fw-bold);
  font-size: var(--text-md);
  line-height: 20px;
  color: var(--gray-600);
}

.icon_item-12 figure {
  margin-bottom: 0px;
}


.custom-table-10 {
  width: 100%;
  margin: auto;
}


.custom-table-10 th {
  padding: 10px;
  text-align: center;
  white-space: nowrap;
  border:1px solid var(--gray-800);
}

.custom-table-10 td {
  padding: 10px;
  height: 100%;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  border:1px solid var(--gray-800);
}

.custom-overflow-10 {
  overflow-x: auto;
  padding: 10px;
}

.opacity-item .main_item_lg_img,
.opacity-item .section_top > :not(.main_item_lg_actions) {
    opacity: 0.6;
}

.options-scroll::-webkit-scrollbar {
    width: 5px; 
  }

.options-scroll {
    max-height: 360px;
    overflow: auto;
    margin-bottom: 20px;
}

.contact_widget {
    position: fixed;
    right: 10px;
    bottom: 70px;
    z-index: 100;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.contact_widget_toggle svg {
    display: block;
}
.contact_widget_panel {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-end;
    -moz-align-items: flex-end;
    -ms-align-items: flex-end;
    -o-align-items: flex-end;
    align-items: flex-end;
    gap: 10px;
    margin-bottom: 12px;
    pointer-events: none;
}

.contact_widget_item {
    width: 46px;
    height: 46px;
    padding: 0;
    border-radius: 100%;
    display: -webkit-inline-flex;
    display: -moz-inline-flex;
    display: -ms-inline-flex;
    display: -o-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    box-shadow: 0 12px 30px rgba(24, 24, 24, 0.14);
    text-decoration: none;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(14px);
    -ms-transform: translateY(14px);
    transform: translateY(14px);
    -webkit-transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
    -o-transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
    transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}

.contact_widget_item:hover {
    box-shadow: 0 16px 36px rgba(24, 24, 24, 0.2);
    text-decoration: none;
}

.contact_widget.is-open .contact_widget_panel {
    pointer-events: auto;
}

.contact_widget.is-open .contact_widget_item {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.contact_widget.is-open .contact_widget_item:nth-child(1) {
    -webkit-transition-delay: 0.03s;
    -o-transition-delay: 0.03s;
    transition-delay: 0.03s;
}

.contact_widget.is-open .contact_widget_item:nth-child(2) {
    -webkit-transition-delay: 0.06s;
    -o-transition-delay: 0.06s;
    transition-delay: 0.06s;
}

.contact_widget.is-open .contact_widget_item:nth-child(3) {
    -webkit-transition-delay: 0.09s;
    -o-transition-delay: 0.09s;
    transition-delay: 0.09s;
}

.contact_widget.is-open .contact_widget_item:nth-child(4) {
    -webkit-transition-delay: 0.12s;
    -o-transition-delay: 0.12s;
    transition-delay: 0.12s;
}

.contact_widget_icon {
    width: 40px;
    height: 40px;
    border-radius: 100%;
    display: -webkit-inline-flex;
    display: -moz-inline-flex;
    display: -ms-inline-flex;
    display: -o-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    color: #FFFFFF;
    -webkit-flex-shrink: 0;
    -moz-flex-shrink: 0;
    -ms-flex-shrink: 0;
    -o-flex-shrink: 0;
    flex-shrink: 0;
}

.contact_widget_icon--phone {
    background: var(--color-accent);
}

.contact_widget_icon--telegram {
    background: #27A7E7;
}

.contact_widget_icon--viber {
    background: #7360F2;
}

.contact_widget_icon--whatsapp {
    background: #2DB742;
}

.contact_widget_toggle {
    position: relative;
    width: 56px;
    height: 56px;
    border: 0;
    border-radius: 100%;
    padding: 0;
    display: -webkit-inline-flex;
    display: -moz-inline-flex;
    display: -ms-inline-flex;
    display: -o-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    box-shadow: 0 16px 36px rgba(242, 98, 58, 0.28);
}

.contact_widget_toggle_icon {
    position: absolute;
    left: 50%;
    top: 50%;
    color: #FFFFFF;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: opacity 0.2s ease, transform 0.2s ease;
    -o-transition: opacity 0.2s ease, transform 0.2s ease;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.contact_widget_toggle_icon--close {
    opacity: 0;
    -webkit-transform: translate(-50%, -50%) scale(0.7);
    -ms-transform: translate(-50%, -50%) scale(0.7);
    transform: translate(-50%, -50%) scale(0.7);
}

.contact_widget.is-open .contact_widget_toggle_icon--chat {
    opacity: 0;
    -webkit-transform: translate(-50%, -50%) scale(0.7);
    -ms-transform: translate(-50%, -50%) scale(0.7);
    transform: translate(-50%, -50%) scale(0.7);
}

.contact_widget.is-open .contact_widget_toggle_icon--close {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
}

@media (max-width: 767px) {
    .contact_widget {
        right: 12px;
        bottom: 110px;
    }

    .contact_widget_item {
        width: 44px;
        height: 44px;
    }
}
/* конец пробных */

.form_box input:not([type=checkbox]):not([type=radio]),
.form_box textarea,
.form_box select {
    font-family: var(--font-sans);
    width: 100%;
    padding: 14px 20px;
    font-weight: var(--fw-bold);
    font-size: var(--text-sm);
    line-height: 16px;
    color: #000;
    background: #FFFFFF;
    border: 1px solid var(--gray-200);
    box-sizing: border-box;
    border-radius: 4px;
}

.payment-label-online {
    display: inline-block;
    padding: 2px 8px;
    margin: 0 0 4px;
    border-radius: 4px;
    background: #66ba1f;
    width: max-content;
    color: #fff !important;
}

.payment-alert-text {
    color: #ff00;
}

.checkout-payment-extra {
    padding-top: 10px;
}

.checkout-select {
    font-family: var(--font-sans);
    width: 100%;
    padding: 14px 20px;
    font-weight: var(--fw-bold);
    font-size: var(--text-sm);
    line-height: 16px;
    color: #1f4da3;
    background: #FFFFFF;
    border: 1px solid var(--gray-200);
    box-sizing: border-box;
    border-radius: 4px;
    -webkit-appearance: none;
    appearance: none;
}

.checkout-select.is-empty {
    color: #d52b2b;
}

/* Hide one-click: buy fills row with compare/wishlist; cards use full-width buy alone */
.item_main_conf_btn_box > .btn.btn_full {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
}
.section_bottom .btn_box_pos .btn.btn_full {
    width: 100%;
}

/* Product card: compact meta / stacked price / icon buy */
.main_item_lg .section_vert {
    height: auto;
    flex-direction: column;
    flex-wrap: nowrap;
}
.main_item_lg .section_top {
    margin-bottom: 0;
}
.main_item_lg .section_bottom {
    height: auto;
    align-self: stretch;
    margin-top: 12px;
}
.main_item_lg_cont { position: relative; z-index: 2;
    padding: 6px 20px 14px 20px;
}
.main_item_lg_title {
    margin-bottom: 8px;
}
.main_item_lg_rating {
    margin-bottom: 6px;
}
.main_item_lg_rating.star_box_wr {
    margin-bottom: 6px;
}
.main_item_lg_meta {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
}
.main_item_lg_meta.row-star-code > div {
    margin-bottom: 0;
}
.main_item_lg_meta .main_item_lg_info_txt {
    padding-top: 0;
    flex: 1 1 auto;
    min-width: 0;
    font-size: var(--text-md);
    line-height: 18px;
    font-weight: var(--fw-bold);
}
.main_item_lg_meta .main_item_lg_model {
    flex: 0 0 auto;
    font-size: var(--text-sm);
    line-height: 18px;
    font-weight: var(--fw-bold);
    color: var(--gray-400);
    text-align: right;
    white-space: nowrap;
}
.main_item_lg_meta .main_item_lg_model span {
    color: var(--gray-400);
}
.main_item_lg_buy_row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 0;
}
.main_item_lg_prise_col {
    flex: 1 1 auto;
    max-width: none;
    min-width: 0;
}
.main_item_lg_buy_col {
    flex: 0 0 auto;
    max-width: none;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.main_item_lg_prise_stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.main_item_lg_prise_stack em {
    display: block;
    margin: 0 0 4px;
    font-size: var(--text-md);
    line-height: 17px;
    font-style: normal;
    text-decoration: line-through;
    color: var(--gray-400);
}
.main_item_lg_prise_stack span {
    display: block;
    margin: 0;
    font-size: var(--text-xl);
    line-height: 26px;
    font-weight: var(--fw-bold);
    color: var(--color-sale);
}
.main_item_lg_prise_stack .main_item_lg_prise_current {
    color: var(--color-primary);
    font-size: var(--text-xl);
    line-height: 24px;
    font-weight: var(--fw-bold);
}
.main_item_lg_buy_col .btn.main_item_lg_buy_btn {
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-width: 0 !important;
    padding: 13px 22px !important;
    white-space: nowrap;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    line-height: 1;
    box-sizing: border-box;
}
.main_item_lg_buy_col .btn.main_item_lg_buy_btn .main_item_lg_buy_label {
    padding: 0;
}
.main_item_lg_buy_col .btn.main_item_lg_buy_btn .main_item_lg_buy_icon,
.main_item_lg_buy_col .btn.main_item_lg_buy_btn i.main_item_lg_buy_icon {
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    line-height: 0;
    flex-shrink: 0;
}
.main_item_lg_buy_col .btn.main_item_lg_buy_btn .main_item_lg_buy_icon svg,
.main_item_lg_buy_col .btn.main_item_lg_buy_btn i.main_item_lg_buy_icon svg {
    width: 18px;
    height: 16px;
    display: block;
}
@media only screen and (max-width: 991px) {
    .main_item_lg .section_top {
        padding-top: 0 !important;
    }
    .main_item_lg_cont {
        padding: 12px 12px 12px 12px;
    }
    .main_item_lg_buy_col .btn.main_item_lg_buy_btn {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        padding: 0 !important;
        gap: 0;
    }
    .main_item_lg_buy_col .btn.main_item_lg_buy_btn .main_item_lg_buy_icon svg,
    .main_item_lg_buy_col .btn.main_item_lg_buy_btn i.main_item_lg_buy_icon svg {
        width: 22px;
        height: 20px;
    }
}
@media only screen and (max-width: 575px) {
    .main_item_lg_prise_stack span {
        font-size: var(--text-lg);
        line-height: 22px;
    }
    .main_item_lg_prise_stack .main_item_lg_prise_current {
        font-size: var(--text-lg);
        line-height: 20px;
    }
    .main_item_lg_prise_stack em {
        font-size: var(--text-sm);
        line-height: 16px;
    }
    .main_item_lg_meta .main_item_lg_info_txt {
        font-size: var(--text-sm);
        line-height: 16px;
    }
    .main_item_lg_meta .main_item_lg_model {
        font-size: var(--text-sm);
        line-height: 16px;
    }
    .main_item_lg_buy_col .btn.main_item_lg_buy_btn {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        padding: 0 !important;
    }
    .main_item_lg_cont {
        padding: 12px 10px 10px 10px;
    }
}




/* btn-config-add: reliable mobile tap + loading circle */
.main_item_lg_buy_col {
    position: relative;
    z-index: 6;
}
.btn.btn-config-add,
.btn.main_item_lg_buy_btn {
    position: relative;
    z-index: 6;
    -webkit-tap-highlight-color: color-mix(in srgb, var(--color-primary) 25%, transparent);
    touch-action: manipulation;
}
/* Whole button must receive the tap — not only the thin SVG + stroke */
.btn.main_item_lg_buy_btn .main_item_lg_buy_label,
.btn.main_item_lg_buy_btn .main_item_lg_buy_icon,
.btn.main_item_lg_buy_btn .main_item_lg_buy_icon svg,
.btn.main_item_lg_buy_btn > i,
.btn.main_item_lg_buy_btn > i svg,
.btn.main_item_lg_buy_btn > span {
    pointer-events: none !important;
}
.btn.btn-config-add {
    transition: transform 0.12s ease, box-shadow 0.12s ease, opacity 0.2s ease;
}
.btn.btn-config-add:active:not(.loading) {
    transform: scale(0.96);
}
/* Expand invisible hit area on mobile (icon is small, finger is not) */
@media only screen and (max-width: 991px) {
    .main_item_lg_buy_col .btn.main_item_lg_buy_btn {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        border-radius: 8px;
    }
    .main_item_lg_buy_col .btn.main_item_lg_buy_btn::before {
        content: '';
        position: absolute;
        top: -10px;
        right: -10px;
        bottom: -10px;
        left: -10px;
        z-index: -1;
    }
}
.btn.btn-config-add.loading {
    pointer-events: none;
    opacity: 0.92;
    overflow: hidden;
}
.btn.btn-config-add.loading .main_item_lg_buy_label,
.btn.btn-config-add.loading .main_item_lg_buy_icon,
.btn.btn-config-add.loading > i,
.btn.btn-config-add.loading > span {
    visibility: hidden;
}
.btn.btn-config-add.loading::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 22px;
    height: 22px;
    margin: -11px 0 0 -11px;
    border-radius: 50%;
    border: 2px solid;
    border-top-color: rgba(255, 255, 255, 0.95);
    border-bottom-color: rgba(255, 255, 255, 0.2);
    border-left-color: rgba(255, 255, 255, 0.95);
    border-right-color: rgba(255, 255, 255, 0.2);
    animation: geek-load-more-spin 0.8s linear infinite;
    z-index: 2;
    pointer-events: none;
}
/* Config "view all" (header with Закрыть): keep chat bubble from covering + buttons */
body.product-category:has(#header .btn_filter_clear) #__replain_widget:not(.active) {
    bottom: 90px !important;
    right: 12px !important;
    transform: scale(0.9);
    transform-origin: bottom right;
}

/* config sticky nav scroll */
#aside_сonfiguration .sticky_сonfiguration,
#aside_configuration .sticky_configuration {
    max-height: calc(100vh - 120px);
}
#aside_сonfiguration .sticky_poz,
#aside_configuration .sticky_poz {
    max-height: none;
    overflow: visible;
}
#aside_сonfiguration .filter_box,
#aside_configuration .filter_box {
    max-height: calc(100vh - 140px);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}
.nav_conf_title_btn {
    min-height: 28px;
    display: block;
}


/* config-info-swiper-gap-fix */
/* Hide stacked swiper slides until initialized — prevents huge gap in product info */
.content-item_info_modal .swiper-thumb-top2,
#item_info_modal .swiper-thumb-top2 {
  max-width: 600px;
  margin: 0 auto 12px;
  height: auto !important;
  overflow: hidden;
}
.content-item_info_modal .swiper-thumb-top2 .swiper-wrapper,
#item_info_modal .swiper-thumb-top2 .swiper-wrapper {
  height: auto !important;
}
.content-item_info_modal .swiper-thumb-top2:not(.swiper-initialized) .swiper-slide,
#item_info_modal .swiper-thumb-top2:not(.swiper-initialized) .swiper-slide {
  display: none;
}
.content-item_info_modal .swiper-thumb-top2:not(.swiper-initialized) .swiper-slide:first-child,
#item_info_modal .swiper-thumb-top2:not(.swiper-initialized) .swiper-slide:first-child {
  display: block;
}
@media (max-width: 767px) {
  .content-item_info_modal .conf_main_img,
  #item_info_modal .conf_main_img {
    max-height: 55vh;
  }
  .content-item_info_modal .conf_main_img img,
  #item_info_modal .conf_main_img img {
    max-height: 55vh;
    object-fit: contain;
  }
}

/* config-info-drawer */
.config-info-drawer {
  position: fixed;
  inset: 0;
  z-index: 100050;
  pointer-events: none;
  visibility: hidden;
}
.config-info-drawer.is-open {
  pointer-events: auto;
  visibility: visible;
}
.config-info-drawer-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  transition: opacity 0.25s ease;
}
.config-info-drawer.is-open .config-info-drawer-backdrop {
  opacity: 1;
}
.config-info-drawer-panel {
  position: absolute;
  top: 0;
  right: 0;
  width: min(720px, 100vw);
  height: 100%;
  max-height: 100%;
  background: #fff;
  box-shadow: -8px 0 32px rgba(0, 0, 0, 0.18);
  transform: translateX(100%);
  transition: transform 0.28s ease;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.config-info-drawer.is-open .config-info-drawer-panel {
  transform: translateX(0);
}
.config-info-drawer-close {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 3;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: var(--gray-100);
  color: var(--gray-800);
  font-size: var(--text-2xl);
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.config-info-drawer-close:hover {
  background: var(--gray-200);
}
.config-info-drawer-body {
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 20px 22px 36px;
  flex: 1 1 auto;
  height: 100%;
  box-sizing: border-box;
}
.config-info-drawer-body .config-info-title {
  padding-right: 44px;
  font-size: var(--text-lg);
  line-height: 1.35;
  margin: 0 0 12px;
}
.config-info-drawer-body .config-info-title a {
  display: inline-flex;
  vertical-align: middle;
  margin-right: 6px;
}
.config-info-drawer-body .swiper-thumb-top2,
.config-info-drawer-body .config-info-swiper {
  position: relative;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto 12px !important;
  overflow: hidden;
  /* Fixed frame — no jump when image aspect ratio changes */
  height: 360px;
}
/* Simple gallery (no Swiper) — only active slide visible */
.config-info-drawer-body .config-info-gallery-simple > .swiper-wrapper {
  display: block !important;
  transform: none !important;
  width: 100% !important;
  height: 100% !important;
  position: relative;
}
.config-info-drawer-body .config-info-gallery-simple > .swiper-wrapper > .swiper-slide {
  display: none !important;
  width: 100% !important;
  height: 100% !important;
  flex-shrink: 0;
}
.config-info-drawer-body .config-info-gallery-simple > .swiper-wrapper > .swiper-slide.is-active {
  display: block !important;
}
.config-info-drawer-body .swiper-button-next2,
.config-info-drawer-body .swiper-button-prev2,
.config-info-drawer-body .swiper-button-next,
.config-info-drawer-body .swiper-button-prev {
  z-index: 5;
  pointer-events: auto !important;
  cursor: pointer;
}
.config-info-drawer-body .config_info_thumbs {
  cursor: pointer;
}
.config-info-drawer-body .config_info_thumbs > div {
  cursor: pointer;
  flex: 0 0 auto;
}
.config-info-drawer-body .conf_main_img {
  position: relative !important;
  padding-top: 0 !important;
  width: 100% !important;
  height: 360px !important;
  max-height: none !important;
  display: block !important;
  background: var(--gray-50);
}
.config-info-drawer-body .conf_main_img img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  display: block;
  margin: 0 auto;
}
.config-info-drawer-loading {
  min-height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.config-info-drawer-loading span {
  width: 28px;
  height: 28px;
  border: 3px solid var(--gray-100);
  border-top-color: var(--color-accent);
  border-radius: 50%;
  animation: configInfoDrawerSpin 0.7s linear infinite;
}
@keyframes configInfoDrawerSpin {
  to { transform: rotate(360deg); }
}
body.config-info-drawer-open {
  overflow: hidden;
}

@media (max-width: 767px) {
  .config-info-drawer-panel {
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: min(92vh, 100%);
    max-height: 92vh;
    border-radius: 16px 16px 0 0;
    transform: translateY(100%);
    box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.2);
  }
  .config-info-drawer.is-open .config-info-drawer-panel {
    transform: translateY(0);
  }
  .config-info-drawer-body {
    padding: 16px 16px 28px;
  }
  .config-info-drawer-body .swiper-thumb-top2,
  .config-info-drawer-body .config-info-swiper,
  .config-info-drawer-body .conf_main_img {
    height: 260px !important;
  }
  .config-info-drawer-body .conf_main_img img {
    max-height: none !important;
  }
  .config-info-drawer-close {
    top: 8px;
    right: 8px;
  }
}

/* === GEEK CATEGORY MEGA GRID === */
.cat-mega {
  margin: 8px 0 40px;
}
.cat-mega-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px 28px;
}
@media (max-width: 991px) {
  .cat-mega-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
@media (max-width: 575px) {
  .cat-mega-grid { grid-template-columns: 1fr; }
}
.cat-mega-col {
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.cat-mega-col:has(.cat-mega-nested) {
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  background: #FFFFFF;
  overflow: hidden;
}
.cat-mega-col:has(.cat-mega-nested):hover {
  border-color: color-mix(in srgb, var(--color-primary) 35%, transparent);
}
.cat-mega-col:has(.cat-mega-nested) .mega-l2-card {
  border: 0;
  border-radius: 0;
  background: var(--gray-50);
}
.cat-mega-col:has(.cat-mega-nested) .mega-l2-card:hover {
  border-color: transparent;
}
.cat-mega-nested {
  margin-top: 0;
  padding: 8px 12px 12px;
  border: 0;
  border-radius: 0;
  background: #FFFFFF;
}
.cat-mega .mega-l2-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px;
  margin: 0;
  border-radius: 10px;
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  text-decoration: none;
}
.cat-mega .mega-l2-card:hover {
  border-color: var(--color-primary);
}
.cat-mega .mega-l2-thumb {
  width: 64px;
  height: 64px;
  object-fit: contain;
  display: block;
  background: #FFFFFF;
  border-radius: 8px;
  padding: 4px;
}
.cat-mega .mega-l2-thumb--empty {
  background: linear-gradient(135deg, var(--gray-100), #FFFFFF);
}
.cat-mega .mega-l2-text {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  flex: 1;
}
.cat-mega .mega-l2-name {
  font-family: var(--font-sans);
  font-weight: var(--fw-bold);
  font-size: var(--text-lg);
  line-height: 1.25;
  color: var(--gray-800);
  text-transform: none;
}
.cat-mega .mega-l2-card:hover .mega-l2-name { color: var(--color-primary); }
.cat-mega .mega-l2-count {
  flex-shrink: 0;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 11px;
  background: #FFFFFF;
  border: 1px solid var(--gray-200);
  font-family: var(--font-sans);
  font-weight: var(--fw-bold);
  font-size: var(--text-xs);
  line-height: 20px;
  text-align: center;
  color: var(--gray-400);
}
.cat-mega .mega-l3-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.cat-mega .mega-l3-item a {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  padding: 5px 0;
  font-family: var(--font-sans);
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
  line-height: 1.35;
  color: var(--gray-800);
  text-decoration: none;
}
.cat-mega .mega-l3-item a:hover { color: var(--color-primary); }
.cat-mega .mega-l3-qty {
  flex-shrink: 0;
  font-family: var(--font-sans);
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
  color: var(--color-primary);
  background: color-mix(in srgb, var(--color-primary) 8%, transparent);
  border-radius: 999px;
  padding: 3px 8px;
  transition: transform .15s ease, background .15s ease, color .15s ease;
}
.cat-mega .mega-l3-item a:hover .mega-l3-qty {
  color: #fff;
  background: var(--color-primary);
  transform: scale(1.08);
}
.cat-mega .mega-l3-extra { display: none; }
.cat-mega .cat-mega-col.is-expanded .mega-l3-extra { display: list-item; }
.cat-mega .mega-l3-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 8px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-family: var(--font-sans);
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
  
  
  color: var(--color-accent);
}
.cat-mega .mega-l3-toggle:hover { color: var(--color-primary); }
.cat-mega .mega-l3-toggle-ico {
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform .15s ease;
}
.cat-mega .cat-mega-col.is-expanded .mega-l3-toggle-ico {
  transform: rotate(-135deg);
  margin-top: 4px;
}

/* === GEEK CONFIG PAGE HEADER === */
.config-page-header {
  width: 100%;
  margin-bottom: 24px;
}
.config-page-header__row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px 24px;
  flex-wrap: wrap;
}
.config-page-header__titles {
  flex: 1 1 auto;
  min-width: 0;
}
.config-page-header__titles .numb_txt {
  margin-bottom: 2px;
}
.config-page-header__titles .h1 {
  margin-bottom: 0;
}
.config-switch-btn {
  flex: 0 0 auto;
  white-space: nowrap;
  margin-left: auto;
}
@media (max-width: 991px) {
  .config-page-header { display: none !important; }
}


/* === GEEK CONFIG WOW 2026-08-11 === */
.config-wow {
  position: relative;
  overflow: visible;
}
.config-wow-blobs {
  pointer-events: none;
  position: absolute;
  /* Extend under site header so glow feels like it comes from the top, not cut off */
  top: -110px;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: visible;
  z-index: 0;
}
.config-wow-blobs span {
  position: absolute;
  border-radius: 50%;
  /* soft discs without filter:blur (cheaper on GPU) */
  opacity: 0.16;
  will-change: transform;
  animation: geekConfigFloat 16s ease-in-out infinite;
  background: radial-gradient(circle at 45% 35%, color-mix(in srgb, var(--color-primary) 50%, transparent) 0%, color-mix(in srgb, var(--color-primary) 0%, transparent) 72%);
}
.config-wow-blobs span:first-child {
  width: 680px;
  height: 680px;
  top: -40px;
  left: -180px;
}
.config-wow-blobs span:last-child {
  width: 520px;
  height: 520px;
  right: -160px;
  top: 28%;
  animation-delay: -7s;
  opacity: 0.11;
  background: radial-gradient(circle, rgba(242,98,58,.45) 0%, rgba(242,98,58,0) 70%);
}
@keyframes geekConfigFloat {
  0%, 100% { transform: translate3d(0, 0, 0); }
  50% { transform: translate3d(18px, 22px, 0); }
}
@keyframes geekConfigIn {
  from { opacity: 0; transform: translate3d(0, 8px, 0); }
  to { opacity: 1; transform: none; }
}
@keyframes geekPulse {
  0% { transform: scale(1); }
  40% { transform: scale(1.08); }
  100% { transform: scale(1); }
}
.config-wow-section,
.config-wow .container {
  position: relative;
  z-index: 1;
}

/* Fix: blobs are first child — restore top offset under site header */
.config-wow > .section_offset,
.config-wow > .config-wow-section {
  margin-top: 40px;
}
@media (max-width: 991px) {
  .config-wow > .section_offset,
  .config-wow > .config-wow-section {
    margin-top: 24px;
  }
}

/* Left nav: keep section titles reachable + visible top border */
.config-wow #aside_сonfiguration .sticky_poz,
.config-wow #aside_configuration .sticky_poz {
  max-height: none;
  overflow: visible;
}
.config-wow #aside_сonfiguration .filter_box,
.config-wow #aside_configuration .filter_box {
  max-height: calc(100vh - 140px);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-top: 2px;
  padding-right: 4px;
  scroll-padding-top: 8px;
}
.config-wow .nav_сonf_list {
  padding-top: 2px;
}
.config-wow .nav_сonf_list > .accordion-item2:first-child > .nav_conf_title_btn {
  border: 1px solid var(--gray-200) !important;
  box-shadow: none;
}
.config-wow .nav_conf_title_btn {
  position: relative;
  z-index: 1;
}

/* Header */
.config-wow .config-page-header {
  margin-bottom: 28px;
  padding: 18px 22px;
  background: rgba(255,255,255,.82);
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  box-shadow: 0 10px 30px color-mix(in srgb, var(--color-primary) 6%, transparent);
  backdrop-filter: blur(8px);
  animation: geekConfigIn .22s ease-out;
}
.config-wow .config-page-header__titles .h1 {
  font-size: var(--text-4xl) !important;
  line-height: 1.05 !important;
  margin: 0 !important;
  
}
.config-wow .config-switch-btn {
  border-radius: 10px !important;
  border: 1px solid var(--gray-200);
  background: #fff !important;
  font-weight: var(--fw-bold);
  
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease, color .15s ease;
}
.config-wow .config-switch-btn:hover {
  border-color: var(--color-primary);
  color: var(--color-primary) !important;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--color-primary) 10%, transparent);
  transform: translateY(-1px);
}

/* Left nav — mega-menu language */
.config-wow #nav_conf.filter_box,
.config-wow #nav_conf_mobile.filter_box {
  background: transparent;
  border: 0;
  padding: 0;
}
.config-wow .nav_сonf_list > .accordion-item2 {
  margin-bottom: 10px;
}
.config-wow .nav_conf_title_btn {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  background: var(--gray-50) !important;
  border: 1px solid var(--gray-200) !important;
  font-family: var(--font-sans);
  font-weight: var(--fw-bold) !important;
  font-size: var(--text-sm) !important;
  
  
  color: var(--gray-800) !important;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease, background .15s ease;
}
.config-wow .nav_conf_title_btn:before {
  display: none !important;
}
.config-wow .nav_conf_title_btn:hover,
.config-wow .nav_conf_title_btn.active,
.config-wow .accordion-item2.active2 > .nav_conf_title_btn {
  border-color: var(--color-primary) !important;
  background: #fff !important;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--color-primary) 8%, transparent);
  transform: translateY(-1px);
  color: var(--color-primary) !important;
}
.config-wow .nav_conf_title_txt { flex: 1; min-width: 0; }
.config-wow .nav_conf_progress {
  flex: 0 0 auto;
  min-width: 42px;
  padding: 4px 8px;
  border-radius: 999px;
  background: var(--gray-100);
  color: var(--gray-600);
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  
  text-align: center;
  line-height: 1.2;
}
.config-wow .nav_conf_progress.is-partial {
  background: rgba(242,98,58,.12);
  color: var(--color-accent);
}
.config-wow .nav_conf_progress.is-complete {
  background: color-mix(in srgb, var(--color-primary) 12%, transparent);
  color: var(--color-primary);
}
.config-wow .nav_conf_progress.is-pulse {
  animation: geekPulse .22s ease;
}

.config-wow .conf_list {
  padding: 8px 0 4px;
}
.config-wow .conf_list_btn {
  display: flex !important;
  align-items: center;
  gap: 10px;
  padding: 10px 12px !important;
  margin: 0 0 6px;
  border-radius: 10px;
  border: 1px solid transparent;
  background: transparent;
  transition: background .15s ease, border-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
/* Always reserve check column width so icons align */
.config-wow .conf_list_btn:before {
  content: '' !important;
  display: block !important;
  position: static !important;
  opacity: 0 !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  width: 12px !important;
  height: 12px !important;
  flex-shrink: 0 !important;
  align-self: center !important;
  margin: 0 !important;
  background: none !important;
}
.config-wow .conf_list_btn:hover {
  background: var(--gray-50);
  border-color: var(--gray-200);
}
.config-wow .conf_list_btn.active2 {
  background: #fff;
  border-color: var(--color-primary);
  box-shadow: 0 6px 16px color-mix(in srgb, var(--color-primary) 8%, transparent);
  color: var(--color-primary);
}
.config-wow .conf_list_btn.conf-filled {
  position: relative;
}
.config-wow .conf_list_btn.conf-filled .conf_list_icon_cont::after {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-left: 8px;
  border-radius: 50%;
  background: var(--color-primary);
  vertical-align: middle;
}

/* Force visible product panes (tabs + lazy + cards) */
.config-wow #ajax-config .prices-box .conf_item.tabs__content.active,
.config-wow #ajax-config .prices-box .tabs__content.active {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}
.config-wow #ajax-config .prices-box .conf_item > .row,
.config-wow #ajax-config .prices-box .row.row_xs {
  display: flex !important;
  flex-wrap: wrap;
}
.config-wow #ajax-config .prices-box .conf_item_list {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.config-wow #ajax-config .config-lazy-placeholder {
  display: flex !important;
  min-height: 72px !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.config-wow #ajax-config .conf_item_box,
.config-wow #ajax-config .conf_item_list > li {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Product grid cards — larger thumbs, mega hover */
.config-wow .conf_item_box {
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.config-wow .conf_item_box:hover {
  border-color: var(--color-primary);
  box-shadow: 0 12px 28px color-mix(in srgb, var(--color-primary) 10%, transparent);
  transform: translateY(-2px);
}
.config-wow .conf_item_box.active {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-primary) 18%, transparent), 0 12px 28px color-mix(in srgb, var(--color-primary) 10%, transparent);
}
.config-wow .conf_item_box_img {
  padding-top: 108% !important;
  background: linear-gradient(180deg, var(--gray-50) 0%, var(--gray-100) 100%);
  overflow: hidden;
}
/* Keep width/height 100%; padding must use border-box or content shifts down-right when clipped. */
.config-wow .conf_item_box_img img {
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  object-fit: contain;
  object-position: center center;
}
.config-wow .conf_item_box_cont {
  padding: 12px 14px 14px !important;
}
.config-wow .conf_item_box_name {
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
  line-height: 1.25;
  min-height: 2.5em;
}
.config-wow .conf_item_box_price,
.config-wow .conf_item_box_cont_sum {
  color: var(--color-primary) !important;
  font-weight: var(--fw-bold) !important;
  font-size: var(--text-lg) !important;
}

/* Tabs — horizontal pills (do NOT keep legacy padding-bottom:25px) */
.config-wow .conf_item_tabs {
  background: transparent !important;
  padding: 0 0 20px !important;
  border-bottom: 0 !important;
  overflow: visible;
}
.config-wow .conf_item_tabs .tabs_scroll {
  white-space: normal !important;
  overflow: visible !important;
}
.config-wow .conf_item_tabs_list {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 8px;
}
.config-wow .conf_item_tabs_list li {
  margin: 0 !important;
  padding: 8px 14px !important;
  border-radius: 999px !important;
  background: var(--gray-100);
  color: var(--gray-800);
  line-height: 1.2 !important;
  white-space: nowrap;
  transition: background .15s ease, color .15s ease, transform .15s ease;
}
.config-wow .conf_item_tabs_list li:before {
  display: none !important;
}
.config-wow .conf_item_tabs_list li:hover {
  color: var(--color-primary);
  background: var(--gray-100);
}
.config-wow .conf_item_tabs_list li.active {
  background: var(--color-primary) !important;
  color: #fff !important;
}

/* Right summary */
.config-wow .config-summary-card {
  border: 1px solid var(--gray-200);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(28,28,28,.08);
  padding: 18px 16px 16px;
  animation: geekConfigIn .24s ease-out;
}
.config-wow .config-summary-card .config_all_price {
  font-size: var(--text-2xl) !important;
  font-weight: var(--fw-bold) !important;
  color: var(--color-primary) !important;
  
}
.config-wow .config-summary-card .config-add-to-cart.btn {
  border-radius: 12px !important;
  box-shadow: 0 10px 24px color-mix(in srgb, var(--color-primary) 25%, transparent);
  transition: transform .15s ease, box-shadow .15s ease;
}
.config-wow .config-summary-card .config-add-to-cart.btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px color-mix(in srgb, var(--color-primary) 30%, transparent);
}
.config-wow .config-summary-card .item_main_conf_btn_box .btn {
  border-radius: 10px !important;
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}
.config-wow .config-summary-card .item_main_conf_btn_box .btn:hover {
  transform: translateY(-1px);
}

/* Spec modal — square-ish, card grid, total footer */
.config-spec-modal.fancybox_style_lg,
.fancybox-wrap .config-spec-modal {
  width: min(1100px, 94vw) !important;
  max-width: 1100px !important;
  max-height: min(860px, 92vh) !important;
  display: flex !important;
  flex-direction: column;
  padding: 28px 28px 0 !important;
  border-radius: 18px !important;
  overflow: hidden;
  background:
    radial-gradient(1200px 400px at 0% 0%, color-mix(in srgb, var(--color-primary) 6%, transparent), transparent 55%),
    radial-gradient(900px 360px at 100% 0%, rgba(242,98,58,.05), transparent 50%),
    #fff !important;
}
.config-spec-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 14px;
  margin-bottom: 8px;
  border-bottom: 1px solid var(--gray-200);
  flex: 0 0 auto;
}
.config-spec-title {
  margin: 0 !important;
  font-size: var(--text-2xl) !important;
  line-height: 1.1 !important;
}
.config-spec-body {
  flex: 1 1 auto;
  overflow: auto;
  padding: 8px 2px 16px;
  max-height: none;
}
.config-spec-section {
  margin-bottom: 18px !important;
}
.config-spec-section > h3 {
  font-size: var(--text-sm) !important;
  
  
  color: var(--gray-600) !important;
  margin-bottom: 12px !important;
}
.config-spec-grid {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.config-spec-card {
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  background: var(--gray-50);
  padding: 12px 14px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px 16px;
  min-height: 0;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
  animation: geekConfigIn .18s ease-out;
}
.config-spec-card:hover {
  border-color: var(--color-primary);
  background: #fff;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--color-primary) 8%, transparent);
  transform: translateY(-1px);
}
.config-spec-card-top {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  flex: 1 1 auto;
  min-width: 0;
}
.config-spec-card-bottom {
  margin-top: 0 !important;
  flex: 0 0 auto;
  margin-left: auto;
}
.config-spec-card-name {
  font-size: var(--text-sm) !important;
}
.config-spec-card-price {
  margin-left: 0 !important;
  min-width: 96px;
  text-align: right;
}
.config-spec-card-ico {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid var(--gray-200);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.config-spec-card-ico svg { max-width: 20px; max-height: 20px; }
.config-spec-card-cat {
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  
  
  color: var(--gray-400);
  margin-bottom: 2px;
}
.config-spec-card-name {
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  line-height: 1.25;
  color: var(--gray-800);
}
.config-spec-card-name .specification_product_link {
  cursor: pointer;
  color: inherit;
}
.config-spec-card-name .specification_product_link:hover { color: var(--color-primary); }
.config-spec-card-bottom {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.config-spec-card-price {
  margin-left: auto;
  font-weight: var(--fw-bold);
  color: var(--color-primary);
  font-size: var(--text-md);
  white-space: nowrap;
}
.config-spec-card-actions {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.config-spec-card-actions .config-remove-check { color: var(--color-sale); }
.config-spec-footer {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0 -28px 0;
  padding: 16px 28px;
  border-top: 1px solid var(--gray-200);
  background: rgba(249,249,249,.95);
  backdrop-filter: blur(6px);
}
.config-spec-footer-label {
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
  
  
  color: var(--gray-600);
}
.config-spec-footer .config-spec-total,
.config-spec-footer .config_all_price {
  font-size: var(--text-2xl) !important;
  font-weight: var(--fw-bold) !important;
  color: var(--color-primary) !important;
  margin: 0 !important;
}

/* Drawer polish */
.config-info-drawer-panel {
  border-radius: 18px 0 0 18px !important;
  box-shadow: -16px 0 40px rgba(28,28,28,.14) !important;
}
.config-info-drawer-backdrop {
  background: rgba(28,28,28,.42) !important;
}

/* Mobile bottom bar */
@media (max-width: 991px) {
  .config-wow .config-summary-card.item_main_conf_resp,
  .config-wow .item_main_conf_resp.config-summary-card {
    border-radius: 18px 18px 0 0 !important;
    border: 0 !important;
    background: linear-gradient(180deg, var(--gray-900) 0%, var(--gray-900) 100%) !important;
    box-shadow: 0 -12px 32px rgba(0,0,0,.35) !important;
    padding-top: 14px !important;
    padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .config-wow .item_main_conf_resp .config_all_price {
    color: #fff !important;
    font-size: var(--text-xl) !important;
  }
  .config-wow .item_main_conf_resp .config-add-to-cart.btn {
    box-shadow: 0 8px 20px color-mix(in srgb, var(--color-primary) 45%, transparent);
  }
  .config-wow-blobs { display: none; }
  .config-spec-card {
    flex-wrap: wrap;
  }
  .config-spec-card-bottom {
    width: 100%;
    justify-content: space-between;
  }
  .config-spec-modal.fancybox_style_lg,
  .fancybox-wrap .config-spec-modal {
    width: 96vw !important;
    max-height: 90vh !important;
    padding: 20px 16px 0 !important;
    border-radius: 16px !important;
  }
  .config-spec-footer {
    margin: 0 -16px 0;
    padding: 14px 16px;
  }
  .config-spec-title { font-size: var(--text-xl) !important; }
}
@media (max-width: 575px) {
  .config-spec-card { padding: 10px 12px; }
}

/* Prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
  .config-wow-blobs span,
  .config-wow .conf_item_box,
  .config-spec-card,
  .config-wow .nav_conf_progress.is-pulse {
    animation: none !important;
  }
  .config-wow .conf_item_box:hover,
  .config-wow .conf_list_btn.active2,
  .config-spec-card:hover {
    transform: none !important;
  }
}

/* Lazy slots: keep compact until loaded */
.config-wow #ajax-config .config-lazy-slot {
  min-height: 120px;
}
.config-wow #ajax-config .prices-box.cont_pad {
  margin-bottom: 28px !important;
}

/* GEEK CONFIG SLOTS+SCROLL FIX */
.config-wow .conf_list_actions {
  opacity: 1 !important;
}
.config-wow .conf_list_btn {
  display: flex !important;
  align-items: center;
  gap: 8px;
}
.config-wow .conf_list_meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex: 1;
  min-width: 0;
}
.config-wow .conf_list_actions button.config-add-slot,
.config-wow .config-slot-actions a.config-add-slot {
  color: var(--color-primary);
  background: var(--gray-100);
  font-weight: var(--fw-bold);
  border-radius: 8px;
  min-width: 26px;
  height: 26px;
}
.config-wow .config-slot-actions {
  margin-left: 10px;
  flex-shrink: 0;
}
.config-wow .config-slot-actions a.config-add-slot {
  padding: 0 10px;
  height: 28px;
  min-width: auto;
  font-size: var(--text-sm);
  
}

/* Soft scrollbars — not flush black OS chrome */
.config-wow #aside_сonfiguration .filter_box,
.config-wow #aside_configuration .filter_box,
.config-wow #nav_conf.filter_box,
.config-wow #nav_conf_mobile.filter_box {
  padding-right: 10px !important;
  scrollbar-width: thin;
  scrollbar-color: var(--gray-300) transparent;
}
.config-wow #aside_сonfiguration .filter_box::-webkit-scrollbar,
.config-wow #aside_configuration .filter_box::-webkit-scrollbar,
.config-wow #nav_conf.filter_box::-webkit-scrollbar,
.config-wow #nav_conf_mobile.filter_box::-webkit-scrollbar {
  width: 6px;
}
.config-wow #aside_сonfiguration .filter_box::-webkit-scrollbar-track,
.config-wow #aside_configuration .filter_box::-webkit-scrollbar-track,
.config-wow #nav_conf.filter_box::-webkit-scrollbar-track,
.config-wow #nav_conf_mobile.filter_box::-webkit-scrollbar-track {
  background: transparent;
  margin: 8px 0;
}
.config-wow #aside_сonfiguration .filter_box::-webkit-scrollbar-thumb,
.config-wow #aside_configuration .filter_box::-webkit-scrollbar-thumb,
.config-wow #nav_conf.filter_box::-webkit-scrollbar-thumb,
.config-wow #nav_conf_mobile.filter_box::-webkit-scrollbar-thumb {
  background: var(--gray-300);
  border-radius: 999px;
  border: 2px solid transparent;
  background-clip: padding-box;
}
.config-wow #aside_сonfiguration .filter_box::-webkit-scrollbar-thumb:hover,
.config-wow #aside_configuration .filter_box::-webkit-scrollbar-thumb:hover,
.config-wow #nav_conf.filter_box::-webkit-scrollbar-thumb:hover,
.config-wow #nav_conf_mobile.filter_box::-webkit-scrollbar-thumb:hover {
  background: var(--color-primary);
  border: 2px solid transparent;
  background-clip: padding-box;
}

/* Center column / page: quieter scrollbar, gutter so not flush to card */
.config-wow #ajax-config,
.config-wow .col-xxxl-63pr,
.config-wow .col-xl-8 {
  scrollbar-width: thin;
  scrollbar-color: var(--gray-300) transparent;
}
.config-wow #ajax-config .prices-box.cont_pad {
  padding-right: 12px !important;
}
html:has(.config-wow),
body:has(.config-wow) {
  scrollbar-width: thin;
  scrollbar-color: var(--gray-300) var(--gray-50);
}
html:has(.config-wow)::-webkit-scrollbar,
body:has(.config-wow)::-webkit-scrollbar {
  width: 10px;
}
html:has(.config-wow)::-webkit-scrollbar-thumb,
body:has(.config-wow)::-webkit-scrollbar-thumb {
  background: var(--gray-300);
  border-radius: 999px;
  border: 2px solid var(--gray-50);
}
/* END GEEK CONFIG SLOTS+SCROLL FIX */

/* GEEK CONFIG REMOVE-SLOT ROW */
.config-wow .conf_list_row,
.conf_list_row {
  display: flex;
  align-items: center;
  gap: 6px;
}
.config-wow .conf_list_row > .conf_list_btn,
.conf_list_row > .conf_list_btn {
  flex: 1;
  min-width: 0;
}
.config-wow .conf_list_row > .conf_list_actions,
.conf_list_row > .conf_list_actions {
  opacity: 1 !important;
  flex-shrink: 0;
}
/* END GEEK CONFIG REMOVE-SLOT ROW */

/* GEEK CONFIG SELECTED LIGHT */
/* One quiet signal: purple border (grid) / soft wash (list). No orange radio. */

/* Left nav: filled = blue icon + blue check (same slot as empty spacer) */
.config-wow .conf_list_btn.conf-filled {
  color: var(--gray-800) !important;
}
.config-wow .conf_list_btn.conf-filled:before {
  opacity: 1 !important;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2016%2016%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M3.2%208.2L6.6%2011.6L12.8%204.4%27%20stroke%3D%27%233520F5%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3C/svg%3E") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}
/* Hide old text-trailing dots */
.config-wow .conf_list_btn.conf-filled .conf_list_icon_cont::after {
  display: none !important;
  content: none !important;
}
.config-wow .conf_list_btn.conf-filled .conf_list_meta::before {
  display: none !important;
  content: none !important;
}
.config-wow .conf_list_btn.conf-filled .conf_list_icon path,
.config-wow .conf_list_btn.conf-filled .conf_list_icon rect,
.config-wow .conf_list_btn.conf-filled .conf_list_icon circle,
.config-wow .conf_list_btn.conf-filled .conf_list_icon polygon,
.config-wow .conf_list_btn.conf-filled .conf_list_icon ellipse {
  fill: var(--color-primary) !important;
  stroke: var(--color-primary) !important;
  opacity: .85;
}

/* Left nav: current category = soft wash */
.config-wow .conf_list_btn.active2 {
  background: color-mix(in srgb, var(--color-primary) 6%, transparent) !important;
  border-color: transparent !important;
  box-shadow: none !important;
  color: var(--gray-800) !important;
  transform: none !important;
}
.config-wow .conf_list_btn.active2.conf-filled {
  background: color-mix(in srgb, var(--color-primary) 8%, transparent) !important;
}

/* Product card selected: thin purple border ONLY */
.config-wow .conf_item_box.active {
  border-color: var(--color-primary) !important;
  box-shadow: none !important;
  transform: none !important;
}
.config-wow .conf_item_box.active:hover {
  box-shadow: 0 8px 20px color-mix(in srgb, var(--color-primary) 8%, transparent) !important;
  transform: translateY(-1px);
}
.config-wow .conf_item_box.active .conf_item_box_name {
  color: var(--gray-800) !important;
}

/* Hide radio ornament on grid cards — purple border is the only selection signal */
.config-wow .conf_item_box .pos_point .radio_point + label:before,
.config-wow .conf_item_box .pos_point .radio_point + label:after,
.config-wow .conf_item_box .item_point_wr .radio_point + label:before,
.config-wow .conf_item_box .item_point_wr .radio_point + label:after {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
}
.config-wow .conf_item_box .pos_point {
  /* keep hit-area logic on .checked_on; ornament gone */
  visibility: hidden;
}

/* List mode: soft wash + purple radio (same brand color, not orange) */
.config-wow .conf_item_list li.active {
  background: color-mix(in srgb, var(--color-primary) 4%, transparent) !important;
  box-shadow: none !important;
}
.config-wow .conf_item_list li.active .config-list-name,
.config-wow .conf_item_list li.active a {
  color: var(--gray-800) !important;
}
.config-wow .conf_item_list .radio_point:checked + label {
  color: var(--gray-800) !important;
}
.config-wow .conf_item_list .radio_point:checked + label:after,
.config-wow .config-list-top .radio_point:checked + label:after {
  background-color: var(--color-primary) !important;
}
.config-wow .conf_item_list .radio_point:checked + label:before,
.config-wow .config-list-top .radio_point:checked + label:before {
  opacity: 1;
  background-color: #fff !important;
}
/* END GEEK CONFIG SELECTED LIGHT */

/* GEEK CONFIG BLOB HEADER BLEED
   Do NOT set overflow-x on html/body — Chrome then forces overflow-y:auto,
   which breaks sticky/fixed header and side panels sitewide on config pages.
   Clip only the configurator wrapper. */
.config-wow {
  overflow-x: clip;
}
/* END GEEK CONFIG BLOB HEADER BLEED */

/* GEEK CONFIG NAV CONTRAST */
/* Legacy .nav_conf_title_btn span { color:var(--gray-400) } made titles unreadable */
.config-wow .nav_conf_title_btn,
.config-wow .nav_conf_title_btn .nav_conf_title_txt,
.config-wow .nav_conf_title_btn > span:not(.nav_conf_progress) {
  color: var(--gray-900) !important;
}
.config-wow .nav_conf_title_btn:hover,
.config-wow .nav_conf_title_btn:hover .nav_conf_title_txt,
.config-wow .nav_conf_title_btn.active,
.config-wow .nav_conf_title_btn.active .nav_conf_title_txt,
.config-wow .accordion-item2.active2 > .nav_conf_title_btn,
.config-wow .accordion-item2.active2 > .nav_conf_title_btn .nav_conf_title_txt {
  color: var(--color-primary) !important;
}
.config-wow .conf_list_btn,
.config-wow .conf_list_btn .conf_list_icon_cont,
.config-wow .conf_list_btn .conf_list_meta {
  color: var(--gray-900) !important;
}
.config-wow .conf_list_btn:hover,
.config-wow .conf_list_btn:hover .conf_list_icon_cont {
  color: var(--color-primary) !important;
}
.config-wow .conf_list_btn.active2,
.config-wow .conf_list_btn.active2 .conf_list_icon_cont {
  color: var(--gray-900) !important;
}
.config-wow .conf_list_btn.conf-filled,
.config-wow .conf_list_btn.conf-filled .conf_list_icon_cont {
  color: var(--gray-900) !important;
}
.config-wow .nav_conf_progress {
  color: var(--gray-800) !important;
  background: var(--gray-200) !important;
  font-weight: var(--fw-bold);
}
.config-wow .nav_conf_progress.is-partial {
  color: #D4552E !important;
  background: rgba(242,98,58,.14) !important;
}
.config-wow .nav_conf_progress.is-complete {
  color: var(--color-primary) !important;
  background: color-mix(in srgb, var(--color-primary) 12%, transparent) !important;
}
/* END GEEK CONFIG NAV CONTRAST */


/* GEEK GLOBAL STICKY/FIXED FIX
   Header lives INSIDE .page_wrap. overflow:hidden on .page_wrap clips
   position:fixed header.fix .header_box when scrolling — sitewide.
   Use clip on X only so Y stays visible (unlike overflow-x:hidden). */
.page_wrap {
  overflow-x: clip !important;
  overflow-y: visible !important;
}
/* END GEEK GLOBAL STICKY/FIXED FIX */

/* GEEK CONFIG CSS STICKY */
/* page_wrap overflow:hidden clips position:fixed header + asides — open it on config */
body.product-config .page_wrap {
  overflow: visible !important;
}
/* Never overflow-x:hidden on html/body here (breaks sticky/fixed). */
body.product-config {
  overflow-x: clip;
  overflow-y: visible;
}
/* Header must stay above content when fixed */
body.product-config header.fix .header_box,
body.product-config header.fix2 .header_box,
header.fix .header_box,
header.fix2 .header_box {
  z-index: 200 !important;
}
@media (min-width: 992px) {
  .config-wow .row {
    align-items: stretch;
  }
  .config-wow .aside.h_full {
    height: 100% !important;
    min-height: 100%;
  }
  /* Fixed sticky panel itself scrolls — so Услуги is reachable */
  .config-wow .aside .sticky {
    position: fixed !important;
    z-index: 18;
    bottom: auto !important;
    max-height: calc(100vh - var(--geek-header-h, 96px) - 24px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    transform: none !important;
    -webkit-overflow-scrolling: touch;
  }
  .config-wow .aside .sticky .sticky_poz,
  .config-wow .aside .stop2 .sticky_poz,
  .config-wow .aside .stop .sticky_poz,
  .config-wow .aside .stickyDa .sticky_poz {
    transform: none !important;
    -webkit-transform: none !important;
    max-height: none !important;
    overflow: visible !important;
  }
  .config-wow .aside .stop2 {
    position: relative !important;
    transform: none !important;
  }
  .config-wow #aside_сonfiguration .sticky .filter_box,
  .config-wow #aside_configuration .sticky .filter_box,
  .config-wow #aside_сonfiguration .sticky #nav_conf,
  .config-wow #aside_configuration .sticky #nav_conf {
    max-height: none !important;
    overflow: visible !important;
  }
  .config-wow #aside1 .config-summary-card {
    max-height: calc(100vh - var(--geek-header-h, 96px) - 40px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}
/* END GEEK CONFIG CSS STICKY */

/* ===== price-calc drawer (v2 UI) ===== */
.price-calc-drawer {
  position: fixed;
  inset: 0;
  z-index: 100060;
  pointer-events: none;
  visibility: hidden;
}
.price-calc-drawer.is-open {
  pointer-events: auto;
  visibility: visible;
}
.price-calc-drawer-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  transition: opacity 0.25s ease;
}
.price-calc-drawer.is-open .price-calc-drawer-backdrop {
  opacity: 1;
}
.price-calc-drawer-panel,
.config-info-drawer-panel {
  width: min(720px, 100vw) !important;
}
.price-calc-drawer-panel {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  max-height: 100%;
  background: #fff;
  box-shadow: -8px 0 32px rgba(0, 0, 0, 0.18);
  transform: translateX(100%);
  transition: transform 0.28s ease;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.price-calc-drawer.is-open .price-calc-drawer-panel {
  transform: translateX(0);
}
.price-calc-drawer-close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 50%;
  background: var(--gray-100);
  color: var(--gray-800);
  font-size: var(--text-2xl);
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.price-calc-drawer-close:hover {
  background: var(--gray-200);
  color: var(--color-primary);
}
.price-calc-drawer-body {
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 28px 28px 40px;
  flex: 1 1 auto;
  box-sizing: border-box;
}
body.price-calc-drawer-open {
  overflow: hidden;
}

.js-price-calc:not(.config_all_price):not(.cart-total) {
  cursor: pointer;
  position: relative;
}
.js-price-calc:hover,
.js-price-calc:focus {
  outline: none;
}
.js-price-calc:hover .main_item_lg_prise_current,
.js-price-calc:hover > span:not(em):not(.price-calc-install),
.js-price-calc:hover.cart-item-total {
  color: var(--color-primary);
}
.price-calc-hint {
  display: none !important;
}
.price-calc-install {
  display: block;
  margin-top: 6px;
  font-size: var(--text-sm);
  line-height: 18px;
  font-weight: var(--fw-bold);
  color: var(--gray-800);
  cursor: pointer;
  border-bottom: 0;
}
.price-calc-install:hover {
  text-decoration: none;
}
.price-calc-install .price-calc-install-num {
  font-weight: var(--fw-bold);
}

.price-calc-title {
  margin: 0 52px 12px 0;
  font-size: var(--text-2xl);
  line-height: 1.15;
  font-weight: var(--fw-bold);
  color: var(--gray-800);
}
.price-calc-lead {
  margin: 0 0 22px;
  font-size: var(--text-md);
  line-height: 22px;
  font-weight: var(--fw-bold);
  color: var(--gray-600);
}
.price-calc-hero {
  background: var(--gray-50);
  border-radius: 4px;
  padding: 20px 22px;
  margin-bottom: 20px;
}
.price-calc-hero-label {
  font-size: var(--text-sm);
  line-height: 15px;
  font-weight: var(--fw-bold);
  color: var(--gray-400);
  
  
  margin-bottom: 10px;
}
.price-calc-hero-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 12px;
}
.price-calc-hero-sum {
  font-size: var(--text-4xl);
  line-height: 1;
  font-weight: var(--fw-bold);
  color: var(--color-sale);
  transition: color 0.2s ease, transform 0.2s ease;
  display: inline-block;
}
.price-calc-hero-sum.is-flash {
  color: var(--color-accent);
  transform: scale(1.03);
}
.price-calc-hero-old {
  font-size: var(--text-lg);
  line-height: 1;
  font-weight: var(--fw-bold);
  color: var(--gray-400);
  text-decoration: line-through;
  font-style: normal;
}
.price-calc-hero-meta {
  margin-top: 10px;
  font-size: var(--text-sm);
  line-height: 18px;
  font-weight: var(--fw-bold);
  color: var(--gray-600);
}

.price-calc-tabs {
  display: flex;
  gap: 8px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}
.price-calc-tab {
  border: 1px solid var(--gray-200);
  background: #fff;
  color: var(--gray-600);
  border-radius: 4px;
  padding: 12px 16px;
  font-family: inherit;
  font-size: var(--text-sm);
  line-height: 18px;
  font-weight: var(--fw-bold);
  cursor: pointer;
  transition: all 0.2s ease;
}
.price-calc-tab:hover {
  color: var(--color-primary);
  border-color: var(--color-primary);
}
.price-calc-tab.is-active {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
}

.price-calc-cols {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(110px, 0.9fr) minmax(110px, 0.75fr) 22px;
  gap: 10px;
  padding: 0 14px 10px;
  font-size: var(--text-xs);
  line-height: 14px;
  font-weight: var(--fw-bold);
  color: var(--gray-400);
  
  
}
.price-calc-cols span:nth-child(2),
.price-calc-cols span:nth-child(3) {
  text-align: right;
}

.price-calc-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 16px;
}
.price-calc-group + .price-calc-group {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--gray-200);
}
.price-calc-group-title {
  margin: 0 0 10px;
  padding: 0 4px;
  font-size: var(--text-sm);
  line-height: 16px;
  font-weight: var(--fw-bold);
  
  
  color: var(--gray-400);
}
.price-calc-group-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.price-calc-row {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(110px, 0.9fr) minmax(110px, 0.75fr) 22px;
  gap: 10px;
  align-items: center;
  width: 100%;
  text-align: left;
  border: 1px solid var(--gray-100);
  background: #fff;
  border-radius: 4px;
  padding: 14px;
  font-family: inherit;
  cursor: pointer;
  transition: all 0.2s ease;
}
.price-calc-row:hover {
  border-color: var(--color-primary);
}
.price-calc-row.is-active {
  background: var(--gray-50);
  border-color: var(--color-primary);
}
.price-calc-row-pay {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}
.price-calc-row-icon {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border-radius: 4px;
  background: var(--gray-100);
  color: var(--gray-800);
  display: flex;
  align-items: center;
  justify-content: center;
}
.price-calc-row.is-active .price-calc-row-icon {
  background: var(--color-primary);
  color: #fff;
}
.price-calc-row-title-wrap {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}
.price-calc-row-title {
  display: block;
  font-size: var(--text-md);
  line-height: 20px;
  font-weight: var(--fw-bold);
  color: var(--gray-800);
}
.price-calc-row-ship {
  font-size: var(--text-sm);
  line-height: 17px;
  font-weight: var(--fw-bold);
  color: var(--gray-400);
  text-align: right;
}
.price-calc-row-total {
  font-size: var(--text-md);
  line-height: 20px;
  font-weight: var(--fw-bold);
  color: var(--gray-800);
  text-align: right;
  white-space: nowrap;
}
.price-calc-row.is-active .price-calc-row-total {
  color: var(--color-sale);
}
.price-calc-row-arrow {
  font-size: var(--text-xl);
  line-height: 1;
  color: var(--gray-300);
  text-align: center;
}
.price-calc-row.is-active .price-calc-row-arrow {
  color: var(--color-accent);
}
.price-calc-badge {
  display: inline-block;
  padding: 3px 7px;
  border-radius: 3px;
  background: var(--color-success);
  color: #fff;
  font-size: var(--text-xs);
  line-height: 13px;
  font-weight: var(--fw-bold);
  
}
.price-calc-badge--muted {
  background: var(--color-sale);
  color: #fff;
}
.price-calc-note,
.price-calc-foot {
  margin: 0 0 12px;
  font-size: var(--text-sm);
  line-height: 20px;
  font-weight: var(--fw-bold);
  color: var(--gray-600);
}
.price-calc-foot {
  margin-top: 10px;
  padding-top: 14px;
  border-top: 1px solid var(--gray-100);
  color: var(--gray-400);
  font-size: var(--text-sm);
  line-height: 18px;
}

@media (max-width: 767px) {
  .price-calc-drawer-panel,
  .config-info-drawer-panel {
    width: 100% !important;
  }
  .price-calc-drawer-panel {
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    height: min(92vh, 100%);
    max-height: 92vh;
    border-radius: 16px 16px 0 0;
    transform: translateY(100%);
    box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.2);
  }
  .price-calc-drawer.is-open .price-calc-drawer-panel {
    transform: translateY(0);
  }
  .price-calc-drawer-body {
    padding: 20px 16px 28px;
  }
  .price-calc-title {
    font-size: var(--text-xl);
  }
  .price-calc-hero-sum {
    font-size: var(--text-3xl);
  }
  .price-calc-cols,
  .price-calc-row {
    grid-template-columns: minmax(0, 1.3fr) minmax(84px, 0.85fr) minmax(88px, 0.8fr) 16px;
    gap: 6px;
  }
  .price-calc-row {
    padding: 12px 10px;
  }
  .price-calc-row-icon {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
  }
  .price-calc-row-title {
    font-size: var(--text-sm);
    line-height: 18px;
  }
  .price-calc-row-ship {
    font-size: var(--text-xs);
  }
  .price-calc-row-total {
    font-size: var(--text-sm);
  }
  .price-calc-tab {
    flex: 1 1 auto;
    text-align: center;
    padding: 11px 8px;
    font-size: var(--text-sm);
  }
}


/* price-calc click cue (no caption) */
.js-price-calc.main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(em):not(.price-calc-hint):not(.price-calc-install),
.js-price-calc.main_item_lg_prise > span:not(em):not(.price-calc-hint):not(.price-calc-install):not(.main_item_lg_prise_pair),
.js-price-calc .main_item_lg_prise_current {
  border-bottom: 1px dotted currentColor;
  padding-bottom: 1px;
}

/* price-calc checkout CTA */
.price-calc-checkout-btn {
  display: block;
  width: 100%;
  margin-top: 18px;
  padding: 16px 18px;
  border: 0;
  border-radius: 4px;
  background: var(--color-primary);
  color: #fff;
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  cursor: pointer;
  text-align: center;
}
.price-calc-checkout-btn:hover { background: #2a19c4; }

/* GEEK CONFIG MOBILE FILTER GAPS
   Pills wrap on narrow screens; legacy margin:0 + gap:8px left rows touching
   and a 30px hole under "+ ещё". */
.config-wow .conf_item_tabs_list {
  gap: 10px 8px;
}
@supports not (gap: 8px) {
  .config-wow .conf_item_tabs_list {
    margin-bottom: -10px;
  }
  .config-wow .conf_item_tabs_list li {
    margin: 0 8px 10px 0 !important;
  }
}
@media (max-width: 991px) {
  .config-wow .title_box_sm {
    margin-bottom: 12px;
  }
  .config-wow .config-slot-actions {
    width: 100%;
    margin-left: 0;
    margin-top: 6px;
  }
  .config-wow .conf_item_tabs,
  .config-wow .conf_item_tabs.resp_full {
    padding: 0 0 20px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .config-wow .conf_item_tabs_list {
    gap: 12px 8px;
  }
}
/* END GEEK CONFIG MOBILE FILTER GAPS */

/* GEEK CONFIG MOBILE NAV FANCYBOX
   #nav_conf leaves .config-wow inside fancybox — mirror desktop rail. */
.fancybox-wrap.content-nav_conf .fancybox-skin,
.fancybox-wrap.content-nav_conf_mobile .fancybox-skin {
  padding: 16px 14px 18px !important;
  border-radius: 16px !important;
  background: #fff !important;
}
.fancybox-wrap.content-nav_conf .fancybox-close,
.fancybox-wrap.content-nav_conf_mobile .fancybox-close {
  display: none;
}
.fancybox-wrap.content-nav_conf #nav_conf.filter_box,
.fancybox-wrap.content-nav_conf_mobile #nav_conf_mobile.filter_box,
.fancybox-wrap.content-nav_conf .filter_box,
.fancybox-wrap.content-nav_conf_mobile .filter_box {
  background: transparent;
  border: 0;
  padding: 0;
}
.fancybox-wrap.content-nav_conf .accordion-item2,
.fancybox-wrap.content-nav_conf_mobile .accordion-item2 {
  margin-bottom: 10px;
}
.fancybox-wrap.content-nav_conf .nav_conf_title_btn,
.fancybox-wrap.content-nav_conf_mobile .nav_conf_title_btn {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px !important;
  margin-bottom: 0 !important;
  border-radius: 12px !important;
  background: var(--gray-50) !important;
  border: 1px solid var(--gray-200) !important;
  font-family: var(--font-sans);
  font-weight: var(--fw-bold) !important;
  font-size: var(--text-sm) !important;
  
  
  color: var(--gray-900) !important;
}
.fancybox-wrap.content-nav_conf .nav_conf_title_btn:before,
.fancybox-wrap.content-nav_conf_mobile .nav_conf_title_btn:before {
  display: none !important;
}
.fancybox-wrap.content-nav_conf .nav_conf_title_txt,
.fancybox-wrap.content-nav_conf_mobile .nav_conf_title_txt {
  color: var(--gray-900) !important;
  flex: 1;
  min-width: 0;
}
.fancybox-wrap.content-nav_conf .nav_conf_progress,
.fancybox-wrap.content-nav_conf_mobile .nav_conf_progress {
  flex: 0 0 auto;
  min-width: 42px;
  padding: 4px 8px;
  border-radius: 999px;
  background: var(--gray-200) !important;
  color: var(--gray-800) !important;
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  
  text-align: center;
  line-height: 1.2;
}
.fancybox-wrap.content-nav_conf .nav_conf_progress.is-complete,
.fancybox-wrap.content-nav_conf_mobile .nav_conf_progress.is-complete {
  color: var(--color-primary) !important;
  background: color-mix(in srgb, var(--color-primary) 12%, transparent) !important;
}
.fancybox-wrap.content-nav_conf .nav_conf_progress.is-partial,
.fancybox-wrap.content-nav_conf_mobile .nav_conf_progress.is-partial {
  color: #D4552E !important;
  background: rgba(242,98,58,.14) !important;
}
.fancybox-wrap.content-nav_conf .filter_cont_offset,
.fancybox-wrap.content-nav_conf_mobile .filter_cont_offset {
  margin-bottom: 8px;
}
.fancybox-wrap.content-nav_conf .conf_list,
.fancybox-wrap.content-nav_conf_mobile .conf_list {
  padding: 8px 0 4px !important;
}
.fancybox-wrap.content-nav_conf .conf_list_row,
.fancybox-wrap.content-nav_conf_mobile .conf_list_row {
  display: flex;
  align-items: center;
  gap: 6px;
}
.fancybox-wrap.content-nav_conf .conf_list_btn,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn {
  display: flex !important;
  align-items: center;
  gap: 10px;
  height: auto !important;
  min-height: 44px;
  padding: 10px 12px !important;
  margin: 0 0 6px;
  border-radius: 10px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--gray-900) !important;
  flex: 1;
  min-width: 0;
}
.fancybox-wrap.content-nav_conf .conf_list_btn:before,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn:before {
  content: '' !important;
  display: block !important;
  position: static !important;
  opacity: 0;
  left: auto !important;
  top: auto !important;
  width: 12px !important;
  height: 12px !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
  background: none;
}
.fancybox-wrap.content-nav_conf .conf_list_btn.conf-filled:before,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn.conf-filled:before {
  opacity: 1 !important;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2016%2016%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M3.2%208.2L6.6%2011.6L12.8%204.4%27%20stroke%3D%27%233520F5%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3C/svg%3E") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}
.fancybox-wrap.content-nav_conf .conf_list_btn.conf-filled .conf_list_icon_cont::after,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn.conf-filled .conf_list_icon_cont::after {
  display: none !important;
  content: none !important;
}
.fancybox-wrap.content-nav_conf .conf_list_btn .conf_list_icon_cont,
.fancybox-wrap.content-nav_conf .conf_list_btn .conf_list_meta,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn .conf_list_icon_cont,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn .conf_list_meta {
  color: var(--gray-900) !important;
}
.fancybox-wrap.content-nav_conf .conf_list_btn.conf-filled .conf_list_icon path,
.fancybox-wrap.content-nav_conf .conf_list_btn.conf-filled .conf_list_icon rect,
.fancybox-wrap.content-nav_conf .conf_list_btn.conf-filled .conf_list_icon circle,
.fancybox-wrap.content-nav_conf .conf_list_btn.conf-filled .conf_list_icon polygon,
.fancybox-wrap.content-nav_conf .conf_list_btn.conf-filled .conf_list_icon ellipse,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn.conf-filled .conf_list_icon path,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn.conf-filled .conf_list_icon rect,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn.conf-filled .conf_list_icon circle,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn.conf-filled .conf_list_icon polygon,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn.conf-filled .conf_list_icon ellipse {
  fill: var(--color-primary) !important;
  stroke: var(--color-primary) !important;
  opacity: .85;
}
.fancybox-wrap.content-nav_conf .conf_list_btn.active2,
.fancybox-wrap.content-nav_conf_mobile .conf_list_btn.active2 {
  background: color-mix(in srgb, var(--color-primary) 6%, transparent) !important;
  border-color: transparent !important;
  box-shadow: none !important;
  color: var(--gray-800) !important;
}
.fancybox-wrap.content-nav_conf .conf_list_icon,
.fancybox-wrap.content-nav_conf_mobile .conf_list_icon {
  margin-right: 0;
  width: 28px;
  flex-shrink: 0;
}
.fancybox-wrap.content-nav_conf .conf_list_meta,
.fancybox-wrap.content-nav_conf_mobile .conf_list_meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex: 1;
  min-width: 0;
}
.fancybox-wrap.content-nav_conf .conf_list_actions,
.fancybox-wrap.content-nav_conf_mobile .conf_list_actions {
  opacity: 1 !important;
  flex-shrink: 0;
}
.fancybox-wrap.content-nav_conf .conf_list_actions button.config-add-slot,
.fancybox-wrap.content-nav_conf_mobile .conf_list_actions button.config-add-slot {
  color: var(--color-primary);
  background: var(--gray-100);
  font-weight: var(--fw-bold);
  border-radius: 8px;
  min-width: 32px;
  height: 32px;
}

/* config-sections-close-sticky: red Close above the section list, stays while scrolling */
.config-sections-close-bar {
  display: none;
}
.fancybox-wrap.content-nav_conf .config-sections-close-bar,
.fancybox-wrap.content-nav_conf_mobile .config-sections-close-bar {
  display: block;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 5;
  margin: 0 0 12px;
  padding: 0 0 12px;
  background: #fff;
}
.fancybox-wrap.content-nav_conf .config-sections-close,
.fancybox-wrap.content-nav_conf_mobile .config-sections-close {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 52px;
  margin: 0;
  padding: 0 16px;
  border: none;
  border-radius: 12px;
  background: #ee352f;
  color: #fff;
  box-shadow: 0 4px 14px rgba(238, 53, 47, 0.22);
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  font-family: var(--font-sans);
  font-weight: var(--fw-bold);
  font-size: var(--text-md);
  line-height: 1;
}
.fancybox-wrap.content-nav_conf .config-sections-close:hover,
.fancybox-wrap.content-nav_conf .config-sections-close:active,
.fancybox-wrap.content-nav_conf_mobile .config-sections-close:hover,
.fancybox-wrap.content-nav_conf_mobile .config-sections-close:active {
  background: #d92e29;
  color: #fff;
}
/* END GEEK CONFIG MOBILE NAV FANCYBOX */


/* GEEK CONFIG MOBILE WOW REST
   Main column: stop full-bleed gray panels, match desktop chips/titles/cards. */
@media (max-width: 991px) {
  .config-wow .title_box_in {
    align-items: center;
    gap: 8px 12px;
  }
  .config-wow .title_box_in > *:not(:last-child),
  .config-wow .title_box_sm .title_box_in > *:not(:last-child) {
    margin-right: 0;
  }
  .config-wow .title_box_in .title_link {
    margin-top: 0;
    margin-bottom: 0;
    color: var(--color-primary);
    font-size: var(--text-sm);
    line-height: 1.2;
  }
  .config-wow .title_box_sm h3 {
    font-size: var(--text-xl);
    line-height: 1.15;
    margin: 0;
  }
  .config-wow .config-slot-actions {
    width: auto;
    flex: 0 0 auto;
  }
  .config-wow .conf_item.resp_full,
  .config-wow .conf_item {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border-radius: 0;
  }
  .config-wow #ajax-config .prices-box.cont_pad {
    padding-right: 0 !important;
  }
  .config-wow .load-category.btn,
  .config-wow .btn_yellow.load-category {
    border-radius: 12px !important;
  }
  .config-wow .conf_item_list li {
    margin-left: 0;
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .config-wow .conf_item.slider_product .slider_product_img,
  .config-wow .slider_product .col-md-3 {
    display: none;
  }
  .config-wow .slider_product .col-md-9 {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
  }
}
@media (hover: none) {
  .config-wow .conf_item_box:hover,
  .config-wow .conf_item_box.active:hover {
    transform: none !important;
    box-shadow: none !important;
  }
}
/* END GEEK CONFIG MOBILE WOW REST */

/* GEEK CONFIG NAV FOUC SCROLL
   Wow class lives on #nav_conf so styles survive fancybox move (no orange flash).
   Extra right gutter so + buttons do not sit under the scrollbar. */
#nav_conf.config-wow,
#nav_conf_mobile.config-wow {
  overflow-x: visible;
}
#nav_conf.filter_box,
#nav_conf_mobile.filter_box,
.fancybox-wrap.content-nav_conf #nav_conf,
.fancybox-wrap.content-nav_conf .filter_box,
.fancybox-wrap.content-nav_conf_mobile #nav_conf_mobile,
.fancybox-wrap.content-nav_conf_mobile .filter_box {
  padding-right: 20px !important;
  scrollbar-gutter: stable;
  box-sizing: border-box;
}
.fancybox-wrap.content-nav_conf .conf_list_row,
.fancybox-wrap.content-nav_conf_mobile .conf_list_row,
#nav_conf .conf_list_row,
#nav_conf_mobile .conf_list_row {
  padding-right: 4px;
}
/* END GEEK CONFIG NAV FOUC SCROLL */

/* GEEK CONFIG GRID STEPPER NARROW
   991px rule makes stepper 36+40+36px; 2-col cards on ~320px clip the +. */
@media (max-width: 575px) {
  .config-wow .conf_item_box_cont {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .conf_item_box_foot {
    gap: 6px;
  }
  .conf_item_box_stepper {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
  }
  .conf_item_box .config-qty-stepper--grid {
    height: 30px;
    max-width: 100%;
    box-sizing: border-box;
  }
  .conf_item_box .config-qty-stepper--grid .config-qty-btn {
    width: 24px;
    min-width: 24px;
    font-size: var(--text-md);
  }
  .conf_item_box .config-qty-stepper--grid .config-qty-val {
    width: 28px;
    min-width: 24px;
    max-width: 32px;
    padding: 0;
    font-size: var(--text-xs);
    line-height: 28px;
  }
}
/* END GEEK CONFIG GRID STEPPER NARROW */

/* GEEK CONFIG SPEC TAP + LEGACY KILL
   Touch sticky :hover painted footer spec/gear blue and could swallow the tap
   (hover also translated the button 1px). Old css/style.css still has orange
   nav/tabs/checks; wow already overrides inside .config-wow — this covers
   fancybox-moved nodes and leftover gray .conf_item panels. */
.config-wow .conf_item {
  background: transparent !important;
  padding: 0 0 8px !important;
}
.config-wow .title_link,
.config-wow .title_box_in .title_link {
  color: var(--color-primary);
}
.config-wow .nav_conf_title_btn:hover,
#nav_conf .nav_conf_title_btn:hover,
.fancybox-wrap.content-nav_conf .nav_conf_title_btn:hover,
.fancybox-wrap.content-nav_conf_mobile .nav_conf_title_btn:hover {
  color: var(--gray-900) !important;
}
.fancybox-wrap.content-specification .config-icon-filled path,
.fancybox-wrap.content-specification .config-icon-filled rect,
.fancybox-wrap.content-specification .config-icon-filled circle,
.fancybox-wrap.content-specification .config-icon-filled polygon,
.fancybox-wrap.content-specification .config-icon-filled ellipse,
.fancybox-wrap.content-specification .specification_table_main_icon.config-icon-filled path,
.fancybox-wrap .config-spec-modal .config-icon-filled path {
  fill: var(--color-primary) !important;
  stroke: var(--color-primary) !important;
}
@media (hover: none) {
  .config-wow .config-summary-card .item_main_conf_btn_box .btn:hover,
  .config-wow .item_main_conf_btn_box .btn:hover,
  .config-wow .item_main_conf_btn_box .btn_gray:hover,
  .config-wow .item_main_conf_btn_box .btn_gray2:hover,
  .config-wow .item_main_conf_btn_box .btn_gray3:hover {
    transform: none !important;
    background-color: #fff !important;
    color: var(--gray-800) !important;
  }
  .config-wow .item_main_conf_btn_box .btn_gray:hover i path,
  .config-wow .item_main_conf_btn_box .btn_gray2:hover i path,
  .config-wow .item_main_conf_btn_box .btn:hover i path {
    fill: var(--gray-800) !important;
  }
  .config-wow .item_main_conf_btn_box .btn_gray3:hover i path {
    stroke: var(--gray-800) !important;
  }
  .config-wow .item_main_conf_btn_box .config-add-to-cart.btn:hover,
  .config-wow .item_main_conf_btn_box .config-add-to-cart.btn:hover i path {
    background-color: var(--color-primary) !important;
    fill: #fff !important;
    color: #fff !important;
  }
}
/* END GEEK CONFIG SPEC TAP + LEGACY KILL */

/* GEEK CONFIG MID LAYOUT 992-1399
   Compact desktop: products + sticky summary. Slot nav is a left drawer
   (tab "Секции"), not a horizontal chip bar. 3 columns from 1400px. */
@media (max-width: 991px) {
  .config-page-header { display: none !important; }
  .config-nav-tab,
  .config-nav-backdrop,
  .config-nav-drawer-head { display: none !important; }
}
.config-nav-tab,
.config-nav-backdrop,
.config-nav-drawer-head { display: none; }
@media (min-width: 992px) and (max-width: 1399px) {
  .config-wow .config-page-header {
    display: block !important;
    margin-bottom: 16px;
    padding: 12px 16px;
  }
  .config-wow .config-page-header__titles .h1 {
    font-size: var(--text-2xl) !important;
    line-height: 1.15 !important;
  }
  .config-wow .config-page-body {
    align-items: flex-start;
  }
  .config-wow .config-main-col {
    flex: 0 0 70% !important;
    max-width: 70% !important;
  }
  .config-wow .config-summary-col {
    flex: 0 0 30% !important;
    max-width: 30% !important;
  }
  .config-wow .config-page-main {
    flex-direction: column;
  }
  .config-wow .config-products-col {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
  .config-wow .config-nav-col {
    position: relative;
    flex: 0 0 0 !important;
    max-width: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    height: 0 !important;
  }
  body.config-nav-drawer-open .config-wow-section,
  body.config-nav-drawer-open .config-wow .container {
    z-index: auto;
  }
  .config-wow .config-nav-col .aside.h_full,
  .config-wow .config-nav-col #aside_сonfiguration {
    position: fixed !important;
    top: var(--geek-header-h, 96px);
    left: 0;
    bottom: 0;
    width: min(340px, 88vw);
    height: auto !important;
    min-height: 0 !important;
    z-index: 85;
    transform: translateX(-105%);
    transition: transform .22s ease;
    background: #fff;
    box-shadow: 16px 0 40px rgba(28,28,28,.16);
    overflow-x: hidden;
    overflow-y: auto;
    padding: 12px 14px 28px;
    -webkit-overflow-scrolling: touch;
  }
  body.config-nav-drawer-open .config-wow .config-nav-col .aside.h_full,
  body.config-nav-drawer-open .config-wow .config-nav-col #aside_сonfiguration {
    transform: translateX(0);
  }
  .config-wow .config-nav-col .aside .sticky,
  .config-wow .config-nav-col .sticky_сonfiguration,
  .config-wow .config-nav-col .sticky_poz {
    position: static !important;
    max-height: none !important;
    overflow: visible !important;
    height: auto !important;
    transform: none !important;
  }
  .config-wow .config-nav-col #nav_conf.filter_box,
  .config-wow .config-nav-col .filter_box {
    padding: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }
  .config-nav-tab {
    display: flex !important;
    position: fixed;
    left: 0;
    top: 38%;
    z-index: 86;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 14px 9px 16px;
    border: 0;
    border-radius: 0 12px 12px 0;
    background: var(--color-primary);
    color: #fff;
    box-shadow: 4px 10px 24px color-mix(in srgb, var(--color-primary) 30%, transparent);
    cursor: pointer;
    transition: left .22s ease;
  }
  .config-nav-tab:hover,
  .config-nav-tab:focus {
    background: #2a19c4;
    outline: none;
  }
  .config-nav-tab span {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    font-family: var(--font-sans);
    font-weight: var(--fw-bold);
    font-size: var(--text-sm);
    
    
    line-height: 1;
  }
  .config-nav-tab svg {
    display: block;
    width: 18px;
    height: 16px;
  }
  body.config-nav-drawer-open .config-nav-tab {
    left: min(340px, 88vw);
  }
  .config-nav-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 80;
    background: rgba(28,28,28,.42);
  }
  body.config-nav-drawer-open .config-nav-backdrop {
    display: block;
  }
  .config-nav-drawer-head {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 8px 0 16px;
    padding: 0 2px;
  }
  .config-nav-drawer-head strong {
    font-family: var(--font-sans);
    font-size: var(--text-lg);
    font-weight: var(--fw-bold);
    color: var(--gray-900);
  }
  .config-nav-drawer-close {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 10px;
    background: var(--gray-100);
    color: var(--gray-800);
    font-size: var(--text-xl);
    line-height: 1;
    cursor: pointer;
  }
  .config-nav-drawer-close:hover {
    background: var(--gray-200);
  }
  .config-wow .config-summary-col #aside1 .config-summary-card {
    position: sticky;
    top: calc(var(--geek-header-h, 96px) + 12px);
  }
}
@media (min-width: 1400px) {
  .config-nav-tab,
  .config-nav-backdrop,
  .config-nav-drawer-head { display: none !important; }
}
/* END GEEK CONFIG MID LAYOUT */

/* GEEK CONFIG CHAT ABOVE BAR
   Orange contact FAB sat on the sticky configurator bar (price/id). */
@media only screen and (max-width: 991px) {
  .product-config #__replain_widget:not(.active),
  .product-config .contact_widget:not(.active) {
    z-index: 30 !important;
    bottom: calc(176px + env(safe-area-inset-bottom, 0px)) !important;
  }
}


/* ——— Price history chart (2026-08-14) ——— */
.price-calc-main-tabs {
  display: flex;
  gap: 8px;
  margin: 0 0 18px;
  padding: 4px;
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-radius: 10px;
}
.price-calc-main-tab {
  flex: 1;
  border: 0;
  background: transparent;
  font-family: var(--font-sans);
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
  line-height: 1.2;
  
  color: var(--gray-600);
  padding: 10px 8px;
  border-radius: 8px;
  cursor: pointer;
  transition: 0.15s ease;
}
.price-calc-main-tab.is-active {
  background: #fff;
  color: var(--color-primary);
  box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 8%, transparent);
}
.price-hist-chart {
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: 10px 4px 6px;
  margin-bottom: 14px;
}
.price-hist-chart-inner {
  position: relative;
}
.price-hist-svg {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  touch-action: manipulation;
}
.price-hist-point {
  cursor: pointer;
}
.price-hist-point.is-active .price-hist-dot {
  r: 7;
  stroke-width: 3;
}
.price-hist-dot-hit {
  pointer-events: all;
}
.price-hist-tip {
  position: absolute;
  z-index: 5;
  min-width: 88px;
  padding: 8px 10px;
  border-radius: 10px;
  background: var(--gray-900);
  color: #fff;
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  line-height: 1.25;
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
  pointer-events: none;
  white-space: nowrap;
}
.price-hist-tip[hidden] { display: none !important; }
.price-hist-tip strong {
  display: block;
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
}
.price-hist-tip span {
  display: block;
  margin-top: 2px;
  opacity: .85;
  font-weight: var(--fw-bold);
}
.price-hist-line { stroke: var(--color-primary); stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.price-hist-dot { fill: var(--color-primary); stroke: #fff; stroke-width: 2; }
.price-hist-grid { stroke: var(--gray-200); stroke-width: 1; }
.price-hist-price {
  fill: var(--color-primary);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
}
.price-hist-axis, .price-hist-label {
  fill: var(--gray-600);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
}
.price-hist-list {
  list-style: none;
  margin: 0 0 14px;
  padding: 0;
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.price-hist-li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  column-gap: 16px;
  padding: 12px 14px;
  border-top: 1px solid var(--gray-100);
  font-family: var(--font-sans);
}
.price-hist-li:first-child { border-top: 0; }
.price-hist-li-date {
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  color: var(--gray-600);
}
.price-hist-li-price {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: var(--text-lg);
  font-weight: var(--fw-bold);
  color: var(--gray-800);
  line-height: 1;
}

.price-hist-li-dir {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  font-size: var(--text-lg);
  font-weight: var(--fw-bold);
  line-height: 1;
  height: 1em;
  -webkit-text-stroke: 0.55px currentColor;
  transform: translateY(-1px);
}
.price-hist-li-dir.is-up { color: #E53935; }
.price-hist-li-dir.is-down { color: var(--color-success); }
.price-hist-li-delta {
  min-width: 3.4em;
  text-align: right;
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.price-hist-li-delta.is-up { color: #E53935; }
.price-hist-li-delta.is-down { color: var(--color-success); }

.price-hist-empty {
  margin: 0;
  padding: 28px 12px;
  text-align: center;
  color: var(--gray-600);
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
}
.price-hist-last {
  margin: 0;
  font-size: var(--text-sm);
  line-height: 1.4;
  color: var(--gray-600);
  font-weight: var(--fw-bold);
}
.price-hist-last strong { color: var(--gray-800); font-weight: var(--fw-bold); }
a.js-price-history,
button.js-price-history {
  display: inline-block;
  margin-top: 8px;
  font-family: var(--font-sans);
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
  
  color: var(--color-accent);
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
}
a.js-price-history:hover,
button.js-price-history:hover { color: var(--color-primary); }

/* BUY ICON TAP 2026-08-17: tap on cart/icon SVG must reach the <a>, not the path */
.btn i,
.btn svg,
.btn path,
.add-to-cart-btn i,
.add-to-cart-btn svg,
.add-to-cart-btn path,
.config-add-to-cart i,
.config-add-to-cart svg,
.config-add-to-cart path {
    pointer-events: none !important;
}
.panel-mob-custom .add-to-cart-btn,
.item_main_conf_resp .add-to-cart-btn {
    position: relative;
    z-index: 6;
    touch-action: manipulation;
}
/* mobile category cart tap fix */
.main_item_lg_buy_row,
.main_item_lg_buy_col {
    position: relative;
    z-index: 3;
}
.main_item_lg_buy_col .btn.main_item_lg_buy_btn {
    position: relative;
    z-index: 4;
    pointer-events: auto;
}
@media (max-width: 991px) {
    body.product-category .contact_widget {
        display: none !important;
    }
}

/* mobile category contact widget disable */
/* listing card: icons in footer, lei + installment beside catalog price */
.main_item_lg .main_item_lg_actions {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid var(--gray-100);
}
.main_item_lg .main_item_lg_actions .main_item_btn_box,
.main_item_lg .section_bottom .main_item_btn_box {
    position: static !important;
    top: auto !important;
    right: auto !important;
    z-index: 2;
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 12px;
}
.main_item_lg .main_item_lg_actions .main_item_btn_box > *,
.main_item_lg .section_bottom .main_item_btn_box > * {
    margin-bottom: 0 !important;
}
.main_item_lg .main_item_lg_actions .main_item_btn_box .btn,
.main_item_lg .section_bottom .main_item_btn_box .btn {
    opacity: 1 !important;
    background: #fff !important;
    border: 1px solid var(--gray-200) !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}
.main_item_lg .main_item_lg_actions .main_item_btn_box .btn i path,
.main_item_lg .section_bottom .main_item_btn_box .btn i path {
    stroke: var(--gray-800) !important;
    fill: none !important;
}
.main_item_lg .main_item_lg_actions .main_item_btn_box .btn:hover,
.main_item_lg .section_bottom .main_item_btn_box .btn:hover {
    background: var(--gray-100) !important;
}
.main_item_lg .main_item_lg_actions .main_item_btn_box .btn.remove i path,
.main_item_lg .section_bottom .main_item_btn_box .btn.remove i path {
    stroke: var(--color-accent) !important;
    fill: var(--color-accent) !important;
}
.main_item_lg .main_item_lg_actions .main_item_lg_buy_col {
    margin-left: auto;
}

.main_item_lg--catalog .js-price-calc.main_item_lg_prise_stack,
.main_item_lg--build .js-price-calc.main_item_lg_prise_stack {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    align-content: flex-start;
    justify-content: flex-end;
    column-gap: 10px;
    row-gap: 4px;
    width: 100%;
    min-width: 0;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .iute-credit-chip,
.main_item_lg--build .main_item_lg_prise_stack > .iute-credit-chip {
    order: 1;
    flex: 0 0 auto;
    max-width: 100%;
    margin: 0;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .main_item_lg_prise_pair,
.main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair,
.main_item_lg--pick .main_item_lg_prise_stack > .main_item_lg_prise_pair {
    order: 2;
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: baseline;
    column-gap: 10px;
    row-gap: 2px;
    width: auto;
    max-width: 100%;
    min-width: min(100%, max-content);
    margin: 0 0 0 auto;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .price-calc-hint , .main_item_lg--build .main_item_lg_prise_stack > .price-calc-hint {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .main_item_lg_prise_pair > em , .main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair > em {
    order: 2;
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: baseline;
    gap: 3px;
    width: auto;
    max-width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--gray-400) !important;
    font-size: var(--text-md) !important;
    line-height: 1.1 !important;
    font-weight: var(--fw-bold);
    font-style: normal;
    text-decoration: line-through;
    white-space: nowrap;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .main_item_lg_prise_pair > em span , .main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair > em span {
    display: inline !important;
    margin: 0 !important;
    color: var(--gray-400) !important;
    font-size: var(--text-md) !important;
    line-height: 1.1 !important;
    font-weight: var(--fw-bold) !important;
    border-bottom: 0 !important;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .main_item_lg_prise_pair > em .price-cur , .main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair > em .price-cur {
    font-size: var(--text-xs) !important;
    font-weight: var(--fw-bold) !important;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) , .main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) {
    order: 3;
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: baseline;
    gap: 3px;
    width: auto;
    max-width: 100%;
    margin: 0 !important;
    padding: 0;
    font-size: var(--text-2xl);
    line-height: 1.1 !important;
    font-weight: var(--fw-bold);
    color: var(--color-sale);
    white-space: nowrap;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-num, .main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-num,
.main_item_lg--catalog .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-cur , .main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-cur {
    display: inline !important;
    margin: 0 !important;
    color: inherit !important;
    line-height: 1.1 !important;
    border-bottom: 0 !important;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-num , .main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-num {
    font-size: var(--text-2xl) !important;
    font-weight: var(--fw-bold) !important;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-cur , .main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-cur {
    font-size: var(--text-sm) !important;
    font-weight: var(--fw-bold) !important;
}
.main_item_lg--catalog .main_item_lg_prise_stack > .price-calc-install , .main_item_lg--build .main_item_lg_prise_stack > .price-calc-install {
    order: 1;
    flex: 0 0 auto;
    display: inline-flex !important;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: baseline;
    gap: 4px;
    width: auto;
    max-width: 100%;
    margin: 0 auto 0 0 !important;
    padding: 0;
    color: var(--gray-800) !important;
    font-size: var(--text-sm) !important;
    font-weight: var(--fw-bold);
    line-height: 1.1;
    white-space: nowrap;
    text-align: left;
    border-bottom: 0 !important;
    text-decoration: none !important;
}
.main_item_lg--catalog .price-calc-install .price-calc-install-line , .main_item_lg--build .price-calc-install .price-calc-install-line {
    display: inline-flex !important;
    align-items: baseline;
    gap: 4px;
    white-space: nowrap;
}
.main_item_lg--catalog .price-calc-install .price-calc-install-from , .main_item_lg--build .price-calc-install .price-calc-install-from {
    display: inline !important;
    font-size: var(--text-sm) !important;
    font-weight: var(--fw-bold) !important;
    color: var(--gray-800) !important;
}
.main_item_lg--catalog .price-calc-install .price-calc-install-num , .main_item_lg--build .price-calc-install .price-calc-install-num {
    display: inline !important;
    font-size: var(--text-lg) !important;
    line-height: 1.1 !important;
    font-weight: var(--fw-bold) !important;
    color: var(--gray-800) !important;
}
.main_item_lg--catalog .price-calc-install .price-calc-install-unit , .main_item_lg--build .price-calc-install .price-calc-install-unit {
    display: inline !important;
    font-size: var(--text-sm) !important;
    line-height: 1.1 !important;
    font-weight: var(--fw-bold) !important;
    color: var(--gray-600) !important;
    white-space: nowrap;
}

/* Title / prices / buttons each full-width; actions sized by the card, not by buttons */
.main_item_lg--catalog .section_top, .main_item_lg--build .section_top,
.main_item_lg--pick .section_top {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: 100%;
    min-width: 0;
}
.main_item_lg--catalog .section_top > *, .main_item_lg--build .section_top > *,
.main_item_lg--pick .section_top > * {
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    order: 0;
}

.main_item_lg--catalog, .main_item_lg--build,
.main_item_lg--pick {
    container-type: inline-size;
    container-name: card;
}
.main_item_lg--catalog .main_item_lg_cont, .main_item_lg--build .main_item_lg_cont,
.main_item_lg--pick .main_item_lg_cont {
    --card-btn: clamp(28px, 18cqi, 46px);
    --card-icon: clamp(12px, 7.5cqi, 18px);
    --card-gap: clamp(2px, 1.6cqi, 4px);
    --card-buy-pad-x: clamp(4px, 5cqi, 14px);
}
.main_item_lg--catalog .main_item_lg_actions, .main_item_lg--build .main_item_lg_actions,
.main_item_lg--pick .main_item_lg_actions {
    display: grid !important;
    grid-template-columns: minmax(0, var(--card-btn)) minmax(0, var(--card-btn)) minmax(0, 1fr);
    align-items: stretch;
    column-gap: var(--card-gap);
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    overflow: hidden;
    container-type: inline-size;
    container-name: cardacts;
}
.main_item_lg--catalog .main_item_lg_actions .main_item_btn_box, .main_item_lg--build .main_item_lg_actions .main_item_btn_box,
.main_item_lg--pick .main_item_lg_actions .main_item_btn_box {
    display: contents;
    position: static !important;
    top: auto !important;
    right: auto !important;
}
.main_item_lg--catalog .main_item_lg_actions .main_item_lg_buy_col, .main_item_lg--build .main_item_lg_actions .main_item_lg_buy_col,
.main_item_lg--pick .main_item_lg_actions .main_item_lg_buy_col {
    min-width: 0;
    margin-left: 0;
    width: 100%;
    height: var(--card-btn);
    align-self: stretch;
    display: flex;
    align-items: stretch;
}
.main_item_lg--catalog .main_item_lg_actions .main_item_btn_box .btn.btn_point, .main_item_lg--build .main_item_lg_actions .main_item_btn_box .btn.btn_point,
.main_item_lg--pick .main_item_lg_actions .main_item_btn_box .btn.btn_point {
    width: var(--card-btn) !important;
    height: var(--card-btn) !important;
    min-width: 0 !important;
    min-height: var(--card-btn) !important;
    max-width: 100%;
    max-height: var(--card-btn) !important;
    padding: 0 !important;
    box-sizing: border-box;
    flex: none;
}
.main_item_lg--catalog .main_item_lg_buy_col .btn.main_item_lg_buy_btn, .main_item_lg--build .main_item_lg_buy_col .btn.main_item_lg_buy_btn,
.main_item_lg--pick .main_item_lg_buy_col .btn.main_item_lg_buy_btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    max-width: 100%;
    height: var(--card-btn) !important;
    min-width: 0 !important;
    min-height: var(--card-btn) !important;
    max-height: var(--card-btn) !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: var(--card-buy-pad-x) !important;
    padding-right: var(--card-buy-pad-x) !important;
    gap: 6px;
    box-sizing: border-box !important;
    line-height: 1 !important;
    overflow: hidden;
}
.main_item_lg--catalog .main_item_lg_actions .btn i, .main_item_lg--build .main_item_lg_actions .btn i,
.main_item_lg--pick .main_item_lg_actions .btn i {
    width: var(--card-icon) !important;
    height: var(--card-icon) !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 55%;
    max-height: 55%;
    margin: 0 !important;
    flex: 0 1 auto;
}
.main_item_lg--catalog .main_item_lg_actions .btn i svg, .main_item_lg--build .main_item_lg_actions .btn i svg,
.main_item_lg--pick .main_item_lg_actions .btn i svg {
    width: var(--card-icon) !important;
    height: var(--card-icon) !important;
    max-width: 100%;
    max-height: 100%;
    display: block;
}
.main_item_lg--catalog .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label, .main_item_lg--build .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label,
.main_item_lg--pick .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label {
    display: inline !important;
    white-space: nowrap;
    overflow: visible;
    font-size: var(--text-sm);
    font-weight: var(--fw-bold);
    
    line-height: 1;
}
.main_item_lg--catalog .main_item_lg_buy_col .btn.main_item_lg_buy_btn .main_item_lg_buy_icon, .main_item_lg--build .main_item_lg_buy_col .btn.main_item_lg_buy_btn .main_item_lg_buy_icon,
.main_item_lg--pick .main_item_lg_buy_col .btn.main_item_lg_buy_btn .main_item_lg_buy_icon {
    flex: 0 1 auto;
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}
@media only screen and (max-width: 991px) {
    .main_item_lg--catalog .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label, .main_item_lg--build .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label,
    .main_item_lg--pick .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label {
        display: inline !important;
    }
}
/* Hide words only when the footer row cannot fit them; never clip */
@container cardacts (max-width: 228px) {
    .main_item_lg--catalog .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label, .main_item_lg--build .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label,
    .main_item_lg--pick .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label {
        display: none !important;
    }
    .main_item_lg--catalog .btn.main_item_lg_buy_btn, .main_item_lg--build .btn.main_item_lg_buy_btn,
    .main_item_lg--pick .btn.main_item_lg_buy_btn {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        padding-left: var(--card-buy-pad-x) !important;
        padding-right: var(--card-buy-pad-x) !important;
        gap: 0;
    }
}

/* Configurator pick: prices on a new line, right-aligned, wrap if needed */
.main_item_lg--pick .js-price-calc.main_item_lg_prise_stack {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: flex-end;
    column-gap: 10px;
    row-gap: 2px;
    width: 100%;
    min-width: 0;
}
.main_item_lg--pick .main_item_lg_prise_stack > .price-calc-hint {
    display: none !important;
}
.main_item_lg--pick .main_item_lg_prise_stack > .main_item_lg_prise_pair > em {
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: baseline;
    gap: 3px;
    margin: 0 !important;
    color: var(--gray-400) !important;
    font-size: var(--text-md) !important;
    line-height: 1.1 !important;
    font-weight: var(--fw-bold);
    font-style: normal;
    text-decoration: line-through;
    white-space: nowrap;
}
.main_item_lg--pick .main_item_lg_prise_stack > .main_item_lg_prise_pair > em span {
    display: inline !important;
    margin: 0 !important;
    color: var(--gray-400) !important;
    font-size: var(--text-md) !important;
    font-weight: var(--fw-bold) !important;
    border-bottom: 0 !important;
}
.main_item_lg--pick .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) {
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: baseline;
    gap: 3px;
    margin: 0 !important;
    font-size: var(--text-2xl);
    line-height: 1.1 !important;
    font-weight: var(--fw-bold);
    color: var(--color-sale);
    white-space: nowrap;
}
.main_item_lg--pick .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-num,
.main_item_lg--pick .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-cur {
    display: inline !important;
    margin: 0 !important;
    color: inherit !important;
    border-bottom: 0 !important;
}
.main_item_lg--pick .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-num {
    font-size: var(--text-2xl) !important;
    font-weight: var(--fw-bold) !important;
}
.main_item_lg--pick .main_item_lg_prise_stack > .main_item_lg_prise_pair > span:not(.price-calc-hint):not(.price-calc-install) .price-cur {
    font-size: var(--text-sm) !important;
    font-weight: var(--fw-bold) !important;
}
.main_item_lg--pick .main_item_lg_actions .main_item_btn_box .btn i path {
    stroke: var(--color-accent) !important;
    fill: none !important;
}
.main_item_lg--pick .main_item_lg_actions .main_item_btn_box .btn.remove i path {
    stroke: var(--color-sale) !important;
    fill: var(--color-sale) !important;
}

/* Ready-build: keep «от» / «de la» on current and old prices */
.main_item_lg--build .price-from {
    flex: 0 0 auto;
    font-size: var(--text-sm);
    font-weight: var(--fw-bold);
    line-height: 1.1;
    color: inherit;
}
.main_item_lg--build .main_item_lg_prise_stack > .main_item_lg_prise_pair > em .price-from {
    font-size: var(--text-sm);
    font-weight: var(--fw-bold);
    color: var(--gray-400) !important;
}
.main_item_lg--build .main_item_lg_buy_btn .hide_991.main_item_lg_buy_label {
    font-size: var(--text-md) !important;
    font-weight: var(--fw-bold);
    
}
.main_item_lg--build .main_item_lg_buy_col .btn.main_item_lg_buy_btn .main_item_lg_buy_icon,
.main_item_lg--build .main_item_lg_buy_col .btn.main_item_lg_buy_btn .main_item_lg_buy_icon svg,
.main_item_lg_buy_icon--gears svg {
    display: block;
    width: 22px !important;
    height: 20px !important;
    max-width: none !important;
    max-height: none !important;
    min-width: 22px !important;
    min-height: 20px !important;
    flex: 0 0 auto !important;
}

.main_item_lg--build .build-list-toggle {
    display: none;
}
@media only screen and (max-width: 575px) {
    .main_item_lg--build .build-list-toggle {
        display: inline-flex;
        align-items: center;
        margin-top: 4px;
    }
    .main_item_lg--build.is-build-list-open .main_item_list_resp {
        height: auto !important;
        overflow: visible !important;
    }
    .main_item_lg--build.is-build-list-open .main_item_list_resp:before {
        display: none !important;
        content: none !important;
    }
    .main_item_lg--build.is-build-list-open .build-list-toggle i {
        transform: rotate(-90deg);
    }
    .main_item_lg--build .build-list-toggle i {
        transform: rotate(90deg);
        display: inline-flex;
        margin-left: 6px;
        transition: transform 0.15s ease;
    }
}

/* PDP: do not use listing-card installment layout */
.item_main_conf .price-calc-install,
.product-price .price-calc-install,
.mob-prices .price-calc-install {
    display: none !important;
}
.item_main_conf .main_item_lg_prise,
.product-price .main_item_lg_prise {
    display: block;
    white-space: nowrap;
}
.item_main_conf .main_item_lg_prise > span,
.product-price .main_item_lg_prise > span {
    display: inline;
}
/* geek-pdp-stock-locations */
.product-stock-locations{margin-top:8px;display:flex;flex-direction:column;gap:4px;}
.product-stock-loc{font-size: var(--text-sm);line-height:1.4;font-weight: var(--fw-bold);display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;color:var(--color-success);}
.product-stock-loc--zero{color:var(--color-sale);}
.product-stock-loc__ico{flex:0 0 14px;width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;}
.product-stock-loc__ico svg{display:block;}
.product-stock-loc__qty{white-space:nowrap;}
.product-stock-loc__check,.product-stock-card-check{display:inline-block;vertical-align:middle;margin:0;}
.main_item_lg_info_txt .product-stock-card-check{margin-left:4px;}

/* geek-pdp-bento-shell — серая подложка только устаревшая; на PDP снимаем.
   Победитель фона был css/style.css .item_main_conf { background:var(--gray-50); padding:40px }.
   Конфигуратор (.item_main_conf_resp / .config-summary-card) не трогаем. */
.item_main_conf.resp_full {
  background: transparent;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.item_main_conf.resp_full > .item_main_conf_line,
.product-buy-card > .item_main_conf_line {
  display: none;
}
.product-buy-card {
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: 18px;
  box-shadow: 0 4px 16px rgba(17, 24, 39, 0.05);
  padding: 16px;
}
.product-buy-card .product-buy-head {
  margin-bottom: 0;
}
.product-buy-card .item_main_conf_btn_box {
  margin-top: 0;
  padding-top: 10px;
  border-top: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px 48px;
  gap: 8px;
  width: 100%;
  align-items: stretch;
}
.product-buy-card .item_main_conf_btn_box > *:not(:last-child) {
  margin-right: 0;
}
.product-buy-card .options-scroll:not(:has(*)) {
  display: none;
}
/* options-scroll глобально margin-bottom:20px + .mb20 на списке — двойной зазор до разделителя */
.product-buy-card .options-scroll {
  margin-top: 10px;
  margin-bottom: 10px;
}
.product-buy-card .options-scroll .mb20 {
  margin-bottom: 0;
}
.product-buy-card .options-scroll .h5,
.product-buy-card .options-scroll h5 {
  margin-bottom: 8px;
}
.item_main_conf.resp_full .pd-block {
  margin-top: 0;
}

/* geek-pdp-buy-head */
.item_main_conf .product-buy-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  flex-wrap:nowrap;
  margin-bottom:0;
}
.item_main_conf .product-buy-head > *{
  margin-right:0;
  margin-bottom:0;
}
.item_main_conf .product-buy-avail{
  flex:1 1 auto;
  min-width:0;
}
.item_main_conf .product-buy-avail .item_main_conf_status{
  display:flex;
  align-items:center;
  gap:8px;
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  line-height:1.2;
  color:var(--color-success);
}
.item_main_conf .product-buy-avail .item_main_conf_status span{
  margin-right:0;
  width:18px;
  height:18px;
  flex:0 0 18px;
  border-radius:50%;
  background:var(--color-success);
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.item_main_conf .product-buy-avail .item_main_conf_status span svg{
  width:10px;
  height:8px;
  display:block;
}
.item_main_conf .product-buy-price{
  flex:0 0 auto;
  text-align:right;
}
.item_main_conf .product-buy-price .main_item_lg_prise{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
  white-space:normal;
}
.item_main_conf .product-buy-price .main_item_lg_prise > em{
  order:-1;
  font-size: var(--text-md);
  line-height:1.2;
  margin:0;
}
.item_main_conf .product-buy-price .main_item_lg_prise > span:not(.price-calc-hint):not(.price-calc-install){
  order:0;
  margin:0;
  font-size: var(--text-3xl);
  line-height:1.15;
  font-weight: var(--fw-bold);
}
.item_main_conf .product-buy-price .item_main_conf_prise{
  font-size: var(--text-3xl);
  line-height:1.15;
}
.item_main_conf_status_wr .item_main_conf_status{
  display:flex;
  align-items:center;
  gap:8px;
}
.item_main_conf_status_wr .product-stock-locations{
  margin-top:8px;
  display:flex;
  flex-direction:column;
}
.item_main_conf_status_wr > .item_main_conf_status,
.item_main_conf_status_wr > .product-stock-locations{
  display:flex;
}

@media (max-width: 991px){
  .item_main_conf .product-buy-head{
    flex-direction:row;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
  }
  .item_main_conf .product-buy-price{
    order:0;
    text-align:right;
    width:auto;
    margin-left:auto;
  }
  .item_main_conf .product-buy-avail{
    min-width:11.5em;
  }
  .item_main_conf .product-buy-price{
    flex:0 0 auto;
  }
  .item_main_conf .product-buy-price .main_item_lg_prise{
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:flex-end;
    gap:4px;
  }
  .item_main_conf .product-buy-price .main_item_lg_prise > em{
    order:-1;
    font-size: var(--text-md);
    line-height:1.2;
  }
  .item_main_conf .product-buy-head.is-price-below .product-buy-price{
    width:100%;
    margin-left:0;
  }
  .item_main_conf .product-buy-head.is-price-below .product-buy-price .main_item_lg_prise{
    flex-direction:row;
    flex-wrap:nowrap;
    align-items:baseline;
    justify-content:flex-end;
    gap:10px;
    width:100%;
  }
  .item_main_conf .product-buy-head.is-price-below .product-buy-price .main_item_lg_prise > em{
    order:0;
  }
  .item_main_conf .product-buy-price .main_item_lg_prise > span:not(.price-calc-hint):not(.price-calc-install){
    order:0;
    font-size: var(--text-3xl);
    line-height:1.1;
  }
  .item_main_conf .product-buy-price .item_main_conf_prise{
    font-size: var(--text-3xl);
    line-height:1.1;
  }
  .product-stock-loc{
    font-size: var(--text-md);
    line-height:1.45;
  }
}

/* geek-pdp-tabs-2026 — страница товара: вкладки, карточки как покупка, кнопка как checkout.
   Только body.product-product. Каталог / конфигуратор / фильтры не трогаем. */
body.product-product {
  background: var(--gray-100);
}
/* padding-bottom for sticky bar: geek-pdp-mob-bar-2026, mobile only */
body.product-product .main_h1 {
  font-size: clamp(22px, 2.2vw, 34px);
  line-height: 1.15;
  font-weight: var(--fw-bold);
  
  margin-bottom: 18px;
}
body.product-product .section_offset {
  margin-bottom: 36px;
}
body.product-product .section_offset_lite {
  margin-bottom: 20px;
}

body.product-product .cod_txt {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 18px;
  padding: 10px 12px;
  border: 0;
  border-radius: 12px;
  background: color-mix(in srgb, var(--color-primary) 6%, transparent);
  box-shadow: none;
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  color: var(--gray-900);
  text-transform: none;
  letter-spacing: 0;
  cursor: default;
  position: relative;
}
body.product-product .cod_txt::before {
  content: none;
  display: none;
}
body.product-product .cod_txt > span {
  display: block;
  flex: 0 0 auto;
  margin: 0;
  max-width: 4.6em;
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  color: var(--gray-900);
  
  
  white-space: normal;
  line-height: 1.15;
}
body.product-product .cod_txt b {
  font-size: var(--text-xl);
  font-weight: var(--fw-bold);
  color: var(--color-primary);
  
  text-transform: none;
  line-height: 1;
  min-width: 0;
  white-space: nowrap;
}
body.product-product .cod_txt__row {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
  box-sizing: border-box;
}
body.product-product .cod_txt button.copy {
  margin-left: auto;
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: var(--color-primary);
  color: #fff;
  font-family: inherit;
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  line-height: 32px;
  text-transform: none;
  letter-spacing: 0;
  cursor: pointer;
  position: relative;
  box-shadow: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
body.product-product .cod_txt button.copy .copy__txt {
  display: none;
}
body.product-product .cod_txt button.copy .copy__ico {
  display: block;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}
body.product-product .cod_txt button.copy .copy__ok {
  display: none;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}
body.product-product .cod_txt button.copy.is-copied .copy__txt,
body.product-product .cod_txt button.copy.is-copied .copy__ico {
  display: none;
}
body.product-product .cod_txt button.copy.is-copied {
  background: var(--color-success);
}
body.product-product .cod_txt button.copy.is-copied:hover,
body.product-product .cod_txt button.copy.is-copied:focus {
  background: #26a854;
}
body.product-product .cod_txt button.copy.is-copied .copy__ok {
  display: block !important;
  animation: pdp-copy-ok .35s ease;
}
body.product-product .cod_txt .copy_text {
  display: none !important;
}
@keyframes pdp-copy-ok {
  0% { transform: scale(.45); opacity: 0; }
  55% { transform: scale(1.12); opacity: 1; }
  100% { transform: scale(1); opacity: 1; }
}
body.product-product .cod_txt button.copy:hover,
body.product-product .cod_txt button.copy:focus {
  background: var(--color-primary-hover);
  color: #fff;
}

body.product-product .item_main .section_top {
  background: #fff;
  border: 0;
  border-radius: 18px;
  box-shadow: 0 4px 16px rgba(17, 24, 39, .05);
  padding: 20px;
}
body.product-product .item_main .section_bottom {
  padding-top: 10px;
}
body.product-product .item_main .swiper-gal {
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: 16px;
  box-shadow: 0 4px 16px rgba(17, 24, 39, .05);
  padding: 12px;
}
@media (max-width: 1199px) {
  body.product-product .pdp-thumbs .swiper-gal-pagination {
    position: static;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 6px;
    width: 100%;
    margin: 10px 0 0;
    bottom: auto;
    left: auto;
    transform: none;
  }
  body.product-product .pdp-thumbs .swiper-gal-pagination .swiper-pagination-bullet {
    width: 52px;
    height: 52px;
    margin: 0;
    border-radius: 8px;
    background: var(--gray-50);
    opacity: 1;
    overflow: hidden;
    border: 1px solid var(--gray-200);
    box-sizing: border-box;
  }
  body.product-product .pdp-thumbs .swiper-gal-pagination .swiper-pagination-bullet-active {
    border-color: var(--color-primary);
    background: #fff;
    opacity: 1;
  }
  body.product-product .pdp-thumbs .swiper-gal-pagination .pdp-thumbs-bullet img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    pointer-events: none;
  }
  body.product-product .pdp-thumbs .swiper-gal-pagination .swiper-pagination-bullet:only-child {
    display: none;
  }
  body.product-product .pdp-thumbs .swiper-gal-pagination .swiper-pagination-bullet {
    width: calc((100% - 18px) / 4);
    height: auto;
    aspect-ratio: 1;
  }
  body.product-product .pdp-thumbs.has-more-mob .swiper-gal-pagination .swiper-pagination-bullet:nth-child(n+9) {
    display: none;
  }
  body.product-product .pdp-thumbs.has-more-mob .swiper-gal-pagination .swiper-pagination-bullet.is-more {
    position: relative;
  }
  body.product-product .pdp-thumbs.has-more-mob .swiper-gal-pagination .swiper-pagination-bullet .swiper_gal_sum {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: var(--text-md);
    line-height: 1;
  }
}
body.product-product .item_img {
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: 16px;
  box-shadow: 0 4px 16px rgba(17, 24, 39, .05);
  padding: 14px;
  box-sizing: border-box;
  position: relative;
  height: auto;
}
body.product-product .item_img .btn_open_gallery {
  display: block;
  position: relative;
  height: 100%;
  background: transparent;
  border-radius: 12px;
}
body.product-product .item_img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: transparent;
  border-radius: 12px;
}
body.product-product .item_img .item_img_btn {
  opacity: 1;
  top: auto;
  left: auto;
  right: 10px;
  bottom: 10px;
  transform: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  min-width: 40px;
  padding: 0;
  line-height: 0;
  border-radius: 10px;
  background: var(--color-primary);
  color: #fff;
  box-shadow: 0 8px 22px color-mix(in srgb, var(--color-primary) 28%, transparent);
  transition: background .2s ease, transform .15s ease, box-shadow .2s ease;
}
body.product-product .item_img .item_img_btn:hover,
body.product-product .item_img .item_img_btn:focus {
  background: var(--color-primary-hover);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 10px 26px color-mix(in srgb, var(--color-primary) 32%, transparent);
}
body.product-product .item_img .item_img_btn i {
  margin: 0;
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.product-product .item_img .item_img_btn svg {
  display: block;
  width: 18px;
  height: 18px;
}

body.product-product .item_main_list {
  list-style: none;
  margin: 0 0 14px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: var(--text-sm);
  line-height: 1.3;
  font-weight: var(--fw-bold);
  color: var(--gray-400);
}
body.product-product .item_main_list li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 0;
  border-bottom: 0;
  margin-bottom: 0;
}
body.product-product .item_main_list li:not(:last-child) {
  margin-bottom: 0;
}
body.product-product .item_main_list span,
body.product-product .item_main_list em,
body.product-product .item_main_list .attribute_value_text {
  color: var(--gray-800);
  font-style: normal;
  font-weight: var(--fw-bold);
  text-align: right;
}
body.product-product .item_main_list li span:first-child,
body.product-product .item_main_list li > span:first-child {
  color: var(--gray-400);
  font-weight: var(--fw-bold);
  text-align: left;
}
body.product-product .item_main .pdp-short-specs > p {
  margin: 0;
}
body.product-product .item_main .link_all {
  color: var(--color-primary);
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  letter-spacing: 0;
  text-transform: none;
}
body.product-product .item_main .link_all:hover {
  color: var(--color-primary-hover);
}

body.product-product .item_main .item_main_conf_txt_list {
  margin-top: 12px;
  padding: 16px 18px;
  background: rgba(45, 190, 96, .08);
  border: 0;
  border-radius: 18px;
  box-shadow: none;
  font-size: var(--text-sm);
  line-height: 1.4;
  color: var(--gray-600);
}
body.product-product .item_main .item_main_conf_txt_list li {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
}
body.product-product .item_main .item_main_conf_txt_list li:not(:last-child) {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}
body.product-product .item_main .pdp-warr__top {
  display: flex;
  align-items: center;
  gap: 10px;
}
body.product-product .item_main .item_main_conf_txt_list h5 {
  margin: 0;
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  line-height: 1.25;
  color: var(--gray-800);
}
body.product-product .item_main .item_main_conf_txt_list p {
  margin: 0;
  color: var(--gray-600);
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
  line-height: 1.4;
}
body.product-product .item_main_conf_txt_list_icon {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 50%;
  background: rgba(45, 190, 96, .16);
  color: var(--color-success);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 0;
}
body.product-product .item_main_conf_txt_list_icon svg {
  display: block;
}

body.product-product .product-buy-price .main_item_lg_prise > span:not(.price-calc-hint):not(.price-calc-install),
body.product-product .product-buy-price .item_main_conf_prise {
  color: var(--color-primary);
  font-weight: var(--fw-bold);
}
body.product-product .product-buy-card .item_main_conf_btn_box > .btn.btn_full {
  min-height: 48px;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  border-radius: 12px;
  background: var(--color-primary);
  color: #fff;
  box-shadow: 0 8px 22px color-mix(in srgb, var(--color-primary) 28%, transparent);
  transition: background .2s ease, transform .15s ease, box-shadow .2s ease, color .2s ease;
}
body.product-product .product-buy-card .item_main_conf_btn_box > .btn.btn_full:hover,
body.product-product .product-buy-card .item_main_conf_btn_box > .btn.btn_full:focus {
  background: var(--color-primary-hover);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 10px 26px color-mix(in srgb, var(--color-primary) 32%, transparent);
}
body.product-product .product-buy-card .item_main_conf_btn_box > .btn.btn_full:hover i path,
body.product-product .product-buy-card .item_main_conf_btn_box > .btn.btn_full:hover i svg path {
  fill: #fff;
}
body.product-product .product-buy-card .item_main_conf_btn_box > .btn.btn_gray3 {
  width: 48px;
  min-width: 48px;
  height: 48px;
  padding-left: 0;
  padding-right: 0;
  box-sizing: border-box;
  border-radius: 12px;
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
}
body.product-product .product-buy-card .item_main_conf_btn_box > .btn.btn_gray3:hover {
  background: #fff;
  border-color: var(--color-primary);
  transform: translateY(-1px);
}
body.product-product .product-buy-card .slider_product_item {
  min-height: 38px;
  padding: 6px 12px;
  border-radius: 9px;
  border: 1.5px solid var(--gray-200);
  background: #fff;
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
}
body.product-product .product-buy-card input:checked + .slider_product_item,
body.product-product .product-buy-card .slider_product_item.active {
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: color-mix(in srgb, var(--color-primary) 6%, transparent);
}

.pdp-tabs-bar {
  position: relative;
  background: transparent;
  border: 0;
  margin-bottom: 8px;
  padding: 12px 0 0;
}
.pdp-tabs {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding: 6px;
  border-radius: 999px;
  background: var(--gray-100);
  width: fit-content;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}
.pdp-tabs__btn {
  flex: 0 0 auto;
  min-height: 40px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  font-family: inherit;
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  color: var(--gray-600);
  background: transparent;
  cursor: pointer;
  transition: background .15s, color .15s, box-shadow .15s;
}
.pdp-tabs__btn:hover {
  background: rgba(255, 255, 255, .55);
  color: var(--gray-800);
}
.pdp-tabs__btn.is-on {
  background: var(--color-primary);
  color: #fff;
  box-shadow: none;
}
.pdp-tabs__btn.is-on:hover {
  background: var(--color-primary);
  color: #fff;
}
.pdp-panel {
  display: none;
}
.pdp-panel.is-on {
  display: block;
}
.pdp-panel > .title_box,
.pdp-panel > .title_box_xl {
  margin-bottom: 20px;
}
.pdp-panel .title_box_in h2,
.pdp-panel .title_box h2 {
  font-size: var(--text-xl);
  font-weight: var(--fw-bold);
  
  margin: 0;
  line-height: 1.2;
}
.pdp-panel .title_box_in h2 span,
.pdp-panel .title_box h2 span {
  display: block;
  margin-top: 4px;
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  letter-spacing: 0;
  color: var(--gray-400);
  line-height: 1.35;
}
.pdp-desc-prose {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px 48px;
  align-items: start;
}
.pdp-desc-prose > figure,
.pdp-desc-prose > .img_plus_txt,
.pdp-desc-prose > .accordion-container {
  grid-column: 1 / -1;
}
.pdp-desc-prose h3 {
  margin: 0 0 8px;
  font-size: var(--text-lg);
  font-weight: var(--fw-bold);
  color: var(--gray-800);
}
.pdp-desc-prose p {
  margin: 0 0 12px;
  color: var(--gray-600);
  line-height: 1.55;
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
}
.pdp-desc-prose ul {
  margin: 0;
  padding-left: 18px;
  color: var(--gray-600);
}
.pdp-desc-prose li {
  margin-bottom: 6px;
}

body.product-product .pdp-attr-bento {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
  width: 100%;
  min-width: 0;
}
body.product-product .pdp-attr-bento:not(.is-ready) {
  visibility: hidden;
}
body.product-product .pdp-panel .list_info {
  display: block;
  column-count: auto;
  column-gap: normal;
  column-rule: none;
  height: 100%;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  overflow: hidden;
  text-align: left;
  white-space: normal;
}
body.product-product .pdp-panel .list_info li {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 10px 16px;
  margin: 0;
  background: #fff;
  min-width: 0;
  border-bottom: 1px solid var(--gray-100);
}
body.product-product .pdp-panel .list_info li:last-child {
  border-bottom: 0;
}
body.product-product .pdp-panel .list_info li:nth-child(even) {
  background: var(--gray-50);
}
body.product-product .pdp-panel .list_info li:before {
  display: none;
}
body.product-product .pdp-panel .list_info .list_info_txt1,
body.product-product .pdp-panel .list_info .list_info_txt1 > span {
  width: auto;
  max-width: 100%;
  background: transparent;
  padding: 0;
  margin: 0;
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  color: var(--color-accent);
  line-height: 1.3;
}
body.product-product .pdp-panel .list_info .list_info_txt1 {
  margin-bottom: 4px;
}
body.product-product .pdp-panel .list_info .list_info_txt1 > span {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}
body.product-product .pdp-panel .list_info .list_info_txt1 span .ocf_helper_value {
  position: static;
  display: inline-flex;
  flex-shrink: 0;
  top: auto;
  right: auto;
  margin: 0;
}
body.product-product .pdp-panel .list_info .list_info_txt1 span .ocf_helper_value + span {
  display: none;
}
body.product-product .pdp-panel .list_info .list_info_txt1 .ocf_helper_btn,
body.product-product .pdp-panel .list_info .list_info_txt1 .ocf_helper_value .ocf_helper_btn {
  position: static;
  width: 14px;
  height: 14px;
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  background: var(--gray-300);
  color: #fff;
  margin: 0;
}
body.product-product .pdp-panel .list_info .list_info_txt2 {
  width: auto;
  background: transparent;
  padding: 0;
}
body.product-product .pdp-panel .list_info .list_info_txt2,
body.product-product .pdp-panel .list_info .list_info_txt2 em {
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  color: var(--gray-800);
  text-align: left;
  white-space: normal;
}
body.product-product .pdp-panel .list_info .list_info_txt2 a {
  color: var(--color-primary);
}
body.product-product .pdp-panel .reviews_box {
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  padding: 16px 18px;
}
body.product-product .pdp-panel[data-pdp-panel="reviews"] > .title_box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 12px;
  margin-bottom: 20px;
}
body.product-product .pdp-panel[data-pdp-panel="reviews"] > .title_box .title_box_in {
  align-items: center;
  margin-bottom: 0;
}
body.product-product .pdp-panel .open_form.btn_gray2 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 44px;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 12px;
  background: var(--color-primary);
  border: 1.5px solid var(--color-primary);
  color: #fff;
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  line-height: 1;
  
}
body.product-product .pdp-panel .open_form.btn_gray2 .s,
body.product-product .pdp-panel .open_form.btn_gray2 .h {
  line-height: 1;
}
body.product-product .pdp-panel .open_form.btn_gray2:hover {
  background: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
  color: #fff;
}
body.product-product .pdp-panel .open_form.btn_gray2.active,
body.product-product .pdp-panel .open_form.btn_gray2.active:hover {
  background: #fff;
  border-color: var(--color-primary);
  color: var(--color-primary);
}


body.product-product .reviews_form {
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: 18px;
  padding: 20px 22px 18px;
  margin: 0 0 24px;
}
body.product-product .pdp-rev-grid {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: 16px 24px;
  align-items: stretch;
}
body.product-product .pdp-rev-side,
body.product-product .pdp-rev-main {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
}
body.product-product .pdp-rev-label {
  display: block;
  margin: 0 0 8px;
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  color: var(--gray-600);
  
}
body.product-product .pdp-rev-opt {
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  color: var(--gray-400);
}
body.product-product .pdp-rev-who {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}
body.product-product .pdp-rev-input {
  width: 100%;
  box-sizing: border-box;
  height: 44px;
  padding: 0 12px;
  border-radius: 10px;
  border: 1.5px solid var(--gray-200);
  background: #fff;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  color: var(--gray-800);
  outline: none;
  box-shadow: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}
body.product-product .pdp-rev-input:hover {
  border-color: var(--gray-300);
}
body.product-product .pdp-rev-input:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent);
}
body.product-product .pdp-rev-textarea {
  height: auto;
  min-height: 220px;
  flex: 1 1 auto;
  padding: 12px;
  line-height: 1.45;
  resize: vertical;
}
body.product-product .pdp-rev-login-fields {
  display: grid;
  gap: 10px;
}
body.product-product .pdp-rev-guest:not(.is-open) .pdp-rev-login-fields {
  display: none;
}
body.product-product .pdp-rev-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 44px;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 10px;
  background: #fff;
  border: 1.5px solid var(--gray-200);
  color: var(--gray-800);
  font: inherit;
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  line-height: 1;
  
  
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color .2s ease, color .2s ease, background .2s ease;
}
body.product-product .pdp-rev-btn:hover,
body.product-product .pdp-rev-btn.is-open {
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: #fff;
}
body.product-product .pdp-rev-btn--wide {
  width: 100%;
}
body.product-product .pdp-rev-file {
  position: relative;
  display: block;
  margin: 0;
  cursor: pointer;
}
body.product-product .reviews_form input[type=file] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
body.product-product .pdp-rev-previews {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
body.product-product .pdp-rev-previews .reviews_form_previews__item,
body.product-product .reviews_form_previews__item {
  position: relative;
  width: 56px;
  height: 56px;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid var(--gray-200);
  background: var(--gray-50);
}
body.product-product .reviews_form_previews__item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body.product-product .pdp-rev-preview-del {
  position: absolute;
  top: 4px;
  right: 4px;
  z-index: 2;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 0;
  border-radius: 5px;
  background: var(--color-primary) url(../images/icons/close_w.svg) center / 7px 7px no-repeat;
  cursor: pointer;
}
body.product-product .pdp-rev-preview-del:hover {
  background-color: var(--color-accent);
}
body.product-product .pdp-rev-hint,
body.product-product .pdp-rev-note {
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  line-height: 1.4;
  color: var(--gray-400);
}
body.product-product .pdp-rev-foot {
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding-top: 4px;
}
body.product-product .reviews_form .form-message {
  width: 100%;
}
body.product-product .reviews_form button.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 12px;
  background: var(--color-primary);
  color: #fff;
  box-shadow: none;
}
body.product-product .reviews_form button.btn:hover {
  background: var(--color-primary-hover);
  color: #fff;
}
@media (max-width: 767px) {
  body.product-product .reviews_form {
    padding: 16px;
  }
  body.product-product .pdp-rev-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  body.product-product .pdp-rev-textarea {
    min-height: 140px;
  }
  body.product-product .pdp-rev-who {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}

/* geek-pdp-mob-bar-2026 — нижняя плашка как макет v3: белая карточка, синяя цена и «Купить».
   Селектор длиннее .item_main_conf_resp { background:var(--gray-900) } из responsive.css.
   Конфигуратор не трогаем: там нет .panel-mob-custom. */
@media (max-width: 991px) {
  body.product-product.has-pdp-stick {
    padding-bottom: 92px;
  }
  body.product-product .item_main_conf.item_main_conf_resp.panel-mob-custom {
    display: flex;
    align-items: center;
    position: fixed;
    left: 14px;
    right: 14px;
    bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    width: auto;
    z-index: 90;
    margin: 0;
    padding: 10px 10px 10px 16px;
    background: #fff;
    background-color: #fff;
    border: 1px solid var(--gray-200);
    border-top: 1px solid var(--gray-200);
    border-radius: 16px;
    box-shadow: 0 8px 28px rgba(17, 24, 39, .14);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    transform: translateY(calc(100% + 28px));
    pointer-events: none;
    opacity: 0;
    transition: transform .22s ease, opacity .22s ease;
  }
  body.product-product .item_main_conf.item_main_conf_resp.panel-mob-custom.is-on {
    transform: translateY(0);
    pointer-events: auto;
    opacity: 1;
  }
  body.product-product .panel-mob-custom > img {
    display: none;
  }
  body.product-product .panel-mob-custom > div {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-width: 0;
  }
  body.product-product .panel-mob-custom .panel-mob-custom-name {
    flex: 1;
    min-width: 0;
  }
  body.product-product .panel-mob-custom .item_main_conf_txt_list_cont {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    margin: 0;
  }
  body.product-product .panel-mob-custom .main_item_lg_title {
    display: none;
  }
  body.product-product .panel-mob-custom .mob-prices,
  body.product-product .panel-mob-custom .main_item_lg_prise {
    margin: 0;
  }
  body.product-product .panel-mob-custom .main_item_lg_prise,
  body.product-product .panel-mob-custom .main_item_lg_prise span {
    font-size: var(--text-lg);
    font-weight: var(--fw-bold);
    line-height: 1;
    color: var(--color-primary);
  }
  body.product-product .panel-mob-custom .main_item_lg_prise em,
  body.product-product .panel-mob-custom .price-calc-hint {
    display: none;
  }
  body.product-product .panel-mob-custom .item_main_conf_status {
    font-size: var(--text-xs);
    font-weight: var(--fw-bold);
    color: var(--gray-600);
  }
  body.product-product .panel-mob-custom .item_main_conf_btn_box {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
    flex-shrink: 0;
  }
  body.product-product .panel-mob-custom a[href="#links_list"],
  body.product-product .panel-mob-custom .back_to_top {
    display: none !important;
  }
  body.product-product .panel-mob-custom .add-to-cart-btn,
  body.product-product .panel-mob-custom .btn.btn_yellow.btn_full {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    flex: 0 0 auto;
    height: 44px;
    min-height: 44px;
    max-height: 44px;
    min-width: 140px;
    border-radius: 12px;
    background: var(--color-primary);
    color: #fff;
    box-shadow: none;
    width: auto;
    padding: 0 18px;
    margin: 0;
    line-height: 1;
    box-sizing: border-box;
  }
  body.product-product .panel-mob-custom .add-to-cart-btn i,
  body.product-product .panel-mob-custom .btn.btn_yellow.btn_full i {
    display: none;
  }
  body.product-product .panel-mob-custom .add-to-cart-btn:hover,
  body.product-product .panel-mob-custom .add-to-cart-btn:focus,
  body.product-product .panel-mob-custom .btn.btn_yellow.btn_full:hover,
  body.product-product .panel-mob-custom .btn.btn_yellow.btn_full:focus {
    background: var(--color-primary-hover);
    color: #fff;
    transform: none;
  }
  body.product-product .panel-mob-custom .pdp-stick-cta {
    display: inline;
    font-size: var(--text-sm);
    font-weight: var(--fw-bold);
    
    
  }
}
@media (min-width: 992px) {
  body.product-product .panel-mob-custom {
    display: none;
  }
}
@media (max-width: 991px) {
  body.product-product .pdp-attr-bento {
    gap: 12px;
  }
}
@media (max-width: 767px) {
  .pdp-desc-prose {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  body.product-product .pdp-attr-bento {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  body.product-product .pdp-panel .list_info {
    column-count: auto;
    column-rule: none;
    height: auto;
  }
  body.product-product .pdp-panel .list_info li {
    padding: 10px 14px;
  }
  .pdp-panels {
    max-width: 100%;
  }
  body.product-product .pdp-tabs-bar .container,
  body.product-product .pdp-lower > .container,
  body.product-product .section_offset.section_offset_lite > .container,
  body.product-product .section_wr > .section_offset.section_offset_lite > .container {
    max-width: none;
  }
}

/* geek-pdp-copy-2026 — крошки, метки над названием, колонки как в макете */
body.product-product .section_wr > .section_offset.section_offset_lite > .container {
  padding-top: 8px;
}
@media only screen and (min-width: 992px) {
  body.product-product .section_wr > .section_offset.section_offset_lite > .container {
    padding-top: 10px;
  }
}
body.product-product .breadcrumps.mb40 {
  margin-bottom: 8px;
  padding-top: 6px;
}
body.product-product .pdp-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  margin-bottom: 8px;
}
body.product-product .pdp-meta .item_info_list {
  margin-bottom: 0;
}
body.product-product .pdp-meta .item_info {
  height: 24px;
  padding: 0 9px;
  border-radius: 5px;
  font-size: var(--text-xs);
  line-height: 24px;
  display: inline-flex;
  align-items: center;
}
body.product-product .pdp-meta .star_box_wr {
  margin-bottom: 0;
}
body.product-product .pdp-meta .star_link {
  color: var(--color-primary);
  text-decoration: none;
}
body.product-product .pdp-meta .star_link:hover {
  color: var(--color-primary-hover);
  text-decoration: underline;
}
body.product-product .main_h1 {
  margin-top: 0;
}
body.product-product .main_h1__rest {
  display: block;
  margin-top: 6px;
  color: var(--gray-600);
  font-size: clamp(16px, 1.6vw, 20px);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  letter-spacing: 0;
}
@media (min-width: 1200px) {
  body.product-product #main_section {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 18px;
    margin-left: 0;
    margin-right: 0;
  }
  body.product-product #main_section > [class*="col-"] {
    float: none;
    padding-left: 0;
    padding-right: 0;
  }
  body.product-product #main_section > .pdp-left {
    flex: 0 0 240px;
    max-width: 240px;
    width: 240px;
  }
  body.product-product #main_section > .pdp-photo {
    flex: 1 1 auto;
    max-width: none;
    width: auto;
    min-width: 0;
  }
  body.product-product #main_section > #buy {
    flex: 0 0 430px;
    max-width: 430px;
    width: 430px;
  }
  body.product-product .pdp-left .item_main,
  body.product-product #buy .item_main_conf {
    position: sticky;
    top: 72px;
  }
  body.product-product .pdp-photo .item_img {
    height: auto;
  }
  body.product-product .pdp-photo .item_img img {
    width: 100%;
    height: 100%;
    object-fit: scale-down;
    object-position: center;
  }
}

/* geek-pdp-photo-2026 */
body.product-product,
body.product-product #content,
body.product-product .section_wr {
  background: var(--gray-100);
}
body.product-product .section_wr > .section_offset {
  margin-top: 0;
}
body.product-product .item_main_list li > span:first-child {
  min-width: 0;
  flex: 1 1 auto;
  color: var(--gray-400);
  font-weight: var(--fw-bold);
  text-align: left;
}
body.product-product .item_main_list li > em,
body.product-product .item_main_list li > .attribute_value_text {
  flex: 0 1 auto;
  white-space: nowrap;
  color: var(--gray-800);
  text-align: right;
}
@media (max-width: 1199px) {
  body.product-product .item_img {
    height: auto;
    min-height: 0;
    padding-top: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
  }
}

/* geek-pdp-thumbs-2026 — превью в 2 ряда, фото = высота левой колонки */
@media (min-width: 1200px) {
  body.product-product .pdp-thumbs.is-grid {
    overflow: visible;
  }
  body.product-product .pdp-thumbs.is-grid .swiper-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    transform: none;
    width: auto;
  }
  body.product-product .pdp-thumbs.is-grid .swiper-slide {
    width: calc((100% - 16px) / 3);
    margin: 0;
    height: auto;
    flex: 0 0 calc((100% - 16px) / 3);
  }
  body.product-product .pdp-thumbs.is-grid .item_gal {
    border-radius: 8px;
    background: var(--gray-50);
  }
  body.product-product .pdp-thumbs.is-grid .swiper-slide:nth-child(n+7) {
    display: none;
  }
  body.product-product .pdp-thumbs.is-grid .swiper-slide .swiper_gal_sum {
    display: none;
  }
  body.product-product .pdp-thumbs.is-grid.has-more .swiper-slide:nth-child(6) .swiper_gal_sum {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

/* geek-pdp-short-2026 — краткие из колонки 12, одна карточка на всех ширинах */
body.product-product .pdp-short-specs .item_main_list {
  padding-top: 12px;
  padding-bottom: 0;
}
body.product-product .pdp-short-specs .item_main_list > li {
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 2px;
}
body.product-product .pdp-short-specs .item_main_list li > span:first-child {
  flex: none;
  text-align: left;
}
body.product-product .pdp-short-specs .item_main_list li > em,
body.product-product .pdp-short-specs .item_main_list li > .attribute_value_text {
  flex: none;
  white-space: normal;
  text-align: left;
}

/* geek-pdp-mob-inset-2026
   Победитель: css/responsive.css @media (max-width:575px) .resp_full { margin: 0 -30px }
   съедает padding контейнера 30px — гарантия/фото/цена/доставка уезжают к краю.
   SKU без .resp_full уже с отступами. Не трогаем flex у .section_vert. */
@media (max-width: 575px) {
  body.product-product .resp_full {
    margin-left: 0;
    margin-right: 0;
  }
}
/* geek-pdp-mob-order-2026 */
@media (max-width: 767px) {
  body.product-product #main_section {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  body.product-product #main_section > .pdp-left,
  body.product-product #main_section > .pdp-left > .item_main,
  body.product-product #main_section > #buy,
  body.product-product #main_section > #buy > .item_main_conf {
    display: contents;
  }
  body.product-product .pdp-left .section_bottom {
    order: 1;
    width: 100%;
    height: auto;
    align-self: stretch;
    padding-top: 0;
  }
  body.product-product .pdp-left .section_top {
    order: 2;
    width: 100%;
  }
  body.product-product .product-buy-card {
    order: 3;
    width: 100%;
  }
  body.product-product .pd-block {
    order: 4;
    width: 100%;
  }
  body.product-product .pdp-left .item_main_conf_txt_list {
    order: 5;
    width: 100%;
    margin-top: 0;
  }
/* geek-pdp-mob-sku-2026 */
  body.product-product .item_main_conf_consultant {
    order: 6;
    width: 100%;
  }
  body.product-product .pdp-short-specs {
    display: none;
  }
  body.product-product .cod_txt {
    margin-bottom: 0;
  }
}

/* geek-pdp-review-gallery-2026 */
body.product-product .item_gal--review img {
  mix-blend-mode: normal;
  background: #fff;
}
body.product-product .pdp-thumb-review {
  position: absolute;
  left: 6px;
  right: 6px;
  bottom: 6px;
  z-index: 2;
  display: block;
  padding: 4px 6px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--color-primary) 92%, transparent);
  color: #fff;
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  line-height: 1.2;
  
  text-align: center;
  
}
.fancybox-type-gallery .fancybox-close {
  top: 12px;
  right: 12px;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background-color: #fff;
  box-shadow: none;
}
.fancybox-wrap.has-pdp-gal-review .fancybox-skin {
  overflow: visible;
}
.pdp-gal-review {
  position: fixed;
  top: 20px;
  left: 20px;
  right: auto;
  bottom: auto;
  z-index: 8100;
  box-sizing: border-box;
  width: min(360px, calc(100vw - 96px));
  max-height: calc(100vh - 160px);
  overflow: auto;
  padding: 16px 18px 14px;
  border-radius: 16px;
  border: 1.5px solid var(--gray-200);
  background: #fff;
  color: var(--gray-800);
  font-family: var(--font-sans);
}
.pdp-gal-review__badge {
  margin: 0 0 8px;
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  line-height: 1.2;
  
  
  color: var(--color-primary);
}
.pdp-gal-review__who {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 8px;
}
.pdp-gal-review__who strong {
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  color: var(--gray-800);
}
.pdp-gal-review__stars {
  color: var(--color-accent);
  
  font-size: var(--text-sm);
}
.pdp-gal-review__text {
  margin: 0;
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  line-height: 1.45;
  color: var(--gray-600);
}
@media (max-width: 767px) {
  .pdp-gal-review {
    top: 16px;
    left: 12px;
    right: 12px;
    width: auto;
    max-height: 42vh;
    padding: 14px 14px 12px;
    border-radius: 14px;
  }
}
/* geek-pdp-lb-2026 */
body.pdp-lb-open {
  overflow: hidden;
}
.pdp-lb {
  position: fixed;
  inset: 0;
  z-index: 8200;
  font-family: var(--font-sans);
}
.pdp-lb[hidden] {
  display: none !important;
}
.pdp-lb__backdrop {
  position: absolute;
  inset: 0;
  background: #fff;
}
.pdp-lb__stage {
  position: absolute;
  inset: 72px 72px 108px;
  overflow: hidden;
  touch-action: none;
  cursor: grab;
}
.pdp-lb__stage.is-dragging {
  cursor: grabbing;
}
.pdp-lb__track {
  display: flex;
  height: 100%;
  width: 300%;
  will-change: transform;
}
.pdp-lb__track.is-animating {
  transition: transform .28s cubic-bezier(.22, .61, .36, 1);
}
.pdp-lb__slide {
  flex: 0 0 33.3333%;
  width: 33.3333%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.pdp-lb__img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  transform-origin: center center;
  transition: transform .12s ease-out;
  user-select: none;
  -webkit-user-drag: none;
  pointer-events: none;
}
.pdp-lb__img.is-zoomed,
.pdp-lb__img.is-dragging {
  cursor: grabbing;
  transition: none;
}
.pdp-lb__btn {
  position: absolute;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 12px;
  background: #fff;
  border: 1.5px solid var(--gray-200);
  color: var(--gray-800);
  cursor: pointer;
  transition: border-color .2s ease, color .2s ease, background .2s ease;
}
.pdp-lb__tools {
  position: absolute;
  top: 16px;
  right: 68px;
  z-index: 5;
  display: flex;
  gap: 8px;
}
.pdp-lb__tools .pdp-lb__btn {
  position: relative;
  top: auto;
  right: auto;
}
.pdp-lb__btn:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: #fff;
}
.pdp-lb__close {
  top: 16px;
  right: 16px;
}
.pdp-lb__prev {
  left: 16px;
  top: 50%;
  margin-top: -22px;
}
.pdp-lb__next {
  right: 16px;
  top: 50%;
  margin-top: -22px;
}
.pdp-lb__thumbs {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 16px;
  z-index: 5;
  display: flex;
  justify-content: center;
  gap: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 100%;
  padding: 4px 16px;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  cursor: grab;
  user-select: none;
}
.pdp-lb__thumbs.is-overflow {
  justify-content: flex-start;
}
.pdp-lb__thumbs::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
.pdp-lb__thumbs.is-dragging {
  cursor: grabbing;
}
.pdp-lb__thumb {
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  padding: 0;
  border: 2px solid var(--gray-200);
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  cursor: grab;
  appearance: none;
  -webkit-appearance: none;
}
.pdp-lb__thumb:focus,
.pdp-lb__thumb:active {
  outline: none;
  background: #fff;
}
.pdp-lb__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.pdp-lb__thumb.is-on {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-primary) 28%, transparent);
}
.pdp-lb__thumb.is-review {
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--color-primary) 25%, transparent);
}
.pdp-gal-review[hidden],
.pdp-gal-review:empty,
.pdp-lb .pdp-gal-review[hidden] {
  display: none !important;
}
.pdp-lb .pdp-gal-review {
  position: absolute;
  top: 16px;
  left: 16px;
  right: auto;
  bottom: auto;
  z-index: 6;
  width: min(340px, calc(100vw - 160px));
  max-height: calc(100vh - 160px);
  transition: opacity .18s ease, visibility .18s ease;
}
.pdp-lb.is-zoomed .pdp-gal-review {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
@media (max-width: 767px) {
  .pdp-lb__stage {
    inset: 64px 12px 96px;
  }
  .pdp-lb__prev,
  .pdp-lb__next {
    top: auto;
    bottom: 84px;
    margin-top: 0;
  }
  .pdp-lb__prev { left: 12px; }
  .pdp-lb__next { right: 12px; }
  .pdp-lb .pdp-gal-review {
    top: 64px;
    left: 12px;
    width: calc(100vw - 24px);
    max-height: none;
    overflow: hidden;
  }
  .pdp-lb .pdp-gal-review.is-long {
    cursor: pointer;
  }
  .pdp-lb .pdp-gal-review:not(.is-open) .pdp-gal-review__body {
    position: relative;
    max-height: calc(14px * 1.45 * 3);
    overflow: hidden;
  }
  .pdp-lb .pdp-gal-review:not(.is-open).is-long .pdp-gal-review__body::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1.55em;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, #fff 78%);
    pointer-events: none;
  }
  .pdp-lb .pdp-gal-review.is-open {
    max-height: calc(100vh - 180px);
    overflow: auto;
  }
  .pdp-lb__tools {
    right: 60px;
    top: 12px;
  }
  .pdp-lb__close {
    top: 12px;
    right: 12px;
  }
}

/* geek-pdp-buy-island-2026 */
.pdp-buy-island {
  display: none;
}
@media (min-width: 992px) {
  .pdp-buy-island {
    position: fixed;
    right: 112px;
    bottom: 80px;
    z-index: 1400;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 10px 10px 10px 18px;
    max-width: 420px;
    background: #fff;
    border: 1.5px solid var(--gray-200);
    border-radius: 16px;
    box-shadow: 0 16px 40px rgba(17, 24, 39, .16);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(16px);
    transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
  }
  body.product-product.has-pdp-stick .pdp-buy-island {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }
  .pdp-buy-island__price {
    font-family: var(--font-sans);
    font-size: var(--text-lg);
    font-weight: var(--fw-bold);
    line-height: 1;
    color: var(--color-primary);
    white-space: nowrap;
  }
  .pdp-buy-island .add-to-cart-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    min-width: 140px;
    margin: 0 0 0 auto;
    padding: 0 18px;
    border-radius: 12px;
    background: var(--color-primary);
    color: #fff;
    font-weight: var(--fw-bold);
    box-shadow: 0 8px 20px color-mix(in srgb, var(--color-primary) 22%, transparent);
  }
  body.pdp-lb-open .pdp-buy-island {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}
/* HIDE INSTALLMENT 2026-09-22 */
.price-calc-install,
a.price-calc-install,
[data-price-calc-install],
#payment-liqpay,
.co-pay-item[data-payment="liqpay"] {
	display: none !important;
}

/* HIDE INSTALLMENT PRODUCT UI 2026-09-22 */
.product-buy-install,
[data-pd-install-line],
.pd-install,
.pd-drawer-sec--install,
[data-pd-install-grid],
.price-calc-install {
	display: none !important;
}

#product-groups .tabs_list {
	overflow-x: auto;
	scrollbar-width: none;
	cursor: grab;
	padding-right: 110px;
	-webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 140px), transparent calc(100% - 96px));
	mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 140px), transparent calc(100% - 96px));
}
#product-groups .tabs_list.is-dragging {
	cursor: grabbing;
	user-select: none;
}
#product-groups .tabs_list::-webkit-scrollbar {
	display: none;
	height: 0;
}
#product-groups .swiper-button-box.swiper-btn-abs {
	z-index: 2;
	background: #fff;
}
@media only screen and (max-width: 1200px) {
	#product-groups .tabs_list {
		padding-right: 24px;
		-webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent 100%);
		mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent 100%);
	}
}


/* out of stock photo stamp — click passes through to gallery / product link */
.main_item_lg.stock-ended-card .main_item_lg_img {
    opacity: 1;
}
.stock-ended {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    background: rgba(255, 255, 255, 0.62);
}
.stock-ended__label {
    display: block;
    max-width: 88%;
    padding: 0 8px;
    color: #E10600;
    font-weight: var(--fw-bold);
    font-size: var(--text-xl);
    line-height: 1.15;
    text-align: center;
    
    
    transform: rotate(-18deg);
    text-shadow: 0 0 10px #fff, 0 1px 0 #fff;
}
.stock-ended-card .item_info_list {
    z-index: 4;
}
.item_gal .swiper_gal_sum,
.item_gal .pdp-thumb-review {
    z-index: 3;
}
@media (max-width: 575px) {
    .stock-ended__label {
        font-size: var(--text-md);
    }
}
@media (min-width: 1200px) {
    .pdp-thumbs .stock-ended {
        display: none;
    }
}
body.product-product .pdp-photo .item_img .stock-ended {
    border-radius: 12px;
}
body.product-product .pdp-photo .stock-ended__label {
    font-size: var(--text-2xl);
}
body.product-product .item_img .item_img_btn {
    z-index: 3;
}
.search-hit {
  background: #20cfef;
  color: var(--gray-800);
  border-radius: 2px;
  padding: 0 2px;
}

.search-hit-note {
  display: block;
  margin-top: 4px;
  font-size: var(--text-xs);
  line-height: 16px;
  font-weight: var(--fw-bold);
  color: var(--gray-600);
}

/* Category type chips (L3 labels / clarification) */
.cat-type-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 4px; }
.cat-type-chip {
  display: inline-block; background: var(--gray-100); color: var(--color-primary);
  border-radius: 6px; padding: 2px 8px; font-size: var(--text-xs); font-weight: var(--fw-bold);
  line-height: 1.3; pointer-events: none;
}
.cat-type-note {
  display: inline-block; margin-top: 4px; background: var(--gray-100); color: #D95430;
  border-radius: 6px; padding: 2px 8px; font-size: var(--text-xs); font-weight: var(--fw-bold);
  line-height: 1.3; pointer-events: none;
}
.cat-type-chips--page { margin: 8px 0 12px; }
.cat-type-note--page { margin: 8px 0 12px; font-size: var(--text-sm); }
.menu_mega .mega-l3-link,
.cat-mega .mega-l3-link {
  display: flex; flex-direction: column; align-items: flex-start; gap: 2px;
}
.menu_mega .mega-l3-main,
.cat-mega .mega-l3-main {
  display: flex; align-items: baseline; gap: 6px; width: 100%;
}
.search-cat-link { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; }
.search-cat-main { display: flex; align-items: baseline; gap: 6px; }
.cat-type-chips--l2, .cat-type-note--l2 { margin-top: 2px; margin-left: 0; }
.menu_mega .mega-l2-name { display: inline; }

/* L2: name+count on first row, chips under */
.menu_mega .mega-l2-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  min-width: 0;
  flex: 1;
}
.menu_mega .mega-l2-main {
  display: flex;
  align-items: baseline;
  gap: 8px;
  width: 100%;
}
.menu_mega .cat-type-chips--l2,
.menu_mega .cat-type-note--l2 {
  margin-top: 2px;
}

/* L3 qty right edge (after labels) */
.menu_mega .mega-l3-link,
.cat-mega .mega-l3-link {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2px;
  width: 100%;
  box-sizing: border-box;
}
.menu_mega .mega-l3-main,
.cat-mega .mega-l3-main {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  box-sizing: border-box;
}
.menu_mega .mega-l3-name,
.cat-mega .mega-l3-name {
  min-width: 0;
  flex: 1 1 auto;
}
.menu_mega .mega-l3-qty,
.cat-mega .mega-l3-qty {
  margin-left: auto;
  flex: 0 0 auto;
}

/* L3 sep + mint chips */
.cat-mega .mega-l3-item + .mega-l3-item,
.menu_mega .mega-l3-item + .mega-l3-item {
  border-top: 1px solid var(--gray-100);
}
.cat-mega .mega-l3-item a,
.menu_mega .mega-l3-item a {
  padding-top: 8px;
  padding-bottom: 8px;
}
.menu_mega .mega-l3-link,
.cat-mega .mega-l3-link {
  gap: 1px;
}
.cat-type-chips {
  margin-top: 1px;
}
.cat-type-chip {
  background: var(--gray-100);
  color: #1A7A3A;
}

/* L2 count beside name */
.cat-mega .mega-l2-card .mega-l2-text,
.menu_mega .mega-l2-text {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1px;
  min-width: 0;
  flex: 1;
}
.cat-mega .mega-l2-card .mega-l2-main,
.menu_mega .mega-l2-main {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
}
.cat-mega .mega-l2-card .mega-l2-name,
.menu_mega .mega-l2-main .mega-l2-name {
  min-width: 0;
  flex: 0 1 auto;
}
.cat-mega .mega-l2-card .mega-l2-count,
.menu_mega .mega-l2-main .mega-l2-count {
  margin-left: 0;
  flex: 0 0 auto;
}
.cat-mega .cat-type-chips--card,
.cat-mega .cat-type-note--card {
  margin-top: 1px;
}

/* Gray clarification + mint product types */
.cat-type-chip {
  display: inline-block;
  background: var(--gray-100);
  color: #1A7A3A;
  border-radius: 6px;
  padding: 2px 8px;
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  pointer-events: none;
}
.cat-type-note {
  display: inline-block;
  background: var(--gray-100);
  color: var(--gray-600);
  border-radius: 6px;
  padding: 2px 8px;
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  pointer-events: none;
}
.cat-type-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 1px;
}
.cat-type-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 1px; }
.cat-type-notes--page { margin: 8px 0 6px; }
.cat-type-chips--page { margin: 6px 0 12px; }
.cat-type-note--page { margin: 8px 0 6px; font-size: var(--text-sm); }

/* L3 title→chips gap soft */
.menu_mega .mega-l3-item a.mega-l3-link,
.cat-mega .mega-l3-item a.mega-l3-link {
  gap: 4px;
}
.menu_mega .mega-l3-item a.mega-l3-link .cat-type-chips,
.cat-mega .mega-l3-item a.mega-l3-link .cat-type-chips,
.menu_mega .mega-l3-item a.mega-l3-link .cat-type-notes,
.cat-mega .mega-l3-item a.mega-l3-link .cat-type-notes,
.menu_mega .mega-l3-item a.mega-l3-link > .cat-type-note,
.cat-mega .mega-l3-item a.mega-l3-link > .cat-type-note {
  margin-top: 0;
}
.menu_mega .mega-l3-main,
.cat-mega .mega-l3-main,
.menu_mega .mega-l3-name,
.cat-mega .mega-l3-name {
  line-height: 1.2;
}

/* notes beside title */
.menu_mega .mega-l3-main,
.cat-mega .mega-l3-main {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-start;
  gap: 6px 8px;
  width: 100%;
  box-sizing: border-box;
}
.menu_mega .mega-l3-name,
.cat-mega .mega-l3-name {
  flex: 0 1 auto;
  min-width: 0;
}
.menu_mega .mega-l3-main > .cat-type-notes,
.cat-mega .mega-l3-main > .cat-type-notes,
.menu_mega .mega-l3-main > .cat-type-note,
.cat-mega .mega-l3-main > .cat-type-note {
  flex: 0 1 auto;
  margin-top: 0;
}
.menu_mega .mega-l3-qty,
.cat-mega .mega-l3-qty {
  margin-left: auto;
  flex: 0 0 auto;
}
.cat-mega .mega-l2-main,
.menu_mega .mega-l2-main {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-start;
  gap: 6px 8px;
  width: 100%;
}
.cat-mega .mega-l2-main > .cat-type-notes,
.menu_mega .mega-l2-main > .cat-type-notes,
.cat-mega .mega-l2-main > .cat-type-note,
.menu_mega .mega-l2-main > .cat-type-note {
  flex: 0 1 auto;
  margin-top: 0;
}
.cat-mega .mega-l2-main .mega-l2-count,
.menu_mega .mega-l2-main .mega-l2-count {
  margin-left: auto;
  flex: 0 0 auto;
}

/* notes under title */
.menu_mega .mega-l3-main,
.cat-mega .mega-l3-main {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  box-sizing: border-box;
}
.menu_mega .mega-l3-name,
.cat-mega .mega-l3-name {
  flex: 1 1 auto;
  min-width: 0;
}
.menu_mega .mega-l3-qty,
.cat-mega .mega-l3-qty {
  margin-left: 0;
  flex: 0 0 auto;
}
.menu_mega .mega-l3-item a.mega-l3-link > .cat-type-notes,
.cat-mega .mega-l3-item a.mega-l3-link > .cat-type-notes,
.menu_mega .mega-l3-item a.mega-l3-link > .cat-type-note,
.cat-mega .mega-l3-item a.mega-l3-link > .cat-type-note {
  margin-top: 0;
}
.cat-mega .mega-l2-main,
.menu_mega .mega-l2-main {
  display: flex;
  align-items: baseline;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
}
.cat-mega .mega-l2-main .mega-l2-count,
.menu_mega .mega-l2-main .mega-l2-count {
  margin-left: auto;
  flex: 0 0 auto;
}
.cat-mega .mega-l2-card .cat-type-notes,
.cat-mega .mega-l2-card > .mega-l2-text > .cat-type-note,
.cat-mega .mega-l2-card .cat-type-note--card {
  margin-top: 0;
}

/* qty always right */
.menu_mega .mega-l3-main,
.cat-mega .mega-l3-main {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  box-sizing: border-box;
}
.menu_mega .mega-l3-name,
.cat-mega .mega-l3-name {
  flex: 1 1 auto;
  min-width: 0;
}
.menu_mega .mega-l3-qty,
.cat-mega .mega-l3-qty {
  flex: 0 0 auto;
  white-space: nowrap;
  margin-left: auto;
  align-self: flex-start;
}
.cat-mega .mega-l2-main,
.menu_mega .mega-l2-main {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
}
.cat-mega .mega-l2-name,
.menu_mega .mega-l2-name {
  flex: 1 1 auto;
  min-width: 0;
}
.cat-mega .mega-l2-main .mega-l2-count,
.menu_mega .mega-l2-main .mega-l2-count {
  flex: 0 0 auto;
  white-space: nowrap;
  margin-left: auto;
  align-self: flex-start;
}

/* filter-choice-rows */
#ocfilter.filter_box {
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: 16px 14px 8px;
}
#ocfilter .filter_box_list {
  padding-left: 0;
  padding-right: 0;
}
#ocfilter .filter_box_title_btn {
  margin-bottom: 12px;
  padding: 0 18px 0 0;
  color: var(--gray-800);
  font-size: var(--text-md);
  line-height: 22px;
  font-weight: var(--fw-bold);
}
#ocfilter .filter_box_title_btn:hover {
  color: var(--color-primary);
}
#ocfilter .filter_box_title_btn:before {
  left: auto;
  right: 2px;
  top: 50%;
  width: 7px;
  height: 7px;
  margin-top: -6px;
  background: none;
  border-right: 2px solid var(--gray-400);
  border-bottom: 2px solid var(--gray-400);
  transform: rotate(45deg);
}
#ocfilter .filter_box_title_btn.active:before {
  margin-top: -2px;
  transform: rotate(225deg);
}
#ocfilter .filter_box_title_btn:hover:before {
  background-image: none;
  border-color: var(--color-primary);
}
#ocfilter .filter_cont_offset {
  margin-bottom: 16px;
}
#ocfilter .search_box_sm {
  margin: 0 0 14px 0 !important;
}
#ocfilter .search_box_sm input:not([type=checkbox]):not([type=radio]) {
  padding: 11px 12px 11px 38px;
  border-radius: 10px;
  background: var(--gray-50) !important;
  border: 1px solid var(--gray-200);
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
}
#ocfilter .search_box_sm .btn_search {
  background-color: transparent;
}
#ocfilter .range_group {
  justify-content: space-between;
  margin-bottom: 14px;
}
#ocfilter .range_in {
  width: auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 10px;
  border-radius: 10px;
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
}
#ocfilter .range_in input {
  width: 6.2ch;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  color: var(--gray-800);
  font-size: var(--text-md);
  line-height: 20px;
  font-weight: var(--fw-bold);
}
#ocfilter .range_group:before {
  background: var(--gray-200);
}
#ocfilter .noUi-handle {
  background-color: var(--color-primary);
}
#ocfilter .noUi-connect {
  background-color: var(--color-primary);
}
#ocfilter .scale,
#ocfilter .noUi-origin {
  background-color: var(--gray-200);
}
#ocfilter .checkbox_ok_list {
  font-size: var(--text-md);
  line-height: 18px;
}
#ocfilter .checkbox_ok_list li:not(:last-child) {
  margin-bottom: 10px;
}
#ocfilter .checkbox_ok + label {
  padding: 1px 0 1px 28px;
  color: var(--gray-800);
  font-size: var(--text-md);
  line-height: 18px;
  font-weight: var(--fw-bold);
}
#ocfilter .checkbox_ok + label span {
  color: var(--gray-400);
  font-weight: var(--fw-bold);
  font-size: var(--text-sm);
}
#ocfilter .checkbox_ok + label:after {
  top: 0;
  width: 18px;
  height: 18px;
  border-radius: 6px;
  background: #fff;
  border: 1px solid var(--gray-200);
  box-sizing: border-box;
}
#ocfilter .checkbox_ok + label:before {
  top: 0;
  width: 18px;
  height: 18px;
  background-size: 10px 8px;
}
#ocfilter .checkbox_ok:checked + label {
  color: var(--color-primary);
}
#ocfilter .checkbox_ok:checked + label:after {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.selected-options .filter_box_title_btn {
  margin-bottom: 12px;
}
.selected-options .filter_cont_offset {
  margin-bottom: 8px;
}
.selected-options .filter_btn_select_box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}
.selected-options .filter_btn_select_box > * {
  margin: 0;
}
.selected-options .filter-choice-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  max-width: 100%;
}
.selected-options .filter-choice-name {
  flex: 0 1 auto;
  max-width: 100%;
  margin-right: 2px;
  color: var(--gray-800);
  font-size: var(--text-md);
  line-height: 20px;
  font-weight: var(--fw-bold);
}
.selected-options .filter_btn_select {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 5px 10px 5px 26px;
  background: var(--color-primary);
  color: #fff;
  border: 1px solid var(--color-primary);
  border-radius: 999px;
  font-size: var(--text-sm);
  line-height: 18px;
  font-weight: var(--fw-bold);
}
.selected-options .filter_btn_select_close path {
  fill: #fff;
}
.selected-options .filter_btn_select:hover {
  background: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}

/* filter-sort-card */
.filter-sort-card {
  margin: 0 0 12px;
  padding: 14px 14px 12px;
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: 12px;
}
.filter-sort-label {
  margin: 0 0 8px;
  color: var(--gray-600);
  font-size: var(--text-sm);
  line-height: 16px;
  font-weight: var(--fw-bold);
  
  
}
.filter-sort-card .pseudo-select .select {
  border: 1px solid var(--gray-200);
  border-radius: 10px;
  background: var(--gray-50);
  padding: 12px 32px 12px 14px;
  color: var(--gray-800);
  font-weight: var(--fw-bold);
}
.filter-sort-card .pseudo-select:before {
  top: 20px;
  right: 14px;
  border-top-color: var(--gray-800);
}
.filter-sort-card .pseudo-select .options {
  border: 1px solid var(--gray-200);
  border-radius: 10px;
  overflow: hidden;
}
.selected-options .filter-choice-reset {
  position: static;
  display: inline-flex;
  align-items: center;
  margin: 2px 0 0;
  padding: 0;
  background: none;
  color: var(--gray-600);
  font-size: var(--text-sm);
  line-height: 18px;
  font-weight: var(--fw-bold);
  letter-spacing: 0;
  text-transform: none;
}
.selected-options .filter-choice-reset:hover {
  background: none;
  color: var(--color-primary);
}
#ocfilter .selected-options .filter_box_title_btn {
  color: var(--gray-800);
}

/* filter-sort-mobile */
@media (max-width: 1199px) {
  #ocfilter .filter-sort-card {
    margin: 0 0 16px;
    padding: 0 0 14px;
    background: transparent;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid var(--gray-200);
  }
}
/* filter-sort-close */
.fancybox-wrap:has(#ocfilter) .fancybox-close {
  right: 12px;
  width: 40px;
}
.fancybox-wrap:has(#ocfilter) .filter-sort-card .pseudo-select {
  width: calc(100% - 48px);
  margin-right: 0;
}
/* filter-sheet-2026 */
@media (max-width: 1199px) {
  body:has(.filter-sheet-toggle) {
    padding-bottom: 60px;
  }
  .filter-sheet-toggle.filter_btn {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10050;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: none;
    min-height: 52px;
    margin: 0;
    padding: 0 16px calc(4px + env(safe-area-inset-bottom));
    transform: none;
    border: none;
    border-radius: 16px 16px 0 0;
    background: var(--color-primary);
    color: #fff;
    box-shadow: 0 -8px 24px rgba(17, 24, 39, .16);
    font-family: var(--font-sans);
    font-size: var(--text-md);
    line-height: 20px;
    font-weight: var(--fw-bold);
    letter-spacing: 0;
    text-transform: none;
  }
  .filter-sheet-face {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }
  .filter-sheet-face-close {
    display: none;
  }
  .filter-sheet-toggle .icon_filter {
    display: inline-flex;
    width: 28px;
    height: 24px;
    margin: 0;
    flex: 0 0 28px;
  }
  .filter-sheet-toggle .icon_filter svg {
    display: block;
    width: 28px;
    height: 24px;
  }
  .filter-sheet-toggle .icon_filter path,
  .filter-sheet-toggle:hover .icon_filter path,
  .filter-sheet-toggle:focus .icon_filter path,
  .filter-sheet-toggle:active .icon_filter path,
  body.filter-sheet-open .filter-sheet-toggle .icon_filter path {
    fill: #fff;
  }
  body.filter-sheet-open .filter-sheet-toggle.filter_btn {
    background: var(--color-sale);
    box-shadow: 0 -8px 24px rgba(252, 58, 58, .22);
  }
  body.filter-sheet-open .filter-sheet-face-open {
    display: none;
  }
  body.filter-sheet-open .filter-sheet-face-close {
    display: inline-flex;
  }
  .filter-sheet-backdrop {
    display: none;
  }
  body.filter-sheet-open .filter-sheet-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 10030;
    background: rgba(17, 24, 39, .45);
  }
  body.filter-sheet-open .filter_box_wr.hide_1199 {
    display: block;
    position: fixed;
    z-index: 10040;
    left: 0;
    right: 0;
    bottom: 48px;
    top: auto;
    max-height: calc(100% - 84px);
    overflow: auto;
    margin: 0;
    padding: 8px 0 12px;
    background: #fff;
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -12px 40px rgba(17, 24, 39, .16);
  }
  body.filter-sheet-open #ocfilter.filter_box {
    border: none;
    border-radius: 0;
    box-shadow: none;
    background: #fff;
  }
}
/* filter-dock */
@media (max-width: 1199px) {
  .filter-sort-card {
    display: none;
  }
  body:has(.filter-dock) .filter-sheet-toggle.filter_btn {
    display: none;
  }
  .filter-dock {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10050;
    display: flex;
    min-height: 48px;
    margin: 0;
    padding: 0;
    align-items: stretch;
    background: var(--color-primary);
    border-radius: 16px 16px 0 0;
    box-shadow: 0 -8px 24px rgba(17, 24, 39, .16);
    font-family: var(--font-sans);
  }
  .filter-dock-btn {
    flex: 1 1 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    align-self: stretch;
    min-height: 48px;
    margin: 0;
    padding: 0 10px;
    border: 0;
    background: transparent;
    color: #fff;
    font: inherit;
    font-size: var(--text-md);
    line-height: 20px;
    font-weight: var(--fw-bold);
  }
  .filter-dock-sort {
    box-shadow: inset 1px 0 0 rgba(255, 255, 255, .28);
  }
  .filter-dock-open,
  .filter-dock-shut {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 0;
    max-width: 100%;
  }
  .filter-dock-shut {
    display: none;
  }
  .filter-dock-open svg,
  .filter-dock-shut svg {
    flex: 0 0 auto;
    width: 22px;
    height: 20px;
  }
  .filter-dock-sort-now {
    font-style: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  body.filter-sheet-open .filter-dock-filters,
  body.filter-sort-open .filter-dock-sort {
    background: var(--color-sale);
  }
  body.filter-sheet-open .filter-dock-filters .filter-dock-open,
  body.filter-sort-open .filter-dock-sort .filter-dock-open {
    display: none;
  }
  body.filter-sheet-open .filter-dock-filters .filter-dock-shut,
  body.filter-sort-open .filter-dock-sort .filter-dock-shut {
    display: inline-flex;
  }
  body.filter-sort-open .filter-sheet-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 10030;
    background: rgba(17, 24, 39, .45);
  }
  .filter-sort-sheet {
    display: none;
  }
  body.filter-sort-open .filter-sort-sheet {
    display: block;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 48px;
    z-index: 10040;
    max-height: 70%;
    overflow: auto;
    background: #fff;
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -12px 40px rgba(17, 24, 39, .16);
    padding: 8px 0;
  }
  .filter-sort-choice {
    display: block;
    width: 100%;
    margin: 0;
    padding: 14px 18px;
    border: 0;
    background: #fff;
    color: var(--gray-800);
    text-align: left;
    font-family: var(--font-sans);
    font-size: var(--text-md);
    line-height: 22px;
    font-weight: var(--fw-bold);
  }
  .filter-sort-choice.is-on {
    color: var(--color-primary);
    background: color-mix(in srgb, var(--color-primary) 8%, transparent);
  }
}
/* filter-sheet-rows */
@media (max-width: 1199px) {
  body.filter-sheet-open #ocfilter .filter_box_list {
    padding-left: 16px;
    padding-right: 8px;
  }
  body.filter-sheet-open #ocfilter .filter_box_list > li {
    margin: 0;
    border-bottom: 1px solid var(--gray-200);
  }
  body.filter-sheet-open #ocfilter .filter_box_title_btn {
    margin-bottom: 0;
    padding: 14px 28px 14px 2px;
    font-size: var(--text-lg);
    line-height: 24px;
  }
  body.filter-sheet-open #ocfilter .filter_cont_offset {
    margin-bottom: 12px;
  }
}
/* filter-sheet-align */
@media (max-width: 1199px) {
  body.filter-sheet-open #ocfilter.filter_box {
    padding-left: 0;
    padding-right: 0;
  }
  body.filter-sheet-open #ocfilter .filter_box_list {
    padding-left: 16px;
    padding-right: 16px;
  }
  body.filter-sheet-open #ocfilter .filter_box_title_btn {
    padding-left: 0;
    padding-right: 22px;
  }
  body.filter-sheet-open #ocfilter .filter_box_title_btn:before {
    right: 0;
  }
  body.filter-sheet-open #ocfilter .ocfilter-option {
    position: relative;
  }
  body.filter-sheet-open #ocfilter .ocfilter-option > .ocf_helper .ocf_helper_btn {
    top: 17px;
    right: 26px;
    width: 18px;
    height: 18px;
  }
  body.filter-sheet-open #ocfilter .ocfilter-option:has(> .ocf_helper) .filter_box_title_btn {
    padding-right: 50px;
  }
  body.filter-sheet-open #ocfilter .range_in {
    padding: 0;
    border: 0;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
  }
  body.filter-sheet-open #ocfilter .range_in input {
    width: auto;
    min-width: 1.5ch;
    field-sizing: content;
    font-size: var(--text-md);
    line-height: 22px;
    font-weight: var(--fw-bold);
  }
  body.filter-sheet-open #ocfilter .range_group {
    margin-bottom: 8px;
  }
}
/* filter-slider-touch */
@media (max-width: 1199px) {
  body.filter-sheet-open #ocfilter .range_group {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 6px;
    justify-content: center;
    gap: 12px;
  }
  body.filter-sheet-open #ocfilter .range_group:before {
    display: none;
  }
  body.filter-sheet-open #ocfilter .range_to:before {
    content: "";
    width: 14px;
    height: 1px;
    margin-right: 12px;
    background: var(--gray-400);
    align-self: center;
    flex: 0 0 14px;
  }
  body.filter-sheet-open #ocfilter .range_in {
    gap: 6px;
  }
  body.filter-sheet-open #ocfilter .range_in input {
    min-width: 44px;
    min-height: 44px;
    padding: 8px 6px;
    text-align: center;
    font-size: var(--text-md);
    font-weight: var(--fw-bold);
    border-radius: 8px;
  }
  body.filter-sheet-open #ocfilter .range_in input:focus {
    background: var(--gray-100);
    outline: none;
  }
  body.filter-sheet-open #ocfilter .range_box,
  body.filter-sheet-open #ocfilter .range_item {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}
/* filter-slider-fromto */
@media (max-width: 1199px) {
  body.filter-sheet-open #ocfilter .range_group {
    width: 100%;
    display: flex;
    align-items: stretch;
    gap: 0;
    margin: 0 0 16px;
    background: #fff;
    border: 1px solid var(--gray-200);
    border-radius: 10px;
    overflow: hidden;
  }
  body.filter-sheet-open #ocfilter .range_group:before {
    display: none;
  }
  body.filter-sheet-open #ocfilter .range_in {
    flex: 1 1 50%;
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 48px;
    margin: 0;
    padding: 0 12px;
    border: 0;
    background: transparent;
    font-size: 0;
  }
  body.filter-sheet-open #ocfilter .range_to {
    border-left: 1px solid var(--gray-200);
  }
  body.filter-sheet-open #ocfilter .range_group:not(.once) .range_from:before,
  body.filter-sheet-open #ocfilter .range_group:not(.once) .range_to:before {
    content: "от";
    width: auto;
    height: auto;
    margin: 0;
    flex: 0 0 auto;
    background: none;
    color: var(--gray-400);
    font-size: var(--text-sm);
    line-height: 18px;
    font-weight: var(--fw-bold);
  }
  body.filter-sheet-open #ocfilter .range_group:not(.once) .range_to:before {
    content: "до";
  }
  body.filter-sheet-open #ocfilter .range_in input {
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--gray-800);
    text-align: left;
    font-size: var(--text-md);
    line-height: 22px;
    font-weight: var(--fw-bold);
  }
  body.filter-sheet-open #ocfilter .range_in input:focus {
    background: transparent;
    outline: none;
  }
  body.filter-sheet-open #ocfilter .range_box,
  body.filter-sheet-open #ocfilter .range_item {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}
/* filter-range-unit */
@media (max-width: 1199px) {
  body.filter-sheet-open #ocfilter .range_in {
    justify-content: space-between;
    gap: 8px;
  }
  body.filter-sheet-open #ocfilter .range_in input {
    flex: 1 1 auto;
    width: auto;
    text-align: center;
    font-weight: var(--fw-bold);
  }
  body.filter-sheet-open #ocfilter .range-unit {
    color: var(--gray-400);
    font-size: var(--text-sm);
    line-height: 18px;
    font-weight: var(--fw-bold);
  }
}
/* filter-desktop-match */
@media (min-width: 1200px) {
  .filter-dock,
  .filter-sort-sheet {
    display: none;
  }
  #ocfilter .filter_box_list > li {
    margin: 0;
    border-bottom: 1px solid var(--gray-200);
  }
  #ocfilter .filter_box_title_btn {
    margin-bottom: 0;
    padding: 14px 28px 14px 0;
    font-size: var(--text-md);
    line-height: 22px;
  }
  #ocfilter .filter_box_title_btn:before {
    right: 0;
  }
  #ocfilter .filter_cont_offset {
    margin-bottom: 14px;
  }
  #ocfilter .ocfilter-option {
    position: relative;
  }
  #ocfilter .ocfilter-option > .ocf_helper .ocf_helper_btn {
    top: 16px;
    right: 26px;
    width: 18px;
    height: 18px;
  }
  #ocfilter .ocfilter-option:has(> .ocf_helper) .filter_box_title_btn {
    padding-right: 52px;
  }
  #ocfilter .range_group {
    width: 100%;
    display: flex;
    align-items: stretch;
    gap: 0;
    margin: 0 0 14px;
    background: #fff;
    border: 1px solid var(--gray-200);
    border-radius: 10px;
    overflow: hidden;
  }
  #ocfilter .range_group:before {
    display: none;
  }
  #ocfilter .range_in {
    flex: 1 1 50%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: auto;
    min-height: 44px;
    margin: 0;
    padding: 0 12px;
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: 0;
  }
  #ocfilter .range_to {
    border-left: 1px solid var(--gray-200);
  }
  #ocfilter .range_group:not(.once) .range_from:before,
  #ocfilter .range_group:not(.once) .range_to:before {
    content: "от";
    width: auto;
    height: auto;
    margin: 0;
    flex: 0 0 auto;
    background: none;
    color: var(--gray-400);
    font-size: var(--text-sm);
    line-height: 18px;
    font-weight: var(--fw-bold);
  }
  #ocfilter .range_group:not(.once) .range_to:before {
    content: "до";
  }
  #ocfilter .range_in input {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    min-height: 40px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--gray-800);
    text-align: center;
    font-size: var(--text-md);
    line-height: 22px;
    font-weight: var(--fw-bold);
  }
  #ocfilter .range-unit {
    color: var(--gray-400);
    font-size: var(--text-sm);
    line-height: 18px;
    font-weight: var(--fw-bold);
  }
  #ocfilter .range_box,
  #ocfilter .range_item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  #ocfilter .scale {
    width: calc(100% - 32px);
    margin-left: 16px;
    margin-right: 16px;
  }
}
/* filter-slider-halves */
#ocfilter .range_in {
  flex: 1 1 0%;
  min-width: 0;
  max-width: 50%;
  box-sizing: border-box;
}
#ocfilter .range_group.once .range_in {
  max-width: 100%;
}
#ocfilter .range_in input {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  flex: 1 1 auto;
}
/* filter-slider-handles */
@media (max-width: 1199px) {
  body.filter-sheet-open #ocfilter .scale {
    width: calc(100% - 32px);
    margin-left: 16px;
    margin-right: 16px;
  }
}
/* filter-slider-sym */
#ocfilter .noUi-horizontal .noUi-handle {
  left: -9px;
  width: 18px;
  height: 18px;
}
/* filter-search-gap */
#ocfilter .filter_box_list > li > .search_box_sm {
  margin-top: 14px !important;
}
/* filter-last-line */
#ocfilter .filter_box_list > li:last-child,
body.filter-sheet-open #ocfilter .filter_box_list > li:last-child {
  border-bottom: none;
}
/* filter-choice-colors */
.filter-sort-label {
  color: var(--color-accent);
}
#ocfilter .selected-options .filter_box_title_btn,
#ocfilter .selected-options .filter_box_title_btn:hover {
  color: var(--color-accent);
}
#ocfilter .selected-options .filter-choice-reset,
.config-close {
  display: inline-flex;
  align-items: center;
  margin-top: 10px;
  padding: 8px 14px;
  background: var(--color-sale);
  color: #fff;
  border-radius: 10px;
  font-size: var(--text-sm);
  line-height: 18px;
  font-weight: var(--fw-bold);
  letter-spacing: 0;
  text-transform: none;
}
#ocfilter .selected-options .filter-choice-reset:hover,
.config-close:hover {
  background: #e02f2f;
  color: #fff;
}
.header_mod .header_box_in {
  justify-content: flex-end;
}
.config-close {
  margin-top: 0;
  gap: 8px;
  text-decoration: none;
}
.config-close i {
  display: inline-flex;
  line-height: 0;
}

/* filter-empty-title */
#ocfilter .filter_box_list > li.filter-empty-title,
body.filter-sheet-open #ocfilter .filter_box_list > li.filter-empty-title {
  border-bottom: none;
}
#ocfilter .filter-empty-title {
  margin: 0;
  padding: 2px 0 12px;
  color: var(--color-accent);
  font-size: var(--text-md);
  line-height: 22px;
  font-weight: var(--fw-bold);
  list-style: none;
}
#ocfilter .filter_box_list:has(.selected-options:not(.hidden)) > .filter-empty-title {
  display: none;
}
@media (max-width: 1199px) {
  body.filter-sheet-open #ocfilter .filter-empty-title {
    padding: 4px 0 12px;
    font-size: var(--text-lg);
    line-height: 24px;
  }
}

/* filter-sort-label-match */
.filter-sort-label {
  font-size: var(--text-md);
  line-height: 22px;
  font-weight: var(--fw-bold);
  letter-spacing: 0;
}
/* filter-headings-match-sort */
#ocfilter .filter-empty-title,
body.filter-sheet-open #ocfilter .filter-empty-title,
#ocfilter .selected-options .filter_box_title_btn,
#ocfilter .selected-options .filter_box_title_btn:hover {
  color: var(--color-accent);
  font-size: var(--text-md);
  line-height: 22px;
  font-weight: var(--fw-bold);
  letter-spacing: 0;
  
}
/* config-filter-dock */
@media (max-width: 1199px) {
  body:has(.filter-dock) .title_wr > .pseudo_size {
    display: none;
  }
}

.header_mod:empty {
  display: none;
}
.config-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.config-title-row > * {
  margin-top: 0;
  margin-bottom: 0;
}
.config-title-row > div:first-child {
  flex: 1 1 auto;
  min-width: 0;
}
.config-title-row h1,
.config-title-row h2 {
  margin-bottom: 0;
}
.config-title-row .config-close {
  flex-shrink: 0;
}

.config-display {
  margin: 0 0 12px;
  padding: 14px 14px 4px;
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: 12px;
}
.config-display .filter-sort-label {
  margin: 0 0 8px;
  color: var(--color-accent);
  font-size: var(--text-md);
  line-height: 22px;
  font-weight: var(--fw-bold);
  letter-spacing: 0;
  
}
.config-display .filter_box_list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.config-display .ocfilter-option {
  position: relative;
  list-style: none;
  margin: 0;
  border-bottom: 1px solid var(--gray-200);
}
.config-display .ocfilter-option:last-child {
  border-bottom: none;
}
.config-display .filter_box_title_btn {
  margin-bottom: 0;
  padding: 14px 28px 14px 0;
  color: var(--gray-800);
  font-size: var(--text-md);
  line-height: 22px;
  font-weight: var(--fw-bold);
}
.config-display .filter_box_title_btn:hover {
  color: var(--color-primary);
}
.config-display .filter_box_title_btn:before {
  left: auto;
  right: 0;
  top: 50%;
  width: 7px;
  height: 7px;
  margin-top: -6px;
  background: none;
  border-right: 2px solid var(--gray-400);
  border-bottom: 2px solid var(--gray-400);
  transform: rotate(45deg);
}
.config-display .filter_box_title_btn.active:before {
  margin-top: -2px;
  transform: rotate(225deg);
}
.config-display .filter_cont_offset {
  margin-bottom: 14px;
}
.config-display .ocfilter-option > .ocf_helper .ocf_helper_btn {
  top: 16px;
  right: 26px;
  width: 18px;
  height: 18px;
}
.config-display .ocfilter-option:has(> .ocf_helper) .filter_box_title_btn {
  padding-right: 52px;
}
.config-display .checkbox_ok_list {
  font-size: var(--text-md);
  line-height: 18px;
}
.config-display .checkbox_ok_list li:not(:last-child) {
  margin-bottom: 10px;
}
.config-display .checkbox_ok + label {
  padding: 1px 0 1px 28px;
  color: var(--gray-800);
  font-size: var(--text-md);
  line-height: 18px;
  font-weight: var(--fw-bold);
}
.config-display .checkbox_ok + label:after {
  top: 0;
  width: 18px;
  height: 18px;
  border-radius: 6px;
  background: #fff;
  border: 1px solid var(--gray-200);
  box-sizing: border-box;
}
.config-display .checkbox_ok + label:before {
  top: 0;
  width: 18px;
  height: 18px;
  background-size: 10px 8px;
}
.config-display .checkbox_ok:checked + label {
  color: var(--color-primary);
}
.config-display .checkbox_ok:checked + label:after {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.config-display-slot:empty,
.config-display-slot[style*="display: none"] {
  display: none;
  border: none;
  margin: 0;
  padding: 0;
}

/* category heading tags beside title */
.cat-page-head {
  margin-bottom: 40px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 14px;
  row-gap: 8px;
}
.cat-page-head > h1 {
  width: auto;
  margin: 0;
}
.title_wr:has(.cat-page-head) {
  margin-bottom: 0;
}
.title_wr:has(.cat-page-head) > * {
  margin-bottom: 0;
}
.cat-page-head-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.cat-page-head .cat-type-notes--page,
.cat-page-head .cat-type-chips--page,
.cat-page-head .cat-type-note--page {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0;
}
.cat-page-head .cat-type-chip,
.cat-page-head .cat-type-note {
  margin: 0;
  padding: 6px 12px;
  font-size: var(--text-md);
  line-height: 1.25;
}
.pdp-short {
  padding: 8px 0 6px;
}
.pdp-short__title {
  margin: 0 0 8px;
  font-size: var(--text-xl);
  font-weight: var(--fw-bold);
  
  line-height: 1.2;
  color: var(--gray-800);
}
.pdp-short__lead {
  margin: 0 0 14px;
  color: var(--gray-800);
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  line-height: 1.5;
}
.pdp-short__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.pdp-short__list li {
  margin: 0;
  padding: 12px 14px;
  border-radius: 12px;
  background: #fff;
  color: var(--gray-800);
  font-size: var(--text-md);
  font-weight: var(--fw-bold);
  line-height: 1.4;
}
@media (max-width: 767px) {
  .pdp-short__list {
    grid-template-columns: 1fr 1fr;
  }
}

/* cat-page-head heading gap */
@media only screen and (max-width: 1399px) {
  .cat-page-head { margin-bottom: 40px; }
}
@media only screen and (max-width: 575px) {
  .cat-page-head { margin-bottom: 30px; }
}

/* geek-cls-desktop-2026 — size is reserved before the slider script runs */
@media (min-width: 1200px) {
  body.product-product #main_section > .pdp-photo {
    align-self: stretch;
    display: flex;
    flex-direction: column;
  }
  body.product-product .pdp-photo .item_img {
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
  }
  body.product-product .pdp-thumbs {
    overflow: visible;
  }
  body.product-product .pdp-thumbs .swiper-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    transform: none;
    width: auto;
    height: auto;
  }
  body.product-product .pdp-thumbs .swiper-slide {
    width: calc((100% - 16px) / 3);
    margin: 0;
    height: auto;
    flex: 0 0 calc((100% - 16px) / 3);
  }
  body.product-product .pdp-thumbs .swiper-slide:nth-child(n+7) {
    display: none;
  }
  body.product-product .pdp-thumbs .item_gal {
    border-radius: 8px;
    background: var(--gray-50);
  }
}
@media (min-width: 992px) and (max-width: 1399px) {
  .swiper-top:not(.swiper-container-horizontal) .swiper-slide {
    width: 25%;
  }
}
@media (min-width: 1400px) and (max-width: 1739px) {
  .swiper-top:not(.swiper-container-horizontal) .swiper-slide {
    width: 20%;
  }
}
@media (min-width: 1740px) {
  .swiper-top:not(.swiper-container-horizontal) .swiper-slide {
    width: calc((100% - 60px) / 6);
    margin-right: 12px;
  }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .swiper-1-sm2:not(.swiper-container-horizontal) .swiper-slide {
    width: calc((100% - 40px) / 3);
    margin-right: 20px;
  }
}
@media (min-width: 1400px) and (max-width: 1739px) {
  .swiper-1-sm2:not(.swiper-container-horizontal) .swiper-slide {
    width: calc((100% - 60px) / 3);
    margin-right: 30px;
  }
}
@media (min-width: 1740px) {
  .swiper-1-sm2:not(.swiper-container-horizontal) .swiper-slide {
    width: calc((100% - 30px) / 4);
    margin-right: 10px;
  }
}

/* chips inline with title */
.menu_mega .mega-l3-name .cat-type-chips,
.cat-mega .mega-l3-name .cat-type-chips {
  display: inline;
  margin: 0 0 0 6px;
  gap: 0;
}
.menu_mega .mega-l3-name .cat-type-chip,
.cat-mega .mega-l3-name .cat-type-chip {
  display: inline-block;
  vertical-align: middle;
  margin: 1px 4px 1px 0;
}

/* bullets one line */
.menu_mega .mega-l3-name,
.cat-mega .mega-l3-name {
  font-weight: var(--fw-bold);
}
.menu_mega .mega-l3-name {
  font-size: var(--text-lg);
}
.cat-mega .mega-l3-name {
  font-size: var(--text-lg);
  font-weight: var(--fw-bold);
}
.menu_mega .mega-l3-name .cat-type-notes,
.cat-mega .mega-l3-name .cat-type-notes {
  display: inline;
  margin: 0 0 0 6px;
}
.menu_mega .mega-l3-name > .cat-type-note,
.cat-mega .mega-l3-name > .cat-type-note,
.menu_mega .mega-l3-name .cat-type-note,
.cat-mega .mega-l3-name .cat-type-note {
  display: inline-block;
  vertical-align: middle;
  margin: 1px 4px 1px 0;
}
.menu_mega .mega-l3-name > .cat-type-note,
.cat-mega .mega-l3-name > .cat-type-note,
.menu_mega .mega-l3-name .cat-type-notes,
.cat-mega .mega-l3-name .cat-type-notes {
  margin-left: 6px;
}

/* Shelf and folder names: larger, names heavier. Chip colors stay. */
.cat-mega .mega-l2-card .cat-type-chip,
.cat-mega .mega-l2-card .cat-type-note,
.cat-mega .mega-l3-name .cat-type-chip,
.cat-mega .mega-l3-name .cat-type-note {
  font-size: var(--text-sm);
}
/* Shelf heading larger. Chip colors stay. */
.cat-mega-col:has(.cat-mega-nested) .mega-l2-name {
  font-size: var(--text-xl);
  font-weight: var(--fw-bold);
}

/* geek-show-all-l3-2026-10-23 temporary: lists are short, show every folder, hide expand */
.cat-mega .mega-l3-extra,
.menu_mega .mega-l3-extra {
  display: list-item;
}
.cat-mega .mega-l3-toggle,
.menu_mega .mega-l3-toggle {
  display: none;
}
