html {
    font-size: 16px!important;
    -ms-overflow-style: scrollbar;
    -webkit-tap-highlight-color: transparent;
}
html {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
    tab-size: 4;
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-feature-settings: normal;
    font-variation-settings: normal;
}
*, ::after, ::before {
    box-sizing: border-box;
    border-width: 0;
    border-style: solid;
    border-color: #e5e7eb;
}
[role=button], a, area, button, input, label, select, summary, textarea{
    touch-action: manipulation;
}
/* Scroll lock */
.mav-no-scroll { overflow: hidden; }
a {
    color: inherit;
    text-decoration: inherit;
}
svg:not(:root) {
    overflow: hidden;
}
audio, canvas, embed, iframe, img, object, svg, video {
    display: block;
    vertical-align: middle;
}
menu, ol, ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
blockquote, dd, dl, figure, h1, h2, h3, h4, h5, h6, hr, p, pre {
    margin: 0;
}
html, body{
    margin: 0;
    font-family: "Open Sans";
}
body{
    font-size: 1rem;
}
.overflow-hidden{
    overflow: hidden!important;
}
.opacity-0{
    opacity: 0;
}
.opacity-50{
    opacity: 0.5 !important;
}
.transform {
    transform: translate(0,0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1) !important;
}
.transition-transform {
    transition-property: transform !important;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
    transition-duration: 150ms !important;
}
.transition {
    transition-property: color, background-color, border-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-text-decoration-color, -webkit-backdrop-filter !important;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter !important;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter !important;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
    transition-duration: 150ms !important;
}
.transition-all {
    transition-property: all !important;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
    transition-duration: 150ms !important;
}
.ease-in-out {
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.duration-300{
    transition-duration: 300ms !important;
}
.duration-700 {
    transition-duration: 700ms !important;
}
.-translate-x-\[100vw\]{
    transform: translate(-100vw, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1) !important;
}
.translate-x-\[100vw\]{
    transform: translate(100vw, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1) !important;
}
.translate-x-\[200vw\] {
    transform:  translate(200vw, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1) !important;
}
.translate-x-hide {
    transform: translate(31.25rem, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1) !important;
}
.translate-x-\[0\] {
    transform: translate(0, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1) !important;
}
.-translate-x-full {
    transform: translate(-100%, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1) !important;
}
.-translate-x-full-full {
    transform: translate(-200%, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1) !important;
}
.touch-pan-y {
    --tw-pan-y: pan-y !important;
    touch-action: var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom) !important;
}
.top-0{
    top: 0!important;
}
.-top-36 {
    top: -13rem !important;
}
.-top-10 {
    top: -2.5rem !important;
}

.underline{
    text-decoration: underline;
}
.text-vert{
    color: rgb(23 147 135) !important;
}
.text-grisclair {
    color: rgb(250 250 250) !important;
}
.color-white{
    color: rgb(255, 255, 255);
}
.color-primary{
    color: rgb(0, 46, 75);
}
.color-secondary{
    color: rgb(79, 74, 74);
}
.color-grisclair{
    color:rgb(110, 115, 120);
}
.color-rouge{
    color: rgb(217, 42, 51);
}
.color-tertiary{
    color: rgb(217, 42, 51);
}
.color-blanc{
    color: #FFF;
}
.bg-vert {
    background-color: rgb(23 147 135) !important;
}
.bg-transparent{
    background: transparent;
}
.bg-beige {
    background-color: rgb(248 245 240) !important;
}
.bg-gris {
    background-color: rgb(237 240 244) !important;
}
.bg-blanc, .bg-white{
    background-color: rgb(255, 255, 255);
}
.bg-black{
    background-color: rgb(0, 0, 0);
}
.bg-primary{
    background-color: rgb(0 46 75) !important;
}
.bg-bleu-light{
    background-color: #EDF0F4;
}
.bg-bleu {
    background-color: rgb(0 46 75) !important;
}
.bg-bleu-clair{
    background-color: rgb(219, 226, 234);
}
.bg-bleu-fonce {
    background-color: rgb(3 37 58) !important;
}
.bg-tertiary{
    background-color: rgb(217, 42, 51) !important;
}
.border-primary{
    border-color: rgb(3 37 58) !important;
}
.border-secondary{
    border-color: rgb(79, 74, 74) !important;
}
.border-tertiary{
    border-color: rgb(217, 42, 51) !important;
}


.sport .color-tertiary, .product-sport .color-tertiary{
    color: rgb(255, 82, 0) !important;
}
.sport .bg-tertiary, .product-sport .bg-tertiary{
    background-color: rgb(255, 82, 0) !important;
}
.sport .border-tertiary, .product-sport .border-tertiary{
    border-color: rgb(255, 82, 0) !important;
}

.bg-bleu-fonce .color-primary, .bg-bleu .color-primary, .sport .color-primary, .bg-black .color-primary,
.bg-bleu-fonce .color-secondary, .bg-bleu .color-secondary, .sport .color-secondary, .bg-black .color-secondary,
.bg-bleu-fonce .color-grisclair, .bg-bleu .color-grisclair, .sport .color-grisclair, .bg-black .color-grisclair{
    color: #FFF;
}
.bg-bleu-fonce .prix-barre-m .bar, .bg-bleu .prix-barre-m .bar, .sport  .prix-barre-m .bar, .bg-black  .prix-barre-m .bar{
    background-color: #FFF;
}
.bg-bleu-clair .color-primary{
    color:rgb(0, 46, 75);
}

.breadcrumb {
    padding: 0;
    background: 0 0;
}
.breadcrumb li{
    display: inline;
}

.breadcrumb-plp { position: relative; display: inline-block; }
.breadcrumb-plp__arrow { font-size: 0.9em; margin-left: 6px; }
.breadcrumb-plp__menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 50;
    background: #fff;
    border: 1px solid rgba(0,0,0,.12);
    min-width: 200px;
    max-width: 200px;
    padding: 0;
    text-align: left;
    border-radius: 6px;
    box-shadow: 0 0 #0000, 0 0 #0000, 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1) !important;
    margin-top: 0.25rem !important;
}
.breadcrumb-plp__link {
  display: block;
  padding: 8px 16px;
}
.breadcrumb-plp__link:hover { background: rgba(0,0,0,.06); }

.breadcrumb-plp__trigger{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

.breadcrumb-plp__icon{
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

.breadcrumb-plp__icon svg{
  display: block;
  width: 6px;   /* ajuste */
  height: 6px;  /* ajuste */
}

.breadcrumb__item a,
.breadcrumb__item span {
    font-size: 11px;
    line-height: 11px;
    font-weight: 600;
    font-family: "Open Sans";
    color: #4F4A4A;

}

.breadcrumb ol >.breadcrumb__item{
    margin-left: 5px;
}
.breadcrumb ol >.breadcrumb__item:first-child{
    margin-left: 0;
}

nav.breadcrumb li::after {
    color: #4f4a4a;
    content: " - ";
    margin-left: 5px;
    font-size: 11px;
    line-height: 11px;
    font-weight: 600;
    font-family: "Open Sans";
}
.breadcrumb li:last-child::after {
    content: "";
}

/** CART BLOCK PROGRESS */
#shoppingCartProgressBar{
    height: 5px;
    transition: width linear;
}
.progressBarWrapper{
    height: 5px;
    background-color: #DBE2EA !important;
    width: 100% !important;
    margin-top: 0.19rem !important;
    margin-bottom: 0.94rem !important;
}
.cart-block--offcanvas-contents__items >div{
    display: flex;
    flex-direction: column;
    height: 100%;
}
#shoppingCartContents{
    flex-grow: 1;
}
.text-shipping{
    font-family: "Open Sans";
    font-size: 10px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0em;
    text-align: left;
}
.text-shipping .price-beforefreeshipping{
    font-weight: 700;
}

.container-amount-free-shipping{
    padding: .85rem;
    text-transform: uppercase;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.container-amount-free-shipping .progressBarWrapper{
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.container-amount-free-shipping.text-shipping{
    line-height: 1;
}

#cart-offcanvas .empty-cart p{
    font-size: 16px;
    font-weight: 400;
    font-family: Interstate;
    line-height: 120%;
    color: rgb(0, 46, 75);
}

#cart-offcanvas .empty-cart{
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.cart--cart-offcanvas__close .show-more-action{
    gap: .30rem;
}
/** END CART BLOCK PROGRESS */

/* CTA */
.cta{
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
    transition-property: all !important;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
    transition-duration: 150ms !important;
    border-radius: 50px;
    border: 1px solid rgb(0, 46, 75);
}
.cta-primary{
    color: rgb(0, 46, 75);
    border-color: rgb(0, 46, 75);
}
.bg-bleu .cta-primary, .bg-bleu-fonce .cta-primary{
    color: rgb(255, 255, 255);
    border-color: rgb(255, 255, 255);
    background-color: rgb(0, 46, 75);
}
.bg-black .cta-primary, .sport .cta-primary{
    color: rgb(255, 255, 255);
    border-color: rgb(255, 255, 255);
    background-color: rgb(0, 0, 0);
}
.cta-primary-actif{
    color: #fff;
    border-color: #fff;
    background-color: rgb(0, 46, 75);
}
.cta-primary-actif:hover{
    color: rgb(0, 46, 75);
    border-color: rgb(0, 46, 75);
    background-color: #FFF;
}
.nocontrast-mode .cta-primary{
    color: rgb(255, 255, 255)!important;
    border-color: rgb(255, 255, 255)!important;
    background-color: transparent!important;
}
.template-sport .nocontrast-mode .cta-primary{
    background-color: rgb(0, 0, 0)!important;
}
.template-sport .homewrapper .contrast-mode .color-primary, .template-sport .homewrapper .contrast-mode .color-secondary{
    color: #000!important;
}
.template-sport .cta-by-theme{
    background-color: rgb(0, 0, 0)!important;
}
.template-sport .cta-by-theme:hover{
    border-color: rgb(0, 0, 0)!important;
    background-color: transparent!important;
    color: #000!important;
}
.cta-btn.f-add-to-cart{
    width: 100%!important;
}
.template-sport .homewrapper .contrast-mode .cta-primary{
    color: rgb(0, 0, 0)!important;
    border-color: rgb(0, 0, 0)!important;
    background-color: transparent!important;
}
.cta-btn{
    display: flex;
    width: fit-content;
    height: 3.125rem;
    padding: 18px 38px 17px;
    justify-content: center;
    align-items: center;
    text-align: center;
    min-height: 50px;
}
.cta-btn.cta-product-discover{
    padding: 9px 19px 8px;
    height: auto;
    min-height: auto;
}
.cta-transparent svg{
    margin-right: 10px;
}
.cta-transparent .actif{
    display: none;
}
.cta-transparent:hover{
    color: #fff;
    background-color: rgb(0, 46, 75);
}
.cta-transparent:hover .actif{
    display: block;
}
.cta-transparent:hover .not-actif{
    display: none;
}
.cta-btn-middle{
    margin-top: 1.25rem;
}
.container-title{
    background-position: center;
    background-repeat: no-repeat;
}
.cart-offcanvas-bg{
    z-index: 105;
}
.fixed{
    position: fixed;
}
.separate-border{
    width: 1px;
    height: 30%;
    background-color: rgb(0, 46, 75);
    margin: 0 15px;
}
/* END CTA */
.cursor-pointer{
    cursor: pointer;
}
.node__content .field{
    margin-bottom: 40px;
}
.node__content .field-image{
    margin-bottom: 60px;
}
.node__content .field-image img{
    max-width: 100%;
    height: auto;
}
.node--type-article .node__content .field.field-body{
    margin-bottom: 60px;
}
.path-node .block-system-main-block{
    padding-top: 3.75rem;
    padding-bottom: 6.75rem;
}
.field-body{
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.field-body h2, .field-body h3{
    margin-top: 15px;
}
.field-body p{
    margin-bottom: 18px;
}
blockquote {
    padding-left: 1.5rem;
    border-left: 5px solid rgb(0, 46, 75);
    margin-bottom: 20px!important;
}
.path-node .field-body img, .path-node .field-image img{
    border-radius: 6px;
    max-width: 100%;
}
.bg-black .overtitle span{
    background-color: rgb(237, 87, 33)!important;
    color: #FFF!important;
    padding: 3px 10px 3px 10px;
    border-radius: 2px;
}
.bg-black .color-primary{
    color: rgb(237, 87, 33)!important;
}
.bg-black .product-teaser .color-primary,
.bg-black .product-teaser .color-secondary{
    color: rgb(252, 252, 252)!important;
}
.product-teaser.product-sport .color-secondary{
    color: rgb(79, 74, 74);
}
.product-sport .product-flags .new {
    border: 1px solid rgb(237, 87, 33);
}
.product-sport .product-flags .out-of-stock {
    border: 1px solid rgb(237, 87, 33);
    background-color: rgb(237, 87, 33);
}
.bg-black .contain-article .product-teaser .color-primary.field--name-price,
.bg-black .contain-article .product-teaser .color-primary.price{
    color: rgb(237, 87, 33)!important;
}
.region-content .messages--legal_notice{
    display: none;
}
.no-margin-bottom{
    margin-bottom: 0!important;
}
.region-content >article{
    display: none;
}
.cart-block--offcanvas-cart-table__price{
    column-gap: 0.62rem 
}

.prix-barre-m{
    position: relative;
}
.prix-barre-m .bar {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    height: 1px;
    background-color: rgb(110, 115, 120);
}
.mv--require-field, .mv--require-field input {
    position: absolute !important;
    opacity: 0;
    width: 0 !important;
    left: 0 !important;
    height: 0 !important;
}
.btn-show-password{
    font-size: 0;
    position: absolute;
    top: 16px;
    right: 18px;
}
.btn-show-password button{
    background-color: transparent;
}
.btn-show-password button:focus,
.btn-show-password button:active{
    background-color: transparent;
    cursor: pointer;
}
.pickup-informations{
    position: relative;
}
.path-checkout .update-pickup-store{
    color: #002E4B !important;
    padding: 0 !important;
    font-family: "Open Sans";
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 14px !important;
    letter-spacing: 0.08em !important;
    text-align: center !important;
    height: auto !important;
    border: none !important;
    right: 10px;
}
.path-checkout .update-pickup-store:hover{
    text-decoration: underline;
}
@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}
/** FRONTPAGE **/
@media (min-width: 1024px){
    .path-frontpage .region-content,
    .template-home_sport .region-content-home-sport{
        padding-top: 3.75rem;
        row-gap: 5rem;
        flex-direction: column;
        display: flex;
    }
    .path-frontpage .region-content >div:last-of-type,
    .template-home_sport .region-content-home-sport >div:last-of-type{
        padding-bottom: 5.06rem;
    }
    .cta-btn-middle{
        margin-top: 1.88rem;
    }
    .cta-primary:hover{
        color: rgb(255, 255, 255);
        background-color: rgb(0, 46, 75) !important;
    }
    .bg-bleu .cta-primary:hover, .bg-bleu-fonce .cta-primary:hover{
        color: rgb(0, 46, 75);
        background-color: rgb(255, 255, 255) !important;
    }
    .bg-black .cta-primary:hover, .sport .cta-primary:hover{
        color: rgb(0, 0, 0);
        background-color: rgb(255, 255, 255) !important;
    }
    .nocontrast-mode .cta-primary:hover{
        color: rgb(255, 255, 255)!important;
        border-color: rgb(0, 46, 75)!important;
        background-color: rgb(0, 46, 75)!important;
    }
    .template-sport .homewrapper .contrast-mode .cta-primary:hover{
        color: rgb(255, 255, 255)!important;
        border-color: rgb(255, 255, 255)!important;
        background-color: #000!important;
    }
    .container-title{
        height: 25rem;
        row-gap: 3.44rem;
    }

    .path-blog .block-page-title-block >.w-full,
    .path-points-de-vente .block-page-title-block >.w-full{
        height: auto;
    }
    .path-blog .block-page-title-block h1,
    .path-points-de-vente .block-page-title-block >.w-full{
        margin-bottom: 20px;
    }
}
.node--type-article .layout__region--content {
    display: flex;
    flex-direction: column;
    gap: 100px;
}

@media (min-width: 100px) and (max-width: 1023px){
    .node--type-article .layout__region--content {
        gap: 40px;
    }
    .cta-btn.cta-product-discover{
        padding: 8px 15px;
    }
    .path-frontpage .region-content,
    .template-home_sport .region-content-home-sport{
        padding-top: 1.875rem;
        row-gap: 2.5rem;
        flex-direction: column;
        display: flex;
    }

    .path-frontpage .region-content >div:last-of-type,
    .template-home_sport .region-content-home-sport >div:last-of-type{
        padding-bottom: 2.5rem;
    }
    .sm\:translate-x-full {
        transform: translate(100%, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1) !important;
    }
    .block-page-title-block >.w-full{
        row-gap: 4.88rem;
    }
    .block-page-title-block h1{
        margin-bottom: 10.7rem;
    }
    .node--type-article .block-page-title-block >.w-full, 
    .path-blog .block-page-title-block >.w-full{
        row-gap: 30px
    }
    .node--type-article .block-page-title-block h1, 
    .path-blog .block-page-title-block h1{
        margin-bottom: 20px;
    }
    .path-node .field-body, .path-node .field-image, .path-node .field--name-field-description{
        padding-left: 1.62rem !important;
        padding-right: 1.62rem !important;
    }
    .sm\:embla__viewport {
        overflow: hidden;
    }
    .sm\:embla__container{
        display: flex;
        touch-action: pan-y pinch-zoom;
    }
    .list-products.sm\:embla__container >.contain-article:last-of-type{
        margin-right: 1.56rem;
    }
}
.embla__progress {
    border-radius: 1.8rem;
    background-color: rgba(47,48,52, .2);
    position: relative;
    height: 1px;
    place-self: center flex-end;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}
.embla__progress__bar {
    background-color:#002E4B;
    position: absolute;
    width: 100%;
    top: 0;
    bottom: 0;
    left: 0;
}
.embla__controls{
    margin-top: 20px;
}
@media screen and (max-width:600px) {
    body #didomi-host .didomi-mobile .didomi-popup-notice-optin-type .didomi-continue-without-agreeing{
        bottom: -15px;
        width: 100%;
        text-align: center;
        left: 0;
    }
}
/** END FRONTPAGE **/