/* ----------------------------------------------------------------
    Containers
-----------------------------------------------------------------*/

html {
    font-size: 16px;
    height: 100%;
    padding: 0!important;
    position: relative;
}

* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

body {
    background: #fff;
    color: #000000;
    font-family: "Lato","Arial", sans-serif
}
.container{
    position: relative;
    max-width: 1366px;
}

.container-width{
    max-width: 1366px;
    margin: 0 auto;
}



/* ----------------------------------------------------------------
    Typography
-----------------------------------------------------------------*/
h1,
.h1 {
    font-size: 1.25rem;
}

h2,
.h2 {
    font-size: 1.125rem;
}

h3,
.h3 {
    font-size: 1.5rem;
    color: #333;
}

h4,
.h4 {
    font-size: 1.5rem;
}

h5,
.h5 {
    font-size: 1.125rem;
}

p{
    margin-bottom: 0;
    font-weight: 350;
    font-size: 1rem;
}

b, strong{
    font-weight: 600;
}

.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p {
    color: #fff !important
}

.fs-1{
    font-size: 0.75rem;
}
.fs-2{
    font-size: 0.9rem;
}
.fs-3{
    font-size: 1rem;
}
.fs-4{
    font-size: 1.125rem;
}
.fs-5{
    font-size: 1.25rem;
}

a,
a:hover,
a:hover:before{
    color: #e20030;
    text-decoration: none;
    transition: 0.2s;
}

a:focus {
    outline: none!important;
    border-radius: 0!important;
    border: none!important;
}

.underline {
    padding-bottom: 1px;
    border-bottom-style: solid;
    border-bottom-width: thin;
    width: fit-content;
    text-decoration: none!important;
}

ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.contact h2 {
    font-size: 1.5rem;
    color: #e20030;
    font-weight: 600;
    margin-bottom: 1rem;
}

.transparent{
    color: transparent!important;
}

.contact .invalid-feedback{
    margin-top: 0.25rem;
}

.cms strong{
    font-weight: 500!important;
}
* {
    outline: none /* disable the 'focus' around text boxes in Firefox*/
}
.underline {
    text-decoration: underline
}

.small-txt {
    font-size: 1rem !important;
    letter-spacing: -0.3px;
}

.light {
    font-weight: 300;
}

.text-white .underline {
    border-bottom-color: #fff
}

a:hover.underline {
    text-decoration: none;
}
.font-size-smaller{
    font-size: 0.75rem;
}
.font-size-small{
    font-size: 0.875rem;
}
.font-size-normal{
    font-size: 1rem;
}
.font-size-medium{
    font-size: 1.125rem;
}
.font-size-big{
    font-size: 1.25rem;
}
.font-size-bigger{
    font-size: 1.5rem;
}

/* ----------------------------------------------------------------
    Colors
-----------------------------------------------------------------*/
:root {
    --red-on-black: #ef1947;
}

.color-alt {
    color: #6ab53c
}

.color-grey-dark {
    color: #333 !important
}

.color-grey {
    color: #999
}

.red {
    color: #e20030 !important;
}

.green {
    color: #6ab53c !important;
}

.white {
    color: #fff!important;
}

.bg-red {
    background-color: #e20030
}

.bg-green {
    background-color: #6ab53c !important
}

.bg-dark {
    background-color: #282828 !important
}

.bg-grey {
    background-color: #f7f7f7 !important
}

.bg-grey-alt {
    background-color: #dddee0 !important
}

.bg-grey-alt-2 {
    background-color: #ebebeb !important
}

.bg-black {
    background-color: #000
}

.box-shadow {
    box-shadow: 1px 3px 20px 0 rgba(0, 0, 0, 0.15)
}

.box-shadow-img {
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
    border: 25px solid #ffffff;
}
.border-thin{
    border:0.5px solid #ddd
}

.img-fluid{
    width: 100%;
}
.entry-img-fluid{
    margin-top: 1rem;
}

.col-md-6 .entry-img-fluid{
    margin: 2rem;
}
.img-fluid,
.entry-img-fluid{
    height: auto;
    display: block;
    max-width: 100%;
}

/* ----------------------------------------------------------------
    Formulaires
-----------------------------------------------------------------*/
.form-control::placeholder{
    color: #333;
}
select,
.custom-select {
    cursor: pointer;
    display: flex;
    align-items: center;
    -webkit-appearance: none;
}

.form-check-input{
    position: relative;
}
.custom-select[disabled] {
    cursor: not-allowed;
}

.custom-select a,
.custom-select span {
    color: #495057;
    font-size: 0.875rem
}

.custom-select,
.form-control {
    padding: .5rem .75rem;
    font-size: 0.9rem;
    color: #222;
    height: auto;
    line-height: 1.125;
    border: 0.5px solid #ddd;
    border-radius: 0;
    width: 100%;
}

textarea.form-control {
    min-height: 6rem
}

.form-control::-moz-placeholder {
    color: #777;
    font-style: italic;
    opacity: 1;
}

.form-control:-ms-input-placeholder,
.form-control::-webkit-input-placeholder,
.form-white .form-control::-moz-placeholder{
    color: #000;
    font-style: italic;
    opacity: 1;
}

.form-white .form-control:-ms-input-placeholder,
.form-white .form-control::-webkit-input-placeholder{
    color: #999;
    font-style: normal;
}

.contact .form-group i{
    margin-top: 5px;
    display: inline-block;
    font-size: 0.85rem;
    font-weight: 300;
}

label.col-form-label {
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.25rem;
}
.contact label.col-form-label {
    margin: 0.25rem 0;
    padding-top: 0!important;
}

.form-check-label input {
    position: relative;
}

.form-check-label a{
    display: block;
}

.form-check-label,
.form-check,
.forget {
    font-size: 1rem;
    line-height: initial;
}

.dynamic-form-rows .form-check{
    margin-left: 1rem;
    padding-bottom: 1rem;
}

.dynamic-form-info{
    padding: 1rem 1.5rem;
    margin: 0.5rem auto 0 auto;
    background: #fff7d7;
    color: #111;
    font-size: 0.95rem;
    line-height: 1.25rem;
    border: 1px solid #8d6e33;
    text-align: justify;
}

.dynamic-form-info div{
    color: #7c612c;
    font-weight: 400;
}

.dynamic-form-info a{
    font-weight: 600;
    color: #7c612c!important;
}
.tooltip-form {
    position: relative;
    display: inline-block;
    top: -2px;
    margin-left: 2px;
    z-index: 50;
}

label.col-form-label a.info{
    font-size: 1rem!important;
}

.form-white .form-control.form-control-file {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    padding: 0;
    height: calc(2.25rem + 2px);
    background-color: transparent;
    width: auto;
    margin: 0.5rem 0.75rem;
    display: inline-block;
    border: 0;
    z-index: 5;
}

input::file-selector-button {
    display: none;
}

.attachment-label {
    padding: 0.5rem 1rem;
    cursor: pointer;
    border: 1px solid #9c9c9c !important;
    float: left;
    margin: 0;
    font-size: 0.875rem;
    z-index: 10!important;
    background: #fff;
    position: relative;
}

.attachment-wrap {
    position: relative;
    height: 50px;
}

#fos_user_resetting_form {
    width: 100%
}

#js-address-container .form-check {
    display: inline-flex;
    list-style-type: none;
}

.custom-file-input:lang(fr) ~ .custom-file-label::after,
.custom-file-02::after {
    content: "Parcourir"
}

.custom-file-label {
    border-radius: 0;
    color: #999;
    font-size: 1rem
}

.custom-file-label::after,
.custom-file-02::after {
    background-color: #f7f7f7;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%
}

.form-group::after {
    background-color: #f7f7f7;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%
}

/*
form[name=change_password] .form-group:nth-of-type(2),
#app_customer_registration .picto-card:first-of-type .row .col-12:nth-of-type(2) .form-group:first-of-type{
    margin-bottom: 0;
}
*/

.custom-file-02 input{
    padding: .375rem .75rem;
    line-height: 1.5;
    color: #495057;
    background-color: transparent!important;
    border: 1px solid #ced4da!important;
    width: 100%;
    z-index: 10;
    position: relative;
    cursor: pointer;
    min-height: 38px;
}
.custom-file-02::after{
    position: absolute;
    z-index: 5;
    top: 0;
    right: 1rem;
    padding: 0 1rem;
    border-left: 1px solid #ced4da!important;
}
.contact form .wrap .picto-card{
    max-width: 900px;
    margin: 0 auto;
    padding: 1rem 1.5rem;
    flex-direction: column;
}
.contact form .wrap{
    padding: 0;
}

#uploadFieldDiv .col-sm-12 .form-group{
    background: #333;
    color: #fff;
    padding-left: 1rem;
}

.form-horizontal .col-md-8{
    flex-direction: column;
    gap: 15px;
}

.form-horizontal i{
    font-weight: 300;
    font-size: 0.85rem;
}

/* Registration form */


.tooltip-form {
    position: relative;
    display: inline-block;
    top: -2px;
    margin-left: 2px;
}

.tooltip-form .tooltip-text-form {
    visibility: hidden;
    width: 300px;
    font-weight: 400;
    max-width: 300px;
    background-color: rgba(17, 17, 17, 0.85);
    color: #fff;
    text-align: justify;
    padding: 1rem;
    position: absolute;
    z-index: 1;
    bottom: 105%;
    left: 50%;
    margin-left: -60px;
    opacity: 0;
    transition: opacity 0.3s;
}


.tooltip-form:hover .tooltip-text-form {
    visibility: visible;
    opacity: 1;
}

.tooltip-text-form .underline{
    color: #fff!important;
}

.tooltip b.red{
    cursor: pointer;
}
.fos_user_registration_register .picto-card{
    margin-bottom: 1.5rem;
    padding: 1.5rem 2.5rem;
}

.fos_user_registration_register label.col-form-label{
    font-size: 1rem;
}

.fos_user_registration_register p{
    font-size: 1rem;
    font-weight: 300;
}

.fos_user_registration_register label.form-check-label{
    font-size: 0.95rem;
    font-weight: 400;
    line-height: 1.25rem;
}

.fos_user_registration_register label.form-check-label a{
    font-size: 1rem;
    font-weight: 600;
    display: inline-block;
    margin-top: 0.5rem;
}

.fos_user_registration_register .col-md-6 .form-check {
    padding: 0 1rem 0 2rem;
}

.fos_user_registration_register h3{
    text-transform: uppercase;
    font-size: 1.125rem;
}

.fos_user_registration_register .form-contact-information .dynamic-controls .form-group:nth-of-type(1){
    display: none;
}
.compte .dynamic-controls .form-group {
    flex-direction: column;
    margin-bottom: 0;
}
.compte .dynamic-controls .btn {
    background: #6ab53c!important;
    border: 1px solid #6ab53c;
    float: right;
    margin-top: 1rem;
    padding: 0.35rem 0;
    font-size: 0.85rem;
}

/* Custom Select */
.modal-body .select,
.package .select,
.sidebar .select {
    position: relative;
    display: block;
    height: 2.5em;
    line-height: 3;
    background: #fff;
    overflow: hidden;
    border: 1px solid #ddd;
    outline: none !important;
}

.modal-body select,
.package select,
.sidebar select {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0 0 0 0.5rem;
    cursor: pointer;
    color: #333;
    font-style: italic;
    position: relative;
    outline: none !important;
    border: 1px solid #eee;
    z-index: 1;
    font-weight: 400;
    line-height: normal;
    background: #fff;
}
.sidebar .select::after {
    font-size: 0.875rem !important;
}

.wrap-contact .form-horizontal{
    flex-direction: column;
    max-width: 800px;
    margin: 0 auto;
}

#app_customer_registration.form-horizontal{
    gap: 1rem;
    margin-top: 1rem;
}

.password_requirements{
    font-size: 0.85rem;
    color: #e20030;
    min-height: 40px;
    font-weight: 300;
    display: flex;
    align-items: center;
    line-height: 1rem;
}
.form-horizontal .picto-card{
    margin:0 auto;
    width: 100%;
    padding: 1.5rem 2rem;
    display: flex;
    justify-content: top;
    flex-direction: column;
}

.form-horizontal h3{
    margin-bottom: 1.5rem;
}
.form-horizontal a{
    font-weight: 500;
}

.form-horizontal .picto-card:nth-of-type(1),
.form-horizontal .picto-card:nth-of-type(2){
    max-width: none;
}
.form-horizontal .picto-card:nth-of-type(5){
    margin: 0 auto;
    max-width: 820px;
}

/* Boite a filtre */


.package-filter label {
    font-weight: 600;
    text-transform: uppercase;
}

.package-filter .js-select-attribute{
    background: #fff;
}

.package-filter select{
    border: 0;
}

.package-filter{
    justify-content: space-between;
    padding: 15px;
    padding-left: 0;
    width: 100%;
    gap: 10px;
    display: flex;
    margin: 0 auto 0.5rem auto;
}
.package-filter .infobox-item{
    margin-bottom: 0;
    padding: 1rem 2rem 1.5rem 2rem;
    background: #fafafa;
}


/* ----------------------------------------------------------------
    Alerts
-----------------------------------------------------------------*/
/* bandeau rouge homepage*/

.notification-bar{
    background: #e20030;
    text-align: center;
    color: #fff;
    padding: 0.5rem;
}

.notification-bar a{
    color: #fff;
    font-weight: 600;
}

.alert-success {
    color: #599932;
    background-color: #fff;
    border-color: #6ab53c
}

.alert-success .alert-link {
    color: #3b7831;
}

.alert-danger {
    color: #e20030;
    background-color: #fff;
    border-color: #e20030;
    line-height: 1.25rem;
}

.alert {
    border-radius: 0;
    margin-bottom: 0;
}

.alert-success .close,.alert-info .close  {
    color: #599932 !important
}

.alert-danger .close {
    color: #e20030 !important
}

.alert-info {
    color: #599932;
    background-color: #e9ffdc;
    border-color: #599932;
}

.alert .close {
    font-size: 1.4rem;
    opacity: 1
}

.alert-warning {
    color: #7c612c;
    background-color: #fff7d7;
    border-color: #8d6e33;
    margin-bottom: 1.5rem;
}

.modal-content .alert-warning{
    margin-bottom: 0;
}

.alert-warning .close,
.alert-warning label {
    color: #7c612c;
    font-weight: 600;
    font-style: normal
}

.alert-warning a{
    color: #7c612c;
    font-weight: 600;
    font-style: normal
}

.alert-warning input {
    position: relative;
    left: 10px
}

.alert-warning label {
    margin-bottom: 0;
    padding: 1rem 0
}

.alert-sticky {
    text-align: justify;
    position: sticky;
    position: -webkit-sticky;
    background: #e20030;
    font-weight: 600;
    line-height: 1.25rem;
    color: #fff;
    top: 0;
    z-index: 2;
}

.alert-sticky::after {
    content: "\e90d";
    font-family: 'icomoon';
    font-size: 2rem;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    right: 5vw;
    display: none;
}
.alert-sticky::after{
    right: 10%;
}
.alert-sticky div{
    max-width: 90%;
    margin: 0 auto;
}
.alert-sticky br{
    display: none;
}

.alert-sticky a {
    color: white;
    text-decoration: underline;
}

.text-warning{
    color: #7c612c!important;
}
.order-detail .text-warning {
    color: #E2870F !important
}

.order-detail .text-success a {
    color: #e20030 !important
}
a.text-warning:focus, a.text-warning:hover {
    color: #7c612c !important;
}

.close span {
    padding: 0 !important;
}

.picto-notification{
    background-color: rgba(255, 255, 255, 0.9);
    padding: 1.5rem;
    text-align: center;
    font-size: 1rem;
    font-weight: 300;
    color: #222;
    max-width: 300px;
    position: absolute;
    right: 5px;
    top: -10px;
    z-index: 100;
}

.picto-notification .close{
    position: absolute;
    top: 5px;
    right: 10px;
}

.picto-notification span{
    padding: 1rem;
    line-height: 1.35rem;
}


/* ----------------------------------------------------------------
    Tootltips
-----------------------------------------------------------------*/
.tooltip {
    position: relative;
    display: inline-block;
}

.tooltip .tooltiptext {
    visibility: hidden;
    min-width: 230px;
    width: 100%;
    background-color: rgba(0, 0, 0, .85);
    color: #fff;
    top: 100%;
    left: -65%;
    border-radius: 0;
    padding: 0.75rem;
    position: absolute;
    z-index: 1000;
    font-size: 0.9rem;
    line-height: 1.125rem;
}

.sidebar .tooltiptext {
    min-width: 360px;
    width: 100%;
    top: -0.5rem;
    left: 1rem;
}

.tooltip:hover .tooltiptext {
    visibility: visible;
}

.bs-tooltip-bottom tooltip,
.bs-tooltip-bottom .tooltip-inner,
.bs-tooltip-right tooltip,
.bs-tooltip-right .tooltip-inner,
.bs-tooltip-top tooltip,
.bs-tooltip-top .tooltip-inner{
    background: #333;
    border: 0;
    color: #fff;
    font-size: 0.875rem;
    font-style: normal;
    padding: 0.5rem;
    min-width: 200px;
    box-shadow: none;
    border-radius: 0;
}

.tooltip {
    opacity: 1 !important;
    transition: opacity .15s ease-in-out;
}

.tooltip .arrow:before {
    display: none
}

.tooltip-image,
.tooltip-sticker {
    position: relative;
    display: inline;
}

.tooltip-sticker .tooltip-content{
    position: absolute;
    color: #333;
    z-index: 200;
    border: 1px solid #fff;
    padding: 1rem;
    border-radius: 0;
    min-width: 250px;
    background: #f7f7f7;
    box-shadow: 1px 1px 10px 0 rgba(0, 0, 0, 0.3);
    bottom: 100%;
    opacity: 0;
    cursor: default;
    pointer-events: none
}
.tooltip-image .tooltip-content{
    position: absolute;
    z-index: 9999;
    bottom: 100%;
    opacity: 0;
    cursor: default;
    pointer-events: none
}
.customer-info .tooltip-image .tooltip-content{
    right: 0;
}

.tooltip-sticker .tooltip-content a{
    font-weight: bold;
    text-align: left;
    margin: 0;
    padding: 0;
}

.tooltip-sticker .tooltip-content{
    min-width: 100%;
}

.tooltip-sticker:hover .tooltip-content{
    transition: opacity 0.1s 0s ease;
    pointer-events: auto;
    opacity: 1;
}

.tooltip-image a{
    display: inline-block;
    margin-left: 1rem;
    text-decoration: underline;
}
.tooltip-sticker .tooltip-content {
    opacity: 0;
    transition: opacity .1s 0.5s;
}

.tooltip-image .tooltip-content img {
    position: relative;
    height: 300px;
    display: block;
    margin-left: -1rem;
    float: left;
    z-index: 999;
    -webkit-box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.5);
    box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.5);
}

.tooltip-image:hover .tooltip-item::after {
    pointer-events: auto
}

.tooltip-image:hover .tooltip-content {
    pointer-events: auto;
    opacity: 1;
}



/* ----------------------------------------------------------------
    Mise en page
-----------------------------------------------------------------*/

.section {
    padding: 1.5rem 0;
    margin: 1.5rem 0
}

.h170 {
    min-height: 170px
}

.h370 {
    min-height: 370px
}

.w-10 {
    width: 10% !important
}

.w-100 {
    max-width: 100%; !important
width: 100% !important
}

.w-20 {
    width: 20% !important
}

.w-40 {
    width: 40% !important
}
.mw-50{
    max-width: 50%;
}
.fslow {
    font-size: 1rem
}

.sticky {
    position: sticky;
    position: -webkit-sticky
}

.badge-full {
    border-radius: 0;
    border: 0;
    background: #e20030;
    color: #fff;
    padding: .75rem 1rem;
    font-size: 1.125rem;
    font-weight: 500;
    margin: 0.5rem 0 0 0!important;
}

.badge-full:first-child {
    margin-top: 0
}

.btn-block + .btn-block {
    margin-top: 0 !important;
    vertical-align: initial!important;
}

.btn-block font {
    vertical-align: initial!important;
}

.btn-red{
    background: #e20030;
    color: #fff!important;
}

.mb-5 {
    margin-bottom: 2.5rem
}

.pointer {
    cursor: pointer
}

::-ms-reveal,
::-ms-clear {
    display: none;
    width: 0;
    height: 0;
}

.after-dont, .after-do{
    min-height: 200px;
}
.after-do::after,.after-dont::after{
    color: #fff;
    font-weight: bold;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    position: absolute;
    top: -10px;
    right: 0px;
    text-align: center;
}

.after-dont::after {
    content: "+";
    font-size: 2.5rem;
    background: #e20030;
    transform: rotate(45deg);
    line-height: 34px;
}
.after-do::after {
    font-family: 'icomoon';
    content: "\e90b";
    font-size: 1.4rem;
    background: #6ab53c;
    line-height: 45px;
}

sup {
    top: -2px;
    margin-right: 5px
}

.modal-body .sf-menu li ul {
    top: auto !important
}

.modal-body .mega-bloc a {
    font-size: 0.8125rem
}

.modal-body .modal-body .sub-menu {
    height: auto
}

.modal-body .sf-menu li:hover > .sf-mega,
.modal-body .sf-menu li.sfHover > .sf-mega {
    display: block;
}

/* ----------------------------------------------------------------
    Buttons
-----------------------------------------------------------------*/

.btn-m{
    max-width: 300px;
    font-size: 1.125rem!important;
    padding: 0.75rem;
    margin: 0 auto;
}
/* ----------------------------------------------------------------
    Layer cookies
-----------------------------------------------------------------*/

.layerCookies {
    background: rgba(51, 51, 51, 0.97);
    bottom: 0;
    color: #fff;
    margin: 0;
    padding: 2rem;
    position: fixed;
    text-align: center;
    width: 100%;
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1rem;
}

.layerCookies .close {
    color: #fff;
    opacity: 1;
}

.layerCookies .close:hover {
    opacity: 0.7;
}

.cc-banner.cc-bottom {
    padding: 0.75rem 2rem;
    display: flex;
    justify-content: center;
}

.cc-banner .cc-message {
    flex: initial !important;
    margin-right: 3rem;
}

.cc-btn {
    padding: 0.5rem 1rem !important;
    border: 1px solid #fff !important;
    white-space: nowrap !important;
}

/* ----------------------------------------------------------------
    Resultats de la recherche
-----------------------------------------------------------------*/

.search-input {
    position: relative;
    margin-right: 0.5rem;
}

.search-input .form-control {
    font-weight: 300;
    font-size: 0.85rem;
    width: 100%;
}

.search-input button {
    background:rgba(255,255,255, 0.9);
    position: absolute;
    border: 0;
    top: 6px;
    right: 2px;
    color: #666;
    cursor: pointer;
    height: auto;
    width: 30px;
}

#simple_search_title {
    border-right: 0 !important
}

.search-input .icnk {
    color: #e20030;
    position: relative;
    top: 2px;
}

.search-input .icnk:hover {
    opacity: 0.5;
}

.search-results .infinite-item p {
    font-size: 1rem;
    font-weight: 300;
    margin: 0
}

.search-results .infinite-item h3 {
    font-size: 1.125rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
    text-decoration: underline
}

.search-results .search-input {
    display: none !important
}

.search-results .infinite-container {
    padding: 0 1rem;
    margin: 1.5rem 0
}

.search-results .infinite-item {
    padding: 1.5rem 0.5rem;
}

.search-results .infinite-item:last-of-type {
    border-bottom: 0
}

.search-results .infinite-item img{
    border: 1px solid #eee;
}

/* ----------------------------------------------------------------
    Cart
-----------------------------------------------------------------*/

.cart {
    position: relative
}

.cart > a > span.qty {
    position: relative;
    top: 4px;
    left: -12px;
    font-size: 10px;
    background: #e20030;
    color: #fff;
    font-weight: 600;
    padding: 0 3px 1px 3px;
    pointer-events: none;
    height: 13px;
    line-height: 12px;
    margin-right: -15px;
}

.icon-cart,
.icon-cart-full {
    font-size: 1.6rem;
    position: relative;
    top: -2px;
}

.icon-cart-full {
    left: -4px;
}

.icon-cart-small {
    font-size: 1.25rem;
    width: auto !important;
    position: relative;
    top: -0.5px;
    left: -2px;
}

.navbar-main .nav-red {
    padding: 0.8rem;
}

.navbar{
    padding: 0;
}
.empty-cart-link:hover,
.empty-cart-link .icnk:hover,
.empty-cart-link:hover .icnk {
    text-decoration: none;
    color: #e20030;
}

.empty-cart-link,
.empty-cart-link .icnk {
    position: relative;
    text-decoration: none;
    color: #333;
    right: 0.125rem;
    font-size: 0.95rem;
    display: inline-block;
}

.empty-cart-link .icnk {
    font-size: 1rem;
}

.anchor-settings {
    color: #333;
    font-size: 1rem;
    position: relative;
    text-decoration: underline
}

/* test */
.anchor-settings:hover {
    text-decoration: none
}

.js-scrollTo {
    color: #e20030;
    display: inline;
}

.sidebar .js-scrollTo,
.processContent .js-scrollTo {
    font-size: 1rem;
}
.setting-header .final-size:nth-of-type(2){
    text-align: left;
    padding-left: 1.5rem;
}
.final-size-label,
.final-size {
    margin-top: 0.5rem;
}

.final-size-label {
    left: 0.25rem
}


.final-size span {
    font-size: 0.9rem;
    font-weight: 500;
}

/* ----------------------------------------------------------------
    Elements
-----------------------------------------------------------------*/

.card {
    background: #fff;
    padding: 15px;
    border-radius: 0;
    border: 0
}

.card h1,
.card h2,
.card h3,
.card h4,
.card h5,
.card h6 {
    margin: 0
}

.our_commitments div p{
    line-height: 1.25rem;
}

.our_commitments img{
    max-width: 72px;
}
.homepage .cover div,
.our_papers{
    display: flex;
    flex-direction: column;
    background: #fff;
    font-weight: 300;
    text-align: justify!important;
    line-height: 1.25rem;
}

.our_papers img,
.why_picto img,
.qui_sommes_nous img{
    height: 174px;
    object-fit: cover;
    width: 100%;
}
.products-list {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    height: 100%;
    font-size: 1.125rem
}

.card-supports h2,
.products-list h2,
#thegamme h2 {
    text-shadow: none !important
}

.products-list div div {
    display: flex;
    justify-content: center;
    flex-direction: column;
    font-weight: 300;
}

.products-list img {
    border: 1px solid #e0e0e0;
    max-height: 80px;
}

.products-list div:last-of-type {
    margin-bottom: 0 !important
}

.wrap.products-list .row .col-sm-6 {
    font-style: italic;
    font-weight: 300;
    font-size: .925rem
}

.wrap.products-list .row h5 {
    font-style: normal;
    font-size: 1.125rem
}

.wrap.products-list .row {
    justify-content: center
}

.fl-1 {
    -ms-flex: 1;
    flex: 1
}

.fl-2 {
    -ms-flex: 2;
    flex: 2
}

.picto-card {
    background: #fbfbfb;
    border: 0.5px solid #dfdfdf;
    padding: 1.5rem;
    font-size: 1rem;
    line-height: 1.25rem;
    font-weight: 300;
    color: #111
}

.picto-card dt {
    line-height: 1.25rem;
    font-size: 1rem;
    display: block;
    font-weight: 400;
    width: 100%
}

.picto-card dl{
    margin-left: 0.5rem;
}
.picto-card dt::before {
    content: "•";
    color: #ddd;
    margin-left: -7px;
    position: relative;
    left: -7px;
    font-size: 0.75rem;
    top: -2px;
}

.picto-card em{
    font-weight: 300;
}

.picto-card dd {
    line-height: 1.125rem;
    font-size: 0.95rem;
}

.picto-card dd dl {
    font-size: 0.9rem;
}

.picto-card dd dl dd::before {
    content: "sqfqsfqs";
    color: #ddd;
    margin-left: -7px;
    position: relative;
    left: -7px;
    font-size: 0.75rem;
    top: -2px;
}

.picto-card dd dt::before{
    content: none;
}

.picto-card dd a:hover{
    color: #e20030;
    transition: 0.3s;
    position: relative;
}

.picto-card dd a{
    transition: 0.3s;
}

.picto-card dd dt{
    font-weight: 400;
    font-size: 0.9rem;
}

.picto-card dl dd::before {
    display: none;
}

.picto-card dl dd {
    font-size: 0.85rem;
    line-height: 1rem;
}


.picto-card dd::before {
    content: "-";
    color: #ddd;
    position: relative;
}

.picto-card h5 {
    font-size: 1.125rem;
    text-decoration: none;
    color: #333;
    font-weight: 300;
}
.picto-card .icnk {
    color: #e20030;
    font-size: 35px;
    min-height: 40px;
}
.picto-card .no-padding dd{
    margin-left: 0!important;
}
.picto-card .no-padding dt::before{
    display: none;
}

.articles-list img{
    height: auto;
    max-width: fit-content;
    line-height: 1rem;
    max-height: 90px;
    object-fit: cover;
}

.articles-list h5{
    font-size: 1rem;
    line-height: 1rem;
    padding: 0.5rem 0;
    font-weight: 300;
}

.articles-list .row{
    padding: 10px 15px;
}

.articles-list .row div{
    padding: 0;
}
.articles-list .row:first-of-type{
    padding-top: 0;
}
.articles-list .row:last-of-type{
    padding-bottom: 7.5px;
}

/* ----------------------------------------------------------------
    Boutons
-----------------------------------------------------------------*/

.btn {
    border-radius: 0;
    border-width: 1px;
    text-decoration: none !important;
    cursor: pointer!important;
    font-size: 1rem;
    box-shadow: none !important;
    white-space: normal;
    line-height: 1rem;
    padding: 0.75rem 1.125rem;
}
.btn .icnk,
.btn .icnk:hover {
    color: #fff
}

.btn-bottom {
    padding: 1rem 0 0 0
}

.btn.btn-xxs {
    font-size: 0.9rem;
    line-height: 1;
    padding: .5rem!important;
    font-weight: 500
}

.btn.btn-desc {
    width: 100%;
    white-space: initial;
    padding: .7rem 2rem;
    background: #6ab53c;
    border-color: #6ab53c
}

.btn.btn-desc span {
    display: block;
    font-weight: 300;
    font-style: italic;
    text-transform: none
}

.btn.btn-xl.btn-desc {
    padding: 1.25rem 1.5rem
}

.btn-danger,
.infobox-item .unavailable,
.infobox-item .unavailable:hover{
    background: #e20030;
    border-color: #e20030;
}
.infobox-item .unavailable{
    cursor: pointer;
}
.btn-warning {
    background: #fff7d7!important;
    color: #7c612c!important;
    border-color: #e7c98e!important;
}
.btn.btn-border.active,
.btn-picto {
    color: #fff!important;
    background-color: #6ab53c;
    border-color: #6ab53c
}

.btn-picto-inverted {
    color: #fff;
    background-color: transparent;
    border-color: #fff
}

.btn-lg {
    font-size: 1.05rem
}

.btn.btn-border {
    border: 0.7px solid #888 !important;
    color: #444!important;
    background: transparent;
}

.btn.btn-border-inverted {
    background: transparent;
    border: 1px solid #fff !important;
    color: #fff
}

.btn.btn-border-inverted:hover {
    background: transparent;
    border: 1px solid #8b8a8a !important;
    color: #8b8a8a
}

.infobox-item .btn.btn-border:before {
    display: none;
    content: "\e909";
    font-family: 'icomoon';
    font-size: 1rem;
    position: absolute;
    left: 1.2rem;
    font-style: normal;
}

.infobox-item .icon-arrow-right{
    display: none;
}
.btn.btn-border:hover,
.selected .btn.btn-border {
    background: #333 !important;
    color: #fff !important
}

.btn-picto:hover,
.btn.btn-border.active:hover {
    color: #fff;
    background: #519826;
    border-color: #519826
}

.btn span.icon-arrow-right {
    vertical-align: middle;
    font-size: 16px;
    margin-left: 3px
}

.btn.btn-xxs span.icon-arrow-right {
    vertical-align: bottom;
    font-size: 12px
}

.btn.btn-lg span.icon-arrow-right {
    vertical-align: middle;
    font-size: 22px
}

.edit-item-link {
    bottom: 1rem;
    right: 1rem;
}

.delete-item-link {
    color: #e20030;
    top: 1rem;
    right: 1rem;
}

.delete-item-link:hover {
    color: #000000;
    cursor: pointer
}

.btn.active {
    border: 0 !important
}

.btn.disabled {
    cursor: not-allowed;
}

.payment_cb button{
    border-radius: 0!important;
}
#payment_button_paypalButton{
    border-radius: 4px;
    background: url('/resources/medias/logo/paypal-transparent.png') center / cover no-repeat #ffc439;
    border: 1px solid #ffc439;
    background-size: 25%;
    color: transparent!important;
    margin-top: 1rem!important;
}

#payment_button_paypalButton:hover{
    background-color: #e5b032;
}

#payment_button_cbButton{
    border-radius: 4px;
    border: 1px solid #305e9f;
    background: #305e9f;
}

#payment_button_cbButton:hover{
    background: #24497d;
}

#payment_button_cbButton img{
    width: 28px;
    height: 20px;
    position: relative;
    top: -2px;
    right: 5px;
}

/* ----------------------------------------------------------------
    homepage
-----------------------------------------------------------------*/
.homepage{
    padding: 0;
    display: flex;
    flex-direction: column;
}

.homepage .card {
    display: flex;
    height: fit-content;
    border: 0.5px solid #ddd;
    padding: 15px 20px 20px 20px;
    margin-bottom: 1rem;
}

.homepage h2 {
    font-size: 1.25rem;
    z-index: 3;
    font-weight: 300;
    padding-bottom: 1.25rem;
    text-transform: uppercase;
    word-wrap: initial;
}


.homepage .cover .d-flex {
    height: 100%;
    width: 100%;
    position: relative;
    padding: 0
}


.homepage .cover .btn,
.hero-image .btn{
    bottom: 25px;
    right: 25px;
}

.homepage .cover p {
    margin: 1rem 0;
    min-height: 60px;
}

.homepage .card-group .card{
    text-align: center;
    margin-bottom: 0;
}

.homepage .card-group .btn{
    margin: 0 auto;
}

.homepage-slider,
.landing-slider {
    padding: 0 !important
}

.homepage .products-list h5 {
    font-size: 1.125rem;
}

.homepage .testi {
    font-size: 1rem;
    font-style: italic;
    line-height: 1.25rem;
}

.homepage .testi .section{
    display: none;
}

.homepage .card-body {
    font-size: 1rem;
    line-height: 1.125rem;
    text-align: center;
    padding:0.5rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.testi .card-body h5 {
    font-weight: 600;
    margin: 1rem auto 0.5rem auto;
}

.homepage .card-body .btn {
    min-width: 110px;
    max-width: fit-content;
    margin: 0 auto;
}

.bloc_baseline {
    position: relative;
    min-height: 40px;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    row-gap: 0;
    margin-bottom: 1.5rem;
    margin-top: 1rem;
}

.bloc_baseline h1 {
    color: #333;
    font-size: 1.125rem;
    text-align: center;
    font-weight: 400;
    padding: 0 1rem;
    letter-spacing: 0.25px;
    max-width: 400px;
    margin-bottom: 0;
}

.bloc_baseline img {
    height: 30px;
    margin: 0 16px 10px 16px;
    opacity: 0.8;
    padding: 0;
    max-width: 111px;
}

.AV_carousel .card{
    background-image: url('/resources/medias/cms/homepage/bg-AV.jpg?1732615219');
    box-sizing: border-box;
    padding: 0 1rem;
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-box-shadow: inset 0px 2px 7px 3px rgba(0,0,0,0.15);
    box-shadow: inset 0px 2px 7px 3px rgba(0,0,0,0.15);
}

.AV_carousel .card .section{
    min-height: fit-content;
    background: #fff;
    margin: 1.5rem;
    box-sizing: border-box;
    opacity: 0.95;
}

.card.newsletter{
    height: auto;
    padding-bottom: 2rem;
}

.card.newsletter .input-group{
    padding:0 1rem;
}

.card.newsletter label{
    display: inline-block;
    width: 100%;
    padding-bottom: 1rem;
}

.btn-big{
    width: 100%;
    padding: 1.5rem;
    font-size: 1.5rem;
    font-weight: 600;
}

.carousel-main-slide{
    padding: 0;
}

#main-carousel
{
    height: 350px;
}
#main-carousel .carousel-item.active {
    max-height: 440px;
}


.homepage .carousel-item .row {
    min-height: 180px;
    max-width: 440px;
}

.nos_prestations{
    min-height: 350px!important;
    padding: 0;
}
.nos_prestations h5{
    line-height: 1.25rem;
}
.nos_prestations h2{
    margin:1rem 1.5rem;
}
.nos_prestations h5,
.nos_services h5{
    font-weight: 300;
    display: flex;
    align-items: center;
    letter-spacing: 0.25px;
    font-size: 1.25rem;
    padding: 1.25rem 0;
}
.nos_services h5{
    text-align: center;
    justify-content: center;
    padding: 0 0.5rem;
    min-height: 38px;
    display: flex;
}
.nos_services img{
    min-height: 256px;
    object-fit: cover;
}

.nos_prestations .card-text{
    min-height: 30px;
    font-weight: 300;
    font-size: 0.9rem;
    line-height: 1rem;
    align-items: center;
    flex-direction: row;
    margin: 0.25rem 0 0.5rem 0;
}

.nos_prestations .card{
    background: #fff;
    padding: 25px;
    box-sizing: border-box;
    min-width: 100%;
    max-width: 32%;
}

.nos_prestations .row{
    gap: 0.5rem;
    justify-content: center;
}

.nos_services {
    flex-direction: column;
    gap: 10px;
}
.nos_services .card-text{
    min-height: 50px;
    margin-bottom: 0;
    font-weight: 300;
    padding: 0 1rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.nos_services .card{
    width: 100%;
    min-height: 480px!important;
}
.nos_prestations b{
    color: #e20030;
}



/* ----------------------------------------------------------------
    thedragndrop
-----------------------------------------------------------------*/

#thedragndrop {
    background-color: #fff;
    color: #111;
    padding: 1rem;
    border: 4px dotted #333;
    text-align: center;
    min-height: 120px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

#thedragndrop .icon-img{
    font-size: 2.5rem;
}

#thedragndrop span{
    font-size: 1rem;
    font-style: italic;
    color: #888;
}
#js-homepage-upload, .js-uploader-state-default {
    height: 100%
}

#js-homepage-upload{
    position: relative;
    top: -5px;
    margin: 0.5rem;
}

#js-homepage-upload #thedragndrop p{
    display: flex;
    flex-direction: column;
}

#js-homepage-upload b{
    margin-left: 5px;
}

#js-uploader-modal .modal-header,
#js-uploader-modal .modal-body {
    justify-content: center;
    padding: 0
}

#js-uploader-files {
    list-style-type: none;
    margin: 0;
    padding: 0
}

#js-uploader-files li {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 0.5rem
}

.js-uploader-file {
    font-size: 1rem;
    max-width: 96%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.js-uploader-state {
    font-size: 0.875rem;
    color: #a7a7a7;
    padding: 0.5rem 0
}

#js-uploader-files li img {
    position: absolute;
    right: 0;
    bottom: 6px
}

.js-file-name{
    position: absolute;
    top: 1.4rem;
    right: 0;
    font-size: 0.85rem!important;
    color: #fff;
    width: 100%;
    text-align: center!important;
    font-weight: 400;
}

.js-file-uploaded{
    font-size: 1rem!important;
    padding-top: 1rem;
    text-align: center;
}

.js-uploader-percent{
    display: block;
    background: #addb93;
    margin-top: 1rem;
    height: 30px;
}

.progress {
    border-radius: 0
}

.progress-bar {
    background: #6ab53c;
    color: transparent;
    height: 30px;
}

#thedragndrop p {
    font-size: 1.5rem;
    font-weight:400 ;
    font-style: italic;
    width: 100%;
    padding: 0!important;
    margin: 0;
    letter-spacing: 0.5px;
    line-height: unset;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

#thedragndrop a {
    color: #e20030;
    font-weight: 600;
}


/* ----------------------------------------------------------------
    Modal ICC / Optimisation
-----------------------------------------------------------------*/


#js-warnings-modal .modal-dialog{
    max-width: 800px;
    width: 100%;
    margin: 1rem auto;
}

#js-warnings-modal .picto-card{
    padding: 1.5rem;
    font-weight: 400;
}

#js-warnings-modal .picto-card a{
    font-weight: bold;
    color: #e20030 !important;
    text-decoration: underline;
    width: 100%;
    text-align: right;
}

#js-warnings-modal img{
    max-width: 70px;
    height: auto;
    display: block;
}

#js-warnings-modal i{
    font-size: 3.25rem;
}

#js-warnings-modal .text-center p{
    max-width: 85%;
    display: inline-block;
    line-height: 1.5rem;
    padding-bottom: 1rem;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.25rem;
}


/* ----------------------------------------------------------------
    Error
-----------------------------------------------------------------*/
.error-page p {
    text-align: center
}

.error-page .wrap span {
    display: inline-block;
    width: 100%;
    padding: 0.5rem 0;
    font-size: 1.125rem
}

.error-page .btn {
    color: #fff !important;
    margin-top: 1rem
}

/* ----------------------------------------------------------------
    Layers DragnDrop
-----------------------------------------------------------------*/

.js-upload-hover span{
    font-style: italic;
    opacity: 0.75;
}

.layer-container {
    background: rgba(0, 0, 0, 0.7);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%
}

.layer-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 94%;
    width: 96%;
    margin: auto;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 6;
    border: 5px dotted #fff;
    border-radius: 10px;
    color: #fff;
    padding: 1rem;
    text-align: center
}

.layer-content .layer-icons {
    width: 142px;
    height: 85px;
    margin: 0 auto
}

.layer h2, .layer label {
    font-style: italic;
    font-size: 2rem;
    color: #fff;
    font-weight: 600;
    text-shadow: 0 1px 2px #333;
}

.layer {
    display: none
}

.layer label {
    font-size: 1.5rem;
}

.layer input {
    display: none
}

.layer-sidebar .layer-content,
.layer-sidebar .layer-container,
.layer-main-content .layer-content,
.layer-main-content .layer-container {
    position: absolute
}

.layer-sidebar .layer-content {
    height: 95%;
    width: 94%;
    justify-content: flex-start;
    padding-top: 5rem;
}

.layer-main-content .layer-content {
    height: 95%;
    width: 96%
}

.layer-sidebar .sticky {
    top: 28%;
    left: 0;
    right: 0
}

/* ----------------------------------------------------------------
    Back to top
-----------------------------------------------------------------*/

#back-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 999;
    font-size: 18px;
    border: none;
    outline: none;
    background: #e20030;
    border-radius: 50%;
    color: #fff;
    padding: 0.6rem;
    width: 50px;
    height: 50px;
    visibility: hidden;
    transition: 0.5s;
}

#back-to-top:hover {
    background-color: #242424;
    transition: 0.5s;

}
#back-to-top .icnk{
    color: #fff;
}

/* ----------------------------------------------------------------
    MODALES
-----------------------------------------------------------------*/

.modal {
    background-color: rgba(255, 255, 255, 0.7);
    z-index: 1100!important;
    transition: opacity .25s linear;
}

/*.modal.show .modal-dialog{
    margin: 1rem auto;
}*/

/*
.modal-open #thenav{
    left: -7.5px;
}
*/

.modal-open{
    padding-right: 0!important;
    overflow-y: hidden;
    margin-right: 15px;
}
.modal-open .modal{
    overflow-y: auto;
}

.modal-open #thenav{
    margin-left: -7.5px;
}

.modal-dialog {
    height: 100%;
    padding: 0;
}

.modal-header {
    border: 0;
    padding: 0
}

.modal-header .close{
    padding: 0;
    margin: 0 0 0 auto;
}
.modal-title,
.modal-body h2{
    line-height: 1.25rem;
    color: #111!important;
    font-size: 1.35rem!important;
    text-transform: uppercase;
    font-weight: 300!important;
    font-style: unset!important;
    text-align: center;
    width: 100%;
    margin-bottom: 2rem;
}

.modal-header h4 {
    font-weight: 500;
    font-size: 1.85rem;
    margin-bottom: 0
}

.modal-body {
    padding: 0 !important;
    z-index: 100;
}

.modal-lg{
    max-width: 1200px;
}
.modal-content {
    box-shadow: 0 0 60px 0 rgba(170, 170, 170, 1);
    z-index: 100 !important;
    position: relative;
    border-radius: 0;
    border: 0;
    padding: 1rem;
}

.modal-content .tab-content{
    margin-top: 0;
}

.modal-content .tab-pane.process-tab-panel h3::before{
    display: none;
}

.modal-content .infobox-body{
    display: inline-block;
    padding: 1rem 0;
}
.modal .form-check{
    flex-direction: column;
}
.modal button.close {
    opacity: 1;
    color: #333;
    z-index: 500;
    transition: color 0.25s;
    position: absolute;
    right: 15px;
    top: 15px;
    min-width: unset;
}

.modal button.close:hover {
    color: #e20030;
    transition: color 0.25s;
}

.modal-dialog .btn,
.modal-dialog button{
    padding: 0.75rem 1.5rem;
    min-width: 120px;
}
.detail-product button.close {
    transition: opacity 0.25s;
    opacity: 0.8;
}
.detail-product button.close:hover {
    transition: opacity 0.25s;
    opacity: 1;
}

.modal button span {
    font-size: 2rem;
    position: relative;
    right: 0;
    top: 0;
    line-height: 1rem;
    height: fit-content;
    display: inline-block;
    font-weight: 600!important;
}

.modal-sm{
    max-width: 960px;
}
.modal-format .picto-card{
    padding: 0.75rem;
    font-weight: 350;
}

.formats.tab-content{
    justify-content: space-between;
    display: flex;
}

#pills-portrait,
#pills-landscape{
    justify-content: flex-start;
}

.modal .row.low-gutter,
.package-list {
    position: relative
}

#add-gift-modal .close{
    padding: 0;
}

.package-list {
    width: 100%;
    display: flex;
    margin: 0 auto;
    padding: 0;
    gap: 20px;
}

.package-list .infobox-body {
    padding: 0.5rem 0;
}

.package-list .infobox-body h6{
    font-size: 1rem;
    line-height: 1.125rem;
}

.package-list .infobox-body a{
    font-weight: 400;
    font-size: 0.85rem;
}
.package-list .infobox-body .detail-product a{
    float: right;
    color: #fff;
    font-size: 0.95rem;
}

.package-list .infobox-body .detail-product a:hover{
    text-decoration: underline;
}

.package-list .infobox-body a img{
    position: relative;
    top: -2px;
}

.package-list .infobox-under p{
    font-size: 0.875rem;
    padding-top: 0.5rem;
    padding-bottom: 0;
}

.package-list .infobox-under p:nth-of-type(2){
    border-top: 0.5px solid #ddd;
    margin-top: 0.5rem;
}

.package-list .infobox-under p:last-of-type{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.package-list .infobox-under p:last-of-type span{
    padding: 0 3px;
}
.package-list .infobox-under {
    width: auto;
    display: flex;
    flex-direction: column;
    justify-content: end;
}

.package-message{
    width: 100%;
    margin-bottom: 1.5rem;
    border: 1px solid #eeeeee;
    text-align: justify;
    color: #333;
    padding: 1rem 2rem;
}

#js-modal-select-control img{
    max-width: 220px;
}
#js-modal-transfer .form-check-input{
    margin-left: 5px!important;
}
#js-modal-transfer .form-check-label{
    display: flex;
    align-items: flex-start;
    padding-bottom: 0;
}

#js-without-profil-modal .underline {
    margin: 1rem 0;
    display: inline-block
}

.modal-modpapier .js-read-more {
    position: absolute;
    right: 0
}

.modal-modpapier .infobox-item .infobox-body{
    min-height: 64px;
}
/* Modale appliquer */

.modal-appliquer h4{
    text-align: left;
    font-size: 1rem;
    padding-bottom: 1rem;
}
.modal-appliquer h5{
    padding-bottom: 1rem;
    padding-top: 0;
}
.modal-appliquer ul.striped-list > li:nth-of-type(2n+1){
    background-color: transparent;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    padding: 1rem 0;
}
.modal-appliquer .striped-list img{
    display: block;
    max-height: 60px;
    margin: 1rem 0;
}
.modal-appliquer ul.striped-list li:first-child{
    border-top: 0!important;
    padding-top: 0!important;
}

.modal-appliquer .btn{
    margin-bottom: 1rem;
}

.modal img{
    margin-bottom:1rem ;
}

.modal-body select::-ms-expand,
.package select::-ms-expand,
.sidebar select::-ms-expand {
    display: none;
}


/* ----------------------------------------------------------------
    Modal Login
-----------------------------------------------------------------*/

.required:after {
    color: #e20030;
    content: "*";
    position: relative
}

.modal-login {
    position: fixed;
    overflow-y: hidden!important;
    top: 0;
    padding: 0!important;
}

.modal-login label.col-form-label {
    font-size: 1rem
}

.modal-login .form-check-label,
.modal-login .text-right {
    font-size: 1rem;
    text-decoration: none
}

.modal-login .modal-title {
    padding: 1rem 2rem 2rem 2rem;
    line-height: 1.5rem;
    max-width: 500px;
    margin: 0 auto;
}

.modal-backdrop {
    display: none
}

/*.wrap-main .form-horizontal{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    flex-direction: column;
}*/

.wrap-login .form-horizontal{
    flex-direction: column;
    max-width: 768px;
    margin: 0 auto;
}

.wrap-login h3{
    margin-top: 0;
    text-transform: uppercase;
}

.wrap-login h4{
    font-size: 1.25rem;
}

.wrap-login .btn-border{
    background: #fff;
}

.wrap-login .alert{
    margin-bottom: 1rem;
}

#modal_remember_me{
    margin-right: 5px;
}

.sidebar .bg-grey{
    padding: 2rem;
}
/* ----------------------------------------------------------------
    Modal package
-----------------------------------------------------------------*/

#js-modal-change-package .modal-header,
#js-modal-change-package .modal-title {
    margin: 0;
    padding: 0;
}

#js-modal-change-package .modal-title {
    margin:1rem auto 1.5rem auto;
}

#js-modal-change-package .modal-content {
    background: #f7f7f7;
    padding: 1.5rem 0.5rem;
}

.modal .settings .row {
    margin-bottom: 1rem
}

/* Arrow */
.modal-body .select::after,
.package .select::after,
.sidebar .select::after {
    content: '+';
    position: absolute;
    top: -18px;
    right: 0;
    bottom: 0;
    padding: 0 11px;
    background: #6ab53c;
    pointer-events: none;
    color: #fff;
    border: 1px solid #6ab53c;
    z-index: 2;
    font-size: 1.5rem!important;
    font-weight: 400;
}

.icc {
    color: #e20030 !important;
    font-weight: 600
}

.js-textEdit{
    position: relative;
    top: -50px;
    float: right;
    right: 15px;
}

.uncheck{
    display: inline-block;
    padding: 6px;
}

#js-modal-preference-cookie .modal-content{
    font-size: 1rem;
    text-align: justify;
}
#stickermodal img{
    -webkit-box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.5);
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.5);
    margin: 1rem 0;
}
#stickermodal p{
    margin-bottom: 1rem;
    text-align: left;
    line-height: 1.25rem;
    margin-top: 1rem;
}
#stickermodal .text-right span{
    font-size: 1rem;
    margin-bottom: 1rem;
    display: inline-block;
}
.shipping .sticker-type .form-check{
    padding-left: 1.25rem;
    margin-bottom: 0.5rem;
}
.shipping .sticker-type .order-list-item label{
    margin-left: 2px;
}

/* ------------------------------------------------
    Loader
---------------------------------------------------------*/

.loading {
    position: fixed;
    display: none;
    z-index: 500;
    height: 2em;
    width: 2em;
    overflow: visible;
    margin: auto;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0
}

.loading:before {
    content: '';
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.6)
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required) {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0
}

.loading:not(:required)::after {
    content: '';
    display: block;
    font-size: 10px;
    width: 1em;
    height: 1em;
    margin-top: -0.5em;
    animation: spinner 1500ms infinite linear;
    border-radius: 0.5em;
    box-shadow: rgba(51, 51, 51, 0.75) 1.5em 0 0 0, rgba(51, 51, 51, 0.75) 1.1em 1.1em 0 0, rgba(51, 51, 51, 0.75) 0 1.5em 0 0, rgba(51, 51, 51, 0.75) -1.1em 1.1em 0 0, rgba(51, 51, 51, 0.75) -1.5em 0 0 0, rgba(51, 51, 51, 0.75) -1.1em -1.1em 0 0, rgba(51, 51, 51, 51.75) 0 -1.5em 0 0, rgba(51, 51, 51, 0.75) 1.1em -1.1em 0 0
}

.loading-dark:not(:required)::after {
    box-shadow: rgba(112, 191, 64, 0.75) 1.5em 0 0 0, rgba(112, 191, 64, 0.75) 1.1em 1.1em 0 0, rgba(112, 191, 64, 0.75) 0 1.5em 0 0, rgba(112, 191, 64, 0.75) -1.1em 1.1em 0 0, rgba(112, 191, 64, 0.75) -1.5em 0 0 0, rgba(112, 191, 64, 0.75) -1.1em -1.1em 0 0, rgba(112, 191, 64, 51.75) 0 -1.5em 0 0, rgba(112, 191, 64, 0.75) 1.1em -1.1em 0 0
}

.loading-dark:before {
    background-color: rgba(0, 0, 0, 0.8) !important;
}

/* Animation */
@-webkit-keyframes spinner {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@-moz-keyframes spinner {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@-o-keyframes spinner {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@keyframes spinner {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.item-prestation {
    margin: 0.5rem 0 0 0;
    color: #333;
}

.item-prestation:hover span {
    color: #e20030;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
}

.item-prestation img {
    opacity: 1;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
}

.item-prestation:hover img {
    opacity: .5;
}

.item-prestation.current span {
    color: #e20030;
}

.item-prestation img {
    width: 127px;
    height: 85px;
    display: block;
    margin: 0 auto
}

.item-prestation span {
    text-align: center;
    display: inline-block;
    line-height: 0.9rem;
    font-size: 0.75rem;
    width: 100%;
    max-width: 140px;
    margin: 0.5rem 0;
}

.block-prestation {
    background: #fff;
    border: 1px solid #cdcdcd;
    height: 100%;
    max-height: 330px;
    overflow-y: auto;
    padding: 0.5rem 1.5rem
}

.block-prestation h3 {
    font-style: normal;
    font-weight: bold;
    color: #e20030;
    font-size: 1.125rem;
    margin: 0;
    padding: 0.5rem 0
}

.block-prestation .d-flex {
    justify-content: space-between;
}


/* ----------------------------------------------------------------
    Settings
-----------------------------------------------------------------*/

.image-not-null h3,
.image-not-null .param-add-message-desktop,
.param-item-image-null h3,
.param-item-image-null .param-add-message-desktop {
    display: none
}

.info-image {
    padding: 1rem;
    color: #fff;
    font-size: 1rem;
}

.info-image-infos {
    color: #afafaf
}

.settings h5{
    font-size: 1rem;
    margin-bottom: 0;
}
.media.basket {
    padding: 1rem;
    align-items: center !important
}

.media.basket .media-body {
    padding: 1rem;
    position: relative;
    top: 0.5rem;
}

.media.basket .item_image_name {
    position: relative;
    top: -1rem;
    font-size: 0.875rem;
    max-width: 230px;
}

.media.basket .progress-cancel-file {
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 1rem
}

.media.basket .progress-cancel-file img {
    position: absolute;
    top: 0;
}

#custom_mat .w-100{
    flex-direction: column;
}
#collapseOptions .setting-header {
    padding-top: 0 !important
}

.enlargement-factor-low {
    color: #390
}
.enlargement-factor-low:hover {
    color: #6ab53c
}

.enlargement-factor-medium {
    color: #c76c00
}
.enlargement-factor-medium:hover {
    color: #f58500
}

.enlargement-factor-high {
    color: #e20030
}
.enlargement-factor-high:hover {
    color: #bd2130
}

.settings .sidebar .nav-tabs .nav-link {
    border: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    font-size: 0.9rem;
    font-weight: 400;
    background: #ebebeb !important;
    color: #000;
    transition-duration: 0.2s;
}

.settings .sidebar .nav-tabs {
    border:0
}

.nav-link .icon-voucher::before {
    font-size: 1.25rem!important;
}

.settings .sidebar .nav-tabs .nav-link:hover {
    background: #6ab53c !important;
    color: #fff;
    transition-duration: 0.2s;
}

.settings .sidebar .nav-tabs .nav-link.active {
    background: #fff !important;
}

.settings .sidebar .nav-tabs .nav-link.active:hover {
    background: #6ab53c !important;
}

.settings .sidebar button{
    min-height: 50px;
    line-height: 1rem;
    padding: 0.75rem 1rem;
}

.settings .sidebar .modal-dialog button{
    min-height: unset;
}

.settings .sidebar .card{
    padding: 0;
}
.setting-action{
    display: flex;
    justify-content: flex-end;
    max-width: 768px;
    margin: 1rem auto;
    flex-direction: column;
    gap: 10px;
    align-items: center;
}
.setting-action button,
.setting-action a,
.setting-action form{
    padding: 0;
    font-size: 0.85rem;
    height: 32px;
    width: 231px;
    width: 100%;
}
.settings .img-wrapper
.settings .wrap-full-col {
    padding: 1.5rem 2rem 2rem 2rem;
}
.products-setting h1 {
    color: #e20030;
    font-size: 1rem;
}
.products-setting{
    background: #fff;
}

.products-setting h5 .col-sm-4{
    max-width: none!important;
    padding: 0;
}

#prints-tab,
#shop-items-tab{
    border: 0.5px solid #ddd;
    border-bottom: 0;
    padding: 0.5rem 0.75rem;
}

.products-setting h3 {
    color: #ababab !important;
    font-size: 1.125rem !important;
    font-weight: 300 !important;
    font-style: italic !important;
    margin-bottom: 1rem;
}


.products-setting .col-sm-8 {
    text-align: justify;
    padding-right: 2rem;
    font-size: 1rem;
}

.products-setting .shop-details span {
    font-size: 1rem;
}

.products-setting .setting-result{
    max-width: none;
    border-top: 0;
}

.products-setting .img-wrapper img{
    border: 0.5px solid #e5e5e5;
}

.payment .text-danger {
    text-align: center;
    font-size: 0.95rem;
    line-height: 1.125rem;
    margin-bottom: 1rem;
    padding: 0.5rem;
}

.js-remaining-to-be-paid {
    margin-top: 0.5rem;
    text-align: right;
    font-size: 0.9rem!important;
    font-weight: 300;
    color: #000;
}


.payment .order-list-item label {
    font-size: 0.9rem;
    font-weight: 300;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-indent: 5px;
    line-height: 1.5rem;
}

.payment .order-list-item {
    margin: 0 0 1rem 0;
}


/* setting-item

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

.setting-item{
    max-width: 768px;
    margin: 0 auto;
}
.setting-header {
    border-bottom: 1px solid #ddd;
    padding: 1rem
}

.setting-header h4{
    font-size: 1rem;
}

.setting-item .row{
    margin-bottom: 0.5rem;
}
.setting-item .row .row{
    margin-bottom: 0
}

.setting-header h5,.setting-body h5 {
    font-size: 1rem;
    margin-bottom: 0.5rem;
}

.setting-header h5 small {
    font-size: .95rem;
    margin: 0 0.5rem;
}
.setting-header label {
    margin-bottom: 0;
    margin-right: 0.5rem !important;
    display: flex;
    align-items: center;
}

.setting-header .custom-select .float-right {
    font-size: 0.875rem;
    float: none!important;
}

.settings .row.low-gutters.col-sm-7 {
    line-height: 1.9rem
}


.setting-item .form-inline{
    display: flex;
    justify-content: space-around;
    width: 100%;
    align-items: center;
    max-width: 340px;

}
#js-item-format {
    display: flex;
    justify-content: flex-start;
    align-items: center
}

.js-select-product {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
}

.js-select-product span:last-child span {
    font-size: 0.85rem;
}
.js-select-product span span {
    margin-right: 10px;
}

.collapse.show .js-select-product span:last-child small {
    position: relative;
    top: -1px
}

.setting-header a {
    text-decoration: none
}

.setting-alert {
    line-height: 2rem;
    font-weight: 600;
    font-size: 1rem;
    margin-top: 5px;
    color: #e20030;

}
.setting-header .setting-alert{
    width: 100%;
}

.setting-item .w-80 {
    width: 80px
}

.setting-item input:not(.btn) {
    padding: .3rem .4rem;
    max-width: 55px;
}

.setting-item h5 span {
    display: inline-block;
    font-weight: 300;
}

.setting-body {
    font-size: 1rem;
    padding: 0 1rem 1rem .85rem;
    background: #f6f6f6;
    border: 0.5px solid #ddd;
}

.setting-body p {
    padding-bottom: 1rem;
    text-align: center;
    font-size: 1.125rem;
    text-transform: uppercase;
    font-weight: 300;
    max-width: 580px;
    margin: 0 auto;
    line-height: 1.35rem;
}

.setting-result {
    border-top: 1px solid #e20030
}

.setting-result .setting-header {
    border-bottom: 0;
}

#custom-size-form .custom-size-submit {
    display: none;
}

#custom-size-form .custom-size-submit.custom-size-submit--enabled {
    display:initial;
    position: relative;
}

.settings .btn.btn-xxs{
    padding: .375rem .75rem!important;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

/* fixme code commenté le temps de finaliser le fonctionnel sur la nouvelle gestion du format
.setting-header input:not(.btn) {
    max-width: 60px;
    margin-right: 0.2rem
}
*/

.settings .layer-content {
    z-index: 5;

}

.discount-price {
    color: #e20030;
}

.price-total {
    font-weight: 500 !important;
    display: inline-block;
}

.setting-result .price-ex-tax,
.setting-result .price-total,
.discount-price .price-ex-tax,
.discount-price .price-total {
    font-size: 1rem;
    line-height: 0.5rem
}

.setting-result .price-ex-tax,
.discount-price .price-ex-tax {
    font-weight: 300
}

.setting-item .reverse {
    color: #e20030;
    font-weight: 400
}

.setting-item #item_quantity {
    text-align: right
}

.settings layer-main-content {
    display: block;
}

.setting-item .custom-size-submit{
    width: 100%;
    margin-top: 1rem;
}
.total-qty {
    position: absolute;
    right: 2rem
}

.total-qty strong {
    font-size: 1.125rem;
    margin-right: 0.3rem
}

.sidebar .cart-items {
    overflow-x: hidden;
    max-height: 58rem;
    position: relative
}

.sidebar .cart-items .col-2.pl-2 {
    min-height: 54px;
}

.js-cart {
    margin: 0;
    padding: 0
}

.js-cart li {
    list-style-type: none
}

.ellipsis{
    display: block;
    content: '';
    position: relative;
    left: 5px;
    width: 99%;
    height: 10px;
    background-color: #fff;
    box-shadow: 0 -3px 2px -2px rgba(0, 0, 0, 0.125);
}

.js-cart li:nth-child(2n) {
    background: #efefef;
    border-bottom: 0.5px solid #fff;
}

.js-cart li:nth-child(2n+1) {
    background: #f6f6f6;
    border-bottom: 0.5px solid #fff;
}

#cart-tab {
    font-size: .75rem;
    font-weight: 700;
    flex-direction: column;
}

#cart-tab-content {
    margin-top: 0;
}

#cart-tab-content li {
    margin-bottom: 0 !important;
}

#cart-tab-content li::before {
    display: none;
}

.setting-list-item {
    font-size: .65rem;
    padding: 0.3rem 0;
    display: flex;
    align-items: center;
    transition: background .2s ease-in-out;
}

.setting-list-item .col-sm-2{
    display: flex;
    justify-content: space-around;
}
.setting-list-item .row div {
    line-height: 0.875rem
}

.setting-list-item:hover {
    background: #fff
}

.setting-list-item:hover h5 {
    text-decoration: underline !important;
    color: #333 !important;
    border-bottom: 0;
}

.current .setting-list-item {
    background: #ffffff !important
}

.setting-list-item a{
    display: block;
    padding-bottom: 2px;
}


.setting-list-item a:hover{
    color: #000;
}
.setting-list h5 {
    font-size: .75rem;
    font-weight: 700;
    color: #000;
    margin: 0.25rem 0;
}

.sidebar .icon-bin{
    position: relative;
    top: 1px;
    right: 4px;
}
#js-expander-hidden {
    margin-bottom: 1.5rem
}

.anchor-settings .icnk {
    transform: rotate(270deg);
    font-size: 1.5rem;
    opacity: 0.8
}

.anchor-settings .icnk:hover {
    opacity: 1
}

.anchor-settings {
    display: none
}

.free-delivery-alert {
    background-color: #6ab53c;
    color: #fff;
    padding: 1rem;
    font-style: italic;
    margin-bottom: 1rem;
    line-height: 1.5rem;
}

.free-delivery-alert a {
    color: #fff;
    text-decoration: underline;
}

/* item-expand

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

.expand-item {
    background: #656565;
    color: #fff;
    display: none;
    padding: 1rem 2rem;
    width: 100%;
    max-width: 100%;
    position: relative;
    z-index: 10;
    left: 0;
    right: 0;
    top: 97%;
    margin-bottom: 0.5rem;
    margin-right: 15px;
    margin-left: 15px;
    overflow: auto;
    box-sizing: content-box;
    -moz-box-sizing: content-box
}
.modal .expand-item .img-wrapper{
    margin-bottom: 1rem;
}

.expand-item-lightbox {
    position: relative;
    color: #fff;
    width: 100%;
    max-width: 100%;
    z-index: 200;
    margin: 0 auto;
    font-size: 1rem;
    line-height: 1.25rem;
    box-sizing: content-box;
    -moz-box-sizing: content-box
}

.expand-item-lightbox p{
    line-height: 1.5rem;
    font-style: normal;
}

.expand-item-lightbox em,
.product p em{
    display: block;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.5rem;
}

.expand-item-lightbox em{
    margin: 0.5rem 0;
}

.expand-item-lightbox li{
    text-indent: -5px;
    padding-left: 5px;
    margin: 0 0.5rem 0.25rem 0.25rem;
}
.expand-item li::before{
    left: -5px;
}

.expand-item-lightbox ul{
    padding: 0 1rem;
}

.expand-item-lightbox .img-wrapper{
    margin-top: 1rem;
}

.icon-icc{
    width: 20px!important;
    display: inline-block!important;
    padding-right: 5px;
}

.expand-item .col-sm-8 {
    text-align: justify;
    padding-right: 2rem;
}

.expand-item span {
    color: #fff!important;
}

.expand-item em {
    font-style: italic;
    font-weight: bold;
    font-size: 1.125rem;
    margin: 0.25rem 0;
    display: inline-block;
}

.expand-item .heading-block h1 {
    margin-bottom: 1rem !important;
    font-size: 1.125rem;
    font-weight: 500;
    color: #fff;
}

.expand-item h3 {
    margin: 1rem 0 !important;
    font-weight: 400 !important;
    font-size: 1.125rem !important;
    color: #fff;
}

.expand-item #theadvantage {
    margin-bottom: 0;
    justify-content: center !important
}

.expand-item .heading-block {
    position: relative;
    margin: 0.2rem 0 1rem 0
}

.expand-item a img {
    position: relative;
    left: 5px
}

/* Item preview
-----------------------------------------------------------------*/

.item-preview-container {
    background-color: #8b8b8b;
    position: relative;
}

.item-preview-container {
    padding: 40px 0 80px 0;
}

.item-preview {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto;
}

.item-preview-container-lg .item-preview {
    height: 380px;
    max-width: 600px;
}

.item-preview-container-md .item-preview {
    height: 269px;
    max-width: 336px;
}

.nav-settings{
    position: relative;
    bottom: 0;
    z-index: 100;
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: center;
    border-bottom: 0;
    margin-top: -49px;
}

.nav-settings.nav-dark{
    margin-top: -56px;
    padding-bottom: 1.5rem;
}

.nav-settings .nav-link{
    border: 0;
    border-radius: 0;
    color: #fff;
    font-size: 1rem;
    background: #666666;
    margin-right: 2px;
    margin-left: 2px;
    z-index: 500;
    padding: 0.25rem 0.75rem;
}

.nav-settings .nav-link span{
    font-size: 0.75rem;
    margin-right: 0.5rem;
}

.nav-settings .nav-link:hover{
    background: #7a7a7a;
    color: #fff;
}

.nav-settings.nav-dark .nav-link:hover{
    background: #555;
    color: #fff;
}

.nav-settings .nav-link.active:hover{
    background: #f7f7f7;
    color: #333;
}

.nav-settings.nav-dark .nav-link.active:hover{
    background: #fff;
    color: #282828;
}

.nav-settings .nav-link.active{
    background: #fdfdfd;
    border-radius: 0;
    color: #333;
}
.nav-settings .nav-item:first-child .nav-link.active{
    border-bottom: 1px solid #fff;
}

.nav-settings.nav-dark .nav-link.active{
    background: #282828;
    color: #fff;
}

.settings .image-not-null{
    top: 0;
    height: fit-content;
}

.settings .layer-content{
    border: 0;
}

.nav-settings .nav-item{
    margin-bottom: 0;
    width: 100%;
    text-align: center;
}

.nav-settings .icon-our_tools{
    position: relative;
    top: 1px;
    font-size: 0.9rem;
}

/* Custom Ratio Checkbox */

.ratio-checkbox input[type="checkbox"],
.ratio-checkbox .icon-chain {
    display: none;
}

.ratio-checkbox input[type="checkbox"]:checked ~ .icon-chain
{
    display: inline-block;
    opacity: 1;
}

.ratio-checkbox input[type="checkbox"]:checked ~ .icon-unchain
{
    display: none;
}

.icon-unchain{
    background: #6ab53c;
    padding: 6px;
}

.ratio-checkbox{
    height: 30px;
    width: 30px;
    border: 1px solid #fff;
    background: #8b8b8b;
    color: #fff;
    cursor: pointer;
    transition: 0.1s;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    box-shadow: 1px 1px 0px #aaa;
}
.ratio-checkbox:hover{
    transition: 0.2s;
    background:#6ab53c;
}

.bg-dark .ratio-checkbox{
    border: 1px solid #8b8a8a;
    background: #282828;
    z-index: 50;
    margin-left: 14px;
}

.bg-dark .ratio-checkbox:hover{
    background:#6ab53c;
    border: 1px solid #fff;
    color: #fff;
}

.bg-dark .icon-unchain{
    background: #6ab53c;
    opacity: 1;
    padding: 6px;
    border: 1px solid #fff;
}

.bg-dark .ratio-checkbox:hover .icon-chain{
    color: #fff;
}

.bg-dark .icon-chain{
    color: #8b8a8a;
}

#js-custom-size-container .unit{
    padding-left: 1rem;
}

#js-custom-size-container span span{
    display: inline-block;
    width:20px;

}

/* Outil d'ajout de marge */


.margin-tool label {
    margin-bottom: 0;
}

.margin-tool .input-group-text{
    border-radius: 0;
    background: #7a7a7a;
    color: #fff;
    border: 0;
}
.margin-tool .input-group{
    width: 140px;
}
.margin-tool .text-right{
    border: 0;
}
.margin-tool h2{
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: 0.25rem;
    line-height: 1rem;
    text-align: left;
}
.margin-tool .col-md-4 input{
    margin-right: 5px;
}
.margin-tool .col-md-4.text-right label{
    position: absolute;
    bottom: 0;
    display: block;
}
.margin-tool label{
    font-size: 0.9rem;
    line-height: 1rem;
    text-align: left;
}
.margin-tool label span{
    font-size: 0.875rem;
    margin-left: 3px;
    cursor: pointer;
}
.margin-tool .col-md-4:nth-child(1) {
    border-right: 0.5px solid #444;
}
.margin-tool .col-md-4:nth-child(2) {
    border-left: 0.5px solid #000;
    border-right: 0.5px solid #444;
}
.margin-tool .col-md-4:nth-child(3) {
    border-left: 0.5px solid #000;
}

.margin-tool .btn{
    width: 100%;
}
.image-not-null, .param-item-image-null {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    text-align: center;
    cursor: pointer;
    opacity: 0;
    color: #fff;
    z-index: 10;
    height: auto;
    background: rgba(0, 0, 0, 0.75);
    transition-delay: 0.1s;
    transition: opacity .15s ease-out
}


/* Outil de recadrage */

#js-custom-size-container .js-custom-size{
    max-width: 100px;
}

#js-custom-size-container{
    position: relative;
}

.bg-ratio{
    background-image: url("../images/bg-ratio-i0PSuI7.png");
    width: 30px;
    height: 61px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 5px 0 0 15px;
}

/* Chrome, Safari, Edge, Opera */
.settings input::-webkit-outer-spin-button,
.settings input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.settings input[type=number] {
    -moz-appearance: textfield;
    text-align: right;
}


/* Outil d'optimisation */

.optimization-icon{
    width: 80px;
    height: 74px;
    display: block;
    background-size: 200%;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: 0px 2px 5px 0px rgba(0,0,0,1);
    -webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,1);
    -moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,1);
    max-width: none;
    min-width: unset;
}
.optimization-tool,
.margin-tool{
    text-align: justify;
    padding: 2rem;
}
.optimization-tool h2{
    font-size: 1.25rem;
    font-weight: bold;
    display: inline-block;
    padding: 0;
    margin: 0;
    width: 100%;
}
.optimization-tool .optimization-txt{
    line-height: 1.25rem;
    text-indent: unset!important;
    margin: 1rem 0 1.5rem 0!important;
}
.optimization-tool p a{
    font-weight: bold;
    color: #fff;
    text-decoration: underline;
}
.optimization-tool p:first-of-type{
    text-indent: 96px;
    margin-top: -1rem;
}
.optimization-tool form,
.js-opti-comment,
.optimization-tool textarea{
    margin-top: 0.5rem;
}
.optimization-tool .form-check-label{
    margin-left: 10px;
}

.optimization-tool hr{
    border-bottom: 1px solid #000;
    border-top: 1px solid #3f3f3f;
}

.optimization-tool h3{
    font-size: 1.15rem!important;
    font-style: italic!important;;
    text-align: center;
}

.optimization-payant span{
    font-style: normal;
    font-weight: 400;
}
.optimization-payant{
    display: inline-block;
    font-style: italic;
    text-indent: 0!important;
    margin-top: 0!important;
    line-height: 1.25rem;
    font-weight: 300;
}

.optimization-label{
    display: block;
    background: #e20030;
    padding: 4px 10px;
    position: absolute;
    right: 10px;
    top: 4px;
}

.optimization-options{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 180px;
    margin: 0 1rem;
}

.optimization-options span{
    margin-top: 0.75rem;
    min-height: 48px;
    line-height: 1.25rem;
}

.optimization-tool .col-md-5 span{
    white-space: inherit;
    text-align: center;
    max-width: 200px;
    line-height: 1.25rem;
    background: none;
    border: 0;
    padding: 0;
    margin-top: 1rem;
}

/* DragSetting
-----------------------------------------------------------------*/

.dropzone.nw:hover .layer-main-content {
    display: block !important
}

.dropzone.nw:hover .image-not-null,
.dropzone.nw:hover .param-item-image-null {
    opacity: 1;
    transition: opacity .15s ease-out
}

.dropzones {
    position: relative;
}

.dragsettings p {
    font-size: 1em
}

.dragsettings p span {
    display: inline-block;
    font-size: 1.5em;
    margin-bottom: 10px
}

.cart-preview {
    background: no-repeat center center;
    height: 60px;
    width: 60px;
}

.cart-item-model {
    position: absolute;
    bottom: 0;
    width: 60px;
    text-align: center;
    background-color:rgba(112, 191, 65, 0.9);
    color: #fff;
    font-weight: 400;
    padding: 2px;
}

.thumbnail-loading {
    background-size: 150px 150px
}

/* DragSidebar
-----------------------------------------------------------------*/

.dragsidebar {
    background: #8b8b8b;
    padding: 2%;
    margin-top: 0.25rem;
}

.dragsidebar a {
    color: #fff;
    font-weight: 600;
    z-index: 0 !important;
}

.dragsidebar .text-center {
    border: 3px dotted #eee;
    font-size: 1.125rem;
    padding: 1rem .5rem 1.25rem .5rem;
    line-height: 1.4rem;
    color: #fff
}

.sidebar .dragsidebar span:nth-of-type(2) {
    display: block;
    font-weight: 400;
    font-style: italic;
    font-size: 0.875rem;
    opacity: 0.75;
}

.sidebar .dragsidebar span:nth-of-type(1) {
    display: block;
    margin-bottom: 0.25rem;
}

.dragsidebar .uploader-param-error {
    font-size: 1rem;
    margin: 1rem 1rem 0.5rem 1rem;
    line-height: 1.2rem;
    color: #333
}

#js-modal-add-basket .dragsidebar .text-center{
    font-size: 1.35rem;
}

#js-modal-add-basket .dragsidebar span:nth-of-type(2){
    font-size: 1rem;
    font-style: italic;
    padding-top: 0.5rem;
    display: block;
}

#js-modal-add-basket .modal-dialog{
    width: 100%;
    max-width: 700px;
}


/* Hero Header
-----------------------------------------------------------------*/

.heading-block h1 {
    font-size: 1.125rem;
    font-weight: 600
}

.header-container {
    background: #fff;
}

.header-container h1,
.wrap-login h1{
    color: #e20030;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.35rem;
    padding:0 0 0.75rem 0;
    text-align: center;
}

.header-container .heading-block {
    position: relative
}

.product .header-container span {
    display: none
}

.header-container img{
    width: 100%;
}


/* Headings
-----------------------------------------------------------------*/

h1.page-title {
    font-style: normal;
    padding: 0;
    text-align: center;
    font-weight: 500;
    color: #333;
    font-size: 1.5rem
}

.middle-content h1 {
    font-weight: 400;
}

.breadcrumb.main-bread {
    background: transparent;
    border-radius: 0;
    margin-bottom: 0;
    font-size: .8rem;
    padding: 0
}

.breadcrumb.main-bread a {
    color: #999
}

.breadcrumb-item {
    color: #e20030;
    float: none;
    display: inline-block;
    font-style: italic;
    font-size: 1.25rem;
}

.breadcrumb-item.active,
.breadcrumb-item::before {
    color: #aeaeae !important;
}


/* Heading Block
-----------------------------------------------------------------*/

.heading-block h1,
.heading-block h2,
.heading-block h3,
.heading-block h4 {
    margin-bottom: 0;
    color: #333
}

.heading-block > span {
    font-size: 1.125rem;
    font-weight: 300;
    padding-top: 0.5rem;
    display: inline-block;
}

/* Content
-----------------------------------------------------------------*/

.container{
    position: relative;
}

.container h3 {
    font-size: 1.125rem;
    font-weight: 500;
    font-style: normal;
    color: #e20030
}

.container h3.lowerstyle,
.container h3.upperstyle {
    font-size: 1.125rem;
    font-weight: 600
}

.container .upperstyle {
    text-transform: uppercase
}

.container .blockquote {
    font-weight: 300;
    font-style: italic;
    border-left: 4px solid #eee;
    padding-left: 2.4rem
}

.wrap,
.wrap-full-col,
.wrap-full{
    background: #fff;
    padding: 1rem 0.5rem;
    position: relative;
}

.wrap-main {
    padding: 0 0.5rem 2rem 0.5rem;
}

.wrap.p-4 {
    padding: 2rem 4rem!important;
}

.wrap-login{
    padding: 0 1rem;
    background: #fff;
    position: relative;
}

.wrap.all-packages{
    padding: 1rem 2rem;
}

.addContent img {
    margin-bottom: 1rem
}



/* Posts
-----------------------------------------------------------------*/

.entry-content a:hover {
    text-decoration: none
}

.entry-content h3 a {
    color: #111;
    font-weight: 300;
    font-size: 1.5rem;
    text-transform: uppercase;
    font-style: normal;
}

.entry-content {
    font-size: 1rem;
    margin-bottom: 1.5rem
}

.entry-content h5{
    color: #111;
    font-weight: 300;
    margin: 1rem 0;
    font-size: 1.25rem;
}

.entry-content:after {
    content: " ";
    display: block;
    /*background: linear-gradient(to right,#fff, #ccc, #fff);*/
    height: 1px;
    width: 50%;
    margin: 1rem auto 0 auto;
}

.entry-content br {
    display: none;
}

.entry-content .entry-img {
    font-size: 1.5rem;
    text-transform: uppercase;
    font-style: normal;
}

.entry-meta li span {
    color: #aaa;
    font-size: .9rem;
    margin-right: .35rem
}

.post-item .entry-meta li {
    margin-top: 0;
    font-style: normal;
    font-weight: 300;
    font-size: 0.75rem;
    color: #333;
}

.post-item p {
    font-weight: 300
}

.entry-content a.read-more {
    display: inline-block;
    margin-top: 2rem;
    font-size: 1rem;
    margin-right: .5rem
}

.entry-content a.read-more:hover,
.entry-content a.read-more:hover .icon-flat {
    color: #333;
    border-color: #333
}

.entry-content img {
    display: block;
    height: auto;
    margin: 1rem 0;
    width: 100%;
    max-height: 440px;
    object-fit: cover;
    object-position:100% 35%;
    _:-ms-fullscreen, :root .foo { max-height: none; }
}

.entry-img img {
    width: 100%;
}

.read-more,
.read-less {
    margin: 1rem 0
}

.read-more a,
.read-less a {
    font-size: 1.125rem
}

.entry-content h3{
    font-style: italic;
    color: #333;
    font-weight: 400;
    margin: 1rem 0 0.75rem 0;
}

.entry-content h4 {
    padding: 1rem 0;
    font-style: italic;
    font-size: 1.125rem;
    margin-bottom: 0
}

.entry-c {
    position: relative;
    overflow: hidden;
    max-width: 700px
}

.entry-c h5 {
    text-align: center;
    font-weight: 500;
    color: #333 !important
}

.entry-content div {
    text-align: justify;
    font-weight: 350;
    line-height: 1.5rem;
}

/* Pagination
-----------------------------------------------------------------*/

.paginate {
    text-align: center;
    width: 100%;
    position: absolute;
    bottom: -2rem;
    right: 0;
    left: 0;
    margin: auto
}

.paginate a {
    color: #e20030;
    font-size: .9rem;
    padding: 10px
}

.paginate a:hover,
.paginate .icnk:hover,
.page-link:hover .icnk {
    color: #fff
}

.page-link:hover {
    color: #0056b3;
    text-decoration: none;
    background-color: #333;
    border-color: #333
}

.page-link {
    border-color: #eee;
    border-radius: 0 !important
}

.page-item .icnk {
    height: 100%;
    font-size: 0.75rem;
    height: 15px
}

/* Sidebar
-----------------------------------------------------------------*/

#sidebar-menu {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.125rem;
    margin-bottom: 3rem;
    height: 100%;
    top: 0;
    position: sticky;
    position: -webkit-sticky;
}

.sidebar h4.widget-title {
    font-size: 1.25rem;
    text-transform: uppercase;
    font-weight: 350;
    background: #f6f6f6;
    color: #111;
    padding: 0.85rem;
    margin-bottom: 0;
    text-align: center;
    border-bottom: 1px solid #ebebeb;
}

.widget-content{
    padding: 1rem;
}
.sidebar-address {
    background: #f7f7f7
}

.sidebar-address .order-list-item,
.sidebar-address .order-list-item p{
    padding-bottom: 0 !important;
    min-height: auto !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    line-height: 1.25rem;
}

.sidebar-address .underline {
    margin-right: 1rem
}

.sidebar-address hr {
    border: 8px solid #fff;
    width: 100%
}

.sidebar .card h2 {
    color: #fff;
}

.widget-block {
    border: 1px solid #ebebeb;
}

.widget-content span{
    color: #cac9c4;
}

.widget-social span{
    color: #fff;
    font-size: 0.8rem;
}

.widget-links li a {
    line-height: 2rem;
    display: inline-block;
    border: none !important;
    color: #222222;
    font-size: 1rem;
    padding-left: 0.5rem;

}

.widget-links li a:hover {
    text-decoration: underline;
}

.widget-block p {
    font-size: 0.9375rem;
    text-align: center
}

.widget-social {
    display: flex;
    justify-content: center
}

.widget-social a {
    width: 25px;
    height: 25px;
    margin: 0 5px 5px;
    transition-duration: 0.2s;
    background-color: #555;
    color: #fff;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    display: flex
}

.widget-social a:hover, .entry-social a:hover {
    transition-duration: 0.2s;
    background-color: #e20030;
    text-decoration: none;
    color: #fff
}

.instagram-picto {
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 50%;
    width: 110px;
    height: 110px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center
}

.instagram-picto img {
    width: 74px;
    height: 38px;
    display: block
}

.instagram-wall {
    margin: 1.5rem auto 0 auto;
    padding: 0 .5rem;
    justify-content: center
}

.instagram-wall .thumbnail img {
    margin: 5px;
    width: 65px;
    height: 65px
}

.post-item .entry-related h6 a {
    color: #333;
    font-weight: 500;
    font-style: italic;
    font-size: 1.125rem
}

.post-item .entry-related h6 {
    margin-bottom: .5rem
}

.entry-related .widget-content,
.widget-seen-article .widget-content{
    max-height: 360px;
    overflow-y: scroll;
    scrollbar-width: thin;
}

.entry-related .post-item img{
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    transition: filter .23s ease-in-out;
    margin-bottom: 0.5rem;
}

.entry-related .post-item:hover img{
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    transition: filter .23s ease-in-out;
}

.entry-related .post-item:hover span{
    text-decoration: underline;
}

.entry-related .post-item br{
    display: none;
}

.entry-related .row:nth-child(1) {
    padding-top: 0.5rem;
}

.entry-date {
    font-size: .825rem;
    margin-bottom: 0.5rem;
    font-weight: 300;
    color: #3A3A3A;
    display: block;
}

.entry-title {
    font-size: 1rem;
    color: #333!important;
    display: block;
    font-weight: 300;
    padding: 0;
    text-align: center;
    line-height: 1rem;
}

.entry-title div{
    height: fit-content;
}

.entry-related a:hover {
    text-decoration: none;
}

.entry-related img {
    width: 100%;
    height: auto;
    margin-bottom: 0.5rem;
}

.entry-tags a {
    padding: .4em .6em;
    font-size: .925rem;
    margin-right: 0.5rem;
    border: 1px solid #6ab53c;
    color: #6ab53c;
    margin-bottom: 0.5rem;
    transition: all .2s ease-in-out
}

.entry-tags a:hover {
    color: #fff;
    background: #6ab53c;
    text-decoration: none
}

.img-product{
    max-width: 800px;
    margin-left: 2rem;
    margin-bottom: 2rem;
    margin-top: 2rem;
    float: right;
}
.blog .breadcrumb-item {
    font-size: 1rem !important;
}

/* Strate theadvantage
-----------------------------------------------------------------*/

#theadvantage {
    margin: 1rem 0 0 0 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.adv-item {
    margin: 1.5rem;
    max-width: 92px;
    position: relative;
    text-align: center
}

.adv-item-txt {
    position: absolute;
    max-width: 85%;
    max-height: 40%;
    top: 10%;
    left: 0;
    bottom: 0;
    right: 0;
    font-size: 0.95rem;
    line-height: 0.95rem;
    font-weight: 500;
    font-style: italic;
    letter-spacing: -1px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer
}

.adv-item-label {
    font-size: 0.875rem !important
}

.adv-item img {
    width: 92px;
    height: 92px;
    border: 1px solid #bcbcbc;
    cursor: pointer
}

.adv-item .icon-star {
    color: #fff !important;
    text-shadow: 0 0.5px 0.5px rgba(0, 0, 0, 0.6) !important
}

/* Info Box
-----------------------------------------------------------------*/

#infobox {
    background-color: #f7f7f7;
    margin-bottom: 0;
    font-size: 1.6rem;
    line-height: 1.4;
    font-weight: 300;
    font-style: italic
}

.infobox-btn {
    width: 100%;
    position: relative;
}

.infobox-item.row .btn {
    padding:0.45rem 0 0.5rem 0;
}

.infobox-item.row .btn-border {
    margin-bottom: 0.5rem;
    line-height: 100%;
}

.infobox-item .btn:nth-last-child(1) {
    margin-bottom: 0;
}

.infobox-item .btn {
    font-size: 0.85rem;
}

.infobox-item .infobox-image img,
.package-group img{
    border-radius: 0;
    display: block;
    margin: 0 auto;
    object-fit: contain;
    object-position: top;
}

.infobox-image {
    margin: 0;
    padding: 0;
    /*display: flex;*/
}

/* fixme cette classe ne semble pas être utilisée en prod */
.infobox-item .ribbon {
    background: url('../medias/icon/bg-connaisseur.png') no-repeat center left;
    position: absolute;
    display: inline-block;
    right: 0;
    top: 10px;
    padding: 3px 12px 5px 40px;
    color: #fff;
    line-height: 1.2;
    font-size: 1.2rem;
    font-style: italic;
    font-weight: 500;
    text-align: center;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2)
}

.infobox-item .infobox-body {
    font-size: 0.95rem;
    line-height: 1rem;
    transition: background .1s ease;
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
    justify-content: flex-start;
}

.infobox-item .infobox-body:nth-of-type(3){
    justify-content: space-between;
}

.merchandises .infobox-btn .row {
    gap: 10px;
}
.merchandises .infobox-btn .col-6 {
    max-width: 47%;
}

.merchandises .infobox-block{
    padding: 0;
    max-width: 100%;
}

.merchandises .infobox-item .infobox-body {
    font-size: 0.95rem;
    padding: 0.75rem 0;
    min-height: 50px;
}

.package-list.merchandises {
    margin-top: 1.5rem;
    gap: 0;
}

.modal-body .infobox-item .infobox-body {
    justify-content: center;
}
.modal-body .infobox-item {
    margin-bottom: 0;
}

.infobox-item.row .infobox-body h4{
    margin-bottom: 0.5rem;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* number of lines to show */
    line-clamp: 2;
}

.product p em{
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.5rem;
}

.infobox-item .infobox-body.row  {
    padding-left: 1.5rem;
}

.infobox-item .infobox-body .text-danger {
    font-weight: 600;
}

.infobox-body h4{
    font-size: 1rem;
    line-height: 1rem;
}

.infobox-body p{
    font-size: 0.9rem;
    line-height: 1.125rem!important;
    margin-bottom: 0.5rem;
    /* overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2; number of lines to show
    line-clamp: 2;
    -webkit-box-orient: vertical; */
}

.infobox-body .light{
    -webkit-line-clamp: none;
    line-clamp: none;
}

.infobox-body .small.light{
    background: #f2f2f2;
    padding:0.5rem;
}

.infobox-body .light br{
    display: none;
}
.modal-body p{
    font-size: 1rem;
    line-height: 1.25rem!important;
    -webkit-line-clamp: none;
    text-align: justify;
}
.infobox-body span{
    line-height: 1rem;
}

.infobox-body .icc{
    font-size: 0.9rem;
    font-weight: 500;
    text-decoration: underline;
    text-align: center;
}

.lightbox-medias .modal-content{
    background: #444;
    color: #fff;
}

.lightbox-medias h1{
    color: #fff;
    font-size: 1.25rem;
    font-style: normal;
    width: fit-content;
}

.lightbox-medias p span{
    color: #fff!important;
    letter-spacing: 0.5px;
}

.lightbox-medias .small{
    display: inline-block;
    text-align: left;
    margin: 0.5rem 0 1rem 0;
    color: #fff !important;
    font-size: 1rem;
    font-style: normal;
    width: 100%;
    border-top: 0.5px solid #777;
    padding-top: 1rem;
}

.lightbox-medias .icc{
    color: #fff !important;
    font-weight: bold;
    font-size: 1rem;
    font-style: normal;
}

.product-media-reflection {
    float: right;
    display: none
}

.infobox-item .infobox-title {
    padding: 0.5rem 0 1rem 0;
    font-size: 1.125rem;
    font-style: italic
}

.infobox-overlay {
    position: absolute;
    top: 1px;
    left: 1px;
    width: 96%;
    height: 96%;
    opacity: 0;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.95);
    transition: opacity .4s ease-in-out;
}

.infobox-overlay .light {
    opacity: 1;
}
.modal-content .infobox-content{
    padding: 1rem 2rem!important;
    max-height: 256px;
    overflow-y: auto;
}
.modal-content .infobox-content p{
    line-height: 1.125rem;
}
.modal-content a{
    text-decoration: none;
}
.infobox-content p {
    line-height: 1.33rem;
    margin-bottom: 1rem !important
}

.infobox-content p:nth-child(2) {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
}

.infobox-content p:nth-child(4) {
    font-size: 1rem;
    font-weight: 300
}

.infobox-content p:nth-child(5) {
    font-size: 1rem;
    font-weight: 500
}

.infobox-content p:nth-child(6) {
    font-size: 1rem;
    font-weight: 300
}

.infobox-image:hover .infobox-overlay {
    opacity: 1
}

.infobox-item .infobox-overlay .infobox-content {
    color: #333;
    text-align: left;
    font-size: 1.125rem;
    font-weight: 600;
    transition: margin .3s ease-in-out
}

.infobox-image:hover .infobox-content {
    margin-top: 20px
}

.infobox-block {
    position: relative;
    width: 100%;
}

.infobox-block.selected:after {
    content: '';
    position: relative;
    left: 30px;
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-bottom: 20px solid #656565;
    clear: both;
}

.infobox-item{
    border: 0.5px solid #dddddd;
    box-sizing: border-box;
    margin-bottom: initial;
    padding: 1rem;
    margin-right: 0;
    margin-left: 0;
    height: 100%;
}
.infobox-item .col-6 .product-picker-form.col-6 {
    width: 100%;
    max-width: 100%;
    padding: 0
}

.modal-content .product-picker-form .btn-link{
    line-height: 1.5rem;
    transition: 0.5ms;
}
.js-upload-browse:hover{
    opacity: 0.75;
}
.modal-content .product-picker-form .btn-link:hover{
    opacity: 0.7;
    transition: 0.5ms;
}

.modal-product .carousel-item{
    height: fit-content;
    padding: 0;
    width: 100%;
}

.modal-product{
    padding: 0!important;
    overflow-x: unset!important;
    overflow-y: unset!important;
    margin: -2rem auto 0 auto;
    max-width: 420px;
    z-index: 200;
    top: 0;
    left: 0;
    background-color: transparent;
}

.modal-product .slide{
    height: fit-content;
}

.btn-open-modal-product,
.btn-close-modal-product {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 50;
    height: 32px;
    width: 32px;
    text-align: center;
    padding: 0;
    background: #222;
}

.btn-open-modal-product:hover .icnk,
.btn-close-modal-product:hover{
    color: #999!important;
    transition: 150ms;
}

.btn-open-modal-product .icnk{
    color: #fff!important;
    position: relative;
}

.btn-close-modal-product{
    font-size: 1.5rem!important;
    top: 0;
    height: 28px;
    width: 28px;
    color: #fff;
    line-height: 0.5rem;
}

.modal-product .carousel-indicators{
    height: fit-content;
    bottom: 0;
    right: 0;
    padding: 0;
    left: unset;
    margin-left: unset;
    margin-right: unset;
    margin-bottom: 4px;
}

.modal-product .carousel-indicators li {
    width: 48px;
    height: 38px;
    margin: 0 2px;
    border-radius: 0;
    border: 1px solid rgba(255,255,255, 0.3);
}
.modal-product .carousel-indicators li.active {
    border: 2px solid rgba(255,255,255, 1)!important;
}

.modal-product img{
    height: 100%;
    width: 100%!important;
}
.modal-product .modal-body{
    border: 3px solid #fff;
}
/* bandeau professional
-----------------------------------------------------------------*/
.professional::after {
    content: 'Connaisseurs';
    color: #fff;
    font-weight: 600;
    font-size: 1.125rem;
    font-style: italic;
    padding: 1px 10px 4px 8px;
    background-color: #e20030;
    position: absolute;
    z-index: 100;
    bottom: 8.5rem;
    right: 0;
    text-shadow: 0 0.5px 1px #333
}

/* fixme cette classe ne semble pas être utilisée en prod */
.professional::before {
    content: '';
    height: 35px;
    width: 26px;
    position: absolute;
    z-index: 100;
    bottom: 8.5rem;
    right: 120px;
    background-image: url('../medias/icon/ribbon.png');
    background-repeat: no-repeat;
    background-size: 26px 35px
}

.professional.img-wrapper::after {
    font-size: 1.5rem;
    bottom: 1.5rem
}

.professional.img-wrapper::before {
    bottom: 1.5rem;
    height: 41px;
    right: 144px;
    background-size: 26px 41px
}

.img-wrapper {
    position: relative
}

/* Package
-----------------------------------------------------------------*/

.package.container{
    margin-bottom: 2rem;
}
.package .header-container{
    margin-bottom: 0;
    margin-top: 0.25rem;
}
.package p{
    line-height: 1.35rem;
    padding: 0 0.5rem 0.25rem 0.5rem;
}
.package p a{
    font-weight: 400;
}
.package-description {
    font-weight: 350;
}

.package-description p {
    position: relative;
    line-height: 1.375rem;
    padding-bottom: 0.5rem;
    display: flex;
    flex-direction: column-reverse;
}
.package-description p:first-of-type {
    font-size: 0.95rem;
    line-height: 1.125rem;
    padding-right: 1rem;
    display: block;
    font-style: italic;
}

.package.shop .carousel.slide{
    min-height: 0;
}
.package-content small {
    font-size: 90%;
}
.product-name-CAU span:last-of-type{
    font-weight: 600;
    font-size: 1rem;
    display: block;
    padding: 0.5rem 0;
    position: relative;
    left: -9px;
}
.product-name-CAU span:last-of-type::before{
    display: inline-block;
    content: "";
    height: 12px;
    background: #fff;
    width: 12px;
    position: absolute;
    bottom: 10px;
    left: -15px;
}

.package-description p b {
    order: 1;
    padding: 0.5rem 0;
}
.package-description .btn {
    width: 100%;
    max-width: 220px;
    padding: 0.85rem;
    margin-bottom: 1rem;
    display: block;
}

.package-description p span{
    display: inline-block;
    text-indent: -10px;
    margin-left: 10px;
    line-height: 1.125rem;
    margin-bottom: 0.25rem;
    font-size: 0.9rem;
}

.package-description-product {
    display: inline-block;
}
.package-content{
    padding-top: 1.5rem;
    font-weight: 350;
    color: #000;
}

.package-content .js-scrollTo{
    border: 0.7px solid #333 !important;
    color: #333!important;
    font-weight: 400;
    background: transparent;
    padding: 0.75rem 1.25rem;
    display: block;
    text-align: center;
    text-decoration: none!important;
    width: fit-content;
    margin: 2rem auto 1rem auto;
    line-height: 1.125rem;
}

.package-content .js-scrollTo:hover {
    background: #333;
    color: #fff!important;
}

.package-content .js-scrollTo strong{

    font-weight: 400!important;
    font-size: 1rem!important;
}

.package-description-product::after {
    content: attr(data-end) ;
    color: red ;
}

.detail-product {
    width: 100%;
    max-width: 1010px;
    position: relative;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%) !important;
    margin: 0;
}

.detail-product .close{
    text-shadow:none;
    color: #fff!important;
}

.detail-product .tab-content li{
    line-height: 1.3rem;
    text-indent: -0.5em;
    padding-left: 0.5em;
}

.package hr {
    display: none;
}

.package h3{
    font-size: 1.25rem;
    margin-bottom: 1rem;
    margin-top: 1rem;
    color: #e20030;
    font-weight: 600;
}

.package h2 {
    font-size: 1.33rem;
    font-weight: 600;
    text-transform: uppercase;
    margin: 1rem 0 0 0;
}

.package .detail{
    color: #000;
    width: 100%;
    border: 1px solid #eeeeee;
    text-align: justify;
    margin-bottom: 10px;
    padding: 1rem 2rem;
    background: #fafafa;
    margin: 1.5rem 0;
}
.desc-block h4 {
    font-style: italic;
}

.order-qty {
    display: flex;
    flex-direction: column;
}

.order-qty a {
    text-decoration: none !important;
    font-weight: 600;
}

.btn-qty {
    border: 1px solid #ced4da;
    background-color: #fff;
    color: #333;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
}

.price-free {
    position: relative;
    left: -0.5rem;
}

span.item-qty {
    margin: 0.5rem;
    display: inline-block;
}
.package .modal-dialog{
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
}

/* Page boutique
-----------------------------------------------------------------*/
.desc-shop {
    float: left;
    margin-right: 2rem;
}

.settings.shop .products-setting .wrap-full-col{
    border: 0;
}

.settings.shop .alert-sticky{
    margin-right: -15px;
    margin-left: -15px;
    margin-bottom: 1rem;
}

.shop-details {
    border-left: 1px dotted #e0e0e0;
    padding-left: 2rem;
}

.shop-details h3 {
    color: #333 !important;
    margin-top: 0 !important;
    font-weight: 600 !important;
    font-style: italic;
    font-size: 1.125rem !important;
}

.shop-details span {
    display: block;
}

.shop-details small {
    font-weight: 300;
    display: inline;
}

.shop .col-md-7{
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
}

.shop .carousel .img-wrapper,
.shop .carousel-inner,
.shop .carousel-item,
.shop .carousel-img-wrapper,
.shop .carousel img{
    width: 100%!important;
}
.shop .header-container img{
    width: 100%!important;
    object-fit: cover;
}
.package .infobox-overlay{
    padding: 1rem 2rem;
}
.package .infobox-image .btn{
    display: none!important;
}

/* Shipping
-----------------------------------------------------------------*/
.block-paybox {
    min-height: 80px;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.block-paybox div:first-of-type {
    position: relative;
    top: -5px;
}
.block-paybox img {
    max-width: 95%;
    height: auto;
    display: block;
}

.block-paybox small {
    font-weight: 300;
    width: 100%;
    font-style: italic;
    display: inline-block;
    font-size: 10px;
    margin-top: -10px;
}

.block-paybox .col-6 {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.shipping .breadcrumb {
    padding: 0;
    background: transparent;
    display: block;
    text-align: center;
    margin-bottom: 1rem;
    margin-top: 0!important;
    line-height: 1.75rem;
}

.shipping .alert-success{
    position: relative;
    top: 0.5rem;
}

.shipping .breadcrumb-item {
    float: none;
    display: inline-block;
    font-style: italic;
    font-weight: 400;
    font-size: 1.5rem;
    color: #aeaeae;
    width: 100%;
}

.shipping .order-list-item{
    margin-top: 0;
}
.shipping .order-list-item .act{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    border-bottom: 0.5px solid #ccc;
    padding: 0.25rem;
}
.shipping .breadcrumb-item + .breadcrumb-item::before {
    display: none;
}
.shipping h2 {
    font-size: 1.25rem;
    font-weight: 600;
    font-style: italic;
    color: #333;
    margin: 0
}

.personalize-order .float-right:before {
    content: "\e9ac";
    color: #e20030;
    font-family: 'icomoon';
    font-size: 1.125rem
}

.shipping .justify-content-between {
    position: relative;
}

.personalize-order .float-right {
    font-size: 0
}

.personalize-order p {
    margin-bottom: 1.5rem
}

.personalize-order h2 {
    margin: 2rem 0 !important
}

.shipping h3 {
    font-size: 1.125rem !important;
    font-weight: 400 !important;
    font-style: normal !important;
    color: #e20030 !important
}

.shipping .breadcrumb-item + .breadcrumb-item::before {
    color: #f1f1f1;
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    content: ">";
    width: 100%;
    display: none;
}

.shipping .sidebar {
    position: relative;
    position: -webkit-sticky;
    top: 15px;
    height: 100%
}

.shipping .price-ex-tax {
    width: 100%;
    display: block;
    font-weight: 500;
}

.shipping .sidebar .order-list-item a {
    font-size: 1.2rem !important
}

.shipping .box-shadow {
    padding: 1rem 0 1rem 1rem;
    background: #f7f7f7;
    border: 1px solid #fff
}

.shipping .sidebar .order-list-item .row .col-12 {
    white-space: initial;
    line-height: 1.5rem;
}

.shipping .order-list .order-list-item,
.shipping .order-list-item{
    margin-top: 0;
}

#js-delete-shipping-comment,
#js-add-shipping-comment {
    position: absolute;
    bottom: 20px;
    right: 20px
}

.order-comment {
    min-height: 200px !important;
    font-size: 1rem !important
}

.sidebar .crossed-price {
    font-weight: 300;
    margin-right: 0.2rem;
}

.order-list-item {
    background: #f7f7f7;
    color: #333;
    font-size: 1rem;
    font-weight: 300;
    height: auto;
    padding: 1rem;
    margin: 1rem 0 0.5rem 0;
    position: relative;
    transition: background .2s ease-in-out
}
.order-list-item .order-list-item {
    padding: 0!important;
}

.order-list-item-title {
    padding: 0 0 0 1.4rem;
    font-weight: 400;
    font-size: 1rem
}

.shipping .sidebar .order-list-item-title {
    display: none;
}

.order-list-item div div {
    text-overflow: ellipsis;
    position: initial;
    line-height: 1.5rem;
    margin-bottom: 3px;
}

#shipping-form .carrier{
    position: relative;
}

#shipping-form .low-gutters:nth-child(1) div:nth-child(2),
#shipping-form .low-gutters:nth-child(1) div:nth-child(3){
    padding-left: 1rem;
}

#shipping-form .low-gutters .col-6 label span{
    font-weight: 400;
}

#shipping-form .row:first-child div:last-child {
    position: absolute;
}
.order-list-item .modal-content {
    overflow: unset!important;
}

.col-md-4 .order-list-item div div:nth-last-child(1),
.sidebar .order-list-item div div:nth-last-child(1) {
    padding-right: 1rem ;
}

.order-list-item.recap div div {
    font-weight: 500;
    margin-bottom: 0;
    justify-content: center;
}

.order-list-item.recap div {
    position: initial;
    font-size: 1rem;
    justify-content: center;
}

.order-list-item.recap .col-sm-9 {
    padding: 0 0.25rem;
}

.col-9.justify-content-between {
    min-height: 100px;
}

.order-list-item div div span,
.order-list-item div div .filename {
    font-weight: 300;
}

.order-list-item label {
    margin-bottom: 0
}

.order-list-item div small {
    line-height: 1.25rem;
}

.order-list-item hr {
    background-color: transparent;
    height: 1px;
    color: #fff;
    border-top: 1px solid #fff;
    box-sizing: content-box;
    width: 100%;
    margin: 0.6rem auto
}

.addresses .order-list-item {
    padding: 0 !important;
    min-height: auto !important;
    margin: 0
}

.order-list-item:nth-child(even) {
    background: #f7f7f7
}

.sidebar .order-list-item {
    background: #f7f7f7 !important;
    padding: 1rem
}

.js-packaging-link, .js-control-link {
    cursor: pointer
}

.js-packaging-link{
    left: 3px;
    position: relative;
}

#packaging-more-info h2{
    text-align: center;
    width: 100%;
}
#js-modal-packaging .modal-body {
    padding: 0 1rem !important
}

.list-packaging,
.list-control {
    display: flex;
    align-items: center;
    box-sizing: content-box;
    background: #f7f7f7 !important;
}

.list-packaging .icnk,
.list-control .icnk {
    font-size: 1.7rem;
    position: relative;
    margin: 0 auto;
    display: block;
}

.address-container {
    padding: 1rem 0
}

.address-container .form-horizontal{
    flex-direction: column;
    max-width: 900px;
    margin: 0 auto;
}

.order-address,
.sticker-type{
    position: relative;
    font-size: 0.95rem;
}

.order-address .order-address {
    min-height: auto;
    padding: 0
}

.order-address.order-list-item .float-right a {
    position: absolute;
    bottom: 1rem;
    left: 1rem
}

.order-address.order-list-item div {
    line-height: 1.3rem;
}

#js-save-comment-form div{
    margin: 1rem 0;
}
.order-address hr {
    margin: 1.5rem auto 1rem 0
}

.order-edit-address {
    text-decoration: none;
    display: flex;
    padding-top: 0.25rem;
    width: 25%;
    justify-content: flex-end;
    float: right;
}
.order-edit-address .icon-pen{
    right: 4px;
    top: 3px;
    position: relative;
}

.order-address .edit-address {
    position: absolute;
    right: 0
}

.order-address .edit-address a{
    margin-left: 0.25rem;
}

.order-address .pull-right span {
    font-size: 1rem;
}

.shipping .order-address:first-line{
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.shipping.step-3 .breadcrumb .color{
    color: #e20030;
}
.order-sidebar h3{
    margin-bottom: 0.5rem;
    margin-top: 1rem;
}

.order-sidebar .order-list-item{
    margin: 1rem 0 0 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.order-sidebar .order-address{
    min-height: 0;
}
.order-info-title,
.order-list-title,
.carrier-label,
.shipping-delay,
.shipping-price{
    font-weight: 600;
    margin: 0;
    display: inline-block;
}
.order-default-address-text,
.order-title-billing {
    display: block;
    margin-bottom: 0.25rem;
    font-weight: 600;
    font-style: italic;
    font-size: 1rem;
}
h4.order-info-title{
    font-size: 1rem;
}
.shipping-delay span{
    font-size: 0.875rem;
    font-weight: 300;
}

#delay-more-info .middle-content{
    display: flex;
    flex-direction: column;
    justify-content: start;
    gap: 5px;
}
#delay-more-info span{
    line-height: 1.125rem;
    display: inline-block;
    padding-bottom: 1rem;
}

#delay-more-info .modal-content .middle-content p{
    line-height: 1rem;
}

.js-update-address {
    padding-right: 1.5rem;
    margin-bottom: 0.5rem;
}

.sidebar .order-edit-address {
    position: relative;
    top: 0;
    right: 0
}

.order-add-address {
    margin-left: 0.5rem;
}
.shipping{
    padding-top: 0;
    margin-top: 0;
}
.shipping,
.shipping div{
    font-size: 1rem;
}

.shipping .order-add-address {
    position: absolute;
    right: 20px;
    bottom: 20px;
}

.order-list-item a {
    font-size: 1rem;
}

.sidebar-address .order-address strong,
.sidebar .order-title-billing{
    margin-bottom: 0.25rem;
    font-style: normal;
    font-weight: 600;
    color: #000;
    display: block;
}

.order-address p {
    margin-bottom: 0.5rem
}

.edit-addresses {
    position: absolute;
    top: 0.7rem;
    right: 1rem
}

.order-list-item h5,
.order-list-item .h5 {
    font-size: 1rem;
    font-weight: 400;
    color: #333;
    padding-right: 0.5rem;
    display: block;
    white-space: initial;
    margin-bottom: 0;
    line-height: 1.25rem;
}

.order-list-item h5 span {
    display: block;
}

.order-list-item .act {
    font-weight: 500;
    padding-left: 1rem;
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: center;
}

.order-list-item .act label {
    padding-bottom: 0.25rem;
}

.order-list-item .act .light {
    display: none;
}

.order-list-item .icon-bin {
    margin-left: 0.5rem
}

.order-list .icon-cancel-circle {
    font-size: 1rem;
    position: relative;
    top: 1px;
    right: 2px
}

.order-detail .fa::after {
    font-family: 'icomoon';
    position: relative;
    left: -2px;
    color: #e20030;
    font-style: normal;
    margin-right: 0.5rem;
    font-size: 1.3rem
}

.order-detail .fa-trash::after {
    content: "\e9ac"
}

.order-detail .fa-shopping-basket::after {
    content: "\e903"
}

.compte .table-responsive a:hover .fa::after {
    color: #333 !important
}

#codepromo {
    margin-top: 1rem
}

#codepromo .btn {
    color: #fff;
}

#codepromo.input-group .form-control {
    padding: 0 .5rem;
    font-size: .8rem;
    background: #fff !important;
    border: 1px solid #cccccc;
}

.shipping input:not(.btn),
.shipping .custom-select {
    border-radius: 0;
    border: 0.5px solid #ddd;
    font-size: 0.875rem;
    font-weight: 300
}

.shipping .js-update-address-form {
    align-self: flex-start;
    flex-direction: row;
    width: 100%;
}

.shipping input:not(.btn) {
    padding: .3rem .4rem
}

.link-edit-shipping {
    font-weight: 600;
    text-decoration: underline;
}

.carrier {
    display: flex;
    flex-direction: column;
    justify-content: center;
    bottom: 0;
}

.carrier a,
.order-list-item a{
    color: #e20030;
    font-style: italic;
    font-weight: 600;
}
.carrier a:hover,
.order-list-item a:hover{
    text-decoration: none;
}

.order-list-item .carrier a {
    font-size: 0.875rem;
}

.js-select-carrier {
    max-width: 95%
}

.transporteur i{
    font-size: 0.75rem;
    margin-left: 3px;
    line-height: 0.75rem;
    display: inline-block;
}
.transporteur i a{
    font-style: normal!important;
}
.transporteur.order-list-item div:nth-of-type(2) {
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
}
.transporteur.order-list-item div a {
    text-decoration: none;
    font-weight: bold;
    font-size: 0.75rem!important;
}

.transporteur input[name="flexRadioDefault"] {
    margin-left: -15px;
    margin-right: 3px;
}

.caret .icon-triangle-after {
    transform: rotate(90deg);
    color: #333;
    font-size: 1rem;
    height: auto;
    margin-left: 0.2rem
}

.modal-order .modal-content {
    padding: 1rem
}

.modal-order .modal-header {
    padding: 0 1rem
}

.modal-order h6 {
    font-size: 1.125rem;
    font-weight: 600;
    margin: 1rem 0
}

.modal-order span {
    font-size: 1rem;
    line-height: 1.25rem;
    padding: 1rem 0;
    display: inline-block
}

.modal-order .btn {
    margin: 1rem 0;
    min-width: 140px
}

.modal-order .btn.selected {
    opacity: 0.6
}

.btn.unavailable {
    cursor: default !important;
    color: #fff;
}

.crossed-price {
    text-decoration: line-through;
    font-weight: 300 !important;
    white-space: nowrap;
    font-size: 0.875rem;
}

.line-diagonal {
    background-image: gradient(linear, 19.1% -7.9%, 81% 107.9%, color-stop(0, transparent), color-stop(.48, transparent), color-stop(.5, #000), color-stop(.52, transparent), color-stop(1, transparent));
    background-image: repeating-linear-gradient(163deg, transparent 0%, transparent 48%, #fff 50%, transparent 52%, transparent 100%);
}

.order-discount-price {
    color: #e20030;
    font-weight: 600 !important;
}

#js-save-order-form label,
#js-transfer-form label {
    padding: 1rem 0;
    max-width: 100%
}

#js-modal-save .modal-header {
    padding: 0
}

.transfer-success p {
    font-size: 1.125rem
}

#js-credit-note-modal .modal-content {
    padding: 0
}

#js-credit-note-modal .modal-body {
    padding: 1rem 0 2rem 0
}

#js-credit-note-modal .pull-left.p-4 {
    font-size: 1.125rem
}

.credit-note h5 {
    text-align: center;
    padding: 0 1rem
}

shipping .img-fluid {
    display: block;
    height: auto;
    margin: 0 auto
}

.block-promo, .block-fidelity-points, .block-degressive-prices {
    padding: 1rem;
    background: #fff;
    position: relative;
    border:0.5px solid #ddd;
    margin-bottom: 1rem;
}

.sidebar .block-degressive-prices a{
    color:var(--red-on-black);
}

.setting-total {
    padding: 0.5rem 1rem;
}
.setting-total .crossed-price{
    font-size: 1.1rem;
    font-weight: 600!important;
    color: #333!important;
}
.setting-total .row .col-7:nth-of-type(1){
    font-weight: 400;
}

.setting-total .col-7.text-right span:nth-last-of-type(2){
    font-weight: 300!important;
    color: #333;
    font-size: 1.1rem;
}
.setting-total .col-7.text-right span:nth-last-of-type(1){
    font-weight: 800;
    color: #519826;
}
.setting-total .total-discount{
    font-weight: 400;
}

.setting-total .total-discount .text-right{
    padding-left: 0;
    font-size: 1.1rem;
}
.setting-prices{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.discount-price, .setting-prices{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    width: 100%;
    margin-top: 0.25rem;
}
.simulateur .sidebar .block-degressive-prices {
    padding:1rem 0;
    background: transparent;
    border-right: 0;
    border-left: 0;
    border-top: 0.5px solid #555;
    border-bottom: 0;
    margin-top: 1rem;
}
.simulateur .sidebar .block-degressive-prices span,
.tarifs .sidebar .block-degressive-prices span{
    width: 100%;
}
.block-fidelity-points i, .block-degressive-prices i {
    color: #e20030;
}

.block-fidelity-points b {
    margin: 0 0.25rem;
}

.block-fidelity-points .red,
.block-degressive-prices .red{
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    font-weight: 400;
    font-size: 0.875rem;
    text-decoration: underline;
    white-space: nowrap;
}
.block-degressive-prices span a,
.sidebar .block-degressive-prices a:first-of-type{
    position: relative;
    top: 1.5px!important;
    right: unset!important;
}
.block-fidelity-points a:hover {
    text-decoration:none;
}
.block-fidelity-points i:before, .block-degressive-prices i:before {
    font-size: 28px;
    margin-right: 5px;
}

.block-fidelity-points,
.block-degressive-prices{
    display: flex;
    flex-direction: row;
    align-items: center;
    border: 0.5px solid #ddd;
}

.block-fidelity-points p,
.block-degressive-prices p{
    font-weight: 300;
    font-size: 0.9rem!important;
    padding-bottom: 1px;
    padding-left: 2px;
    align-items: center;
    display: flex;
    line-height: 100%;
    max-width: 300px;
}

.simulateur .block-degressive-prices p{
    font-weight: 400;
}

.tarifs .block-degressive-prices a,
.simulateur .block-degressive-prices a{
    position: relative;
    top: -2px;
    right: 0;
}
.simulateur .block-degressive-prices a:hover{
    color: #fff;
}

.tarifs .block-degressive-prices,
.simulateur .block-degressive-prices{
    flex-direction: column;
    align-items: end;
}

.tarifs .block-degressive-prices p,
.simulateur .block-degressive-prices p{
    max-width: unset;
}

.block-fidelity-points a:hover,
.block-degressive-prices a:hover{
    color: #111;
    text-decoration: none;
}

#enlargement-factor-modal strong{
    display: inline-block;
    margin-top: 0.5rem;
}
.sidebar .icon-fidelity{
    position: relative;
    left: -2px;
}

.block-promo {
    background:#f6f6f6;
}

.block-promo p {
    font-size: 1rem;
    margin-bottom: 0;
    line-height: 1.25rem;
    font-weight: 300;
}

.shipping h1.page-title {
    display: none;
}

.shipping .form-check-label{
    font-size: 0.85rem;
    font-weight: normal;
    line-height: 1rem;
    display: flex;
    position: initial;
}

.shipping .packaging-control .carrier{
    position: relative;
}

.shipping .packaging-control .form-check{
    display: flex;
    align-items: center;
    margin-top: 0.5rem;
}

.shipping .form-check{
    padding-left: 0;
    position: relative;
    margin: initial;
}

.packaging-control .form-check-input,
.packaging-control .form-check-input-packaging{
    margin-right: 8px!important;
    margin-top: unset;
    position: relative;
}

.shipping .carrier a
{
    font-size: 0.95rem;
    margin-top: 1rem;
}

.order-packaging-warning {
    background: transparent;
    font-size: 0.83rem;
    font-weight: normal;
    position: relative;
    top: -2px;
    padding: 1.4rem;
    margin: 0;
}

.order-packaging-warning a{
    font-weight: 600;
    text-decoration: underline;
    color: #e20030!important;
}

.packaging-control{
    padding: 0;
    margin: 1rem 0;
}

.packaging-control .form-check-input {
    position: relative!important;
    margin-left: 0!important;
}

input[name="flexRadioDefault"],
input[name="stickerType"],
input[name="shipping-code"]
{
    accent-color: #e20030!important;
}


/* Blog
-----------------------------------------------------------------*/

.blog-header {
    background-color: #fff;
    padding: 2rem 3rem 0 3rem;
    position: relative
}

.blog-main {
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    z-index: 5;
    padding: 2rem;
    position: relative;
    display: flex;
    justify-content: flex-end;
    flex-direction: column
}

.blog p {
    font-weight: 300;
    font-size: 1rem;
}

.blog .text-right {
    margin-bottom: 0;
}

.blog h1 {
    color: #e20030;
    font-size: 1.5rem;
    font-weight: 500;
    border-left: 5px solid #e20030;
    padding-left: 0.75rem;
    margin-bottom: 0.75rem;
    display: inline-block;
    margin-top: 1rem;
}

.blog .blog-header h2 {
    color: #fff;
    font-size: 1.875rem;
    font-weight: 600;
    text-shadow: 1px 1px 6px rgba(0, 0, 0, 0.4);
    max-width: 560px;
    margin-bottom: 0
}

.blog .entry-content h1,
.blog .entry-content h1 a {
    margin-bottom: 2rem;
    font-size: 1.5rem;
    color: #333;
    font-style: italic;
    font-weight: 400;
    border-left: 0 !important;
    padding-left: 0;
}

.blog .entry-content h1:after {
    content: " ";
    display: block;
    background: #6ab53c;
    height: 4px;
    width: 100px;
    margin-top: 1.5rem
}

.blog .entry-content h2 {
    font-weight: 400;
    font-size: 1.125rem;
    color: #e20030;
}

.blog .entry-content h4 {
    font-weight: 600;
    font-size: 1rem;
    font-style: normal;
}

.blog-products {
    margin: 0 0 3rem 0
}

.blog-products .row {
    justify-content: space-between;
    width: 100%;
    max-width: 890px;
    margin: 0 auto
}

.entry-meta {
    font-size: 0.875rem;
    font-weight: 300;
    margin: 0.75rem 0;
    display: block
}
.blog .breadcrumb{
    margin-top: 0.5rem;
}
.blog .breadcrumb-item a{
    font-weight: 300;
    color: #555;
}
.blog .breadcrumb-item.active{
    color: #e20030!important;
}
.card-products {
    width: 180px;
    height: 120px;
    transition-property: filter;
    transition-duration: 0.3s;
    background: no-repeat center;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important
}

.card-products:hover {
    filter: brightness(90%);
    transition-property: filter;
    transition-duration: 0.1s
}

.card-products span {
    text-decoration: none !important
}

.blog-products h3 {
    text-align: center;
    font-weight: normal;
    width: 100%;
    font-style: italic !important;
    color: #333 !important;
    margin: 0 0 2rem 0
}

.blog-products div span {
    font-size: 1rem;
    font-weight: 600;
    color: #fff;
    max-width: 80%;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4)
}

.entry-products-content {
    border: 1px solid #ebebeb;
    padding: 1rem;
    max-width: 220px;
    background: #eeeeee;
    transition-duration: 0.3s;
}

.entry-products-content:hover {
    background: #fff;
    transition-duration: 0.3s
}

.entry-products .btn {
    font-size: 0.75rem;
    color: #fff;
}

.entry-products .col-6 {
    padding: 0 10px !important;
}

.entry-products img {
    display: block;
    margin: 0 auto;
    transition-property: filter;
    transition-duration: 0.3s;
    width: 100%;
    max-height: 140px;
    max-width: 170px;
    object-fit: cover;
    object-position: bottom;
    border: 0.5px solid #dfdfdf;
}

.entry-products .picto-card{
    padding: 1rem;
    min-height: fit-content;
    height: 100%;
    min-height: 200px;
}

.entry-products .picto-card:hover{
    background: #fff;
}


.widget-content .entry-products img {
    display: block;
    width: 100%;
}

.entry-products a {
    color: #666;
    text-decoration: none;
    font-weight: 300;
    font-size: 1rem;
    line-height: 1rem;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;

}

.infinite-item .entry-products span {
    font-weight: 300;
    line-height: 1rem;
    font-size: 0.85rem;
    width: 100%;
    text-align: center;
    color: #111;
    display: flex;
    min-height: 36px;
    justify-content: center;
    align-content: center;
    flex-direction: column;
    padding: 0.5rem 0 0 0;
}

.sidebar .entry-products span {
    text-align: left;
    font-size: 0.8rem;
    line-height: 0.9rem;
    color: #222;
    padding-bottom: 0.5rem;
}
.sidebar .entry-products .btn {
    max-height: 30px;
    font-size: 0.75rem;
}

.sidebar .icon-arrow-right {
    display: none;
}

.entry-social {
    display: flex !important;
    justify-content: flex-start;
    align-items: center;
}

.entry-tags {
    display: flex !important;
    justify-content: flex-start;
    align-items: baseline;
    flex-wrap: wrap;
}

.entry-social a {
    width: 30px;
    height: 30px;
    transition-duration: 0.2s;
    background-color: #999999;
    color: #fff;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    display: flex;
    margin: 2rem .5rem;
    font-size: 1rem
}

.entry-footer {
    clear: both;
}

.entry-footer .entry-social img {
    margin: 1.5rem .5rem 0 .5rem
}

.entry-img-center {
    margin: 1rem auto;
    max-width: 100%;
    float: none !important;
}

.entry-txt-right,
.entry-img-right {
    width: 50%;
    float: right;
    padding: 0 0 1rem 1rem;
    display: block;
}

.entry-txt-left,
.entry-img-left {
    width: 50%;
    float: left;
    padding: 0 1rem 1rem 0;
    display: block;
}

/* Demande de Rattachement
     -----------------------------------------------------------------*/

.rattachement h1 {
    margin-bottom: 0
}

.rattachement-content {
    background: #fafafa;
    border: 1px solid #ebebeb;
    padding: 1rem
}

.rattachement-content p {
    font-size: 1rem;
    font-weight: 300;
    margin: 0
}

/* Détail de la comande
     -----------------------------------------------------------------*/

.detail-commande .order-list-item, .detail-commande .order-list-item:nth-child(2n) {
    background: #f7f7f7
}

.detail-commande .badge-full {
    margin-top: 0 !important;
    margin-bottom: 0 !important
}

h4.badge-full{
    white-space: break-spaces;
}

.detail-commande .page-title {
    padding: 0;
}

.detail-commande .order-list-item div div {
    line-height: 1.5rem;
    margin: 0 auto;
}

.order-info-state {
    text-align: right;
}

.image-invalid .setting-list-item{
    background-color: #ebccd1 !important
}

.order-shipping-address h3 {
    color: #e20030 !important
}

.order-list .icnk{
    top: 2px;
}

.order-delay {
    margin-top: 0.5rem
}

#delay-more-info .modal-content{
    line-height: 1.125rem;
}
.reference {
    line-height: 1.5rem;
}

.order-total {
    line-height: 1.7rem;
}

.order-return-btn {
    margin-left: 1rem
}

.detail-commande .order-package-block .order-list-item {
    padding: 0.5rem
}

.js-update-ship-method{
    font-size: 1.125rem;
}

#js-order-cancel-modal .form-group.row{
    margin-top: 1.5rem;
}

/* Confirmation de commande
-----------------------------------------------------------------*/
.order-confirmation .cms h1{
    text-align: center;
    color: #111;
    font-size: 1.125rem;
}

.order-confirmation .cms .icon-check{
    color: #6ab53c;
    font-size: 1.75rem;
    position: relative;
    top: 5px;
}

.order-confirmation .cms h3{
    font-weight: 400;
    font-size: 1.05rem;
    margin-left: 5px;
}
.order-confirmation .middle-content div div{
    padding:0 2rem;
    min-width: 340px;
}

.order-confirmation .middle-content div div:nth-of-type(1){
    border-right: 0.5px solid #d4d4d4;
}
.order-confirmation .middle-content div div:nth-of-type(3){
    border-left: 0.5px solid #d4d4d4;
}

.order-confirmation h3 .icnk{
    position: relative;
    right: 5px;
    top: 1px;
}
.order-confirmation h3 .icon-euro{
    top: 4px;
}

.order-confirmation .icon-alert,
.order-confirmation .icon-track{
    top: -1px;
}

.order-confirmation .icon-euro{
    top: 2px;
}
.order-confirmation-sponsorship{
    border-bottom: 0.5px solid #acacac;
    padding-bottom: 1rem;
}


/* Partage Réseaux Sociaux
-----------------------------------------------------------------*/

.partager {
    position: relative;
    padding-left: 5px;
    border-top: 1px solid #EEE;
    border-bottom: 1px solid #EEE;
    margin: 2rem 0 1.5rem
}

.partager span {
    color: #666;
    line-height: 36px;
    font-size: .9rem
}

/* Social Icons
-----------------------------------------------------------------*/

.social-icon {
    margin: -1px 0;
    font-size: 1rem;
    width: 40px;
    height: 40px;
    line-height: 3rem;
    color: #333;
    text-shadow: none;
    overflow: hidden
}

.social-icon i {
    line-height: 2.4rem;
    padding-top: 0;
    display: block;
    position: relative;
    transition: all .3s ease
}

.social-icon i:last-child {
    color: #FFF;
}

.social-icon:hover i:first-child {
    margin-top: -2.4rem;
}

.social-icon:hover {
    color: #FFF;
    border-color: transparent
}

/* Parrainage
-----------------------------------------------------------------*/

.container.sponsorship{
    background: #fff;
    padding: 0 0 1rem 0;
}
.icon-sponsorship {
    font-size: 1.25rem !important;
}

.sponsorship .order-list-item {
    font-size: 1.125rem;
    min-height: 110px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.sponsorship .modal-dialog {
    max-width: 648px;
}

.sponsorship .modal h5 {
    text-align: center;
    width: 100%;
}

.sponsorship .modal .form-control-label {
    font-size: 1rem;
}

.sponsorship .modal input:not(.btn) {
    padding: .5rem .75rem;
    background-color: #fff !important;
    font-size: 1rem;
    height: auto;
    border: 1px solid #ccc;
    border-radius: 0;
}

.sponsorship .modal .btn {
    color: #fff;
    background: #6ab53c;;
    border-color: #6ab53c;
    display: block;
    padding: 0.3rem 1rem;
    margin: 2rem auto 0 auto;
}

.sponsorship table .danger td {
    text-decoration: line-through !important;
}

.sponsorship .table-danger, .sponsorship .table-danger > td, .sponsorship .table-danger > th {
    background: #fff !important;
    text-decoration: line-through !important;
}

.sponsorship .table-danger, .sponsorship .table-danger > td, .sponsorship .table-danger > th {
    background: #fff !important;
    text-decoration: line-through !important;
}


/* Mon compte
    -----------------------------------------------------------------*/
.container.compte{
    background: #fff;
    padding: 0 0 1rem 0;
    margin-bottom: 2rem;
    min-height: 600px;
}
.compte .alert-success{
    margin-bottom: 0;
}
.compte h1.page-title, .customer-info h1{
    text-align: left;
    font-size: 1.125rem;
    font-weight: 600;
    color: #e20030;
    text-transform: uppercase;
}

.compte .form-control-label{
    line-height: 1.5rem!important;
    width: 100% !important;
    max-width: 100%;
    font-size: 1rem;
}

.compte .col-sm-8{
    max-width: 100%;
}
.compte .nav-tabs .nav-link, .compte .table thead th {
    width: auto
}

.compte .tab-process.nav-tabs .nav-link:hover,
.compte .nav-tabs .nav-link.active:hover {
    border-bottom: 4px solid #e20030 !important;
    color: #e20030 !important;
    background: none !important;
}

.compte #nav-passee .btn{
    margin: 1rem 0;
}
#nav-passee,
#nav-recue,
#nav-envoyee,
#nav-sauvegardee{
    padding: 0!important;
    overflow-x: visible;
}
#nav-passee div:first-child,
#nav-recue div:first-child,
#nav-envoyee div:first-child,
#nav-sauvegardee div:first-child{
    padding: 0.5rem;
}

.customer-info-body p {
    font-size: 1rem;
    margin: 0;
    font-weight: 350;
    line-height: 1.35rem;
}

.customer-info-body a {
    font-size: 0.9rem;
    font-weight: 400;
}

.sponsorship .customer-info span {
    display: inline-block;
    width: 100%;
    text-align: center;
}
.sponsorship .customer-info p {
    font-size: 1rem;
    line-height: 1rem;
}

.customer-info-body .form-check {
    padding:0;
}

.customer-info-body .show-default-address {
    background: #e5e5e5;
    font-size: 1.1rem;
    line-height: 1.5
}

.customer-info-body h3{
    border-bottom: 1px solid #ddd;
    padding-bottom: 1rem;
}

.customer-info .form-check-label{
    margin: 0 0.25rem 0.25rem 0 !important;
    padding: 0 1rem 0 0rem;
    font-weight: normal;
    display: flex;
    align-items: flex-start;
    line-height: 1.25rem;
    font-size: 0.9rem;
}
.customer-info .form-check-label input{
    top: 3px;
}

.customer-info #anchorRedirect .form-check-label{
    flex-direction: column;
    justify-content: space-between;
    align-content: flex-start;
    margin-bottom: 0.5rem!important;
}
.customer-info #anchorRedirect .form-check-label input{
    position: absolute;
    top: -1px;
}
.customer-info .col-form-label{
    padding-right: 2rem;
    padding-bottom: 0.25rem;
}

.customer-billing-address {
    color: #999
}

.customer-panel-discount div:nth-last-of-type(1){
    color: #6ab53c;
}

.customer-info-body .customer-panel-discount:nth-last-of-type(1){
    border-bottom: 0;
}

.customer-panel-discount{
    border-bottom: 1px solid #ddd;
    padding: 1rem 0;
}

.compte .form-check-label .underline{
    text-align: right;
}

.compte .table-responsive a {
    color: #333
}

.compte .img-fluid {
    display: none;
    width: 100%;
    max-height: 300px;
    object-fit: cover;
    object-position: top;
}

.compte .pb-4{
    border-bottom: 1px solid #eee;
    margin-top: 0.5rem;
}

.compte h3.upperstyle {
    margin-top: 1rem
}

.nav-compte {
    background: #e20030;
    position: relative;
    min-height: 40px;
}

.nav-compte a {
    color: #fff;
    transition: all .2s ease-in-out;
    font-size: 1.05rem;
    display: flex;
    align-items: center;
    width: 100%;
}

.nav-compte a.nav-link-logout {
    background: #111;
    margin-top: 0;
    margin-right: 0;
}

.nav-compte a.nav-link-logout:hover {
    background: #333;
    color: #fff
}

.nav-compte a:hover,
.nav-compte a.active{
    background: #fff;
    color: #000
}

.nav-compte a:hover .icnk,
.nav-compte a.active .icnk{
    color: #000
}

.nav-compte a.active:hover,
.nav-compte a.active:hover .icnk{
    color: #e20030
}

.nav-compte .icnk {
    color: #fff;
    margin-right: 7px;
}

.nav-compte .icon-user::before{
    font-size: 1rem;
}
.nav-compte .icon-burger::before{
    font-size: 0.8rem;
    font-weight: 200;
}
.nav-compte .icon-our_tools::before{
    font-size: 1.125rem;
    font-weight: 600;
}
.nav-compte .icon-sponsorship::before{
    font-size: 1.25rem;
}
.nav-compte .icon-voucher::before{
    font-size: 1.35rem!important;
    font-weight: 600;
}
.processes-column,
.process-inline {
    min-width: 100%
}

.compte .custom-select {
    color: #333;
    padding-right: 2rem;
    margin-bottom: 0.5rem;
}

.compte input:not(.btn),
.compte .custom-select {
    background-color: #f7f7f7;
    border: 1px solid #ededed;
    border-radius: 0;
    font-size: 1rem;
}

.compte .table tbody .order-id {
    color: #aaa;
    font-weight: 400;
    font-size: 0.8rem
}

.compte .table tbody .order-id::before {
    content: "#"
}

.compte .nav-tabs {
    background: #fff;
    padding: 0 0.25rem;
    border-bottom: 0;
    text-transform: uppercase;
    font-size: 1.05rem;
    font-weight: 600;
    position: relative;
    display: flex;
    gap: 0;
    max-width: fit-content;
    justify-content: space-between;
    flex-direction: row;
    margin-top: 0;
}

.compte .nav-tabs li{
    margin-right: 1rem;
}
.compte .nav-tabs .nav-link {
    padding: 0.5rem 0;
    border: 0;
    text-transform: uppercase;
    font-size: 0.95rem;
    letter-spacing: 0.25px;
    font-weight: 400;
    border-bottom: 4px solid transparent;
    color: #333
}

.compte .nav-tabs .nav-link:hover,
.compte .nav-tabs .nav-link.active {
    border-bottom: 4px solid #e20030;
    color: #e20030;
    transition: 0s!important;
}

.compte .table thead th {
    border-bottom: 0;
    border-top: 0;
    font-weight: 400;
    background-color: #f5f5f5;
    font-size: 0.8rem;
    line-height: 0.9rem;
}

.compte .table td,
.compte .table th {
    padding: 0.25rem;
    font-size: 0.8rem;
    line-height: 0.9rem;
    vertical-align: middle;
    text-align: center;
    height: 50px;
}


.compte .table tbody tr a:hover {
    text-decoration: none !important
}

.compte .table tbody tr:first-child th,
.compte .table tbody tr:first-child td {
    border-top: 0
}

.compte .table-hover tbody tr:hover .order-id,
.compte .table-hover tbody tr:hover {
    color: #e20030
}

.compte .table-count {
    border-top: 1px solid #e9ecef;
    padding: 0.5rem;
    font-size: 1rem
}

.no-order{
    padding: 1rem;
}
.js-link-address-default {
    color: #e20030;
    font-weight: 400;
    display: inline-block;
    text-decoration: underline;
    padding-top: 0.5rem;
    float: right;
}


/* Tarifs
-----------------------------------------------------------------*/

.tarifs .collapse-side {
    background: #fbfbfb;
    margin-bottom: 1rem;
    border: 1px solid #eee;
}

.tarifs .collapse-side h3 {
    margin-bottom: 0;
    padding: 1rem;
    font-size: 1rem;
    font-weight: 400 !important;
    text-transform: uppercase;
}

.tarifs .collapse-side h3 a:hover {
    text-decoration: none
}

.tarifs .collapse-side ul {
    display: inline-block;
    padding: 0 1rem;
    margin-bottom: 1rem;
    list-style: none;
    font-size: 1rem
}

.tarifs .collapse-side ul a {
    color: #000;
    margin-left: 10px;
    font-weight: 300;
}

.tarifs .collapse-side ul a:before {
    content: "-";
}

.tarifs .collapse-side ul a:hover {
    color: #e20030
}

.table thead th {
    border-bottom: 0;
    border-top: 0
}

.table .cell-white {
    background: transparent!important;
    border: 0!important;
}

.tarifs .sidebar {
    padding-left: 2rem
}

.tarifs .col-lg-9 {
    padding: 0 1rem
}

.product-price h3 ,
.simulateur h3 {
    text-transform: uppercase;
    font-weight: 600
}

.tarifs .linebreak-light {
    margin: 1rem 0 2rem 0;
    color: #999;
    background-color: #999
}

.tarifs tr > *:not(:first-child) {
    text-align: center !important
}

.tarifs .collapse-side .tarifs-current a {
    color: #e20030 !important;
    font-weight: 600
}

/* Systèmes d'accrochage
-----------------------------------------------------------------*/

.accrochage .media {
    align-items: center;
    background: #f7f7f7;
    border: 15px solid #fff;
    border-bottom: 10px;
    height: fit-content;
}

.accrochage .media div {
    padding: 1rem
}

.accrochage {
    background: #fff;
}

.accrochage .media span {
    font-weight: 300;
    font-size: 0.875rem;
    line-height: 0.875rem;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    height: 100%;
}

.accrochage .media h3 {
    font-size: 1rem;
    font-weight: 600;
    color: #e20030;
    line-height: 1.125rem;
    margin-bottom: 0.5rem;
    text-transform: initial;
}

.accrochage .middle-content div{
    line-height: 1.125rem!important;
}

.accrochage .middle-content div:nth-of-type(2){
    padding-top: 0;
}

.accrochage .media img {
    width: 100%;
    height: auto;
    display: block
}
.accrochage h5,
.accrochage em{
    font-size: 0.9rem;
    font-style: italic;
    line-height: 0.9rem;
}

.accrochage em{
    padding-top: 0.5rem;
    display: inline-block;
    width: 100%;
}

.accrochage strong{
    font-weight: 600;
}

.accrochage .media a {
    font-weight: 600;
    display: block;
    width: 100%;
    text-align: right;
    margin-top: 10px;
}

/* Simulateur
-----------------------------------------------------------------*/

.simu-format {
    background: #fbfbfb;
    border: 1px solid #eee;
    padding: 2rem;
    margin: 1rem auto;
}

.simu-format input {
    max-width: 120px
}

.simu-format label.col-form-label{
    padding-left: 0;
}

.simu-format form {
    width: 100%
}

.simu-format h4 {
    font-weight: 600;
    color: #e20030
}

.simu-format #size {
    justify-content: space-around;
    align-items: center;
    display: flex;
    font-weight: 600
}

.simu-format .row {
    display: flex;
    justify-content: space-between;
    margin: 0.5rem 0;
    max-width: 720px;
}
.simu-qty {
    display: flex;
    justify-content: space-around;
    align-items: center;
}
.simu-format .col-sm-8{
    padding-left: 0;
}
.simu-qty #quantity{
    margin-left: 0.5rem;
}
.simu-format select {
    width: auto
}

.simulateur .sidebar {
    color: #fff;
    padding: 2.5rem;
    background: #222;
    margin-bottom: 2rem;
}

.simulateur .sidebar label {
    font-weight: 600;
    font-size: 1.25rem
}

.simulateur .sidebar span {
    font-size: 1.125rem
}

.simulateur .sidebar h3 {
    color: #fff;
    font-weight: 600;
    font-size: 1.5rem !important;
    margin-bottom: 2rem
}

.simulateur .sidebar hr {
    color: #393637;
    background: #393637
}

.simu-menu {
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 400px;
    top: 45%;
    padding: 2rem;
    background: #fff;
    box-shadow: 1px 1px 10px 0 rgba(0, 0, 0, 0.3)
}

.price-total-label, .price-unit-label {
    width: 100%;
    display: inline-block
}

.simulateur .price-ex-tax,
.simulateur .price-unit-ht {
    font-weight: 300;
    opacity: 0.7
}

.simulateur .price-total,
.simulateur .price-unit-ttc {
    font-weight: 600
}

.simu-finitions li {
    margin: 0.5rem 0;
    padding: 1.5rem;
    font-size: 1.125rem;
    background: #fbfbfb;
    border: 1px solid #eee;
}

.simu-finitions a {
    right: 1rem;
    top: 0.2rem;
    position: absolute
}

.simulateur .col-sm-6 {
    font-weight: 300;
    padding-right: 2rem
}

.simulateur .col-sm-2 {
    font-size: 1rem;
}

.simulateur h4 {
    font-size: 1.125rem;
    color: #000;
    font-weight: 600;
    margin-bottom: 1rem;
}

.simu-finitions {
    position: relative
}

.simu-finitions li div {
    display: flex;
    align-items: center
}

#js-menu-modal {
    width: 290px;
    height: 260px;
    box-shadow: 1px 1px 10px 0 rgba(0, 0, 0, 0.3);
    background: #fff;
    position: absolute !important;
    right: 0;
    left: initial !important;
    bottom: initial !important;
    font-size: 1.125rem;
    padding: 1rem 1.5rem
}

#js-menu-modal li span {
    margin-bottom: 0.5rem;
    line-height: 1.35rem;
    font-size: 1.125rem;
    display: inline-flex;
    font-weight: 500;
    width: 100%
}

#js-menu-modal li span::before {
    content: "•";
    color: #ddd;
    position: relative;
    left: -10px
}

#js-menu-modal li a {
    font-size: 1rem;
    font-weight: 300;
    color: #333;
    margin-left: 1rem
}

#js-menu-modal li a::before {
    content: "-";
    color: #333;
    position: relative;
    left: -10px
}

#js-menu-modal li a:hover {
    text-decoration: none
}

/* Package group
-----------------------------------------------------------------*/
.package-group{
    gap: 15px;
}
.package-group-item{
    padding: 1rem;
    border: 1px solid #f1f1f1;
    background: #fff;
    max-width: 49%;
}
.package-group-item .btn{
    padding: 0.5rem 0.7rem;
}

.package-group-container{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.package-group-item ul li{
    font-size: 0.9rem;
    line-height: 1rem;
    font-weight: 300;
    font-style: italic;
    margin-left:5px;
}
.package-group-item li:before{
    content: "•";
    font-size: 0.35rem;
    font-weight: 300;
    position: relative;
    left: -5px;
    top: -3px;
}
.package-group h1{
    font-weight: 300 !important;
    margin: 1.75rem 0 1.5rem 0!important;
    font-size: 1.33rem;
}

.package-group h2{
    font-style: italic;
    font-weight: 400;
    margin:1rem 0;
}
.package-group span{
    font-size: 0.85rem;
    letter-spacing: -0.2px;
    font-weight: 300;
    text-align: center;
}

.package-group .table-tooltip span{
    font-size: 0.75rem;
    font-weight: bold;
    position: absolute;
    right: 6px;
    bottom: 6px;
    text-decoration: underline;
    cursor: default;
    width: 100%;
    height: 15px;
    text-align: right;
}
.package-group .flex-column{
    min-height: 120px;
}
.package-group td{
    font-size: 0.85rem;
    padding: 10px;
    line-height: 1rem;
    position: relative;
}
.package-group .table{
    margin-bottom: 2rem;
}


/* ALL PACKAGES */

.all-packages .package-group{
    display: flex;
    flex-wrap: wrap;
}

.all-packages .package-group-item{
    max-width: unset;
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
}

.all-packages .package-group h2{
    font-size: 1rem;
    margin: 0.5rem 0 0.25rem 0;
    line-height: 1rem;
    text-align: center;
}



.all-packages h1{
    text-transform: none;
    font-size: 1.25rem;
    font-weight: 600;
    color: #e20030;
}

.all-packages .package-group-item{
    margin-bottom: 0;
    max-width: unset;
    position: relative;
}

.all-packages .package-group-item:hover .package-group-item-hover{
    opacity:1;
    transition:visibility 0.1s,opacity 0.1s;
}
.all-packages .package-group-item img{
    border: 1px solid #f1f1f1;
}

.all-packages .package-group-item-hover{
    background:rgba(255, 255, 255, 0.96) ;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    opacity:0;
    transition:visibility 0.1s,opacity 0.1s;
    cursor: pointer;
}
.all-packages .package-group-item-hover p {
    color: #111;
    padding: 2rem;
    font-weight: 350;
    font-size: 1.125rem;
    line-height: 1.25rem;
    overflow-y: auto;
    min-height: 160px;
}

.all-packages-txt {
    font-size: 1.125rem;
    margin-bottom: 1rem;
}

.all-packages-txt:first-of-type {
    text-align: center;
    max-width: 768px;
    margin: 0 auto;
    padding: 1rem;
}


/* Tables
-----------------------------------------------------------------*/
.table-responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
}
.table-striped {
    font-size: 0.875rem;
    border: 1px solid #eee;
}
.table-striped thead {
    font-weight: 500;
}
.table-striped thead tr td{
    line-height: 1rem;
    vertical-align: middle;
}
.table-striped tbody {
    font-weight: 300;
    color: #111;
}
.table-striped td, .table-striped th{
    border-top: 0;
    border-bottom: 1px solid #eee;
}
.table-striped tbody tr:nth-of-type(2n) td,
.table-striped thead td{
    border-right: 1px solid #eee!important;
}
.table-striped tbody tr:nth-of-type(2n+1) td{
    border-right: 1px solid #fff;
}
.table-striped tbody td:first-child{
    font-weight: 400;
}
.table-striped.table-btn tbody td:last-child {
    border: 1px solid white!important;
    background: #fff!important;
}

.table-striped a{
    color: #222;
}

.table-striped a:hover{
    color: #e20030;
}

.table-striped ul li{
    line-height: 0.75rem;
    margin-bottom: 0.25rem;
    display: flex;
}
.table-striped ul li:nth-of-type(4)::before{
    display: none;
}

.table-striped ul li:nth-of-type(4){
    font-size: 1rem;
    margin-left: 5px;
}

.table-striped ul li::before{
    content: "•";
    font-weight: 200;
    color: #555;
    position: relative;
    left: -3px;
    font-size: 6px;
    padding-left: 2px;
}


.tooltip.bs-tooltip-left .tooltip-inner{
    min-width: max-content;
    font-style: normal;
    position: absolute;
    left: 50px;
    top: -50px;
    cursor: default;
}
.tooltip.bs-tooltip-left ul{
    min-width: unset!important;
    text-align: left;
    font-size: 0.85rem;
    cursor: default;
}
.tooltip.bs-tooltip-left ul li::before{
    content: "•";
    font-size: 8px;
    position: relative;
    left: -3px;
    top: -2px;
    opacity: 0.5;
    cursor: default;
}

.tooltip.bs-tooltip-left ul li{
    white-space: nowrap;
    cursor: default;
}

.table-tooltip :hover,
.table-tooltip{
    width:100%;
    height: 15px;
    z-index: 200;
    text-align: right;
}

.supports table {
    flex-wrap: wrap;
    padding: 0;
    margin: 0;
    display: table;
    width: 95%
}
.supports .table-cell {
    box-sizing: border-box;
    flex-grow: 1;
    padding: 0.8em 1.2em;
    overflow: hidden;
    list-style: none
}
.supports table img {
    width: 15px
}
.supports .middle-content a{
    display: flex;
    align-items: center;
}
.supports .middle-content img{
    margin: 0.5rem 1rem!important;
}
.supports table thead th,
.sponsorship table thead th {
    padding: 0.5rem;
    height: 60px;
    vertical-align: middle;
    width: auto;
}
.supports table tr:nth-child(odd),
.sponsorship table tr:nth-child(odd) {
    background: #fff
}

.supports table tr:nth-child(even),
.supports table thead th,
.sponsorship table tr:nth-child(even),
.sponsorship table thead th {
    padding: 1rem;
    background: #ecedee !important
}

.supports table tr,
.sponsorship table tr {
    border-bottom: 1px solid #dedfe0;
    font-size: 0.875rem;
    font-weight: 300;
    line-height: 1rem
}

.supports table tr:last-child,
.sponsorship table tr:last-child {
    border-bottom: none
}

.supports table td,
.sponsorship table td {
    padding: 1rem;
    text-align: left;
    vertical-align: middle;
    width: auto;
}

.sponsorship .col-md{
    background: #fbfbfb;
    padding: 1.5rem;
    margin: 1rem;
    border:0.5px solid #dfdfdf
}

.sponsorship .btn{
    max-width: 260px;
    margin: 0 auto;
    line-height: 20px;
}

.sponsorship .btn .icnk{
    position: relative;
    top: 2px;
    left: -2px;
}

.formats table {
    display: flex;
    flex-direction: column;
    padding: 0 0.5rem;
    box-sizing: border-box;
    border: 10px solid white;
    border-top: 0
}

.formats table tbody,
.formats table thead {
    display: inline-table;
    width: 100%
}

.modal-dialog .formats table {
    background: #f7f7f7;
    padding: 1rem 1rem 0 1rem
}

.modal-dialog .formats table th{
    text-transform: uppercase;
}

.cms table,
.faq table{
    font-size: 0.875rem;
    width: 100%;
    margin: 1.5rem 0;
}

.table-dark a{
    color: #6ab53c;
}
.cms td, .cms th {
    padding: 0.75rem 1rem;
    text-align: left;
}

.cms table.table-alt tr td:nth-child(1) {
    width: 30%
}

.cms table.table-alt tr td:nth-child(2) {
    width: 70%
}


/* Supports
-----------------------------------------------------------------*/

#openAll {
    display: none
}

#closeAll {
    display: inline
}

.supports .acc .card-header {
    padding: 0;
    background: transparent;
    border-top: 1px solid #e9ecef;
    border-bottom: 0
}

.supports .acc:first-child .card-header {
    border-top: 0
}

.supports .card-header h5 {
    font-weight: 500;
    margin-bottom: 0
}

.supports .card-header h5 a {
    display: block;
    width: 100%;
    padding: 1.25rem;
    text-decoration: none
}

.supports .card-header h5 a:hover {
    background: #e9ecef
}


.supports h3 {
    font-size: 1rem;
    margin: 0;
    padding-right: 3rem;
    padding-bottom: 1.25rem;
}

.supports h3 a:hover {
    text-decoration: none
}

.supports .icon-star {
    height: 15px !important;
    color: #666 !important
}

.group-collapse {
    border-top: 1px solid #eee;
    width: 100%;
    padding: 1.25rem 0 0 0;
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
}

.supports .group-collapse-parent .group-collapse:first-of-type{
    border-top: 0;
}

.process-title {
    color: #333;
    text-decoration: none!important;
}

.process-title:after {
    content: '-';
    font-size: 1.5rem;
    padding-bottom: 4px;
    font-weight: 500;
    display: flex;
    border-radius: 50%;
    height: 22px;
    width: 22px;
    align-items: center;
    justify-content: center;
    position: relative;
    left: calc(100% - 2rem);
    top: 1rem;
    color: #333;
    border: 1px solid #333;
}

.process-title.normal:after {
    content: '+';
    color: #e20030;
    font-weight: 500;
    font-size: 1.3rem;
    border: 1px solid #e20030;
    padding-bottom: 2px;
    bottom: 0;
    margin: auto 0;
}


/* Prestation
-----------------------------------------------------------------*/

.tab-process.nav-tabs {
    border-bottom: 0;
    justify-content: flex-start;
    gap: 20px;
}
.modal-content .tab-process.nav-tabs {
    margin-bottom: 0.5rem;
    /*margin-top: 1.5rem;*/
}

.tab-process.nav-tabs .nav-link,
.nav-pills .nav-link {
    border-radius: 0 !important;
    text-align: center;
    padding: 0.75rem 1rem;
    border: 0.7px solid #333 !important;
    color: #333;
    line-height: 1.2;
    font-weight: 400;
    text-decoration: none;
    transition: background 200ms ease
}

.tab-process.nav-tabs .nav-link:hover, .nav-tabs .nav-link.active:hover {
    border-color: #6ab53c!important;
    background: #6ab53c;
    transition: background 200ms ease;
    color: #fff
}

.tab-process.nav-tabs .nav-link.active,
.nav-pills .nav-link.active {
    border-color: #6ab53c!important;
    background-color: #6ab53c;
    color: #fff
}

#js-formats-modal .modal-title {
    padding: 0
}

.formats .tab-pane {
    background: #ffffff
}

.tab-pane.process-tab-panel h3 {
    font-size: 1.33rem;
    font-style: normal;
    text-transform: uppercase;
    font-weight: 300;
    color: #111;
    margin: 1.5rem 0
}

.tab-pane.process-tab-panel h5{
    font-size: 1.25rem;
    color: #e20030;
    font-weight: 600;
}

.js-format-container {
    border-bottom: 1px solid #ddd !important;
    justify-content: space-between !important;
    width: 100%;
    align-items: center;
    min-height: 50px;
    padding: 1.5rem 0
}

#js-formats-modal table tr:last-of-type .js-format-container{
    border-bottom: 0!important;
}

.formats.tab-content > .active {
    display: flex !important
}

.view-in {
    margin-top: 1rem;
    border-top: 0.5px solid #ddd;
}

.view-in .col-md-3{
    margin-top: 1rem;
}

.view-in .picto-card{
    padding: 1rem 1.5rem;
}
.view-in h3,
h3.compatible{
    font-size: 1.5rem;
    font-weight: 300;
    margin-bottom: 1.5rem;
    margin-top: 1rem;
}

.view-in h5{
    font-size: 0.875rem;
    color: #000;
    min-height: 70px;
    line-height: 1.125rem;
    font-weight: 300;
    margin: 0;
    padding: 1rem 0.875rem;
    text-transform: uppercase;
    letter-spacing: -0.2px;
}
.view-in .picto-card a{
    color: #fff;
}
.view-in .img-fluid{
    width: 100%;
    object-fit: cover;
    max-height: 140px;
    min-height: 140px;
}

.view-in .btn{
    max-width: 120px;
    padding: 0.5rem;
    margin: 0 auto 1rem auto;display: block;
}

/* Pictos Home
-----------------------------------------------------------------*/
.pictos-home{
    border: 0.75px solid #ddd;
    background: #fff;
    padding: 1rem;
}
.pictos-home .col-lg-3 {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
}

.pictos-home .picto-home-item {
    background: #fff;
    position: relative;
    text-align: center;
    color: #555;
    margin: 1px;
    min-height: 150px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    width: 100%;
    padding: 1rem;
}

.pictos-home .picto-home-item a{
    color: #555;
}

.pictos-home .picto-home-item a:hover,
.pictos-home .picto-home-item a:hover .icnk{
    color: #e20030!important;
}

.pictos-home p {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1rem;
    max-width: 120px;
    margin: 5px auto 0 auto;
}

.pictos-home .icnk {
    margin: 0 auto;
    color: #555;
    font-size: 3rem;
    width: 100%;
}

.pictos-home .icon-price,
.pictos-home .icon-eiffel {
    font-size: 4rem;
}


.pictos-home .icon-degressive::before {
    font-size: 3.125rem;
}

.pictos-home .icon-meter,
.pictos-home .icon-livraison {
    font-size: 3.5rem;
}

.mention-livraison {
    font-size: 0.6rem;
    font-style: italic;
    position: absolute;
    top: 0.2rem;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.logos-home a{
    padding: 0.5rem;
    box-sizing: border-box;
}

.logos-home img {
    transition: 0.5s;
}

.logos-home img:hover {
    opacity: 0.5;
    transition: 0.2s;
}

.logos-home div{
    padding: 0.5rem;
}


/* Sitemap
-----------------------------------------------------------------*/
.sitemap .picto-card dd a{
    color: #000;
}
.sitemap .picto-card dd a:hover{
    color: #e20030;
}
.sitemap .picto-card dd{
    line-height: 1rem;
}
.sitemap .picto-card dt{
    padding-bottom: 0.5rem;
}

/* Témoignages
-----------------------------------------------------------------*/

#thetesti {
    height: auto;
    width: 100%;
    flex-direction: column;
}

#thetesti img {
    max-width: 150px;
    margin: 1rem
}

.testi-content p {
    font-family: 'Cormorant', serif;
    margin-bottom: 0;
    font-size: 20px;
    line-height: 22px;
    font-weight: 500;
    font-style: italic;
    display: inline-block;
}

#thetesti .carousel-item{
    height: initial;
    max-height: 200px;
}
#thetesti .carousel-item p{
    height: initial;
    overflow-y: auto;
}

#thetesti p {
    font-family: 'Cormorant', serif;
    margin: 0 auto;
    padding: 0 1rem;
    font-size: 1rem;
    line-height: 1rem;
    letter-spacing: 0.5px;
    font-weight: 500;
    font-style: italic;
    overflow-y: auto;
    color: #000;
    flex-direction: column;
}

.testi-meta {
    font-family: 'Cormorant', serif;
    font-weight: 500;
    margin-top: 1rem;
    font-size: 1rem;
    line-height: 1rem;
    margin-bottom: 1rem;
}

.testi-meta:before,
.testi-meta:after {
    content: '\2013';
    margin: 0 5px
}

#thetesti .carousel-control-next, #thetesti .carousel-control-prev {
    opacity: 1;
    background-color: transparent;
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 150;
    height: 100%;
    color: #222;
}
.rounded-circle{
    margin-bottom: 1rem;
}

#thetesti.carousel:hover .carousel-control-next-icon,
#thetesti.carousel:hover .carousel-control-prev-icon {
    color: #333 !important;
    opacity: 0.7;
    transition: 0.2s;
}

.carousel-inner{

    /*    display: -webkit-box;
        -webkit-line-clamp: 7;
        overflow-y: auto;
        */
    max-width: 1920px;
    margin: 0 auto;
}
.carousel-inner .item,
.carousel-inner .item.active,
.carousel-inner .item img {
    margin: auto;
    padding: 0;
    overflow: hidden;
}

#thetesti .carousel-control-next-icon:hover,
#thetesti .carousel-control-prev-icon:hover {
    color: #333;
    opacity: 1 !important;
    transition: 0.1s;
}

/* MAIN SLIDER  */

/* ----------------------------------------------------------------
    Carousel
-----------------------------------------------------------------*/

.carousel-item {
    z-index: 1 !important;
    height: 100%;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
}

.carousel-item .link-cgu {
    font-size: 14px;
    color: #333333;
    font-weight: 400;
    position: absolute;
    bottom: 14px;
    right: 0;
}

.carousel-item.active{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    background-size: cover;
    background-position-x: 25%;
}

.carousel-item-light .link-cgu {
    color: #222;
}

.carousel-item-dark .link-cgu {
    color: #fff;
}

/* HERO IMAGE */


/* The hero image */
.hero-image {
    min-height: 350px;
    background-image: url("/resources/medias/cms/homepage/hero-image.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    display: flex;
    justify-content: end;
    align-items: center;
}

.hero-text span,
body:lang(en) .hero-text:before{
    font-size: 1.125rem;
    line-height: 1.35rem;
    text-align: justify;
    color: #111;
    margin-bottom: 1rem;
    font-weight: 300;
}
/*body:lang(en) .hero-text span:first-of-type{*/
/*    display: none;*/
/*}*/
/*body:lang(en) .hero-text:before{*/
/*content: "Picto Online combines the craft skills with the latest cutting-edge technology in photo printing, with services tailored to the specific needs of each project.";*/
/*}*/
/*body:lang(en) .hero-text .btn {*/
/*    color: transparent!important;*/
/*    font-size: 0rem;*/
/*}*/
body:lang(en) .hero-text .btn:after {
    /*content: 'See all our services';*/
    color: #fff !important;
    font-size: 1rem;
    bottom: -2px;
    position: relative;
}
.hero-container{
    max-width: 1366px;
    width: 100%;
    height: 100%;
    display: flex;
    position: relative;
    align-items: center;
    flex-direction: row;
    justify-content: center;
}
.hero-text {
    display: flex;
    margin: 1rem;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    z-index: 10;
    height: fit-content;
    padding: 1.5rem;
    max-width: 420px;
    background-color: rgba(255, 255, 255, 0.9);
}

.hero-text .btn {
    font-style: normal;
    vertical-align: middle;
}


.icon-arrow-right {
    opacity: 1 !important;
}

.carousel-indicators {
    bottom: 0;
    z-index: 2;
    padding-bottom: 1rem;
}

.carousel-indicators li {
    border-radius: 50%;
    width: 12px;
    height: 12px;
    margin: 0 0.25rem;
}

.carousel-control-next,
.carousel-control-prev {
    background-color: rgba(34, 34, 34, 0.7);
    opacity: 0;
    width: 20px;
    height: 40px;
    border-radius: 2px;
    margin: auto 0.3rem;
    z-index: 1;
    top: 0;
    bottom: 0;
    transition: 0.3s;
    cursor: pointer;
}

.carousel-control-next:hover,
.carousel-control-prev:hover {
    background: #e20030;
}

.carousel-control-next-icon,
.carousel-control-prev-icon,
.packageslider ::before{
    background-image: none;
    font-family: icomoon;
}

.carousel-control-next-icon::before,
.carousel-control-next span::before{
    content: "\ea3c";
}

.carousel-control-prev-icon::before,
.carousel-control-prev span::before {
    content: "\ea40";
}

.carousel-control-next-icon::before,
.carousel-control-prev-icon::before {
    position: relative;
    top: -3px;
}

.carousel-control-next span span,
.carousel-control-prev span span{
    font-size: 0;
}

.carousel-inner:hover ~ .carousel-control-next,
.carousel-inner:hover ~ .carousel-control-prev {
    opacity: 1;
    transition: 0.3s;
    background-color: rgba(34, 34, 34, 0.7);
}
.package-carousel:hover .carousel-item span::after {
    opacity: 1;
    transition:visibility 0.1s linear,opacity 0.1s linear;
}
.package .carousel-item span::after {
    position: absolute;
    width: 100%;
    bottom: 0;
    z-index: 10;
    color: #111;
    text-align: left;
    background-color: rgba(255, 255, 255, 0.8);
    width: 100%;
    padding: 0.5rem 1rem 1.25rem 1rem;
    right: 0;
    left: 0;
    opacity: 0;
    transition:visibility 0.1s linear,opacity 0.1s linear;
}
.package .carousel-caption{
    right: 0;
    left: 0;
    bottom: 0;
}
.package .carousel-caption span{
    color: #000;
    font-size: 0.8rem;
    display: inline-block;
    line-height: 1rem;
    padding-bottom: 10px;
}

.slide,
#thetesti{
    background-size: cover;
    text-align: center;
    display: flex;
    display: -webkit-flex;
}

.carousel-fade .carousel-item {
    opacity: 0;
    transition-duration: .5s;
    transition-property: opacity;
}

.packageslider{
    height: auto!important;
    width: 100%;
    margin: 2rem auto 2.5rem auto;
    display: none;
}

.picto_charter {
    background-image: url('/resources/medias/cms/homepage/home-picto_charter.jpg?1630053101');
    background-image: image-set(url('/resources/medias/cms/homepage/home-picto_charter@1x.jpg?1630053101') 1x, url('/resources/medias/cms/homepage/home-picto_charter@2x.jpg?1630053101') 1.5x)
}

.vos_avantages{
    background-image: url('/resources/medias/cms/homepage/your_advantages.jpg?1700577936');
    background-image: image-set(url('/resources/medias/cms/homepage/your_advantages@1x.jpg?1700577936') 1x, url('/resources/medias/cms/homepage/your_advantages@2x.jpg?1700577936') 1.5x)
}

.custom-checkbox {
    position: relative;
    display: block;
    right: 0;
    left: 0;
    margin: auto;
    width: 50px;
    top: -35px
}

.custom-checkbox label {
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 50%;
    z-index: 12;
    cursor: pointer;
    height: 50px;
    left: 0;
    position: absolute;
    top: 0;
    width: 50px;
    transition: background-color 200ms ease, border-color 200ms;
    transition-property: top;
    transition-duration: 0.3s
}

.custom-checkbox label:after {
    border: 3px solid #fff;
    border-top: none;
    border-right: none;
    content: "";
    height: 12px;
    left: 13px;
    opacity: 0;
    position: absolute;
    top: 17px;
    transform: rotate(-45deg);
    width: 0
}

.custom-checkbox input[type="radio"] {
    visibility: hidden
}

.custom-checkbox input[type="radio"]:checked + label {
    background-color: #6ab53c;
    border-color: #6ab53c;
    transition: background-color 200ms ease, border-color 2s
}

.custom-checkbox input[type="radio"]:checked + label:after {
    opacity: 1;
    width: 24px;
    transition: width 400ms ease
}

.btn-picto .icon-arrow-left,
.btn-picto .icon-arrow-right {
    position: relative;
    top: -1px;
    margin: 0 5px
}

.blog .btn-picto .icon-arrow-left,
.blog .btn-picto .icon-arrow-right {
    top: -1px;
}

.infobox-btn .icon-arrow-right {
    top: 0
}

.sidebar .card h3 {
    font-style: italic;
    font-weight: 600;
    z-index: 5;
    position: relative;
    text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.7)
}

/* CGV
-----------------------------------------------------------------*/


.modal-cgv h2 {
    font-size: 1.25rem;
    margin: 1.5rem 0 1rem 0;
    color: #e20030;
    font-weight: 500;
    text-indent: 1px;
}

.modal-cgv .cgv ol {
    padding: 0;
    background: #fff
}

.modal-cgv p, .modal-cgv ol {
    padding: 0;
    margin: 0;
}
.cgv p{
    padding: 0 1rem 1rem 1rem;
}

/* AIDE
-----------------------------------------------------------------*/
.help-menu {
    -moz-column-gap: 2.5em;
    -webkit-column-gap: 2.5em;
    column-gap: 2.5em;
    column-count: 1;
}

.help-menu-item {
    display: inline-block;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 0.75rem;
}

.help-img{
    border: 0.5px solid #ddd;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.help-card{
    border: 0.5px solid #ddd;
    background: #fafafa;
    padding: 1rem 1.5rem;
    font-weight: 400;
}

.help-menu-item:nth-of-type(3){
    display: block;
}

.help-menu-item:nth-of-type(5){
    display: block;
}

.help-menu-item .menu-icon{
    height: 35px;
    width: 35px;
    background-size: contain!important;
    background-repeat: no-repeat!important;
}

.help-menu-item.our_services .menu-icon{
    background: url('/resources/medias/icon/our_services.jpg');
}
.help-menu-item.our_advices .menu-icon{
    background: url('/resources/medias/icon/our_advices.jpg');
}
.help-menu-item.our_partners .menu-icon{
    background: url('/resources/medias/icon/our_partners.jpg');
}
.help-menu-item.my_account .menu-icon{
    background: url('/resources/medias/icon/my_account.jpg');
}
.help-menu-item.our_tools .menu-icon{
    background: url('/resources/medias/icon/our_tools.jpg');
}
.help-menu-item.cgu .menu-icon{
    background: url('/resources/medias/icon/cgu.jpg');
}
.help-menu-item.faq .menu-icon{
    background: url('/resources/medias/icon/icon_faq.jpg');
    background-size: 88% !important;
    background-position-x: center;
    background-position-y: center;
}
.help-menu-item.our_commitments .menu-icon{
    background: url('/resources/medias/icon/our_commitments.jpg');
}
.help-menu-item.benefits .menu-icon{
    background: url('/resources/medias/icon/benefits.jpg');
}

.help-menu-item a {
    color: #333;
    line-height: 1rem;
    display: inline-block;
    margin-left: 5px;
}

.help-menu-item dd dl dd a {
    margin-left: 0;
}

.help-menu-item a:hover {
    color: #e20030;
}

.help-menu dt a {
    text-transform: uppercase;
    margin-bottom: 0.75rem;
    color: #e20030;
}

.help-menu h3 {
    font-size: 1.125rem;
    color: #222;
    text-transform: uppercase;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 7px;
    margin-bottom: 0!important;
}

.help-menu dd {
    font-weight: 300;
    margin-bottom: 1px !important;
    font-size: 1rem;
    line-height: 1.55rem;
    text-align: center;
    padding: 0 1rem 0.125rem 1rem;
}

.help-menu dt {
    text-align: left;
    font-weight: 500;
    font-size: 1rem;
    margin:7px 0 5px 0;
    display: flex;
    justify-content: center;
}

.help-menu a::before {
    content: "•";
    font-weight: 200;
    color: #555;
    margin-left: -7px;
    position: relative;
    left: -7px;
    font-size: 0.5rem;
    top: -2px;
}


.card.picto-card:hover .help-dropdown-menu {
    display: block;
    animation: showNav 250ms ease-in-out both;
}
.card-group{
    padding: 1rem;
}

.trames .card-header {
    color: #fff;
    font-weight: 600;
    border-radius: 0;
    margin: 0 !important;
}

.trames .card-body {
    border: 1px solid #dddddd
}

.trames .card-text {
    color: #333 !important;
    text-align: center !important;
}


/* Aide - Évaluer rapidement le rendu de son écran
-----------------------------------------------------------------*/

.collapseScans[aria-expanded="false"]:after{
    content: "Plus de résultats";
}

.collapseScans[aria-expanded="true"]:after{
    content: "Moins de résultats";
}

/* CMS
-----------------------------------------------------------------*/

.disable-clic {
    pointer-events: none;
    -webkit-touch-callout: none!important;
}

.cms {
    font-size: 1rem
}

.cms .middle-content ul {
    padding: 0 1rem;
    list-style-type: none;
    margin-left: 1.5rem;
    font-weight: 300;
    line-height: 1.65rem;
}

.cms .middle-content a {
    font-weight: 500;
    text-decoration: underline;
}

.cms .middle-content a:hover {
    text-decoration: none;
}

.cms .middle-content li {
    text-align: left;
}

.cms .middle-content ol {
    padding-left: 2rem;
}

.cms .middle-content ol li{
    font-weight: 300;
    line-height: 1rem;
    margin: 0.5rem 0;
}

.cms .question li {
    line-height: 1.5rem;
    list-style-type: none;
    margin: 0 0 1rem 0;
}

.cms .middle-content li::before {
    content: "•";
    color: #ccc;
    position: relative;
    left: -8px;
    float: left;
    margin-left: -8px;
}
.cms .middle-content strong{
    line-height: 1.125rem;
    margin-bottom: 0.5rem;
}

.cms .middle-content ol li::before,
.cms .middle-content li li::before,
.cms .middle-content .question li::before {
    content: ""
}


.cms .middle-content li li {
    margin: 0 0 0 0.5rem;
    font-weight: 300;
    color: #000!important;
}

.cms .middle-content .entry-img-fluid {
    margin: 1rem auto;
    display: block;
}

.cms .middle-content div {
    position: relative;
    text-align: justify;
    line-height: 1.25rem;
}
.cms .middle-content div span{
    line-height: 1rem;
}

.cms .middle-content .btn-border{
    line-height: 1rem;
    overflow-wrap: anywhere;
    text-align: left;
}

.cms .middle-content {
    text-align: justify;
    margin-top: 1rem;
    padding: 0 1rem 1rem 1rem;
}

.cms .middle-content .img-fluid {
    display: block;
}

.card-img-top {
    border-radius: 0;
}

.modal-content .card-img-top {
    max-height: 260px;
    object-fit: cover;
}

.cms .middle-content p {
    line-height: 1.5rem;
    text-align: left;
}


.cms .middle-content .col-sm-6 p {
    margin-bottom: 1rem;
    text-align: justify;
}

.cms .navbar-nav .current .nav-link {
    color: #e20030
}

.cms .navbar-nav .nav-link {
    color: #333;
    text-decoration: none;
}

.cms .navbar-nav .nav-link:hover {
    text-decoration: underline
}

.cms .navbar-nav .nav-link.active {
    color: #e20030
}

.cms sup {
    color: #e20030;
    display: inline-block;
    margin-right: 0.5rem;
    font-size: 0.875rem;
}

.cms .question {
    color: #e20030;
    font-size: 1.125rem;
    margin: 0 0 1rem 0 !important;
}

.modal-body .cms .middle-content {
    padding-left: 0;
}

.cms .middle-content,
.generic .middle-content {
    width: 100%
}

.cms h1 {
    color: #e20030;
    margin-bottom: 1.25rem;
    margin-left: 1rem;
}

.generic .header-container img {
    margin: 0;
}

.generic p {
    padding: 0.5rem 0;
    margin-bottom: 1rem;
    width: 100%;
    position: relative;
    text-align: justify;
    line-height: 1.35rem;
}

.generic p.light {
    line-height: 1.25rem;
}

.generic p:last-of-type::after {
    background: transparent;
}

.generic ul {
    margin-bottom: 1rem;
    margin-top: 0;
    list-style-type: none;
    padding: 0 2rem 1.5rem 2rem;
}

.generic ul li{
    font-weight: 300;
}

.generic h2 {
    font-weight: 300;
    text-transform: uppercase;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
}

.generic h3 {
    font-weight: 600;
    display: flex;
    font-size: 1.25rem;
    margin-bottom: 0;
}

.generic h6 {
    text-align: center;
    width: 100%;
}

.generic hr {
    width: 25%;
}
.header-generic{
    padding-bottom: 1.5rem;
}

/* Header pages génériques */
.generic img:first-of-type{
    margin: 0!important;
}

/*.generic .middle-content .row .img-fluid {
    box-shadow: 0.51px 3px 15px 0 rgba(0, 0, 0, 0.2);
}*/

.generic .col-md-6 p::after {
    content: none;
}

.generic .col-md-6 {
    padding-right: 1rem !important;
}

.generic a {
    color: #e20030;
    text-decoration: underline;
    font-weight: 400;
}
.generic a:hover {
    text-decoration: none;
}

.generic h6 {
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.25rem;
    margin-top: 1rem;
    margin-bottom: 0.5rem;
}

.generic .about-us-card {
    border: 1px solid #ddd;
    min-width: 280px;
    min-height: 250px;
    max-width: 30%;
    margin: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
}

.generic .about-us-card span{
    display: block;
    font-size: 0.9rem;
    line-height: 1rem;
    text-align: center;
    max-width: 240px;
}
.generic .about-us-card img{
    max-width: 150px;
    display: block;
    margin: 0 auto;
}

.generic .card-columns .card{
    margin-bottom: 0.5rem;
    padding: 0;
}

.generic .card-columns .card p{
    padding-left: 0.5rem;
    text-indent: -5px;
    line-height: 1.25rem;
    padding-bottom: 0;
}

.generic .card-columns .card p::before{
    content: "•";
    position: relative;
    left: -5px;
    top: -2px;
    font-size: 0.6rem;
}

.card-columns{
    column-gap: 2rem;
}

.cms-picto-charter .card-columns{
    column-count: 3;
}

.why-choose-picto{
    margin: 0 auto;
}

.why-choose-item{
    margin: 0 0 1.5rem 0;
    padding: 0.5rem;
    height: fit-content;
    border: 0.5px solid #dfdfdf;
}
.why-choose-item b,
.why-choose-item p{
    font-size: 0.95rem;
    line-height: 1.125rem;
}
.why-choose-item b{
    color: #e20030;
    display: inline-block;
    padding-bottom: 0.5rem;
}

.why-choose-item img{
    max-width: 70px;
    height: auto;
    display: block;
}

.cms-picto-news .col-img {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.cms-picto-news h5{
    font-family: 'Cormorant', serif;
    font-weight: 500;
    font-style: italic;
    font-size: 1.5rem;
    margin: 2rem 0 0.5rem 0;
    text-align: center
}

.cms-picto-news .middle-content ul {
    border-right: 6px solid #eeeeee;
    margin-bottom: 2rem;
}

.cms-picto-news .middle-content li {
    display: flex;
}

.cms-about-us .picto-card img{
    max-width: 80px;
    margin: 1rem;
}

.generic li:before,
.tab-content li:before {
    content: "•";
    color: #555;
    position: relative;
    left: -8px;
    font-size: 0.875rem;
}

.tab-content ul {
    line-height: 1.5rem
}

.tab-content li {
    margin-bottom: 0.8rem
}

.cms .middle-content h2,
.simu-format h2,
.cms .middle-content .modal-body h2{
    font-size: 1.15rem;
    margin: 1rem 0;
    color: #e20030!important;
    font-weight: 600!important;
    font-style: unset;
    text-transform: unset;
    text-align: left;
    width: 100%;
}

/*.cms .middle-content h2:first-of-type{
    margin-top: 0;
}*/

.cms h3 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    color: #000;
    text-transform: uppercase;
    font-weight: 300;
}

.cms h4 {
    font-size: 1rem;
    margin-bottom: 1.25rem;
    font-weight: 400;
}

.cms h5 {
    font-size: 1.025rem;
    margin-bottom: 0.5rem;
    margin-top: 0.5rem;
    font-weight: 600;
    width: 100%;
}

.cms .top {
    position: absolute;
    top: 1px;
    font-size: 1rem;
    right: 0
}

.cms ol li {
    padding-top: 0!important;
    font-weight: 400;
}

.cms ol {
    width: 100%;
}

.cms .middle-content li::marker{
    font-weight: 600;
    padding-right: 5px;
}

.cms .middle-content ol li a{
    margin-left: 0.125rem;
    padding-bottom: 0.125rem;
    display: inline-block;
}
.cms .middle-content li a{
    text-decoration: none;
}

.cms .middle-content li a:hover {
    color: #e20030;
    text-decoration: underline
}

.cms ol li:first-of-type {
    padding-top: 1rem
}

.processContent {
    padding-top: 1.5rem;
}

.processContent hr{
    display: none;
}

.processContent table{
    margin: 1rem auto;
}

.processContent .container{
    margin-top: unset;
    padding: 0;
}

.processContent thead tr {
    background: #f7f7f7 !important;
}

.processContent ul  {
    margin: 1rem;
    padding-left: 1rem;
    font-weight: 350;
}

.processContent ul li{
    font-size: 1rem;
    margin-bottom: 0.25rem;
    line-height: 1.25rem;
    text-indent: -8px;
    margin-left: 8px;
}

.processContent ul ul {
    margin: 0.5rem;
}

.processContent ul ul li {
    margin-bottom: 0;
    font-weight: 300;
}

.processContent ul ul li::before {
    content: "-";
    color: #222;
    position: relative;
    font-weight: 600;
    left: -8px;
    font-size: 14px;
    top: -2px;
}

.faq-menu {
    background: #fafafa;
    border: 1px solid #ebebeb;
    padding: 1.5rem 2rem;
    font-weight: 300;
    color: #333;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 1rem 0 1.5rem 0;
    flex-direction: row;
    gap: 5px 10px;
}

.faq-menu dt {
    cursor: pointer;
    margin-bottom: 0.5rem;
    width: 100%;
    float: left;
    display: flex;
    justify-content: flex-start;
    text-align: left;
    flex-direction: row;
    align-items: center;
    text-indent: -0.5em;
    padding-left: 1em;
    padding-right: 1rem;
}

.faq-menu dt a::before {
    content: "•";
    color: #e5e5e5;
    position: relative;
    left: -8px
}

.faq-menu dt a{
    display: table;
    text-decoration: none!important;
    color: #333;
}

.faq-menu dt:hover a{
    text-decoration: underline;
    color: #e20030;
}

.picto-card.faq-menu dt::before {
    display: none;
}

.faq li::before {
    content: "•";
    color: #e5e5e5;
    position: relative;
    left: -8px
}

#faqmenu li::before {
    display: none;
}

.faq li li {
    margin-left: 1rem;
}

.faq li li::before {
    content: "-";
    color: #e5e5e5;
    position: relative;
    left: -8px
}

.faq ol li::before {
    display: none;
}

.faq .js-scrollTo {
    padding-right: 1rem;
    font-size: 1rem;
    color: #333;
    text-decoration-color: #aaa;
}

.faq .js-scrollTo:hover {
    color: #e20030!important;
}

.faq br {
    clear: left;
}

.faq h2 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #e20030;
    margin-bottom: 1rem !important;
}

.faq p {
    margin-bottom: 2rem;
}

.faq-txt {
    margin: 0 !important
}

.faq-txt a {
    text-decoration: none;
}

.faq-txt a:hover {
    text-decoration: underline;
}

.list-unstyled{
    list-style-type: none;
}

.list-none li::before {
    content: " "!important;
}

li.no-before::before{
    display: none
}

li.no-before{
    margin: 0!important;
}

.bullet-delivery::before {
    content: "\e915";
    font-size: 2.3rem;
    position: relative;
    top: 0.5rem;
    font-family: 'icomoon';
    font-weight: normal;
    margin-right: 0.5rem;
}


/* PICKUP
-----------------------------------------------------------------*/
p.pickup {
    font-size: 1rem;
    line-height: 1.25rem;
    text-align: left !important;
}

.cms h3.red {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
}

p.pickup iframe {
    max-width: 600px;
    width: 100%;
    height: 120px;
}

/* SCHOOL
-----------------------------------------------------------------*/

.school, .associations {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.associations-item img,
.school-item img {
    max-width: 160px;
    transition: 0.2s;
    opacity: 1;
}

.associations-item img:hover,
.school-item img:hover {
    filter: saturate(0);
    transition: 0.2s;
    opacity: 0.5;
}

.associations-item,
.school-item{
    border: 1px solid #ddd;
    min-width: 18%;
    margin: 0.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
}


/* ----------------------------------------------------------------
    Pré-footer : réassurance
-----------------------------------------------------------------*/

#thereassurance {
    background: #fff;
    margin-top: 2rem;
    padding: 0.5rem 0 0 0
}

#thereassurance h5 {
    margin: 0;
    font-size: 1.125rem;
    line-height: 1.5rem;
    font-weight: 300;
    text-align: center;
    padding: 0.2rem 2rem 0.2rem 0;
    font-style: italic;
    display: flex;
    justify-content: center
}

#thereassurance .icnk {
    vertical-align: middle;
    height: 36px;
    line-height: 1.2rem;
    margin-right: 5px;
    font-weight: 500
}

#verified-reviews {
    display: flex;
    justify-content: flex-end;
}

#verified-reviews img {
    width: auto !important;
    height: auto !important
}
.widget-avis-verifies.position-fixed{
    display: none;
    left: 1rem;
    bottom: 1rem;
    z-index: 300;
}

.product-not-available {
    background-color: #ebccd1 !important;
}

/* Transfert de Commande */
.anonymous-transfert .small-txt {
    font-size: 1rem !important;
}

.anonymous-transfert .price {
    font-weight: 300 !important;
    font-size: 1rem !important;
    padding: 2rem;
}

.anonymous-transfert .price-ex-tax {
    display: flex;
}



/* Filet Passe partout Nielsen
-----------------------------------------------------------------*/
.product-25TJZML3411 .image-preview,
.product-25TJZML3423 .image-preview,
.product-25TJZML3434 .image-preview,
.product-25TJZML4511 .image-preview,
.product-25TJZML4523 .image-preview,
.product-25TJZML4534 .image-preview,
.product-25TJZML5611 .image-preview,
.product-25TJZML5623 .image-preview,
.product-25TJZML5634 .image-preview,
.product-25TJZML6811 .image-preview,
.product-25TJZML6823 .image-preview,
.product-25TJZML6834 .image-preview {
    border: 1px solid rgb(217, 217, 217);
}

/* Toolbar Picto Welcome
-----------------------------------------------------------------*/
#picto-welcome-toolbar {
    position: fixed;
    left: 0;
    bottom: 3rem;
}

#picto-welcome-toolbar.picto-welcome-disabled {
    opacity: 0.5;
}

#picto-welcome-toolbar:hover.picto-welcome-disabled {
    opacity: 1;
}

.header-container .slide{
    height: fit-content;
}

.package-carousel{
    max-width: 100%;
}

.package-carousel .list-inline {
    white-space:nowrap;
    overflow-x:auto;
}

.package-carousel .carousel-indicators {
    padding: 0;
    position: relative;
    overflow-x: unset;
    width: fit-content;
    bottom: -2.5rem;
    background-color: transparent!important;
    height: fit-content;
    margin-left: auto;
    margin-right: 0;
    right: 0;
    top: -10px;
}

.package-carousel .carousel-indicators  li{
    border: 3px solid transparent;
    border-radius: 0!important;
}

.package-carousel .carousel-indicators > li {
    width: initial;
    height: initial;
    text-indent: initial;
    display: none;
}

.package-carousel .carousel-indicators > li.active {
    box-shadow: 0px 1px 6px 1px rgba(0,0,0,0.3);
}

.package-carousel .carousel-indicators button.thumbnail:not(.active) {
}

.package-carousel .carousel-thumbnail{
    display: block;
    width: 100px;
    height:fit-content;
    background-size: 130%;
    background-position-x: center;
    border-radius: 0;
}

.package-carousel .carousel-thumbnail.selected{
    border: 2px transparent;
}
.package-carousel .carousel-thumbnail img{
    height: 40px;
}
.package-carousel .carousel-control{
    display: none;
    z-index: 50;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding: 1rem;
}
.package-carousel .carousel-control.right,
.package-carousel .carousel-control.left{
    right: 0;
    display: none!important;
}
.package-carousel .carousel-control.left{
    left: 0;
}

.package-carousel .carousel-indicators,
.package-carousel .carousel-control{
    display: block!important;
}

@media screen and (min-width: 992px) {
    .package-carousel .carousel {
        max-width: 70%;
        margin: 0 auto;
    }
}

.video-container .glyphicon{
    z-index: 5555;
}
.video-container .glyphicon:hover{
    opacity: 0.7;
}
/* Elements cachés en mobile -----------------------------------------*/
.package-carousel .carousel-indicators,
.package-carousel .carousel-control{
    display: none;
}

