/********************
	Part - Product Layout
********************/
.product__grid {
    width  : 100%;
    margin : 0 auto;
}

@media (max-width : 1199px) {
    .product__grid {
        display        : flex;
        flex-direction : column;
        max-width      : var(--container-max-width-primary);
    }

    .product__more-infos__wrapper {
        order  : 1;
        margin : 15px 0;
    }

    .product-accessories {
        order : 5;
    }
}

/********************
	Part - Product Images
********************/
.product__images__wrapper {
    position : relative;
    padding  : 20px 0;
}

.product-cover img {
    width : 100%
}

/********************
	Part - Product flags
********************/
.product__images__wrapper .product-flags {
    position : absolute;
    top      : 0;
    right    : 0;
    z-index  : 5;
}

/********************
	Part - Product cover
********************/
.product-cover {
    position : relative;
}

/********************
	Part - Product thumbs Images
********************/
.product__thumbnails:not(.product__thumbnails__slider) {
    display  : grid;
    grid-gap : 15px;
}

.product__thumbnails.slick-slider .slick-arrow svg {
    fill         : transparent;
    stroke       : white;
    stroke-width : 1.5px;
    width        : 31px;
}

.images-container {
    background : black;
    padding    : 15px;
}

.images-container .thumb-container {
    text-align : center;
    background : black;
}

.product__thumbnails .thumb {
    border    : 2px solid transparent;
    cursor    : pointer;
    width     : 100%;
    min-width : 70%;
    margin    : 0 auto;
    padding   : 7px;
}

.product__thumbnails .thumb.selected {
    border : 2px solid var(--color-primary);
}

@media (max-width : 1199px) {
    .product__thumbnails:not(.product__thumbnails__slider) {
        grid-template-columns : repeat(auto-fill, minmax(100px, 1fr));
    }
}

/********************
	Part - Product thumbs Slider
********************/
.product__thumbnails.slick-slider.slick-initialized {
    display  : grid !important;
    grid-gap : 10px;
}

@media (max-width : 1199px) {
    .product__thumbnails.slick-slider.slick-initialized {
        grid-template-columns : auto 1fr auto;
    }
}

.product__thumbnails.slick-slider .slick-arrow {
    position : relative;
}

/********************
	Part - Product description short
********************/
.product-description-short {
    color         : lightgrey;
    margin-bottom : 35px;
}

.product-description-short > p {
    margin-top : 0.8em;
    font-size  : var(--font-size-200)
}

/********************
	Part - Product information
********************/
.product-information {
    font-size     : var(--font-size-300);
    color         : white;
    /*margin-top: 20px;*/
    margin-bottom : 10px;
}

.product-information .manufacturer-logo {
    height : 35px
}

.manufacturer__container {
    margin-bottom : 10px;
}

.manufacturer-text a {
    color      : var(--color-secondary);
    transition : 0.4s ease;
}

.manufacturer-text a:hover {
    color : var(--color-secondary-40)
}

.product-information .product-description img {
    max-width : 100%;
    height    : auto
}


/********************
	Part - Product availability
********************/
#product-availability {
    margin-top  : .625rem;
    display     : inline-block;
    font-weight : 500;
}

#product-availability > i {
    width         : 10px;
    height        : 10px;
    display       : inline-block;
    border-radius : 100%;
}

#product-availability .product-available {
    background : green;
}

#product-availability .product-available-label {
    color : green;
}

#product-availability .product-last-items {
    background : orangered;
}

#product-availability .product-last-items-label {
    color : orangered;
}

#product-availability .product-unavailable {
    background : red;
}

#product-availability .product-unavailable-label {
    color : red;
}


#product-availability .material-icons {
    line-height : inherit;
}

#product-availability .product-available {
    color : #4cbb6c;
}

#product-availability .product-last-items,
#product-availability .product-unavailable {
    color : #ff9a52;
}

/********************
	Part - Product details
********************/
#product-details .label {
    font-size   : 1rem;
    color       : var(--color-black-default);
    font-weight : 700
}

tbody tr td:first-child {
    padding-left : 5px;
}

/********************
	Part - Product features
********************/
.product-reference {
    margin-top : 1.25rem;
    /*margin-left : .3125rem*/
}

.product-features .h6 {
    color       : white;
    font-weight : 500;
    font-size   : var(--font-size-300)
}

.product-features dl, .product-reference dl {
    margin-bottom : 0;
}

.product-features > dl.data-sheet, .product-reference > dl.data-sheet {
    display     : flex;
    flex-wrap   : wrap;
    align-items : stretch
}

.product-features > dl.data-sheet dd.value,
.product-features > dl.data-sheet dt.name,
.product-reference > dl.data-sheet dd.value,
.product-reference > dl.data-sheet dt.name {
    flex           : 1 0 40%;
    font-weight    : 400;
    /*background     : var(--color-grey-default);*/
    padding        : .625rem;
    margin-right   : .625rem;
    min-height     : 2.5rem;
    word-break     : normal;
    text-transform : capitalize;
    margin-bottom  : .5rem
}

.details-item {
    margin-bottom : 0.3em;
}

.product-features .name, .product-reference .name {
    color : white
}

.product-features .value, .product-reference .value {
    color : var(--color-secondary)
}

/*.product-features > dl.data-sheet dd.value:nth-of-type(2n),*/
/*.product-features > dl.data-sheet dt.name:nth-of-type(2n) {*/
/*    background : #f6f6f6*/
/*}*/

/********************
	Part - Product variants
********************/
.product-variants .form-control-select option {
    background : #090909;
    margin-top : 10px;
    color      : white;
}

.product-variants .form-control-select option.out-of-stock {
    background      : rgba(9, 9, 9, 0.70);
    color           : red;
    text-decoration : line-through;
    font-weight     : 200;
}

.product-variants .form-control-select {
    background : #ededed url('../../img/arrow-down.png') no-repeat scroll right .5rem center/1.25rem 1.25rem;
}

.product-variants > .product-variants-item {
    margin : 1.25rem 0
}

.product-variants > .product-variants-item select {
    background-color : transparent;
    width            : auto;
    padding-right    : 1.875rem;
    /*box-shadow       : 2px 2px 4px 0 rgba(0, 0, 0, .2)*/
    border           : 1px solid white;
}

.product-variants > .product-variants-item ul li {
    margin-right : .625rem
}

.product-variants > .product-variants-item .color {
    margin-left : 0;
    margin-top  : 0
}

/********************
	Part - Product prices
********************/
.product-prices {
    padding         : 1rem 0;
    display         : flex;
    flex-direction  : row;
    align-items     : center;
    justify-content : space-between;
}

.product-prices .product-discount-regular {
    align-self    : end;
    margin-bottom : 5px;
    margin-left   : 10px;
}

.product-prices__container {
    display        : flex;
    flex-direction : row;
}

/********************
	Part - Product price
********************/
.current-price {
    display     : inline-block;
    color       : var(--color-secondary);
    font-size   : var(--font-size-800);
    line-height : normal;
    font-weight : 700;
}

.product-discount-regular .regular-price {
    color    : var(--color-white-default);
    position : relative;
}

.product-discount-regular .regular-price:before {
    position          : absolute;
    content           : "";
    left              : -5%;
    top               : 50%;
    right             : 0;
    width             : 110%;
    border-top        : 2px solid;
    border-color      : var(--color-secondary);
    -webkit-transform : rotate(-15deg);
    -moz-transform    : rotate(-15deg);
    -ms-transform     : rotate(-15deg);
    -o-transform      : rotate(-15deg);
    transform         : rotate(-15deg);
}

/********************
	Part - Product unit price
********************/
.product-unit-price {
    font-size     : .8125rem;
    margin-bottom : 0
}

/********************
	Part - Product discount
********************/
.product-discount .discount {
    background     : var(--color-secondary);
    color          : var(--color-white-default);
    font-weight    : 600;
    padding        : .3125rem .625rem;
    font-size      : var(--font-size-300);
    text-transform : uppercase;
    display        : inline-block
}

/********************
	Part - Product thumb-mask (pack product)
********************/
.thumb-mask > .mask {
    position : relative;
    width    : 3.438rem;
    height   : 3.438rem;
    overflow : hidden;
    border   : 1px solid var(--color-grey-default);
    margin   : .625rem 0
}

.thumb-mask > .mask img {
    width  : 55px;
    height : 55px
}

/********************
	Part - Product block reassurance
********************/
#block-reassurance {
    margin-top : 1rem
}

#block-reassurance ul {
    display         : flex;
    flex-direction  : column;
    align-items     : center;
    justify-content : space-between;
}

#block-reassurance img {
    width        : 1.563rem;
    margin-right : .625rem
}

#block-reassurance li .block-reassurance-item {
    padding : 1rem 1.5rem
}

#product #block-reassurance span {
    font-weight : 700
}

/********************
	Part - accessories
********************/
.product-accessories__bg {
    background : var(--color-grey-default);
}

.product-accessories {
    padding : 20px 0;
}

.product-accessories .h5 {
    color         : #fff;
    text-align    : center;
    font-size     : var(--font-size-600);
    margin-bottom : 1em;
    margin-top    : 1em;
    font-weight   : 400;
}

.product-accessories .products {
    display               : grid;
    grid-template-columns : repeat(auto-fill, minmax(250px, 1fr));
    grid-gap              : 20px;
}

/********************
	Part - More infos
********************/
.product-more-informations-without-btn__container {
    background : #161616;
    padding    : 15px;
}

@media (max-width : 768px) {
    .product-more-informations-without-btn__container {
        overflow-x : scroll;
    }
}

.product-more-infos-title {
    color         : white;
    text-align    : center;
    font-size     : var(--font-size-600);
    margin-bottom : 1em;
    margin-top    : 1em;
}

.product-description {
    color : lightgrey;
}

.product-description p {
    margin-top : 0.8em;
}

#more-infos .product-description table, #more-infos .product-description table td {
    border : 1px solid var(--btn-secondary-bg-color) !important;
}

#more-infos .product-description table {
    width : 100% !important;
}

/********************
	Part - Avis produits
********************/
#lgcomment #more_less {
    text-align    : center;
    margin-bottom : 20px;
}

/********************
	Autres
********************/
.product-additional-info {
    /*display: flex;*/
    /*flex-direction: column;*/
    display               : grid;
    grid-template-columns : 100%
}

.product-additional-info .social-sharing {
    order : 10;
}

.shopping-list {
    grid-column : 1;
    grid-row    : 3;
    margin      : 0;
}

.social-sharing {
    grid-column : 1;
    grid-row    : 4;
}

.product-additional-info .ps_checkout.payment-method-logo-block {
    grid-column     : 1/3;
    margin          : 20px 0;
    display         : flex;
    flex-direction  : row-reverse;
    align-items     : center;
    justify-content : flex-end;
}

.mailalert__container {
    margin-top  : 10px;
    grid-column : 1/3;
    grid-row    : 2;
}

.product-additional-info .ps_checkout.payment-method-logo-block-title {
    margin      : 0;
    margin-left : 5px;
    color       : white;
}

.product-additional-info .ps_checkout.payment-method-logo-block-title img {
    filter : brightness(1.5);
}

.add-shopping-list.btn.btn-primary {
    background : #090909;
}


.js-mailalert {
    display    : flex;
    flex-wrap  : wrap;
    margin-top : 5px;
}

.js-mailalert .btn-primary {
    border-radius : 0;
    font-weight   : 400;
}

.js-mailalert input {
    margin-right : 10px;
}


.product-information .btn-secondary.add-to-cart {
    border-radius : 0;
    font-size     : var(--font-size-150);
    padding       : 1em;
}

.product__main-infos__wrapper .product__main-infos {
    background : #090909;
    padding    : 15px;
}

.product__main-infos .h1, .title-mobile {
    color          : white;
    text-transform : initial;
    font-weight    : 500;
    line-height    : 1;
    margin-top     : 0;
    margin-bottom  : 0.25em;
}

.title-mobile {
    margin-top : 0.55em;
}

#link-more {
    text-decoration : underline;
    color           : white;
}

#link-more:hover {
    color : grey;
}

.title-mobile {
    display : none;
}

@media (max-width : 1023px) {
    .breadcrumb__wrapper {
        display : none;
    }

    .title-mobile {
        display : initial;
    }

    .product__main-infos .h1 {
        display : none;
    }

    .product-add-to-cart {
        display        : flex;
        flex-direction : column-reverse;
    }

    .product-information {
        display        : flex;
        flex-direction : column;
        margin         : 0;
    }

    #link-more {
        order      : 3;
        text-align : center;
        margin-top : 20px;
    }

    .product-discounts {
        margin-bottom : 0;
    }

    #product-availability {
        margin-top    : 0;
        margin-bottom : .625rem;
    }

    .product-quantity {
        margin-top : 10px;
    }

    .product-add-to-cart .control-label {
        display : none;
    }

    .product-prices {
        padding : 0.75rem 0
    }
}

/* ODOO - fix attributs style avec largeur fixe */
.o_group.o_inner_group,
.o_group.o_inner_group table,
.o_group.o_inner_group td,
.oe_form_field_html {
    width : auto !important;
}

