:root {
    --border-color: #414141;
    --border-light-color: rgb(0 0 0 / 0.2);

    --hor-pdd: 100px;
}

#product .herosection,
#cart .herosection,
#checkout .herosection,
#order-confirmation .herosection {
    display: none;
}

#product #wrapper {
    background-color: var(--color-background-dark);
    color: white;
    line-height: 1.6;
}

#wrapper nav.breadcrumb {
    padding: 30px var(--hor-pdd);
    border-bottom: 1px solid #414141;
    margin-bottom: 0;
    border-top: 1px solid #414141;
}

/* ===== BREADCRUMBS — BRUTAL STYLE (no radius, hard blocks) ===== */

#wrapper nav.breadcrumb {
    background: var(--color-background-dark);
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
    padding: 22px var(--hor-pdd);
}

#wrapper nav.breadcrumb ol {
    display: flex;
    align-items: center;
    gap: 0;
    /* chevrons handle spacing */
    list-style: none;
    margin: 0;
    padding: 0;
    white-space: nowrap;
    overflow: hidden;
}

#wrapper nav.breadcrumb li {
    display: inline-flex;
    align-items: center;
    max-width: 36vw;
    position: relative;
}

/* Hard “block” links (no radius) */
#wrapper nav.breadcrumb a[itemprop="item"] {
    display: inline-flex;
    align-items: center;
    padding: 10px 14px;
    background: rgba(255 255 255 / 0.03);
    border: 1px solid var(--border-color);
    color: #f2f2f2;
    text-decoration: none;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    line-height: 1;
    border-radius: 0;
    /* brutal */
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

#wrapper nav.breadcrumb a [itemprop="name"],
#wrapper nav.breadcrumb span[itemprop="name"] {
    display: inline-block;
    max-width: 26ch;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Hover = aggressive red */
#wrapper nav.breadcrumb a[itemprop="item"]:hover {
    background: rgba(229, 105, 9, 0.14);
    border-color: var(--color-orange);
    color: #fff;
}

/* Chevrons as thick squares (no soft edges) */
#wrapper nav.breadcrumb li::after {
    content: "";
    width: 8px;
    height: 8px;
    margin: 0 12px;
    transform: rotate(45deg);
    border-right: 2px solid var(--border-color);
    border-top: 2px solid var(--border-color);
    opacity: 0.9;
}

#wrapper nav.breadcrumb li:last-child::after {
    display: none;
}

/* Current page = muted hard block, non-clickable */
#wrapper nav.breadcrumb li:last-child a[itemprop="item"] {
    pointer-events: none;
    cursor: default;
    color: #c6c6c6;
    background: rgba(255 255 255 / 0.015);
    border-color: rgba(255 255 255 / 0.18);
}

/* Compact on tablet */
@media (max-width: 1199px) {
    #wrapper nav.breadcrumb {
        padding: 18px var(--hor-pdd);
    }

    #wrapper nav.breadcrumb li {
        max-width: 48vw;
    }

    #wrapper nav.breadcrumb a[itemprop="item"] {
        padding: 9px 12px;
    }

    #wrapper nav.breadcrumb a [itemprop="name"],
    #wrapper nav.breadcrumb span[itemprop="name"] {
        max-width: 20ch;
    }
}

/* Mobile: allow wrap but keep blocks hard */
@media (max-width: 575px) {
    #wrapper nav.breadcrumb ol {
        flex-wrap: wrap;
        row-gap: 8px;
    }

    #wrapper nav.breadcrumb li::after {
        margin: 0 8px;
    }
}

/*
CATEGORY PAGE
*/
#category .herosection {
    display: none;
}

#category #header .header-top {
    margin-bottom: 0;
}

#category .row-both-columns {
    display: flex;
    background-color: var(--color-dark);
    max-width: 100vw;
    margin: 0;
}

#category .row-both-columns #left-column {
    border-bottom: 1px solid var(--border-color);
    padding-right: 0 !important;
}

#category .row-both-columns #content-wrapper {
    max-width: 100vw;
    padding-right: 0;
    padding-left: 0;
}

#category .block-categories,
#category .block-left-column {
    background-color: transparent;
    border: none;
    padding: 20px 30px;
    margin: 0;
}

.block-categories a,
#search_filters .facet .facet-label a,
#search_filters_brands .facet .facet-label a,
#search_filters_suppliers .facet .facet-label a,
.content-block-left-column ul li a {
    font-size: 1rem;
    align-items: center;
    padding: 15px;
    background: rgba(255 255 255 / 0.03);
    border: 1px solid var(--border-color);
    color: #f2f2f2;
    text-decoration: none;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    line-height: 1;
    border-radius: 0;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    width: 100%;
    text-align: center;
}

#category .block-categories a:hover,
#search_filters .facet .facet-label a:hover,
#search_filters_brands .facet .facet-label a:hover,
#search_filters_suppliers .facet .facet-label a:hover,
.content-block-left-column ul li a:hover {
    color: var(--color-orange) !important;
}

.title-block-left-column {
    margin-bottom: 35px;
    padding-bottom: 25px;
    border-bottom: 1px solid var(--border-color);
    padding-top: 15px;
}

.title-block-left-column h4,
.title-block-left-column .title_left_column,
.title-block-left-column a {
    text-align: left;
    font-size: 1.375rem;
}

.title-block-left-column h4:after,
.title-block-left-column .title_left_column:after,
.title-block-left-column a:after {
    display: none;
}

#category .products-selection {
    background-color: transparent;
    border: none;
    border-left: 1px solid var(--border-color);
    padding: 20px 50px;
    margin: 0;
}

#category .products-selection .sort-by-row {
    display: flex;
    width: 100%;
    align-items: center;
}

.sort-by-row .total-products {
    width: auto;
    padding: 0;
    font-size: 1rem;
    color: var(--border-color);
    margin-left: auto;
}

.sort-by-row .listing_sort {
    width: auto;
    padding-top: 0;
    margin-left: 30px;
}

#category .display_list_grid .grid a i {
    color: var(--border-color);
}

#category .display_list_grid a i {
    color: var(--border-color);
}

#category .display_list_grid li.selected a i {
    color: var(--color-orange);
}

#category #js-product-list {
    background-color: white;
    box-shadow: 0 0 30px 20px rgba(0 0 0 / 0.3);
}

#category #products .products {
    padding: 50px;
}

#category .button_block_product_list .quick-view {
    display: none;
}

/*
GRID
*/
#category #products.grid .products {
    gap: 30px;
}

#category #products.grid .products::after {
    content: "";
    flex: auto;
}

#category #products.grid .product-miniature .add-to-cart.btn-primary {
    opacity: 1;
}

#category #products.grid .product-add-to-cart {
    display: block;
    float: none !important;
    margin-left: 0;
    margin-right: 0;
}

#category #products.grid .product-miniature .quick-view {
    display: none;
}

#category #products.grid .product-miniature .price {
    font-size: 26px;
}

#products.grid .button_block_prtoduct_list,
.product-accessories .button_block_prtoduct_list {
    width: auto;
    position: static;
    z-index: 3;
    margin-top: 0;
    text-align: center;
}

#products.grid .button_block_prtoduct_list,
.product-accessories .button_block_prtoduct_list {
    width: auto;
    position: static;
    z-index: 3;
    margin-top: 0;
    text-align: center;
}

#products.grid .product-miniature,
.product-accessories .product-miniature {
    margin: 0 auto;
    border: 1px solid var(--border-light-color);
    padding: 0;
    margin-bottom: 0;
    width: calc(33% - 17px);
}

#products.grid .product-miniature:hover,
.product-accessories .product-miniature:hover {
    border-color: var(--color-orange);
}

#products.grid .thumbnail-container,
.product-accessories .thumbnail-container #products.grid .product_thumbnail_content,
.product-accessories .product_thumbnail_content {
    width: 100%;
}

#products.grid .product_thumbnail_content img {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block;
    padding: 30px;
}

#products.grid .product-miniature .product-footer {
    border-top: none;
    margin-top: 0;
    padding: 0 30px;
}

#products.grid .product-miniature h1.product-title {
    border-bottom: 1px solid var(--border-light-color);
    margin-bottom: 35px;
    padding-bottom: 20px;
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 10px;
    font-size: 1rem;
    text-align: center;
}

.product-accessories .product-description,
#products.grid .product-description {
    padding-left: 0;
    padding-bottom: 10px;
}

#products.grid .product-add-to-cart .add-to-cart.btn-primary {
    border: none !important;
}

#products.grid .product-add-to-cart .add-to-cart.btn-primary:hover {
    background-color: var(--color-orange) !important;
    color: white;
    border-radius: 0;
    transform: none !important;
    border: none !important;
}

/*
LIST
*/

#products.list .thumbnail-container {
    display: flex;
}

#products.list .product_thumbnail_content {
    padding: 30px;
    border-right: 1px solid var(--border-light-color);
}

#products.list .highlighted-informations {
    float: none;
}

#products.list .product-description {
    margin-bottom: 0;
}

#category .product-miniature h1.product-title {
    border-bottom: 1px solid var(--border-light-color);
    margin-bottom: 35px;
    padding-bottom: 25px;
}

#category .product-miniature .price {
    color: var(--color-orange) !important;
    font-size: 32px;
    font-weight: bold;
}

#category .button_block_prtoduct_list {
    width: auto;
}

#category .product-miniature .btn.add-to-cart {
    width: 100%;
    height: auto;
    padding: 15px;
    line-height: 1;
    border-radius: 0;
    border: none;
    margin-top: 0;
}

#category .product-miniature .product-footer {
    border-top: 1px solid var(--border-light-color);
    margin-top: 30px;
    padding-top: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.row_product {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
}

.left_block_product {
    display: flex;
    width: 50%;
    background-color: white;
    border: 0;
    position: relative;
    z-index: 999;
    box-shadow: 0 0 30px 20px rgba(0 0 0 / 0.3);
}

#main .left_block_product .page-content {
    position: relative;
    margin-bottom: 0;
    display: flex;
    width: 100%;
}

.images-container {
    position: relative;
    height: auto;
    display: flex;
    width: 100%;
}

.product_images_block {
    width: 150px;
    float: left;
    overflow: hidden;
    padding-left: 10px;
    padding-right: 10px;
    border-right: 1px solid var(--border-color);
    height: 100% !important;
    position: relative;
    border-color: var(--border-light-color);
}

.product-cover {
    border: none;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.product_images_block .product-images .thumb-container-img {
    border: 1px solid var(--border-color) !important;
    border-color: var(--border-light-color) !important;
    max-width: fit-content;
    padding: 0 10px;
}

#category .pagination .page-list {
    background-color: #fff;
    font-size: 0.8125rem;
    display: flex;
    float: none;
    border: 1px solid var(--border-color);
    justify-content: space-around;
    padding: 15px 0;
    color: white;
    margin-bottom: 30px;
    margin-left: 50px;
    width: auto;
    margin-right: 50px;
    border-color: var(--border-light-color);
}

#category .pagination .page-list::after {
    content: none;
}

.right_block_product {
    width: 50%;
    padding: var(--hor-pdd);
    box-sizing: border-box;
    border: 1px solid #414141;
    padding-bottom: 50px;
}

.right_block_product h1 {
    color: white;
    font-size: 32px;
}

.right_block_product .price_product {
    color: var(--color-orange) !important;
    font-size: 42px;
}

.product_description_short {
    opacity: 0.8;
    line-height: 1.6;
    color: #a7a7a7;
    font-size: 1rem;
    margin-bottom: 50px;
}

.product-actions .add-to-cart {
    width: 100%;
    height: auto;
    background-color: var(--color-orange) !important;
    padding: 15px;
    line-height: 1;
}

.product-prices .tax-shipping-delivery-label {
    font-size: 0.8125rem;
    display: flex;
    float: none;
    border: 1px solid var(--border-color);
    width: 100%;
    justify-content: space-around;
    padding: 5px 0;
    color: white;
    margin-bottom: 50px;
}

.product-quantity {
    display: flex;
    flex-direction: column;
    color: var(--color-orange);
    font-weight: 700;
}

.product-quantity .add {
    float: none;
    margin: 0;
}

.bootstrap-touchspin .input-group-btn-vertical>.btn {
    background-color: transparent;
    border: 1px solid var(--border-color);
}

.bootstrap-touchspin .input-group-btn-vertical>.btn i {
    color: white;
}

.product-quantity #quantity_wanted {
    color: white;
    background-color: transparent;
    border: 1px solid var(--border-color);
    width: 75px;
}

#product .tabs {
    border: none;
    margin-top: 0;
    background: var(--color-background-dark) !important;
    padding: var(--hor-pdd);
}

.tabs .tab-pane {
    padding-top: 0;
}

#product .tabs .nav-tabs .nav-link {
    text-transform: uppercase;
    background-color: transparent;
    border: 1px solid var(--border-color);
    border-bottom: none !important;
    margin: 0;
    transform: translateY(-2px);
}

#product #product-availability {
    width: 100%;
    margin: 0;
    margin-top: 15px;
    border: 1px solid var(--border-color);
    padding: 15px;
    display: flex;
    align-items: center;
    color: white !important;
    font-weight: bold;
    font-size: 1rem;
}

#product #product-availability i {
    line-height: 1 !important;
    margin-right: 10px !important;
}

/* ===== Product Description (dark, crisp, readable) ===== */

#product .black-content-card {
    background: rgba(255 255 255 / 0.02);
    border: 1px solid var(--border-color);
    padding: 40px;
    box-shadow: 0 0 30px rgba(0 0 0 / 0.25) inset;
}

#product .product-description {
    color: #e6e6e6;
    font-size: 1rem;
    line-height: 1.8;
}

#product .product-description .subtitle {
    margin-top: 6px;
    margin-bottom: 22px;
    opacity: 0.9;
    font-weight: 500;
}

#product .product-description h2,
#product .black-content-card>h2 {
    color: #fff;
    font-size: 26px;
    letter-spacing: 0.2px;
    margin: 0 0 16px;
}

#product .product-description h3 {
    margin: 30px 0 14px;
    font-size: 20px;
    color: #fff;
    text-transform: none;
}

#product .product-description h4 {
    margin: 22px 0 12px;
    font-size: 16px;
    color: #fff;
    font-weight: 600;
    border-left: 3px solid var(--color-orange);
    padding-left: 10px;
}

#product .product-description hr {
    border: none;
    border-top: 1px solid var(--border-color);
    margin: 28px 0;
    opacity: 0.7;
}

/* Lists: compact, two-column on desktop, custom bullet */
#product .product-description ul {
    list-style: none;
    padding-left: 0;
    margin: 0 0 18px;
    column-gap: 40px;
    column-count: 2;
}

#product .product-description li {
    break-inside: avoid;
    position: relative;
    padding-left: 18px;
    margin: 6px 0;
    color: #d3d3d3;
}

#product .product-description li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.72em;
    width: 8px;
    height: 8px;
    background: var(--color-orange);
    border: 1px solid var(--border-color);
    transform: translateY(-50%);
    box-shadow: 0 0 0 3px rgba(229, 105, 9, 0.1);
    border-radius: 1px;
    /* small square dot */
}

/* Link accents (if any) */
#product .product-description a {
    color: var(--color-orange);
    text-decoration: none;
    border-bottom: 1px dashed rgba(229, 105, 9, 0.6);
}

#product .product-description a:hover {
    border-bottom-style: solid;
}

/* Optional: “black block” callout for final paragraph */
#product .product-description p:last-of-type {
    background: rgba(255 255 255 / 0.03);
    border: 1px solid var(--border-color);
    padding: 14px 16px;
    border-left: 3px solid var(--color-orange);
    margin-top: 18px;
}

/* Tabs polish (keeps your style, improves active seam) */
#product .tabs .nav-tabs .nav-link.active {
    background: var(--color-background-dark);
    border-bottom-color: var(--color-background-dark) !important;
    color: #fff;
}

/* Content box in tabs */
#product .tab-content {
    background: rgba(255 255 255 / 0.02);
}

/* Responsive tweaks */
@media (max-width: 1199px) {
    #product .product-description ul {
        column-count: 1;
    }

    #product .black-content-card {
        padding: 30px;
    }
}

@media (max-width: 575px) {
    #product .product-description h2 {
        font-size: 22px;
    }

    #product .product-description h3 {
        font-size: 18px;
    }

    #product .product-description h4 {
        font-size: 15px;
    }
}

/* ===== ADD-TO-CART MODAL — BRUTAL STYLE ===== */

#blockcart-modal {
    background-color: rgba(26 26 26 / 0.8);
}

#blockcart-modal .modal-dialog {
    max-width: 1140px;
    /* you already set width:100% */
    margin: 60px auto;
}

#blockcart-modal .modal-content {
    background: var(--color-background-dark);
    color: #e9e9e9;
    border: 1px solid var(--border-color);
    border-radius: 0;
    /* no curves */
    box-shadow: 0 25px 60px rgba(0 0 0 / 0.6);
}

/* Header */
#blockcart-modal .modal-header {
    border-bottom: 1px solid var(--border-color);
    padding: 18px 24px;
    background: rgba(255 255 255 / 0.02);
}

#blockcart-modal .modal-title {
    margin: 0;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    font-weight: 800;
}

#blockcart-modal .close {
    opacity: 1;
    text-shadow: none;
    color: #fff;
    width: 40px;
    height: 40px;
    line-height: 38px;
    text-align: center;
    border: 1px solid var(--border-color);
    background: transparent;
    border-radius: 0;
    transition: background 0.12s linear, border-color 0.12s linear;
    margin-top: 0;
}

#blockcart-modal .close:hover {
    background: rgba(255 255 255 / 0.05);
}

#product #blockcart-modal .modal-header button:hover span {
    color: var(--color-orange) !important;
}

/* Body layout */
#blockcart-modal .modal-body {
    padding: 0;
    background-color: var(--color-dark);
}

#blockcart-modal .modal-body>div:first-child {
    align-items: normal;
    display: flex;
    gap: 0;
}

/* Left: product preview */
#blockcart-modal .cart-content-img-block {
    background: white;
    padding: 18px;
    float: none;
    width: 300px;
    border: none;
}

#blockcart-modal .product-image-block {
    display: grid;
    place-items: center;
    background: white;
    padding: 0;
    border: none;
}

#blockcart-modal img.product-image {
    width: 100%;
    height: auto;
    display: block;
}

/* Right: content */
#blockcart-modal .cart-content-total-block {
    display: flex;
    width: 100%;
    padding-left: 0;
}

#blockcart-modal .cart-content-item,
#blockcart-modal .cart-content {
    border: 1px solid var(--border-color);
    background: rgba(255 255 255 / 0.02);
    padding: 50px;
    margin-top: 0;
}

/* Product name + meta */
#blockcart-modal .product-name {
    color: #fff;
    margin: 0 0 8px;
    text-transform: none;
    font-weight: 700;
    line-height: 1.3;
    /* clamp long names */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Lines & totals */
#blockcart-modal .cart-products-item-line {
    display: block;
    margin: 6px 0;
    color: #d3d3d3;
}

#blockcart-modal .cart-products-item-line strong {
    color: #fff;
    font-weight: 700;
}

#blockcart-modal .cart-products-count-modal {
    margin: 0 0 8px;
    color: #e0e0e0;
    font-weight: 600;
}

/* Buttons — red slab, square */
#blockcart-modal .cart-content-btn {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-top: 16px;
    width: 100%;
}

#blockcart-modal .cart-content-btn .btn {
    border-radius: 0;
    padding: 14px 18px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    line-height: 1;
    border: 1px solid var(--border-color);
    transition: background 0.12s linear, border-color 0.12s linear, color 0.12s linear;
}

#blockcart-modal .cart-content-btn .btn[data-dismiss="modal"] {
    background: transparent;
    color: #e9e9e9;
}

#blockcart-modal .cart-content-btn .btn[data-dismiss="modal"]:hover {
    background: rgba(255 255 255 / 0.06);
}

#blockcart-modal .cart-content-btn .btn.btn-primary {
    background: var(--color-orange) !important;
    border-color: var(--color-orange);
    color: #fff;
}

#blockcart-modal .cart-content-btn button.btn.btn-primary {
    margin-right: 0;
    background-color: var(--border-color) !important;
}

#blockcart-modal .cart-content-btn .btn.btn-primary:hover {
    filter: brightness(1.05);
}

/* Divider between the two right blocks */
#blockcart-modal .cart-content-item+.cart-content {
    border-top: none;
}

/* Show/Hide animation (Bootstrap 3 uses .in) */
#blockcart-modal .modal-content {
    transform: translateY(12px);
    opacity: 0;
}

#blockcart-modal.in .modal-content {
    transform: none;
    opacity: 1;
    transition: transform 0.16s linear, opacity 0.16s linear;
}

/* Responsive */
@media (max-width: 991px) {
    #blockcart-modal .modal-body>div:first-child {
        grid-template-columns: 280px 1fr;
    }
}

@media (max-width: 767px) {
    #blockcart-modal .modal-dialog {
        margin: 30px auto;
    }

    #blockcart-modal .modal-body>div:first-child {
        grid-template-columns: 1fr;
        /* stack */
    }

    #blockcart-modal .cart-content-btn {
        flex-direction: column;
    }

    #blockcart-modal .product-image-block {
        padding: 6px;
    }
}

hr {
    border-color: var(--border-light-color);
}

/*
CART PAGE
*/
#cart #wrapper {
    background-color: var(--color-dark);
}

.cart-grid {
    display: flex;
}

.cart-grid-body {
    width: 100%;
    margin-bottom: 0;
    background-color: white;
    position: relative;
    z-index: 999;
    box-shadow: 0 0 50px 20px rgba(0 0 0 / 0.3);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.cart-grid-body .cart-overview {
    padding: 30px;
}

#cart .cart-grid-body>.cart-container {
    margin-bottom: 0;
    padding: 0;
    border: none;
}

#cart .cart-grid-body .card-block {
    padding: 20px 30px;
    line-height: 1;
}

#cart .cart-grid-body>a.label {
    text-align: left;
    padding-bottom: 15px;
    padding-left: 30px;
    padding-top: 15px;
    border-top: 1px solid var(--border-light-color);
}

#cart .product-line-grid {
    display: flex;
    align-items: center;
}

#cart .product-line-grid-right .bootstrap-touchspin {
    box-shadow: none;
}

#cart .product-line-grid .value {
    color: var(--color-accent-tertiary) !important;
    font-weight: bold;
    font-size: 18px;
}

#cart .bootstrap-touchspin .input-group-btn-vertical>.btn {
    border: 1px solid var(--border-light-color);
}

#cart .bootstrap-touchspin .input-group-btn-vertical>.btn i {
    color: var(--color-accent-primary);
}

.cart-grid-right {
    width: 50%;
    padding: var(--hor-pdd);
    box-sizing: border-box;
    border: 1px solid #414141;
    min-width: 500px;
    display: flex;
}

.cart-grid-right .card {
    border: none;
    background-color: transparent;
    color: white;
    width: 100%;
    margin-bottom: 0;
}

.cart-grid-right .card .card-block {
    padding: 15px 0;
}

.checkout.cart-detailed-actions.card-block {
    padding: 0;
}

.cart-grid-right .card .cart-detailed-actions a {
    width: 100%;
    background-color: var(--color-orange) !important;
    padding: 15px;
    border: none;
    border-radius: 0;
}

#cart .cart-summary-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 15px;
    flex-wrap: wrap;
}

#cart-subtotal-shipping span {
    width: 50%;
    display: flex;
}

#cart-subtotal-shipping span.value {
    justify-content: end;
}

#cart-subtotal-shipping div {
    width: 100%;
}

#cart .cart-summary-line .label {
    color: white;
}

#cart .cart-summary-line#cart-subtotal-products .value,
#cart .cart-summary-line .value {
    color: var(--color-accent-tertiary) !important;
    font-weight: bold;
    font-size: 18px;
}

.cart-grid-right hr {
    border-top: 1px solid var(--border-color);
}

.cart-summary-line:after,
.cart-grid-right .card-block:after {
    content: none;
}

/*
checkout page
*/

#checkout #wrapper {
    background-color: var(--color-dark);
}

.checkout-row {
    display: flex;
}

.checkout-left {
    padding-right: 0;
}

.checkout-right {
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
}

body#checkout section.checkout-step {
    background-color: transparent;
    box-shadow: none;
    border: none;
    border-right: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
}

body#checkout section.checkout-step.-current {
    background-color: white;
    color: var(--color-dark);
    box-shadow: 0 0 50px 20px rgba(0 0 0 / 0.3);
    border: none;
}

body#checkout section.checkout-step .continue,
body#checkout section.checkout-step #payment-confirmation .btn {
    border-radius: 0;
    width: 100%;
    margin-top: 30px;
    padding: 15px;
    background-color: var(--color-orange) !important;
    border: none;
    margin-bottom: 30px;
}

body#checkout section.checkout-step .continue:hover,
body#checkout section.checkout-step #payment-confirmation .btn:hover {
    background-color: var(--color-dark) !important;
    color: white !important;
}

#checkout-addresses-step .js-address-form a {
    color: var(--color-dark);
    text-decoration: underline;
}

#checkout-personal-information-step .nav.nav-inline {
    font-size: 1rem;
    display: flex;
    float: none;
    border: 1px solid var(--border-color);
    border-color: var(--border-light-color);
    width: 100%;
    justify-content: space-around;
    padding: 10px 0;
    color: white;
    margin-bottom: 30px;
    margin-top: 15px;
}

#checkout-personal-information-step .nav.nav-inline .nav-item {
    display: inline-block;
    width: 50%;
    text-align: center;
}

#checkout-personal-information-step .nav-link {
    text-transform: uppercase;
    font-weight: bold;
    color: var(--color-dark);
    cursor: pointer;
    padding: 5px 10px;
}

#checkout-personal-information-step .nav-link:hover {
    color: white !important;
    opacity: 1 !important;
    background-color: var(--color-orange);
    opacity: 0.5;
}

#checkout-personal-information-step .nav-link.active {
    background-color: var(--color-orange);
    cursor: default;
    color: white;
}

body#checkout section.checkout-step #customer-form .radio-inline {
    margin-right: 15px;
}

.custom-checkbox input[type="checkbox"]+span {
    width: 1.5rem;
    height: 1.5rem;
}

.custom-checkbox input[type="checkbox"]+span .checkbox-checked {
    font-size: 1.55rem;
    color: var(--color-orange);
}

.form-password-comment {
    border: 1px solid;
    border-color: var(--border-light-color);
    padding-top: 30px;
    padding-bottom: 30px;
    border-left: none;
    border-right: none;
    display: block;
    margin-bottom: 50px;
    margin-top: 50px;
}

.input-group-btn-show {}

.input-group-btn-show .btn-show {
    border: none;
    background-color: var(--color-dark);
    font-size: 0.7875rem;
}

.input-group-btn-show .btn-show:hover {
    background-color: var(--color-orange);
}

.custom-checkbox label {
    display: inline;
}

.custom-checkbox .pto_popup .title {
    margin-bottom: 1rem;
    font-size: 2rem;
}

.custom-checkbox label .privacy_button {
    all: inherit;
    color: var(--color-orange);
    text-decoration: underline;
    cursor: pointer;
}

.custom-checkbox label a {
    color: var(--color-orange);
    text-decoration: underline;
}

.custom-checkbox input[type="checkbox"] {
    width: 1.5rem;
    height: 1.5rem;
}

.form-control:focus {
    border-color: var(--color-orange);
}

body#checkout section.checkout-step.-complete {
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid;
    border-color: var(--border-color);
}

body#checkout section.checkout-step.-complete h1 {
    color: white;
}

body#checkout section.checkout-step.-complete.-current h1 {
    color: var(--color-dark);
}

body#checkout .checkout-left section.checkout-step.-current.-reachable.-complete .step-number {
    background-color: transparent !important;
}

body#checkout section.checkout-step.-reachable.-complete h1 .step-edit {
    font-size: 0;
    margin: 0;
    padding: 10px;
    border: 1px solid var(--border-color);
    transform: translateY(-6px);
    color: white !important;
    background-color: var(--border-color);
}

body#checkout section.checkout-step.-reachable.-complete h1 .step-edit:hover {
    background-color: var(--color-orange);
    color: white !important;
    border-color: var(--color-dark);
}

body#checkout section.checkout-step .address-item.selected {
    background: white;
    border: 1px solid var(--color-orange);
}

.delivery-options {
    padding-left: 15px;
    padding-right: 15px;
}

.delivery-options .row {
    display: flex;
    align-items: center;
    width: 100%;
}

.delivery-options .row span.carrier-name {
    margin-bottom: 0;
}

body#checkout section.checkout-step .payment-options .payment-option {
    margin-bottom: 0;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--border-light-color);
    padding-top: 15px;
}

body#checkout .additional-information {
    margin: 0;
    padding: 15px;
    border: 1px solid var(--border-light-color);
    border-top: none;
    margin-left: 30px;
    padding-bottom: 0;
}

body#checkout .condition-label label a {
    color: var(--color-orange);
    text-decoration: underline;
}

/* Outer "card" container */
#js-checkout-summary.card.js-cart {
    width: 100%;
    padding: var(--hor-pdd);
    box-sizing: border-box;
    border: none;
    min-width: 450px;
    display: flex;
    flex-direction: column;
    background: transparent;
    color: #fff;
    margin-bottom: 0;
}

#js-checkout-summary .cart-summary-products>p>a {
    font-size: 0.8125rem;
    display: flex;
    float: none;
    border: 1px solid var(--border-color);
    width: 100%;
    justify-content: space-around;
    padding: 5px 0;
    color: white;
    margin-bottom: 30px;
}

#js-checkout-summary .cart-summary-products>p>a:hover {
    background-color: var(--color-orange);
    text-decoration: none;
    color: white !important;
    opacity: 0.8;
}

#js-checkout-summary .media-list {
    background-color: white;
    color: black;
}

#js-checkout-summary .media-list li {
    padding: 15px;
    border-bottom: 1px solid var(--border-light-color);
    margin-bottom: 15px;
}

#js-checkout-summary #cart-summary-product-list .media .product-price {
    font-weight: bold;
}

/* Inner card blocks */
#js-checkout-summary .card-block {
    padding: 15px 0;
    background: transparent;
    margin: 0;
    border: 0;
}

/* Totals block spacing similar to .checkout.cart-detailed-actions.card-block { padding:0 } */
#js-checkout-summary .cart-summary-totals {
    padding: 0;
}

/* Primary action button inside this card (if any is placed here later) */
#js-checkout-summary .cart-detailed-actions a,
#js-checkout-summary .btn-primary {
    width: 100%;
    background-color: var(--color-orange) !important;
    padding: 15px;
    border: none;
    border-radius: 0;
}

/* Lines layout */
#js-checkout-summary .cart-summary-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 15px;
    flex-wrap: wrap;
}

/* Labels/values color + emphasis */
#js-checkout-summary .cart-summary-line .label {
    color: #fff;
}

#js-checkout-summary .cart-summary-line .value,
#js-checkout-summary .cart-summary-line#cart-subtotal-products .value {
    color: var(--color-accent-tertiary) !important;
    font-weight: bold;
    font-size: 18px;
}

/* Shipping row widths (match your previous pattern) */
#js-checkout-summary #cart-subtotal-shipping span {
    width: 50%;
    display: flex;
}

#js-checkout-summary #cart-subtotal-shipping span.value {
    justify-content: flex-end;
}

#js-checkout-summary #cart-subtotal-shipping div {
    width: 100%;
}

/* Divider */
#js-checkout-summary>hr {
    border: 0;
    border-top: 1px solid var(--border-color);
    margin: 10px 0;
}

/* Remove default pseudo separators if any */
#js-checkout-summary .cart-summary-line:after,
#js-checkout-summary .card-block:after {
    content: none;
}

/* Optional: compact the "Zeige Details" list for parity */
#js-checkout-summary .cart-summary-products p {
    margin: 0 0 10px 0;
}

/*
order confirmation page
*/

#order-confirmation #wrapper {
    background-color: var(--color-dark);
    color: white;
    line-height: 1.6;
    padding-top: 0;
}

#order-confirmation #wrapper #main {
    padding: var(--hor-pdd);
}

#order-confirmation #wrapper .card-block {
    padding: 30px;
    color: var(--color-dark);
}

#order-confirmation #registration-form {
    margin: 0 auto 1rem;
    width: 100%;
    border: none;
}

#order-confirmation #registration-form .card-block {
    background-color: var(--color-orange);
    border: none;
    color: white;
}

#order-confirmation #registration-form .card-block h4 {
    font-size: 1rem;
    font-weight: 400;
    color: white;
}

/*
MY ACCOUNT PAGES
*/

#authentication .herosection,
#registration .herosection,
#my-account .herosection,
#identity .herosection,
#addresses .herosection,
#address .herosection,
#history .herosection,
#order-detail .herosection,
#order-slip .herosection,
#discount .herosection,
#order-follow .herosection,
#order-return .herosection,
#password-email .herosection,
#password-new .herosection,
#password-infos .herosection,
#guest-login .herosection,
#guest-tracking .herosection,
#module-psgdpr-gdpr .herosection,
#password .herosection {
    display: none;
}

#authentication #wrapper,
#registration #wrapper,
#my-account #wrapper,
#identity #wrapper,
#addresses #wrapper,
#address #wrapper,
#history #wrapper,
#order-detail #wrapper,
#order-slip #wrapper,
#discount #wrapper,
#order-follow #wrapper,
#order-return #wrapper,
#password-email #wrapper,
#password-new #wrapper,
#password-infos #wrapper,
#guest-login #wrapper,
#guest-tracking #wrapper,
#module-psgdpr-gdpr #wrapper,
#password #wrapper {
    padding-top: 0;
}

#authentication #main,
#registration #main,
#my-account #main,
#identity #main,
#addresses #main,
#address #main,
#history #main,
#order-detail #main,
#order-slip #main,
#discount #main,
#order-follow #main,
#order-return #main,
#password-email #main,
#password-new #main,
#password-infos #main,
#guest-login #main,
#guest-tracking #main,
#module-psgdpr-gdpr #main,
#password #main {
    padding: var(--hor-pdd);
    background-color: var(--color-dark);
    color: white;
    border-bottom: 1px solid var(--border-color);
}

#authentication #main h1,
#registration #main h1,
#my-account #main h1,
#identity #main h1,
#addresses #main h1,
#address #main h1,
#history #main h1,
#order-detail #main h1,
#order-slip #main h1,
#discount #main h1,
#order-follow #main h1,
#order-return #main h1,
#password-email #main h1,
#password-new #main h1,
#password-infos #main h1,
#guest-login #main h1,
#guest-tracking #main h1,
#module-psgdpr-gdpr #main h1,
#password #main h1 {
    text-align: center;
}

#authentication .form-control-label,
#registration .form-control-label,
#my-account .form-control-label,
#identity .form-control-label,
#addresses .form-control-label,
#address .form-control-label,
#history .form-control-label,
#order-detail .form-control-label,
#order-slip .form-control-label,
#discount .form-control-label,
#order-follow .form-control-label,
#order-return .form-control-label,
#password-email .form-control-label,
#password-new .form-control-label,
#password-infos .form-control-label,
#guest-login .form-control-label,
#guest-tracking .form-control-label,
#module-psgdpr-gdpr .form-control-label,
#password .form-control-label {
    text-align: left;
}

#authentication .btn.btn-primary,
#registration .btn.btn-primary,
#my-account .btn.btn-primary,
#identity .btn.btn-primary,
#addresses .btn.btn-primary,
#address .btn.btn-primary,
#history .btn.btn-primary,
#order-detail .btn.btn-primary,
#order-slip .btn.btn-primary,
#discount .btn.btn-primary,
#order-follow .btn.btn-primary,
#order-return .btn.btn-primary,
#password-email .btn.btn-primary,
#password-new .btn.btn-primary,
#password-infos .btn.btn-primary,
#guest-login .btn.btn-primary,
#guest-tracking .btn.btn-primary,
#module-psgdpr-gdpr .btn.btn-primary,
#password .btn.btn-primary {
    width: 100%;
    height: auto;
    background-color: var(--color-orange) !important;
    padding: 15px;
    line-height: 1;
    border-radius: 0;
    border: none;
}

#authentication .btn.btn-primary:hover,
#registration .btn.btn-primary:hover,
#my-account .btn.btn-primary:hover,
#identity .btn.btn-primary:hover,
#addresses .btn.btn-primary:hover,
#address .btn.btn-primary:hover,
#history .btn.btn-primary:hover,
#order-detail .btn.btn-primary:hover,
#order-slip .btn.btn-primary:hover,
#discount .btn.btn-primary:hover,
#order-follow .btn.btn-primary:hover,
#order-return .btn.btn-primary:hover,
#password-email .btn.btn-primary:hover,
#password-new .btn.btn-primary:hover,
#password-infos .btn.btn-primary:hover,
#guest-login .btn.btn-primary:hover,
#guest-tracking .btn.btn-primary:hover,
#module-psgdpr-gdpr .btn.btn-primary:hover,
#password .btn.btn-primary:hover {
    background-color: var(--color-dark) !important;
    color: white !important;
}

#authentication .page-footer,
#registration .page-footer,
#my-account .page-footer,
#identity .page-footer,
#addresses .page-footer,
#address .page-footer,
#history .page-footer,
#order-detail .page-footer,
#order-slip .page-footer,
#discount .page-footer,
#order-follow .page-footer,
#order-return .page-footer,
#password-email .page-footer,
#password-new .page-footer,
#password-infos .page-footer,
#guest-login .page-footer,
#guest-tracking .page-footer,
#module-psgdpr-gdpr .page-footer,
#password .page-footer {
    margin-left: auto;
    margin-right: auto;
    max-width: 640px;
    display: flex;
    float: none;
    border: 1px solid var(--border-color);
    width: 100%;
    justify-content: space-around;
    padding: 15px 0;
    color: white;
}

#authentication .addresses-footer,
#registration .addresses-footer,
#my-account .addresses-footer,
#identity .addresses-footer,
#addresses .addresses-footer,
#address .addresses-footer,
#history .addresses-footer,
#order-detail .addresses-footer,
#order-slip .addresses-footer,
#discount .addresses-footer,
#order-follow .addresses-footer,
#order-return .addresses-footer,
#password-email .addresses-footer,
#password-new .addresses-footer,
#password-infos .addresses-footer,
#guest-login .addresses-footer,
#guest-tracking .addresses-footer,
#module-psgdpr-gdpr .addresses-footer,
#password .addresses-footer {
    margin-left: auto;
    margin-right: auto;
    max-width: 640px;
    display: flex;
    float: none;
    border: 1px solid var(--border-color);
    width: 100%;
    justify-content: space-around;
    padding: 15px 0;
    color: white;
    margin-top: 30px;
    margin-bottom: 30px;
}

#authentication .addresses-footer a,
#registration .addresses-footer a,
#my-account .addresses-footer a,
#identity .addresses-footer a,
#addresses .addresses-footer a,
#address .addresses-footer a,
#history .addresses-footer a,
#order-detail .addresses-footer a,
#order-slip .addresses-footer a,
#discount .addresses-footer a,
#order-follow .addresses-footer a,
#order-return .addresses-footer a,
#password-email .addresses-footer a,
#password-new .addresses-footer a,
#password-infos .addresses-footer a,
#guest-login .addresses-footer a,
#guest-tracking .addresses-footer a,
#module-psgdpr-gdpr .addresses-footer a,
#password .addresses-footer a {
    color: white;
}

#authentication .addresses-footer a:hover,
#registration .addresses-footer a:hover,
#my-account .addresses-footer a:hover,
#identity .addresses-footer a:hover,
#addresses .addresses-footer a:hover,
#address .addresses-footer a:hover,
#history .addresses-footer a:hover,
#order-detail .addresses-footer a:hover,
#order-slip .addresses-footer a:hover,
#discount .addresses-footer a:hover,
#order-follow .addresses-footer a:hover,
#order-return .addresses-footer a:hover,
#password-email .addresses-footer a:hover,
#password-new .addresses-footer a:hover,
#password-infos .addresses-footer a:hover,
#guest-login .addresses-footer a:hover,
#guest-tracking .addresses-footer a:hover,
#module-psgdpr-gdpr .addresses-footer a:hover,
#password .addresses-footer a:hover {
    color: var(--color-orange);
}

#password .page-footer ul,
#authentication .page-footer ul,
#registration .page-footer ul,
#my-account .page-footer ul,
#identity .page-footer ul,
#addresses .page-footer ul,
#address .page-footer ul,
#history .page-footer ul,
#order-detail .page-footer ul,
#order-slip .page-footer ul,
#discount .page-footer ul,
#order-follow .page-footer ul,
#order-return .page-footer ul,
#password-email .page-footer ul,
#password-new .page-footer ul,
#password-infos .page-footer ul,
#guest-login .page-footer ul,
#guest-tracking .page-footer ul,
#module-psgdpr-gdpr .page-footer ul,
#password .page-footer ul {
    margin-bottom: 0;
}

#authentication .page-footer a:hover,
#registration .page-footer a:hover,
#my-account .page-footer a:hover,
#identity .page-footer a:hover,
#addresses .page-footer a:hover,
#address .page-footer a:hover,
#history .page-footer a:hover,
#order-detail .page-footer a:hover,
#order-slip .page-footer a:hover,
#discount .page-footer a:hover,
#order-follow .page-footer a:hover,
#order-return .page-footer a:hover,
#password-email .page-footer a:hover,
#password-new .page-footer a:hover,
#password-infos .page-footer a:hover,
#guest-login .page-footer a:hover,
#guest-tracking .page-footer a:hover,
#module-psgdpr-gdpr .page-footer a:hover,
#password .page-footer a:hover {
    color: var(--color-orange) !important;
    text-decoration: none;
}

.page-addresses .address,
.page-authentication #content {
    margin-bottom: 0;
    padding: 0;
}

.login-form {
    margin: 0;
    padding: 50px;
    border-bottom: 1px solid var(--border-light-color);
}

.login-form .btn.btn-show {
    border: none;
    background-color: var(--color-dark) !important;
    font-size: 0.7rem;
    padding-top: 13px;
    padding-bottom: 14px;
    font-weight: bold;
}

.login-form .btn.btn-show:hover {
    background-color: var(--color-orange) !important;
}

#authentication #content hr {
    display: none;
}

#authentication .no-account {
    padding: 15px;
}

#authentication .page-footer {
    display: none;
}

.page-customer-account #content {
    padding: 50px;
    margin-left: auto;
    margin-right: auto;
    max-width: 640px;
}

#authentication.page-customer-account #content {
    padding: 0;
}

#password .renew-password [type="submit"] {
    margin-left: 0;
}


@media (max-width: 1650px) {
    ._desktop_header_block {
        padding: 1rem;
    }

    .displayTopMenu {
        margin: 0 1rem;
    }

    ._desktop_right_block .topMenuBlock ul {
        grid-gap: .5rem;
    }

    #search_widget {
        min-width: 12.5rem;
    }
}



@media (max-width: 1300px) {
    #header ._desktop_logo {
        width: 120px;
    }

    .displayTopMenu {
        padding-right: 0;
    }

    #search_widget {
        min-width: 10rem;
    }

    .topMenuBlock .topmenu .item_menu a.item_menu_link {
        font-size: 1rem !important;
    }


    #products.grid .product-miniature,
    .product-accessories .product-miniature {
        width: calc(50% - 17px);
    }

    #products.list .product_thumbnail_content {
        padding: 5px;
    }
}

@media (max-width: 1100px) {
    #search_widget {
        min-width: 5rem;
        width: 150px;
    }
    .topMenuBlock .topmenu .item_menu a.item_menu_link {
        font-size: 0.9rem !important;
    }
    #header ._desktop_logo {
        width: 80px;
    }
}

@media (max-width: 767px) {

    /*
    CATEGORY PAGE
    */
    body#category .container {
        padding: 0 !important;
    }

    #category .row-both-columns {
        flex-direction: column;
    }

    #category .block-categories {
        display: block !important;
    }

    #category .products-selection {
        padding: 15px;
    }

    #category .products-selection .sort-by-row {
        justify-content: space-between;
    }

    #products .products {
        padding: 15px;
    }

    #products.grid .products {
        gap: 10px;
    }

    #products.grid .product-miniature,
    .product-accessories .product-miniature {
        width: calc(50% - 10px);
    }

    #products.grid .product_thumbnail_content img {
        padding: 15px;
    }

    #products.grid .product-miniature h1.product-title {
        padding-left: 5px;
        padding-right: 5px;
        margin-bottom: 10px;
    }

    #products.grid .product-miniature .product-footer {
        padding: 0 10px;
    }

    .product-accessories .product-description,
    #products.grid .product-description {
        margin-bottom: 0;
    }

    #products.grid .product-miniature .price {
        font-size: 18px;
    }

    .sort-by-row .listing_sort {
        margin-left: 0;
        padding: 0;
    }

    .pagination .page-list {
        margin-left: 15px;
        margin-right: 15px;
    }

    #category .block-categories,
    #category .block-left-column {
        background-color: transparent;
        border: none;
        padding: 15px 15px 30px;
        margin: 0;
    }

    .left_block_product {
        width: 100%;
    }

    .right_block_product {
        width: 100%;
        padding: 30px;
    }

    #product .tabs {
        padding: 30px 0 0 0;
    }

    .product_images_block {
        width: 100px;
    }

    #product .row_after_img>.container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #blockcart-modal .cart-content-total-block {
        flex-direction: column;
    }

    .cart-grid {
        display: flex;
        flex-direction: column;
    }

    .cart-grid-right {
        width: 100%;
        min-width: auto;
        padding: 30px;
    }

    #cart .product-line-grid {
        flex-wrap: wrap;
    }

    .product-line-grid-left {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .product-line-grid-right.product-line-actions .col-xs-4.hidden-md-up {
        display: none;
    }

    #checkout .checkout-row {
        flex-wrap: wrap;
    }

    body#checkout section.checkout-step.-reachable.-complete h1 .step-edit {
        max-width: fit-content;
        margin-left: auto;
    }

    body#checkout section.checkout-step.-complete h1 {
        display: flex;
    }

    .checkout-right {
        width: 100%;
        padding-right: 15px;
    }

    #checkout-personal-information-step .nav.nav-inline {
        align-items: center;
        padding: 15px;
    }

    body#checkout section.checkout-step {
        border-left: 1px solid var(--border-color);
    }

    #js-checkout-summary.card.js-cart {
        width: 100%;
        padding: 30px;
        min-width: auto;
    }

    .delivery-options .delivery-option .row {
        flex-wrap: wrap;
    }

    #authentication #main,
    #registration #main,
    #my-account #main,
    #identity #main,
    #addresses #main,
    #address #main,
    #history #main,
    #order-detail #main,
    #order-slip #main,
    #discount #main,
    #order-follow #main,
    #order-return #main,
    #password-email #main,
    #password-new #main,
    #password-infos #main,
    #guest-login #main,
    #guest-tracking #main,
    #module-psgdpr-gdpr #main,
    #password #main {
        padding: 30px;
    }

    #authentication .container,
    #registration .container,
    #my-account .container,
    #identity .container,
    #addresses .container,
    #address .container,
    #history .container,
    #order-detail .container,
    #order-slip .container,
    #discount .container,
    #order-follow .container,
    #order-return .container,
    #password-email .container,
    #password-new .container,
    #password-infos .container,
    #guest-login .container,
    #guest-tracking .container,
    #module-psgdpr-gdpr .container,
    #password .container {
        padding: 0 !important;
    }

    .page-customer-account #content {
        padding: 15px;
    }
}