@media (min-width: 1200px){
    .container {
        width: 1190px;
    }
}

body,
html {
    width: 100%;
    min-height: 100%;
    font-style: normal;
    font-stretch: normal;
    font-family: 'Open Sans', sans-serif;
}

body > .wrapper,
body > .wrapper > .page {
    width: 100%;
    transition: margin-top 0.2s linear;
    -webkit-transition: margin-top 0.2s linear;
}

body > .wrapper > .page {
    padding-top: 100px;
}

@media screen and (max-width: 991px) {
    body > .wrapper > .page {
        padding-top: 80px;
    }
}

body > .wrapper > .page > h1,
body > .wrapper > .page > h2 {
    display: none;
}

* {
    outline: 0;
    resize: none;
    margin: 0;
    padding: 0;
    border: 0;
}

hr {
    border-color: #dbe2e8;
    margin: 25px 0;
}

ul {
    list-style-type: none;
}

a {
    color: #000;
    text-decoration: none;
}

a:hover {
    color: #df000a;
    text-decoration: none;
}

a:focus {
    outline: 0;
    outline-offset: 0;
}

h3 {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.18;
    color: #060606;
}

a,
a:focus,
a:hover,
a:visited {
    text-decoration: none;
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

a.anchor {
    display: block;
    position: relative;
    top: -95px;
    visibility: hidden;
}

.collapse-pane > a i {
    vertical-align: middle;
    color: #8a99a0;
}

.collapse-pane > a.collapsed i.less,
.collapse-pane > a:not(.collapsed) i.more {
    display: none;
}

[class^="icon-"], [class*="-icon"] {
    line-height: inherit;
}

.bg-gray {
    background-color: #e9eaf0;
}

.bg-white {
    background-color: #fff;
}

.text-danger {
    color: #e00f19;
}

.p-0 {
    padding: 0;
}

.p-50 {
    padding: 50px;
}

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

.mb-100 {
    margin-bottom: 100px;
}

.width-100 {
    width: 100%;
}

.dn{
    display: none;
}

#main-container,
.main-container,
#main-static-container,
#main-region-container,
#main-store-container {
    padding-bottom: 50px;
}

.center-block {
    display: block;
    margin-right: auto;
    margin-left: auto;
}

.h1,
.h2,
.h3,
h1,
h2,
h3 {
    margin-top: 20px;
    margin-bottom: 10px;
}

html body .desktop {
    display: block !important;
}

html body .mobile {
    display: none !important;
}

html body .btn-mobile {
    display: none !important;
}

@media screen and (max-width: 767px) {
    html body .desktop {
        display: none !important;
    }
    html body .mobile {
        display: block !important;
    }
    html body .btn-mobile {
        display: block !important;
        width: 80%;
        height: 50px;
        color: #9ca5ba;
        background-color: transparent;
        font-size: 14px;
        font-weight: bold;
        border: 2px solid #dbe2e8;
        border-radius: 50px;
        line-height: 46px;
        padding: 0;
        margin: 25px auto;
        text-align: center;
    }
    .btn-mobile:hover {
        color: #000 !important;
        border-color: #000;
    }
    footer .container.mobile .cgu{
        line-height: 2.3rem;
    }
    html body footer .btn-mobile{
        width: 85%;
    }
}

#pubTV .recentAd ul a {
    display: block;
    position: relative;
}

.no-gutter > [class*='col-'] {
    padding-right:0;
    padding-left:0;
}

/* CUSTOM SELECT */

.custom-select {
    display: inline-block;
    height: 42px;
    width: 60px;
    position: relative;
    line-height: 22px;
    text-align: left;
    font-size: 14px;
    border: 1px solid #e9eaf0;
}

.custom-select select {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    padding-left: 1rem;
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.custom-select select::-ms-expand {
  display: none;
}

.custom-select select,
.custom-select select:focus,
.custom-select select:-moz-focusring {
    border: 0;
    outline: 0;
    color: transparent;
    text-shadow: 0 0 0 #000;
}

.custom-select i {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 5px;
    font-size: 17px;
}

/* CUSTOM SELECT WITH BORDERED OPTIONS */

#delivery-address-select-button,
#billing-address-select-button{
    margin-bottom: 2.5rem;
    padding: 0 1em;
    width: 50%;
    line-height: 34px;
    color: #535e62;
    background-color: #fff;
    border: solid 1px #d7dbe7;
    border-radius: 0;
}

#delivery-address-select-button .ui-selectmenu-icon.ui-icon,
#billing-address-select-button .ui-selectmenu-icon.ui-icon{
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
}

#delivery-address-select-menu .ui-menu-item-wrapper,
#billing-address-select-menu .ui-menu-item-wrapper{
    padding: 0 1em;
    line-height: 34px;
    border-bottom: solid 1px #d7dbe7;
    text-transform: none;
    color: #535e62;
}

#delivery-address-select-menu .ui-state-active,
#delivery-address-select-menu .ui-widget-content .ui-state-active,
#delivery-address-select-menu .ui-widget-header .ui-state-active,
#delivery-address-select-menu a.ui-button:active, .ui-button:active,
#delivery-address-select-menu .ui-button.ui-state-active:hover,
#billing-address-select-menu .ui-state-active,
#billing-address-select-menu .ui-widget-content .ui-state-active,
#billing-address-select-menu .ui-widget-header .ui-state-active,
#billing-address-select-menu a.ui-button:active, .ui-button:active,
#billing-address-select-menu .ui-button.ui-state-active:hover{
    margin: 0;
    border-top: none;
    border-right: none;
    border-bottom: solid 1px #d7dbe7;
    border-left: none;
    color: #535e62;
    background: #fff;
}

#delivery-address-select-menu .ui-menu-item:last-child .ui-menu-item-wrapper,
#delivery-address-select-menu .ui-menu-item:last-child .ui-state-active,
#delivery-address-select-menu .ui-menu-item:last-child .ui-widget-content .ui-state-active,
#billing-address-select-menu .ui-menu-item:last-child .ui-menu-item-wrapper,
#billing-address-select-menu .ui-menu-item:last-child .ui-state-active,
#billing-address-select-menu .ui-menu-item:last-child .ui-widget-content .ui-state-active{
    border-bottom: none;
}

@media screen and (max-width: 576px) {
    #delivery-address-select-button,
    #billing-address-select-button {
        width: 100%;
    }
}

/* CUSTOM BUTTONS */

.radius-button {
    display: inline-block;
    padding: 0 2rem;
    height: 42px;
    width: auto;
    min-width: 20rem;
    line-height: 40px;
    border-radius: 42px;
    text-align: center;
    font-size: 13px;
    font-weight: 600;
    border-style: solid;
    border-width: 1px;
    cursor: pointer;
    color: #8a999f;
    background-color: #fff;
    border-color: #d7dbe7;
}

@media screen and (max-width: 767px) {
    .radius-button.responsive {
        display: block;
        width: 80%;
        height: 50px;
        color: #9ca5ba;
        background-color: transparent;
        font-size: 14px;
        font-weight: bold;
        border: 2px solid #dbe2e8;
        border-radius: 50px;
        line-height: 46px;
        padding: 0;
        margin: 25px auto;
        text-align: center;
    }
    .radius-button.responsive:hover {
        color: #000;
        border-color: #000;
    }
}

body:not(.has-touch) .radius-button.reverse:hover {
    color: #8a999f;
    background-color: #fff;
    border-color: #d7dbe7;
}

.radius-button.reverse {
    color: #fff;
    background-color: #a9b4b9;
    border-color: #a9b4b9;
}

body:not(.has-touch) .radius-button:not(.reverse):hover {
    color: #fff;
    background-color: #a9b4b9;
    border-color: #a9b4b9;
}

.radius-button.green {
    color: #9ac127;
    background-color: #fff;
    border-color: #9ac127;
    white-space: nowrap;
}

body:not(.has-touch) .radius-button.green.reverse:hover {
    color: #9ac127;
    background-color: #fff;
    border-color: #9ac127;
    white-space: nowrap;
}

.radius-button.green.reverse {
    color: #fff;
    background-color: #9ac127;
    border-color: #9ac127;
}

body:not(.has-touch) .radius-button.green:not(.reverse):hover {
    color: #fff;
    background-color: #9ac127;
    border-color: #9ac127;
}

.radius-button.full {
    width: 100%;
}

.radius-button.disable {
    pointer-events: none;
    opacity: 0.5;
}

.wishlist-button {
    float: left;
    display: inline-block;
    width: 42px;
    height: 42px;
    line-height: 40px;
    text-align: center;
    vertical-align: middle;
    border: solid 1px #d7dbe7;
    border-radius: 50%;
    background-color: #fff;
    position: relative;
}

.wishlist-button > div {
    display: none;
}

.wishlist-button i {
    font-size: 16px;
    color: inherit;
}

.wishlist-button .tooltip-text {
    position: absolute;
    opacity: 0;
    font-size: 1.2rem;
    top: 47px;
    left: 5px;
    height: 3rem;
    line-height: 3rem;
    width: 145px;
    color: #fff;
    text-align: center;
    z-index: 1;
    transition: opacity 0.5s ease-in-out;
}

.wishlist-button .tooltip-text::after {
    content: "";
    position: absolute;
    top: -10px;
    left: 15px;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: transparent;
}

body:not(.has-touch) .wishlist-button:hover .tooltip-text {
    opacity: 1;
}

body:not(.has-touch) .wishlist-button.add:hover {
    color: #9ac127;
    border-color: #9ac127;
}

.wishlist-button.add {
    color: #afb6c7;
}

.wishlist-button.add .tooltip-text {
    background-color: #a0c535;
}

.wishlist-button.add .tooltip-text::after {
    border-bottom-color: #a0c535;
}

.wishlist-button.add > div.add {
    display: block;
}

.wishlist-button.remove {
    color: #9ac127;
    border-color: #9ac127;
}

.wishlist-button.remove .tooltip-text {
    background-color: #a9b4b9;
}

.wishlist-button.remove .tooltip-text::after {
    border-bottom-color: #a9b4b9;
}

.wishlist-button.remove > div.remove {
    display: block;
}

/* CUSTOM FORM ELEMENTS */

form > p.mandatory-notice {
    color: #8a999f;
    margin-top: 1rem;
    margin-bottom: 3rem;
}

form .form-error {
    display: none;
    color: #dc3545;
}

.form-group, .form-icon {
    position: relative;
}

.form-icon > i {
    position: absolute;
    top: 50%;
    right: 2rem;
    transform: translateY(-50%);
    cursor: pointer;
}

.form-group > label {
    color: #535e62;
    margin-bottom: 1rem;
}

.form-group > .form-control {
    color: #535e62;
    margin-bottom: 1rem;
    border-radius: 0;
    border-color: #d7dbe7;
    height: 4rem;
}

.form-group .help-block {
    text-align: left;
}

.form-group > input[type="checkbox"],
.form-group > input[type="radio"] {
    display: none;
}

.form-group > input[type="checkbox"] + label,
.form-group > input[type="radio"] + label {
    position: relative;
    width: 100%;
    cursor: pointer;
    padding-left: 4rem;
    margin: 0;
    font-weight: normal;
}

.form-group > input[type="checkbox"] + label::after,
.form-group > input[type="checkbox"] + label::before,
.form-group > input[type="radio"] + label::after,
.form-group > input[type="radio"] + label::before {
    font-family: "Material Icons";
    text-rendering: optimizelegibility;
    font-feature-settings: "liga";
    font-style: normal;
    text-transform: none;
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    font-size: 2rem;
    -webkit-transition: opacity 0.2s ease-in;
    -moz-transition: opacity 0.2s ease-in;
    -ms-transition: opacity 0.2s ease-in;
    -o-transition: opacity 0.2s ease-in;
    transition: opacity 0.2s ease-in;
    font-weight: normal !important;
    color: #8a999f;
}

.form-group > input[type="checkbox"] + label::after,
.form-group > input[type="checkbox"] + label::before {
    content: 'check_box_outline_blank';
}

.form-group > input[type="radio"] + label::after,
.form-group > input[type="radio"] + label::before {
    content: 'radio_button_unchecked';
}

.form-group > input[type="checkbox"] + label::before {
    opacity: 1;
    border-color: #8a999f;
}

.form-group > input[type="checkbox"] + label::after,
.form-group > input[type="radio"] + label::after {
    opacity: 0;
    color: #9ac127;
}

.form-group > input[type="checkbox"] + label::after {
    content: 'check_box';
}

.form-group > input[type="radio"] + label::after {
    content: 'radio_button_checked';
}

.form-group > input[type="checkbox"]:checked + label::after,
.form-group > input[type="radio"]:checked + label::after {
    opacity: 1;
}

/* CART ITEMS LIST */

.cart-items > .item.row {
    overflow: hidden;
}

.cart-items > .item.row {
    margin-bottom: 50px;
}

.cart-items > .item.row .product-picture {
    padding: 0;
}

.cart-items > .item.row .product-picture img {
    padding-right: 35px;
}

@media screen and (max-width: 991px) {
    .cart-items > .item.row .product-picture img {
        margin-bottom: 5rem;
        margin-left: auto;
        margin-right: auto;
        padding-right: 0;
    }
}

.cart-items > .item.row .product-header > h3.name,
.cart-items > .item.row .product-price > h3.value {
    font-size: 1.6rem;
    margin-top: 0;
    margin-bottom: 10px;
}

.cart-items > .item.row .product-header > p {
    color: #8a999f;
    font-weight: 600;
}

.cart-items > .item.row .product-price {
    font-size: 2.2rem;
    font-weight: 600;
    text-align: right;
    padding: 0;
}

.cart-items > .item.row .product-price > .price-block .value {
    font-weight: 700;
}

.cart-items > .item.row .product-price > .price-block span {
    color: #8a999f;
    line-height: 1rem;
}

.cart-items > .item.row .product-price > .price-block span.eco-participation {
    margin-top: 0.5rem;
}

/* Product price */

.price-block {
    display: flex;
    font-weight: 600;
    text-align: right;
    font-size: 1rem;
    flex-direction: row;
    justify-content: flex-end;
    align-content: center;
    flex-wrap: wrap;
}

@media screen and (min-width: 992px) and (max-width: 1200px) {
    .price-block {
        font-size: 0.8rem;
    }
}

.price-block p {
    margin: 0;
    line-height: 2rem;
    vertical-align: middle;
}

.price-block .old {
    font-size: 1.4em;
    color: #8a99a0;
    text-decoration: line-through;
}

.price-block .value {
    font-size: 2.2em;
    color: #000 !important;
}

.actions-block {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-shrink: 0;
}

.address-container p {
    color: #000;
    margin-bottom: 0.5rem;
}

.address-container p.name {
    text-transform: uppercase;
    font-weight: 600;
}

.address-container a {
    color: #8a999f;
    font-weight: 600;
    text-decoration: underline;
}

.address-container .details {
    margin-top: 1rem;
}

.toggle-panel {
    cursor: pointer;
    -webkit-user-select: none; /* Safari 3.1+ */
    -moz-user-select: none; /* Firefox 2+ */
    -ms-user-select: none; /* IE 10+ */
    user-select: none; /* Standard syntax */
}

.toggle-panel > .icon-chevron-top {
    margin-left: 15px;
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 100;
}

.toggle-panel > .icon-chevron-top {
    transform: rotate(0);
}

.toggle-panel.collapsed > .icon-chevron-top {
    transform: rotate(180deg);
}
