body {
    --redesign-main-color: #FFD23F;
    --redesign-secondary-color: #015590;
    --redisign-secondary-row-bg: #F1F4FF;
}

/* Common */
.space-between-centered {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.big-top-margin {
    margin-top: 20px;
}

.small-top-margin {
    margin-top: 10px;
}

/* End Common */

.bx-catalog-element .item-wrap {
    margin-bottom: 0;
}

.breadcrumbs-container p {
    margin: 0;
    display: block;
}

/* Head btns */

.head-btns {
    position: initial !important;
    font-size: 14px;
    display: flex;
    justify-content: end;
    gap: 20px;
}

.head-btns .print {
    display: block;
}

.head-btns .print a {
    color: #B2B2B2;
}

.head-btns .print a:after {
    content: '';
    position: absolute;
    margin-left: 10px;
    display: inline-block;
    width: 18px;
    height: 20px;
    background-image: url('/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/print.svg');
}

.head-btns .print a:before {
    content: none;
}


.head-btns .share-icon {
    display: block;
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/share.svg");
    width: 18px;
    height: 20px;
    margin-left: 25px;
}


.head-btns .print a:hover {
    color: var(--redesign-secondary-color);
}

.head-btns .print a:hover:after {
    background-image: url('/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/print-hover.svg');
}

.head-btns .share-icon:hover {
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/share-hover.svg");
}

.share-icon:hover .share-btns {
    display: block;
}

/* end head btns */


/*Product*/
.product {
    display: grid;
    grid-template-columns: 50% 50%;
    margin-top: 20px;
}

.breadcrumbs-wrapper .breadcrumbs-container {
    display: flex;
    align-items: center;
    gap: 5px;
    width: auto;
    font-size: 12px;
}

/* Gallery */


.thumbsSlider {
    grid-column: 1;
    height: 100%;
}

.thumbsSlider button {
    border: none;
    background: transparent;
    width: 100%;
    text-align: center;
    font-size: 32px;
    color: #B2B2B2;
}

.thumbsSlider .thumb-slide.thumb-slide {
    display: flex;
    justify-content: center;
}

.product-slider-wrapper {
    position: relative;
    max-height: 100%;
    height: 100%;
}

.labels {
    position: absolute;
    top: 20px;
    right: 20px;
}

.label {
    padding: 5px 15px;
    line-height: 14px;
    text-align: center;
    color: #fff;
}

.label.label-new,
.label.label-stock,
.label.label-writedown,
.label.label-sale {
    background: #f00;
}
.label.label-sobsna {
    background: #01056C;
}

.productSlider {
    max-height: 100%;
    height: 100%;

}

.productSlider .slick-list, .productSlider .slick-track, .productSlider .slick-slide, .productSlider .slick-slide img {
    max-height: 100%;
    height: 100%;
}

.productSlider.slick-initialized .slick-slide {
    display: flex;
    justify-content: center;
}

.


.fancyContainer.fancybox__container {
    --fancybox-color: #fff;
    width: 60vw;
    max-height: 60vh;
    margin: auto !important;
    outline: var(--redesign-main-color) 2px solid;
}

.fancyContainer .fancybox__toolbar {
    --f-button-bg: rgb(255 255 255 / 0%);
    --f-button-color: #C4C4C4;
}

.fancyContainer .fancybox__toolbar, .fancyContainer .fancybox__carousel, .fancyContainer .fancybox__footer {
    background-color: var(--fancybox-color);
}

/* End Gallery */

/* Product Info */

.product-manufacturer a {
    color: #000000;
}

/*Special buttons */

.special-btns {
    display: flex;
    align-items: center;
    gap: 30px;
}

.special-btn-wrap {
    align-content: center;
}

.special-btns .btn.one-click-credit {
    color: #B2B2B2;
    margin: 0;
    text-decoration: none;
}

.compare-link {
    display: inline-block;
    position: relative;
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/compare.svg");
    width: 20px;
    height: 21px;
}

.compare-link:hover {
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/compare-hover.svg");
}

.compare-link.act, .compare-link.act:hover {
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/compare-active.svg");
}

.favorites-link {
    display: inline-block;
    position: relative;
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/favorite.svg");
    width: 22px;
    height: 20px;
}

.favorites-link:hover {
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/favorite-hover.svg");
}

.favorites-link.act, .favorites-link.act:hover {
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/favorite-active.svg");
}

.availability span {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.availability span:before {
    min-width: 23px;
    height: 21px;
    content: '';
    display: inline-block;
    margin-right: 10px;
}

.availability .available {
    color: #00B533;
}


.availability .available:before {
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/available.svg");
}

.availability .on-demand {
    color: #FFC300
}

.availability .on-demand:before {
    background-image: url("/local/templates/cto1_2022/components/bitrix/catalog.element/redesign/images/on-demand.svg");
}


/* End Special buttons */

.prices-buttons {
    gap: 5%;
}

/* Prices-Qty */
.prices-quantity {
    display: flex;
    align-items: center;
    width: 50%;
    justify-content: space-between;
}

.price {
    font-size: 32px;
    font-weight: 700;
}

.old-price {
    font-size: 16px;
    font-weight: 700;
    color: #C4C4C4;
    position: absolute;
    margin-top: 30px;
    text-decoration: line-through;
}

.quantity {
    position: relative;
    display: inline-block;
    font-weight: 700;
    font-size: 18px;
}

.quantity input {
    width: 60px;
    height: 40px;
    text-align: center;
    border: 2px solid #EEEEEE;
}

.quantity button {
    line-height: 0;
    border: 2px solid #EEEEEE;
    background-color: transparent;
    cursor: pointer;
}

.plus {
    top: 0;
    border-bottom: none;
}

.minus {
    bottom: 0;
}

/* End Prices-Qty */


/* Buy buttons */
.buy-buttons {
    display: flex;
    gap: 20px;
    align-items: center;
    text-wrap: none;
}

.buy-buttons .buy_button a, .buy-buttons .btn.no-cop, .buy-buttons .btn.cop.openformoncop {
    border-radius: 0;
    background: var(--redesign-main-color);
    color: #3B3B3B;
    font-weight: 600;
    margin: 0;
}

.buy-buttons .buy_button a:hover, .buy-buttons .btn.no-cop:hover, .buy-buttons .btn.cop.openformoncop:hover {
    color: #000000;
    background: #FFC300;
}

.buy-buttons .one-click-button a {
    border-radius: 0;
    border: 1px solid var(--redesign-main-color);
    background: #ffffff;
    color: #B2B2B2;
    padding: 11px 5px;
    font-weight: 600;
    text-wrap: nowrap;
    text-align:center;
}

.buy-buttons .one-click-button a:hover {
    color: #000000;
    border-color: #FFC300;
}


/* End Buy buttons */

/* SKU */
.product-item-scu-item-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.product-item-scu-item-text-container {
    border: #EEEEEE solid 1px;
    padding: 10px;
    text-align: center;
    cursor: pointer;
}

.product-item-scu-item-text-container.notallowed {
    color: #C4C4C4;
}

.product-item-scu-item-text-container.notallowed.selected {
    color: #000000;
}

.product-item-scu-item-text-container.selected {
    background: #C4C4C4;
}

/* End SKU */

/* Tabs */
.product .tabs {
    padding-top: 0;
    margin-top: 20px;
    border-top: 1px solid #EEEEEE;
}

.tabs.product-tabs .switchers .switch {
    color: #000;
    font-weight: 500;
    font-size: 16px;
    border: none;
}

.tabs.product-tabs .switchers .switch.act, .tabs.product-tabs .switchers .switch:hover {
    border: none;
    font-weight: 500;
    background: none;
    text-decoration: underline;
    text-decoration-color: var(--redesign-main-color);
    text-underline-position: under;
    color: #000;
}


.tabs.product-tabs .tab {
    padding: 0 32px;
}

/*---------------------------*/

.characteristics-table {
    width: 100%;
}

.characteristics-table td {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
}

.characteristic-value {
    font-weight: bold;
}

.characteristics-table tr:nth-child(even) {
    background: var(--redisign-secondary-row-bg);
}

.doc-wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.doc-wrap a {
    display: flex;
    color: #000000;
    gap: 5px;
}

.doc-wrap a .document-icon {

}

/*------------------*/


/* End Tabs */

.danger-text {
    color: #FF0000;
}

.notice-text {
    font-size: 12px;
    color: #C0C0C0;
}


.icons.services-icons {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    justify-content: center;
}

.icons.services-icons .service {
    border: 1px solid #EEEEEE;
    padding: 10px;
    flex: 1 1 0;
}

.icons.services-icons .service a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-decoration: none;
    color: #000000;
    font-weight: bolder;
    font-size: 13px;
}

.icons.services-icons .service-image {
    display: inline-block;
    position: relative;
    overflow: hidden;
    padding: 10px 10px 20px;
}

.icons.services-icons .service-image:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    height: 6px;
    background: transparent;
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.2);
    background: linear-gradient(to top, rgba(0, 83, 142, 0.1), transparent);
    border-radius: 50%;
}

.icons.services-icons .service-title {
    border-top: 1px solid #C4C4C4;
    text-align: center;
    width: 100%;
    padding-top: 15px;
    padding-bottom: 5px;
}


/* End Product Info */


/* Each even after-catalog-item-block-wrap*/

.after-catalog-item-block-wrap {
    padding-top: 20px;
}

.after-catalog-item-block-wrap:nth-child(even) {
    background: var(--redisign-secondary-row-bg);
}

/* End Product */

/*Adaptive styles*/

@media (max-width: 1024px) {
    .hidden-1024 {
        display: none !important;
    }

    .product {
        grid-template-columns: 100%;
        grid-template-areas:
    "breadcrumbs"
    "title"
    "availability"
    "gallery";
    }

    .breadcrumbs-wrapper {
        grid-area: breadcrumbs;

    }

    .breadcrumbs-container {
        flex-wrap: wrap;
    }

    .breadcrumbs-wrapper .breadcrumbs-container, .breadcrumbs-wrapper .breadcrumbs-container a {
        font-size: 10px !important;
    }

    .product-title {
        grid-area: title;
    }

    .availability-block {
        grid-area: availability;
    }

    .product-slider-wrapper .labels {
        left: 0;
    }

    .product-gallery {
        grid-area: gallery;
        display: block;
        margin-top: 20px;
        max-height: 30vh;
    }

    .prices-buttons {
        flex-direction: column;
    }

    .buy-buttons {
        width: 100%;
        margin-top: 10px;
        justify-content: center;
    }

    .prices-quantity {
        width: 100%;
    }

    .prices-quantity:has(.old-price) {
        margin-bottom: 15px;
    }

    .quantity {
        display: grid;
        grid-template: "p i m";
    }

    .quantity input {
        grid-area: i;
    }

    .quantity button {
        min-width: 40px;
    }

    .quantity .plus {
        grid-area: p;
    }

    .quantity .minus {
        grid-area: m;
    }

    .product-item-scu-item-text-container {
        width: 45%;
    }

    .buy-buttons > div, .buy-buttons > a {
        width: 45%;
    }


    .buy-buttons .buy_button .btn.cop, .buy-buttons #notify-btn .btn.cop.openformoncop,
    .buy-buttons #ask-price-btn .btn.no-cop.openformonprice {
        width: 100%;
        height: auto;
        padding: 11px 5px;
        line-height: 23px;
    }

    .buy-buttons .one-click-button a {
        width: 100%;
    }


    .product-item-scu-item-list {
        justify-content: center;
    }

    .switchers {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        margin-bottom: 10px;
        background: var(--redisign-secondary-row-bg);
        padding: 20px;

    }

    .tabs.product-tabs {
        border-bottom: 1px solid #EEEEEE;
        padding-bottom: 30px;
    }

    .tabs.product-tabs .switchers .switch {
        flex: 1 0 45%;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 0;
        border: 1px solid var(--redesign-main-color);
    }

    .tabs.product-tabs .switchers .switch:hover, .tabs.product-tabs .switchers .switch.act {
        border: 1px solid var(--redesign-main-color);
        text-decoration: none;
    }

    .tabs.product-tabs .switchers .switch.act {
        border: 1px solid var(--redesign-main-color);
        background: var(--redesign-main-color);
    }

    .icons.services-icons .service {
        flex: 1 1 40%;
    }


}

@media (min-width: 1024px) {
    .show-1024 {
        display: none !important;
    }

    .tabs {
        grid-column: span 2;
    }

    .grid-2 {
        grid-column: 2;
    }

    .product .product-gallery {
        grid-row: 2 / 8;
    }

    .product.product-with-offers .product-gallery {
        grid-row: 2 / 9;
    }

    .product-gallery {
        display: grid;
        grid-template-rows: minmax(0, 30vh);
        grid-template-columns: 15% minmax(0, 0.9fr);
    }

    .productSlider {
        grid-column: 2;
    }

    .quantity button {
        position: absolute;
        right: 0;
        width: 1.5em;
        height: 50%;
    }

    .quantity input {
        padding-right: 1.5em;
    }
}