.o_wsale_product_page #wrap,
.o_wsale_product_page #wrapwrap,
.o_wsale_product_page main {
    background: transparent !important;
}

.o_wsale_product_page .container.oe_website_sale {
    max-width: 1260px;
    padding-top: 36px;
    padding-bottom: 44px;
}
main {
    padding-left: 14px;
    padding-right: 14px;
}
.o_wsale_product_page .row.align-items-center {
    align-items: center !important;
    row-gap: 18px;
    margin-bottom: 30px;
}

.o_wsale_product_page .o_wsale_breadcrumb {
    margin: 0 !important;
    font-size: 1rem;
    color: #3d3d3d;
}

.o_wsale_product_page .o_wsale_breadcrumb a,
.o_wsale_product_page .o_wsale_breadcrumb .breadcrumb-item.active {
    color: #111;
    text-decoration: none;
}

.o_wsale_product_page .o_wsale_breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    color: #646464;
}

.o_wsale_product_page .o_wsale_breadcrumb .breadcrumb-item.active {
    color: #f02728;
    font-weight: 700;
}

.o_wsale_product_page .col-lg-4.d-flex.align-items-center {
    justify-content: flex-end;
}

.o_wsale_product_page .o_searchbar_form {
    width: 100%;
    max-width: 320px;
    margin-left: auto;
}

.o_wsale_product_page .o_searchbar_form .input-group {
    border: 1px solid rgba(240, 39, 40, 0.34);
    border-radius: 11px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.55);
}

.o_wsale_product_page .o_searchbar_form .form-control {
    min-height: 42px;
    border: 0;
    background: transparent;
    color: #494949;
    font-size: 0.98rem;
    box-shadow: none !important;
}

.o_wsale_product_page .o_searchbar_form .form-control::placeholder {
    color: #9b9489;
}

.o_wsale_product_page .o_searchbar_form .btn {
    border: 0;
    background: transparent;
    color: #1d1d1d;
    padding-inline: 16px;
}

.o_wsale_product_page .o_pricelist_dropdown,
.o_wsale_product_page .css_editable_mode_display:has(.o_pricelist_dropdown) {
    display: none !important;
}

#product_detail {
    padding: 0 !important;
}

#product_detail_main {
    --origami-accent: #f02728;
    --origami-soft: #ffd3d8;
    --origami-ink: #1d1d1d;
    display: grid !important;
    grid-template-columns: minmax(320px, 470px) minmax(420px, 1fr);
    column-gap: 70px;
    row-gap: 20px;
    align-items: start !important;
}

#product_detail_main > .o_wsale_product_images,
#product_detail_main > #product_details {
    width: 100%;
    max-width: none;
    float: none;
    margin: 0;
}

#product_detail_main .o_wsale_product_images {
    padding-top: 18px;
}

#o-carousel-product {
    max-width: 430px !important;
    margin: 0 auto;
}

#o-carousel-product .carousel-outer {
    min-height: 486px !important;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: stretch;
    background: transparent !important;
}

#o-carousel-product .carousel,
#o-carousel-product .carousel-inner,
#o-carousel-product .carousel-item.active,
#o-carousel-product .carousel-item {
    width: 100%;
    height: 100%;
    min-height: 486px;
}

#o-carousel-product .carousel-item,
#o-carousel-product .o_carousel_product_outer,
#o-carousel-product .o_carousel_product_image,
#o-carousel-product .o_carousel_product_image_link {
    background: transparent !important;
}

.product_detail_img,
#o-carousel-product img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    mix-blend-mode: normal;
    display: block;
}

#product_details {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
        'title ref'
        'pieces ref'
        'form form'
        'desc desc';
    row-gap: 6px;
    column-gap: 20px;
    padding: 16px !important;
    color: var(--origami-ink);
    align-content: start;
}

#product_details .oe_structure,
#product_details div[t-field='product.description_ecommerce'] {
    display: none !important;
}

#product_details h1[itemprop='name'] {
    grid-area: title;
    margin: 0 !important;
    color: var(--origami-accent) !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: clamp(2.6rem, 2vw + 1.7rem, 4rem) !important;
    line-height: 1.02 !important;
    font-weight: 400 !important;
    letter-spacing: -0.02em;
    align-self: end;
}

.origami-product-detail-piece {
    grid-area: pieces;
    margin: 0 !important;
    color: #111 !important;
    font-size: 2rem !important;
    line-height: 1.05;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: 0.02em;
    text-align: left;
    width: auto;
}

.origami-product-ref {
    grid-area: ref;
    margin: 8px 0 0;
    align-self: end;
    justify-self: end;
    display: inline-flex;
    align-items: baseline;
    gap: 0.15rem;
    color: #111;
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.origami-product-ref strong,
.origami-product-ref span {
    color: inherit;
}

#product_details form {
    grid-area: form;
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

#product_details .js_main_product {
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin-bottom: 0 !important;
}

#product_details .product_price {
    display: block !important;
    margin: 0 !important;
}

#product_details .product_price h3,
#product_details .product_price .oe_price {
    color: var(--origami-accent) !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: clamp(2.2rem, 1.7vw + 1.2rem, 3.5rem) !important;
    line-height: 1.05;
    font-weight: 400 !important;
}

#product_details .product_price .oe_price {
    white-space: nowrap;
}

#product_details .js_add_cart_variants {
    margin: 0 !important;
}

#product_details .variant_attribute,
#product_details .o_wsale_product_attribute {
    margin-bottom: 14px !important;
}

#product_details .attribute_name {
    margin-bottom: 10px !important;
    color: #111 !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    text-transform: uppercase;
}

#product_details .o_wsale_product_attribute {
    display: flex !important;
    flex-wrap: wrap;
    gap: 10px 18px !important;
}

#product_details .form-check {
    min-height: 0;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

#product_details .form-check-input[type='radio'] {
    width: 16px;
    height: 16px;
    margin: 0;
    border-width: 1.5px;
    border-color: var(--origami-accent) !important;
}

#product_details .form-check-input[type='radio']:checked {
    background-color: var(--origami-accent) !important;
    border-color: var(--origami-accent) !important;
}

#product_details .radio_input_value,
#product_details .form-check label,
#product_details .form-check span {
    color: #575757 !important;
    font-size: 0.98rem !important;
    font-weight: 500;
}

#product_details .badge {
    border-radius: 999px;
    background: #d8eff8 !important;
    color: #111 !important;
    border: 1px solid #00a6c7;
    font-size: 0.74rem;
    font-weight: 700;
    padding: 0.2rem 0.5rem;
}

#o_wsale_cta_wrapper {
    display: grid !important;
    grid-template-columns: auto 1fr;
    align-items: center !important;
    justify-content: start;
    margin-bottom: 20px !important;
    width: min(100%, 769px);
}

.css_quantity {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    background: transparent !important;
    border-radius: 0 !important;
    margin: 0 !important;
}

.css_quantity .btn {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #333 !important;
    color: #fff !important;
    border-radius: 4px !important;
    padding: 0 !important;
    font-size: 1rem !important;
    border: 0 !important;
    line-height: 1;
}

.css_quantity .btn:hover {
    background: #1b1b1b !important;
    color: #fff !important;
}

.css_quantity input.quantity {
    width: 24px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #2b2b2b;
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    line-height: 1;
    box-shadow: none !important;
}

#add_to_cart_wrap {
    margin: 0 !important;
    flex: 0 0 auto;
    justify-self: end;
}

.text-nowrap {
    color: #E41E26 !important;
}
#add_to_cart {
    min-width: 184px;
    min-height: 40px;
    border-radius: 10px !important;
    background: var(--origami-accent) !important;
    color: #fff !important;
    border: 0 !important;
    font-size: 0.94rem !important;
    font-weight: 800 !important;
    padding: 11px 24px !important;
    justify-content: center;
    box-shadow: none !important;
}

#add_to_cart:hover,
#add_to_cart:focus {
    background: #d61d1e !important;
}

#product_option_block,
#o_product_terms_and_share,
#product_details .o_product_page_reviews_link,
#product_details .o_base_unit_price_wrapper,
#product_details .css_not_available_msg,
#product_details .alert-warning,
#product_details .accordion,
#product_attributes_simple {
    display: none !important;
}

#product_details form #o_wsale_cta_wrapper {
    order: 1;
}

#product_details form .o_product_tags,
#product_details form .o_tag_badges {
    order: 2;
}

#product_details form .custom_product_description_section {
    order: 3;
    width: 100%;
}

#product_details .o_product_tags,
#product_details .o_tag_badges {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0 !important;
}

#product_details .o_product_tags .badge,
#product_details .o_tag_badges .badge {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 1rem;
    border-radius: 6px;
    border: 0;
    background: #ffcdd2 !important;
    color: var(--origami-accent) !important;
    font-size: 0.95rem;
    font-weight: 500;
}

.custom_product_description_section {
    grid-area: desc;
    margin-top: 0;
    padding: 14px 16px 16px;
    border-radius: 10px;
    background: rgba(214, 214, 214, 0.88);
}

.custom_product_description_section h3 {
    margin: 0 0 10px;
    padding: 0;
    color: #111;
    font-size: 1.05rem;
    font-weight: 800;
}

.custom_product_description_body {
    margin-top: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #4f4f4f;
    font-size: 0.98rem;
    line-height: 1.45;
}

.custom_product_description_body p:last-child {
    margin-bottom: 0;
}

.cart-toast .btn-danger {
    background-color: #d40015 !important;
    border: none !important;
}

@media (max-width: 991.98px) {
    .o_wsale_product_page .container.oe_website_sale {
        padding-top: 20px;
        padding-bottom: 36px;
    }

    #product_detail_main {
        grid-template-columns: 1fr;
        row-gap: 18px;
    }

    #product_detail_main .o_wsale_product_images {
        padding-top: 0;
    }

    #product_details {
        padding-top: 0 !important;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    #o-carousel-product {
        max-width: 100% !important;
        border-radius: 28px !important;
    }

    #o-carousel-product .carousel-outer {
        min-height: 400px !important;
    }

    #o-carousel-product .carousel,
    #o-carousel-product .carousel-inner,
    #o-carousel-product .carousel-item.active,
    #o-carousel-product .carousel-item {
        min-height: 400px;
    }
}

@media (max-width: 767.98px) {
    .o_wsale_product_page .container.oe_website_sale {
        padding-inline: 22px;
    }

    .o_wsale_product_page .row.align-items-center {
        row-gap: 12px;
        margin-bottom: 18px;
    }

    .o_wsale_product_page .col-lg-4.d-flex.align-items-center {
        justify-content: stretch;
    }

    .o_wsale_product_page .o_searchbar_form {
        max-width: none;
    }

    .o_wsale_product_page .o_wsale_breadcrumb {
        font-size: 0.78rem;
        margin-top: 2px !important;
    }

    #o-carousel-product {
        border-radius: 26px !important;
    }

    #o-carousel-product .carousel-outer {
        min-height: 316px !important;
    }

    #o-carousel-product .carousel,
    #o-carousel-product .carousel-inner,
    #o-carousel-product .carousel-item.active,
    #o-carousel-product .carousel-item {
        min-height: 316px;
    }

    #product_details {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            'title title'
            'pieces ref'
            'form form'
            'desc desc';
        row-gap: 8px;
    }

    #product_details h1[itemprop='name'] {
        font-size: clamp(2.2rem, 8vw, 3rem) !important;
        margin-top: 8px !important;
    }

    .origami-product-detail-piece {
        font-size: 1.05rem !important;
        align-self: center;
    }

    .origami-product-ref {
        font-size: 1.05rem !important;
        margin: 0;
        align-self: center;
    }

    #product_details .product_price h3,
    #product_details .product_price .oe_price {
        font-size: clamp(2.1rem, 8vw, 3rem) !important;
    }

    #o_wsale_cta_wrapper {
        grid-template-columns: auto 1fr;
        gap: 14px !important;
        width: 100%;
    }

    #add_to_cart {
        min-width: 200px;
        min-height: 48px;
        border-radius: 12px !important;
        font-size: 0.96rem !important;
        padding-inline: 18px !important;
    }

    #product_details .o_product_tags,
    #product_details .o_tag_badges {
        gap: 10px;
    }

    #product_details .o_product_tags .badge,
    #product_details .o_tag_badges .badge {
        font-size: 0.9rem;
        padding: 0.5rem 0.95rem;
    }
}

@media (max-width: 575.98px) {
    .o_wsale_product_page .container.oe_website_sale {
        padding-inline: 18px;
    }

    .o_wsale_product_page .o_wsale_breadcrumb .breadcrumb-item.d-none.d-lg-inline-block,
    .o_wsale_product_page .o_wsale_breadcrumb .breadcrumb-item.active {
        display: none !important;
    }

    .o_wsale_product_page .o_wsale_breadcrumb .breadcrumb-item::before {
        padding-inline: 0.18rem;
    }

    #o-carousel-product .carousel-outer {
        min-height: 286px !important;
    }

    #o-carousel-product .carousel,
    #o-carousel-product .carousel-inner,
    #o-carousel-product .carousel-item.active,
    #o-carousel-product .carousel-item {
        min-height: 286px;
    }

    #product_details h1[itemprop='name'] {
        font-size: 2.45rem !important;
    }

    .origami-product-detail-piece {
        font-size: 0.98rem !important;
    }

    .origami-product-ref {
        font-size: 0.94rem !important;
    }

    .css_quantity .btn {
        width: 28px;
        height: 28px;
    }

    .css_quantity input.quantity {
        width: 28px !important;
        font-size: 1.55rem !important;
    }

    #add_to_cart {
        min-width: 0;
        width: calc(100% - 94px);
        flex: 1 1 auto;
    }


    #product_details .o_product_tags .badge,
    #product_details .o_tag_badges .badge {
        min-height: 0;
        border-radius: 6px;
    }

    .custom_product_description_body {
        border-radius: 8px;
        font-size: 0.94rem;
    }
}





