:root {
  --legramme-gray: #F3F3F3;
  --legramme-dark-gray: #676767;
  --legramme-yellow: #FF0;
  --legramme-white: #ffffff;
  --legramme-body-text: #000000;
  --legramme-section-title-font-weight: 600;
  --legramme-product-background-color: #f9f9f9;
  --legramme-hover-color: #D5D5D5;
  --legramme-container-gap: 20px;
  --legramme-sticky-position-bottom: calc(env(safe-area-inset-bottom) + 80px);
  --legramme-header-height: 124px;
  --legramme-fixed-header-height: 54px;
  --legramme-h2-title-size: 24px;

  --swiper-scrollbar-border-radius: 0;
  --swiper-scrollbar-bg-color: var(--legramme-gray);
  --swiper-scrollbar-drag-bg-color: var(--legramme-dark-gray);
}

@media screen and (min-width: 1024px) {
  :root {
    --legramme-container-gap: 30px;
    --legramme-sticky-position-bottom: 60px;
    --legramme-header-height: 130px;
  }
}



.product__viewer-container {
  right: 0;
}

.shopify-section-group-app-group {
  display: none!important;
}

html.no-js {
  .orbe-custom-button-block {
    display: none;
  }

  .desktop-view {
    .cwsMenu {
      & > li {
        &:hover {
          & > .subMenu {
            opacity: 1!important;
            visibility: visible;
            display: block;
            transform: none;
          }
        }
      }
    }
  }
}

.button {
  & > span {
    font-family: legramme, sans-serif;
    font-size: 17px;
  }
}

.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  left: 0!important;
  width: 100%!important;
}

.button {
  transition: .3s;
  padding: 8px 50px;

  span {
    border-bottom: none;
  }

  &:hover {
    text-decoration: none;
  }
}

.essential_annoucement_bar_wrapper {
  &.top_page {
    transition: .3s;
    padding: 0 !important;
    max-height: 46px;

    & > div {
      padding: 13px var(--legramme-container-gap) !important;

      
    }

    div[class^="essential_annoucement_titles_wrapper_"] div[class^="essential_annoucement_bar_title_container_"] {
      font-weight: 400 !important;
    }

    button {
      position: relative;
      width: 10px;

      &:before,
      &:after {
        content: '';
        display: block;
        background: var(--legramme-body-text);
        height: 1px;
        width: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
      }

      &:before {
        transform: translate(-50%, -50%) rotate(-45deg);
      }

      &:after {
        transform: translate(-50%, -50%) rotate(45deg);
      }

      svg {
        display: none;
      
      }

      @media screen and (min-width: 1024px) {
        margin-right: calc(var(--legramme-container-gap));
      }

      @media screen and (max-width: 430px) {
        top: 50%;
        right: var(--legramme-container-gap);
        transform: translate(100%, -50%);
      }
    }
  }
}

.hero-section {
  overflow: visible;

  .shopify-hero-section {
    &.hero-section--overlay {
      .hero-section__image-container {
        &::after {
          content: '';
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          background: rgba(0, 0, 0, .1);
          pointer-events: none;
        }
      }
    }

    .hero-section__container {
      display: grid;

      min-height: 600px;

      &.hero-section__container-full-height {
        min-height: 100vh;

        
      }

      &.hero-section__container-full-height {
        .hero-section__content-container {
          &.vertical-bottom {
            padding: 20% 40px 20px;
          }
        }
      }


      .hero-section__image-container {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;

        .hero-section__image {
          height: 100%;

          .aspect-ratio {
            height: 100%;
            overflow: hidden;
            padding-bottom: 0 !important;
          }
        }
      }

      .hero-section__content-container {
        color: var(--legramme-white);

        &.vertical-bottom {
          position: sticky;
          bottom: var(--legramme-sticky-position-bottom);
          align-self: end;
          padding: 10% 40px 30px;
          z-index: 1;

          @media screen and (max-width: 1023px) {
            width: 100%;
          }
        }

        &.vertical-center {
            bottom: 50%;
            transform: translateY(50%);
        }

        &.horizontal-center {
          text-align: center;
          left: 0;
          right: 0;
          margin: 0 auto;
        }

        &.horizontal-left {
          left: 0;
        }

        &.horizontal-right {
          right: 0;
          justify-self: end;
        }

        .hero-section__content-title {
          font-size: 30px;

          @media screen and (min-width: 1024px) {
            font-size: 51px;
          }

          & + p {
            span {
              font-size: 1.2rem;
              

              @media screen and (min-width: 1024px) {
                
              }
            }
          }
        }

        .section-button {
          .button {
            background: var(--legramme-white);
            border: 1px solid var(--legramme-white);
            color: var(--legramme-body-text);
            text-align: center;
            width: 100%;
            padding-top: 14px;
            padding-bottom: 14px;

            @media screen and (min-width: 1024px) {
              width: auto;
            }

            &:hover {
              background: var(--legramme-gray);
              border-color: var(--legramme-gray);
            }
          }
        }
      }
    }
  }
}

.shopify-hero-slider-section {
  .hero-slider-section {
    overflow: visible;

    .flickity-page-dots {
      width: auto;
      right: 0;
      align-items: center;

      @media screen and (min-width: 1024px) {
        
        padding-right: var(--legramme-container-gap);
        bottom: 50px;
      }

      .dot {
        width: 3px!important;
        height: 3px!important;
        border-radius: 0!important;
        background: var(--legramme-gray)!important;
        
        border: none;

        &.is-selected {
          width: 5px!important;
          height: 5px!important;
          background: var(--legramme-body-text)!important;
        }
      }
    }

    &.hero-slider-section-full-height {
      .flickity-viewport {
        min-height: 100vh !important;
        
      }
    }

    .flickity-viewport {
      overflow: visible;
      @media screen and (min-width: 1440px) {
        min-height: 600px !important;
      }

      .flickity-slider {
        left: 0!important;
        transform: none!important;

        .hero-slide__slide_item {
          left: 0!important;
          transform: none!important;
          display: grid;
          padding-bottom: 0 !important;
          height: 100%;
          width: 100%;

          .aspect-ratio {
            padding-bottom: 0 !important;
            height: 100%;
            width: 100%;
          }

          .hero-slide__content {
            position: sticky;
            bottom: var(--legramme-sticky-position-bottom);
            align-self: end;
            max-width: none;
            padding: 20% 40px 50px;
            color: var(--legramme-white);
            z-index: 1;

            .hero-slide__title {
              line-height: 1;
              @media screen and (max-width: 1023px) {
                margin-bottom: 10px;
              }
            }

            .hero-slide__subtitle {
              font-size: 1.2rem;
              

              @media screen and (max-width: 1023px) {
                margin-bottom: 10px;
              }
            }

            .hero-slide__button {
              background: var(--legramme-white);
              border: 1px solid var(--legramme-white);
              color: var(--legramme-body-text);
              text-align: center;
              width: 100%;
              padding-top: 14px;
              padding-bottom: 14px;

              @media screen and (min-width: 1024px) {
                width: auto;
              }

              &:hover {
                background: var(--legramme-gray);
                border-color: var(--legramme-gray);
              }
            }
          }
        }
      }
    }
  }
}

.shopify-text-only-section {
  .text-only-section {
    padding-top: 50px;
    padding-left: var(--legramme-container-gap);
    padding-right: var(--legramme-container-gap);

    .text-only-section__wrapper {
      &.text-only-section__wrapper--left {
        text-align: left;
      }

      &.text-only-section__wrapper--center {
        text-align: center;
      }

      &.text-only-section__wrapper--right {
        text-align: right;
      }

      &.text-only-section__wrapper--justify {
        text-align: justify;
      }
    }

    .text-only-section__content {
      .text-only-section__title {
        font-size: 36px;
        margin-bottom: 30px;

        @media screen and (min-width: 1024px) {
          font-size: 46px;
          margin-bottom: 40px;
        }
      }

      .text-only-section__text {
        p:last-child {
          margin-bottom: 0;
        }
      }
    }
  }
}

.collection-links {
  padding: 50px var(--legramme-container-gap);

  &[aria-hidden="false"] {
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
    
    background-color: var(--legramme-white);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    gap: 10px;
    padding: 25px var(--legramme-container-gap);
    -webkit-transition: -webkit-transform .3s ease;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease;

    .collection-links-title-wrapper {
      flex: 0 0 auto;
      margin-bottom: 0;
      margin-right: 10px;

      .collection-links-title {
        font-weight: 400;
        color: rgb(0 0 0 / .6);
        font-size: 10px;

        @media screen and (min-width: 1024px) {
          font-size: 14px;
        }
      }
    }

    @media screen and (max-width: 1023px) {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
      touch-action: pan-x;

      &::-webkit-scrollbar {
        display: none;
      }
    }
  }

  .collection-links-title-wrapper {
    text-align: center;
    margin-bottom: 30px;

    .collection-links-title {
      font-weight: var(--legramme-section-title-font-weight);
      
      font-size: 20px;

      @media screen and (min-width: 1440px) {
        font-size: 30px;
      }
    }
  }

  .collection-links-list-wrapper {
    flex: 1 1 auto;
    min-width: 0;

    @media screen and (min-width: 1024px){
      flex: none;
    }

    .collection-links-list {
      display: flex;
      justify-content: center;
      gap: 10px;

      .collection-links-list-item {
        display: inline-block;

        @media screen and (max-width: 1023px) {
          font-size: 14px;
        }

        a,
        label {
          display: inline-block;
          background: var(--legramme-gray);
          padding: 6px 15px;
          transition: .3s;
          border-radius: 4px;

          &:hover {
            
            
            background: var(--legramme-body-text);
            color: var(--legramme-white);
          }
        }
      }
    }

    @media screen and (max-width: 1023px) {
      .collection-links:not([aria-hidden="false"]) & {
        .collection-links-list {
          display: block;
          white-space: nowrap;
          overflow-x: auto;
          -webkit-overflow-scrolling: touch;
          scrollbar-width: none;
          -ms-overflow-style: none;
          touch-action: pan-x;

          &::-webkit-scrollbar {
            display: none;
          }
        }
      }

      .collection-links[aria-hidden="false"] & {
        .collection-links-list {
          flex-wrap: nowrap;
          justify-content: flex-start;
          white-space: nowrap;

          .collection-links-list-item {
            flex: 0 0 auto;
          }
        }
      }
    }

    @media screen and (min-width: 1024px) {
      .collection-links-list {
        justify-content: center;
        overflow: visible;
        white-space: normal;
      }
    }
  }
}

#shopify-section-header {
  .header__menu-toggle {
    position: absolute;
    opacity: 0;
    pointer-events: none;
  }

  .header {
    padding-top: 0;

    &:after {
      display: none;
    }

    .header__container {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 30px var(--legramme-container-gap);
      transition: .3s;
    }

    .header__nav {
      width: 100%;
    }

    .header__nav-container {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
    }

    .header__nav-icon--native-search {
      background: none;

      svg, path, circle {
        fill: currentColor;
        stroke: none;
      }

      .header__icon-open {
        margin-top: 0;
      }

        &:hover {
        .header__icon-open {
          color: var(--legramme-body-text);
        }
      }

      details[open] {
        .header__icon--search {
          background: none;
          .header__icon-close {
            color: inherit;
          }
        }
      }
    }

    .header__nav-icon--account,
    .header__nav-icon--cart{
      border-bottom: none;

      &:hover {
        background: none;
      }
    }

    .header__nav-actions {
      display: flex;
      align-items: center;
      gap: 10px;
      @media screen and (min-width: 1040px) {
        gap: 16px;
      }

      &.header__nav-actions--left {
        flex: 1 1 0;
        justify-content: flex-start;
      }

      &.header__nav-actions--right {
        flex: 1 1 0;
        justify-content: flex-end;
      }
    }

    .header__logo__wrapper {
      display: flex;

      .header__logo-title {
        line-height: 0;
      }
    }

    .header__logo {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      
      text-align: center;
      white-space: nowrap;
      margin: 0;
      padding: 0;

      .header__logo-image {
        display: inline-block;
        max-width: 100%;
        position: relative;
        z-index: 1;
      }

      &:has(.header__logo-image) {
        height: 15px;
        @media screen and (min-width: 1040px) {
          height: 25px;
        }

        &:after {
          content: '';
          display: inline-block;
          flex: 0 0 auto;
          background: var(--legramme-body-text);
          z-index: 2;
          width: 15px;
          height: 15px;

          @media screen and (min-width: 1040px) {
            width: 25px;
            height: 25px;
          }
        }

        img {
          box-sizing: border-box;
          padding-right: 20px;
          vertical-align: middle;
          object-fit: cover;
          object-position: left;
          transition: .8s;
          height: 25px;

          @media screen and (min-width: 1040px) {
            height: 40px;
          }
        }
      }
    }

    &.fixed {
      .header__container {
        padding-top: 15px;
        padding-bottom: 15px;
      }
      .header__logo {
        &:has(.header__logo-image) {
          .header__logo-image {
            width: 0;
            padding-right: 0;
          }
        }
      }
    }

    .header__nav-icon,
    .header__nav-icon--account-container {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 20px;
      height: 20px;
    }

    .header__nav-icon {
      .icon,
      svg {
        width: auto;
        height: 20px;

        &:last-child {
          margin-right: 0;
        }

        &.icon--user {
          stroke: none;
          fill: none;
        }
      }

      & > span {
        svg {
          &:not(:last-child) {
            margin-right: 10px;
          }
        }
      }

    }

    .header__nav-icon--account {
      @media screen and (min-width: 1024px) {
        position: relative;

        .header__nav-item-wrapper {
          top: auto;
          bottom: -2px;
          transform: translateY(100%);
        }
      }

      &:hover {
        .icon--user {
          fill: none;
        }
      }
    }

    .header__nav-icon--burger {
      display: none;
      cursor: pointer;
      position: relative;
      align-items: center;
      justify-content: center;
      margin-left: 0;

      @media screen and (min-width: 1040px) {
        display: flex;
        z-index: 1003;
        width: auto;
      }

      & > .icon {
        @media screen and (min-width: 1040px) {
          display: inline-flex;
          width: 24px;
          height: 20px;
          margin-left: 0;
          z-index: 1002;
        }

        &::before,
        &::after {
          content: '';
          position: absolute;
          display: block;
          left: 0;
          width: 24px;
          height: 1px;
          background: currentColor;
          transition: top 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
        }

        &::before {
          top: 4px;
          box-shadow: 0 6px 0 currentColor;
        }

        &::after {
          top: 16px;
        }
      }

      & > .header__nav-icon--burger--label {
        position: absolute;
        left: 35px;
        top: 50%;
        transform: translateY(-50%);
        opacity: 0;
        transition: .2s;
        pointer-events: none;
        font-size: 14px;
      }
    }

    

    .header__nav-icon--contact {
      .icon,
      svg {
        width: 18px;
        height: 18px;
      }
    }

    .header__nav-icon--cart {
      position: relative;
      background: none!important;

      .icon {
        margin-right: 0;
      }

      .header__nav-icon--cart-close {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        width: 24px;
        opacity: 0;
        
        
        pointer-events: none;
        display: inline-block;

        &::before,
        &::after {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          width: 24px;
          height: 1px;
          background: currentColor;
          transform-origin: center;
          transition: transform .25s ease;
        }

        &::before {
          
          transform: translate(-50%, -50%) rotate(45deg);

        }

        &::after {
          
          transform: translate(-50%, -50%) rotate(-45deg);
        }
      }

      .cart-item-count {
        display: none;
      }

      &.cart--not-empty {
        &:not(.active) {
          .cart-item-count {
            position: absolute;
            display: block;
            width: 15px;
            height: 15px;
            line-height: 15px;
            background: var(--legramme-yellow);
            font-size: 12px;
            border-radius: 50%;
            text-align: center;
            
            bottom: 0;
            right: 0;
            
            transform: translate(50%, 50%);
            color: var(--legramme-body-text);
          }
        }
      }

      &:not(.active) {
        .icon:first-child {
          display: block;
        }
      }

      &.active {
        .icon:first-child {
          display: none;
        }

        .header__nav-icon--cart-close {
          opacity: 1;
          

          &::before {
            
          }

          &::after {
            
          }
        }
      }
    }
  }

  .header__menu-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .6);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 1000;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
  }

  .header__nav-menu-mobile {
    position: fixed;
    top: 0;
    left: 0;
    right: auto;
    width: min(480px, 100vw);
    height: 100vh;
    background: #fff;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    z-index: 1001;
    display: block;

    .menu-mobile__container {
      width: 100%;
      padding: 24px;
    }

    .menu-mobile__cmm {
      width: 100%;
    }
  }

  .header__nav-menu-desktop {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    z-index: 1001;

    .header__nav-menu-desktop-inner {
      display: flex;
      flex-direction: column;
      height: 100%;
      background: var(--legramme-white);

      .header__nav-menu-desktop-header {
        min-height: 80px;
        padding: 30px 30px;
      }

      .header__nav-menu-desktop-footer {
        padding: 30px 30px;
        border-top: 1px solid rgba(0, 0, 0, .1);
        font-size: 12px;
        text-transform: uppercase;

        & > ul {
          & > li {
            margin-bottom: 10px;
          }
        }

        .md-orbe-country-selector {
          margin-left: 0;
          height: 0.75rem;
          width: 1rem;
        }

        .md-orbe-country-selector__disclosure {
          width: 10px;
          margin-left: 5px;
        }
      }

      .header__nav-menu-desktop-close {
        cursor: pointer;
        color: var(--legramme-body-text);

        .icon {
          display: inline-block;
          height: .9em;
          vertical-align: middle;
          margin-right: 10px;
        }

        .header__nav-menu-desktop-close-label {
          line-height: 1;
        }
      }
    }
  }

  .cwsMenuOuter {
    .cmenu_item_text {
      text-transform: lowercase;
    }

    .cwsMenu {
      &.vertical {
        & > li {
          &.cmenu_item {
            &.menu-separator {
              &:before {
                content: '';
                display: block;
                max-width: 40px;
                width: 100%;
                height: 1px;
                background-color: rgba(0, 0, 0, .1);
                margin-top: 20px;
                margin-bottom: 20px;
                margin-left: var(--cmm-root-horizontal-padding);

                @media screen and (min-width: 1024px) {
                  margin-top: 45px;
                  margin-bottom: 45px;
                }
              }
            }
          }
        }
      }
    }

    &.desktop-view {
      height: 100%;
      flex-grow: 1;
      overflow: auto;
      -ms-overflow-style: none;
      scrollbar-width: none;
      --cmm-root-horizontal-padding: 30px;
      --cmm-root-vertical-padding: 5px;
      --cmm-root-font-size: 20px;

      &::-webkit-scrollbar {
        display: none;
      }

      .cwsMenu {
        &.vertical {
          width: 420px;
          max-width: none;
          flex-direction: column;

          &:has(li.menu-active) {
            & > li {
              &:not(.menu-active) {
                --cmm-root-clr: var(--legramme-dark-gray);
              }

              &.current-menu > a {
                &:not(:hover) {
                  --cmm-root-clr-hover: var(--legramme-dark-gray);
                }
              }
            }
          }

          & > li {
            &.cmenu_item {
              & > .cmenu_item_link {
                height: auto;
                justify-content: space-between;
              }

              & > .cmenu_item_link {
                & > .arw {
                  display: none;
                }

                &:after {
                  content: '';
                  display: block;
                  width: 16px;
                  height: 16px;
                  opacity: 0;
                  background: var(--legramme-body-text);
                  transition: .3s;
                }
              }

              &.menu-active,
              &:hover {
                .cmenu_item_link {
                  &:after {
                    opacity: 1;
                  }
                }
              }

              &:hover {
                & > .subMenu {
                  
                }
              }
            }

            &.full-width:not(.flyout) {
              &.menu-active {
                & > .subMenu {
                
                  
                  transform: translateX(0);
                }
              }

              & > .subMenu {
                z-index: -1;
                position: fixed;
                height: 100%;
                box-shadow: none;
                border-top: none;
                border-left: 1px solid rgba(0, 0, 0, .1);
                border-left: 1px solid var(--legramme-gray);
                max-width: 420px;
                box-sizing: border-box;
                padding: 20px 5px;
                overflow: auto;

                
                animation: none;
                transform: translateX(-100%);
                opacity: 1;
                display: block;
                visibility: initial;

                .cwsimage {
                  &:after {
                    content: '';
                    display: block;
                    padding-bottom: 100%;
                  }

                  img {
                    position: absolute;
                    top: 0;
                    left: 0;
                    height: 100%;
                    width: 100%;
                    object-fit: cover;
                  }
                }

                .cwscontent {
                  .cmenu_item_text {
                    &.cimg_text_above {
                      .cmenulbl {
                        display: block;
                        padding: 0;
                        margin-left: 0;
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }

    &.mobile-view {
      width: auto;

      &.cwsmenu-open {
        &::after {
          background: rgba(0, 0, 0, .6)
        }
      }

      .cwsMenu-inner {
        display: flex;
        flex-direction: column;
        max-width: 500px;
        width: 100%;

        .cwsmobile-menubar-close {
          position: relative;
          order: -2;
          top: 0;
          left: 0;
          margin-top: 5px;
          margin-left: 11px;
          background: none;
          justify-content: flex-start;
          width: auto;

          svg {
            color: var(--legramme-body-text);
          }
        }

        .cwsMenu {
          height: auto;
          flex-grow: 1;
          order: -1;

          & > li {
            & > a {
              font-size: 17px;
            }
          }

          li {
            & > .subMenu {
              font-size: 17px;
            }
          }

          & > .cmenu_item {
            &.parent {
              overflow: hidden;
            }
            & > .cmenu_item_link {
              padding-top: 8px;
              padding-bottom: 8px;
            }

            & > .subMenu {
              .cmenu_col {
                &.column-6 {
                  width: 50%;
                  display: inline-block;
                }
              }

              .cwsimage {
                &:after {
                  content: '';
                  display: block;
                  padding-bottom: 100%;
                }

                img {
                  position: absolute;
                  top: 0;
                  left: 0;
                  height: 100%;
                  width: 100%;
                  object-fit: cover;
                }
              }

              .cwscontent {
                .cmenu_item_text {
                  .cmenulbl {
                    display: block;
                    margin-left: 0;
                    padding: 0;
                  }
                }
              }
            }
          }

          .arw-back {
            font-weight: 400;
            border-bottom: none;
            padding-bottom: 8px;
            text-transform: lowercase;

            .icon {
              width: 16px;
              margin-right: 10px;
            }
          }
        }

        .cws-menu-footer {
          padding-top: 20px ;
          padding-bottom: 20px ;
          font-size: 12px;
          text-transform: uppercase;
          order: 2;
          border-top: 1px solid rgba(0, 0, 0, .1);

          li {
            a {
              display: block;
              padding: 5px 15px;
            }
          }

          .md-orbe-custom-selector {
            margin-left: 15px!important;

            .md-orbe-country-selector {
              margin-left: 0;
            }
          }

          .country-selector-btn span,
          .country-selector-btn-mob span {
            text-transform: uppercase;
          }
        }
      }

      .cmenu_hamburger {
        position: relative;

        button {
          margin: 0;
          padding: 2px;
        }

        &.cmenu_hamburger--shadow {
          .cwsmobile-menubar-toggle {
            box-shadow: none;
          }
        }
      }

      .country-selector-btn-mob {
        display: flex;
      }
    }
  }



  .header__menu-toggle:checked ~ .header__menu-overlay {
    opacity: 1;
    pointer-events: auto;
  }

  .header__menu-toggle:checked ~ .header__container .header__nav-icon--burger {
    & > .icon {
      color: var(--legramme-body-text);

      &::before {
        top: 10px;
        transform: rotate(45deg);
        box-shadow: none;
      }

      &::after {
        top: 10px;
        transform: rotate(-45deg);
      }
    }

    & > .header__nav-icon--burger--label {
      opacity: 1;
      color: var(--legramme-body-text);
      pointer-events: auto;
    }
  }

  .header__menu-toggle:checked ~ .header__nav-menu-mobile {
    transform: translateX(0);
  }

  .header__menu-toggle:checked ~ .header__nav-menu-desktop {
    transform: translateX(0);
  }

  .header__menu-toggle:not(:checked) ~ .header__nav-menu-desktop {
    .subMenu {
      display: none!important;
    }
  }
}

.product-carousel-section__container {
  .product-carousel-section__header {
    .product-carousel-section__title {
      text-align: left;
      font-weight: var(--legramme-section-title-font-weight);
      padding-left: var(--legramme-container-gap);
      padding-right: var(--legramme-container-gap);
      font-size: var(--legramme-h2-title-size);

      @media screen and (min-width: 1440px) {
        font-size: 30px;
      }
    }
  }

  .product-carousel-section__content-container {
    .product-carousel-section__products {
      padding-left: var(--legramme-container-gap);
      padding-right: var(--legramme-container-gap);
      padding-bottom: 40px;
      --swiper-pagination-color: var(--legramme-body-text);

      .product-carousel-section__wrapper {
        @media screen and (max-width: 1023px) {
          margin-left: -5px!important;
        }
      }

      .product-item {
        background: var(--legramme-product-background-color);
        padding: 0;

        @media screen and (min-width: 1024px) {
          .wk-button.wk-button--floating {
            top: 10px;
            right: 15px;
          }
        }

        .swiper-slide {
          padding: 0;
        }

        .product-item__link {
          position: relative;
        }

        .product-item__text {
          position: relative;
          width: 100% !important;
          left: auto;
          top: auto;
        }
      }

      > .swiper-navigation-container {
        .swiper-button-prev,
        .swiper-button-next {
          border: none;
          box-shadow: none;

          &:after {
            content: none;
          }

          svg {
            width: 10px;
          }
        }

        .swiper-button-prev {
          svg {
            transform: rotate(180deg);
          }
        }
        .swiper-button-next {}
      }

      > .swiper-pagination {
        pointer-events: none;
        background: var(--legramme-gray);

        .swiper-pagination-progressbar-fill {
          transition-duration: 0ms!important;
        }
      }

      > .swiper-pagination,
      > .swiper-scrollbar {
        height: 2px;
        margin-left: auto;
        margin-right: auto;
        max-width: 360px;
        width: 100%;
        top: auto;
        bottom: 0;
        left: 50%!important;
        transform: translateX(-50%);

        @media screen and (max-width: 1023px) {
          width: calc(100% - var(--legramme-container-gap) * 2)!important;
        }
      }

      > .swiper-scrollbar {
        &.swiper-scrollbar-horizontal {
          
          
          
          background: transparent;

          .swiper-scrollbar-drag {
            background: var(--legramme-body-text);
          }
        }
      }
    }
    .product__images-slider {
      .swiper-scrollbar {
        width: auto!important;
      }
    }
  }
}

.product-item__price {
  .item-price {
    span {
      font-family: legramme, sans-serif;
    }
  }
}

.product-item {
  /* Global product-item skeleton */
  background: var(--legramme-product-background-color);

  .badges-wrapper {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 3;
    text-transform: lowercase;
    font-size: 12px;

    @media screen and (min-width: 1024px) {
      font-size: 14px;
    }

    .badge {
      background: var(--legramme-body-text);
      color: var(--legramme-white);
      text-transform: lowercase;
      padding: 1px 6px;

      @media screen and (min-width: 1024px) {
        padding: 2px 10px;
      }

      &.badge-new {
      }
    }
  }

  &.product-item--large {
  }

  &.product-item--small {
  }

  .product-item__link {
  }

  .product-item__images-container {
    &.product-item__images-container--slider {
    }
  }

  .product-item__images-swiper {
    .swiper-wrapper {
    }

    .product-item__image-slide {
    }

    .product-item__images-arrow {
      svg {
        height: 12px;
      }

      &.product-item__images-arrow--prev {
      }

      &.product-item__images-arrow--next {
      }
    }
  }

  .product-item__images-scrollbar {
    .swiper-scrollbar-drag {
    }
  }

  .product-item__image-hover {
  }

  .product-item__content {
    padding: 5px 10px 10px;

    @media screen and (min-width: 1024px) {
      padding: 5px 15px 15px;
    }

    .product-item__title {
      margin-bottom: 2px;
      font-family: legramme-bold, sans-serif;
      font-size: 11px;

      @media screen and (min-width: 1024px) {
        font-size: 14px;
      }
    }

    .product-item__variant-title {
      margin-bottom: 2px;
      font-size: 11px;

      @media screen and (min-width: 1024px) {
        font-size: 14px;
      }
    }

    .product-item__price {
      font-size: 14px;

      @media screen and (min-width: 1024px) {
        font-size: 15px;
      }
    }
  }

  .product-item__text {
    .product-item__text-title {
    }
  }

  .badges-wrapper {
    .badge {
      &.badge-new {
      }
    }
  }

  &:hover {
  }

  &.is-active {
  }

  @media screen and (min-width: 1024px) {
  }

  .product-item__images-container {
    &.product-item__images-container--slider {
      position: relative;

      .product-item__images-swiper {
        overflow: hidden;

        .product-item__image-slide {
          .aspect-ratio {
            margin-bottom: 0;
          }
        }

        .product-item__images-arrow {
          position: absolute;
          top: 50%;
          z-index: 2;
          margin: 0;
          padding: 6px;
          transform: translateY(-50%);
          border: 0;
          color: var(--legramme-body-text);

          &:after {
            content: none;
            display: none;
          }

          span {
            display: inline-block;
            font-size: 26px;
            line-height: 1;
          }

          &.swiper-button-disabled {
            opacity: 0.4;
          }
        }

        .product-item__images-arrow {
          opacity: 0;
          visibility: hidden;
          pointer-events: none;
          &.product-item__images-arrow--prev {
            left: 8px;

            span {
              transform: rotate(180deg);
            }
          }

          &.product-item__images-arrow--next {
            right: 8px;
          }
        }
      }
    }
  }

  .product-item__images-scrollbar {
    background: transparent;

  }

  .product-item__images-pagination {
    background: var(--legramme-gray);
    pointer-events: none;
    --swiper-pagination-color: var(--legramme-body-text);

    .swiper-pagination-progressbar-fill {
      transition-duration: 0ms!important;
    }
  }

  .product-item__images-pagination,
  .product-item__images-scrollbar {
    top: auto!important;
    left: 0;
    right: 0;
    bottom: 0!important;
    height: 2px!important;
    width: auto !important;
    margin: 0;
    margin-left: 0 !important;
    margin-right: 0 !important;
    
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .2s ease, visibility .2s ease;

    .swiper-scrollbar-drag {
      background: var(--legramme-body-text);
    }
  }

  &:hover {
     .product-item__images-container {
       &.product-item__images-container--slider {
         .product-item__images-swiper {
           .product-item__images-arrow {
             opacity: 1;
             visibility: visible;
             pointer-events: auto;
           }
         }
       }
     }
    .product-item__images-pagination,
    .product-item__images-scrollbar {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
    }
  }
}

.editorial-carousel-section__container {
  .swiper {
    &:not(.swiper-initialized) {
      overflow: visible;
    }
  }

  .editorial-carousel-section__title {
    text-align: left;
    font-weight: var(--legramme-section-title-font-weight);
    padding-left: var(--legramme-container-gap);
    padding-right: var(--legramme-container-gap);
    font-size: var(--legramme-h2-title-size);

    @media screen and (min-width: 1440px) {
      font-size: 30px;
    }
  }

  .services-global__swiper {
    padding-left: var(--legramme-container-gap);
    padding-right: var(--legramme-container-gap);
    --swiper-pagination-color: var(--legramme-body-text);

    .editorial-carousel-section__wrapper {
      padding-left: 0;
      padding-right: 0;

      &.swiper-wrapper {
        &:not(.swiper-initialized) {
          width: auto;
        }
      }

      .editorial-carousel-section__content {
        &.editorial-carousel-section__content-contenu {
          .editorial-carousel-section__content-text {
            
          }
        }
      }
    }

    & > .swiper-scrollbar {
    
    
      height: 2px;
    }

    & > .swiper-pagination,
    & > .swiper-scrollbar {
      height: 2px;
      margin-left: auto;
      margin-right: auto;
      max-width: 360px;
      width: 100%;
      top: auto;
      bottom: 0;
      left: 50%!important;
      transform: translateX(-50%);

      @media screen and (max-width: 1023px) {
        width: calc(100% - var(--legramme-container-gap) * 2)!important;
      }

      @media screen and (min-width: 1024px) {
        display: none;
      }
    }

    & > .swiper-scrollbar {
      background: transparent;

      .swiper-scrollbar-drag {
        background: var(--legramme-body-text);
      }
    }

    & > .swiper-pagination {
      pointer-events: none;
      background: var(--legramme-gray);

      .swiper-pagination-progressbar-fill {
        transition-duration: 0ms!important;
      }
    }
  }

  .editorial-carousel-section__wrapper__container {
    padding-left: var(--legramme-container-gap);
    padding-right: var(--legramme-container-gap);
  }

  .editorial-carousel-section__wrapper {

    &.swiper-wrapper {
      flex-wrap: nowrap;
    }

    @media screen and (min-width: 1024px) {
      margin-left: -15px;
      margin-right: -15px;
    }

    .editorial-carousel-section__content {
      width: 100%;
      @media screen and (max-width: 1024px) {
        padding: 0!important;
        margin-bottom: var(--legramme-container-gap)!important;
      }

      @media screen and (min-width: 1024px) {
        width: 25%;
      }

      &:nth-child(1),
      &:nth-child(2),
      &:nth-child(3) {
        border-right: none;
      }

      &:nth-child(1),
      &:nth-child(2),
      &:nth-child(3),
      &:nth-child(4) {
        @media screen and (min-width: 1024px) {
          padding-left: 15px;
          padding-right: 15px;
        }
      }

      &.editorial-carousel-section__content-contenu {
        position: relative;

        &:after {
          content: '';
          display: block;
          padding-bottom: calc(5 / 4 * 100%);
        }

        &:not(:has(a)),
        & > a {
          position: absolute;
          top: 0;
          bottom: 0;
          display: grid;
          height: 100%;
          left: 0;
          right: 0;

          @media screen and (min-width: 1024px) {
            left: 15px;
            right: 15px;
          }
        }

        .editorial-carousel-section__image {
          overflow: hidden;

          .aspect-ratio {
            position: absolute;
            top: 0;
            left: 0;
            height: 100%;
            width: 100%;
            padding-bottom: 0!important;

            img {
              transition: .3s;
            }

            .services-global__video {
              width: 100%;
              height: 100%;
              border: 0;
              pointer-events: none;
            }
          }
        }

        &:hover {
          .editorial-carousel-section__image {
            img {
              
              @media screen and (min-width: 1024px) {
                transform: scale(1.3);
              }
            }
          }

          .editorial-carousel-section__content-text {
            .editorial-carousel-section__content-title {
              @media screen and (min-width: 1024px) {
                &:after {
                
                  display: block;
                }
              }
            }
          }
        }

        @media screen and (min-width: 1024px) {
          padding-bottom: 0;

          .editorial-carousel-section__image {
            margin-bottom: 0;
          }
        }

        .editorial-carousel-section__content-text {
          
          
          
          

          position: sticky;
          bottom: var(--legramme-sticky-position-bottom);
          align-self: end;
          color: var(--legramme-white);
          z-index: 2;

          padding: 20% 15px 20px;

          @media screen and (min-width: 1040px) {
            padding: 20% 40px 20px;
          }

          .editorial-carousel-section__content-title {
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-size: var(--legramme-h2-title-size);

            @media screen and (min-width: 1440px) {}

            .downcase {
              text-transform: lowercase;
            }

            &:after {
              content: '';
              display: none;
              width: .8em;
              height: .8em;
              background: currentColor;
              
              transition: .3s;
            }
          }
        }
      }
    }
  }
}

.seo-text {
  padding: 40px var(--legramme-container-gap);
  margin: 0 auto;
  max-width: 920px;
  text-align: justify;

  @media screen and (min-width: 1024px) {
    padding: 60px var(--legramme-container-gap) 50px;
  }

  .seo-text-content-wrapper {
    color: var(--legramme-dark-gray);
    .seo-title {
      text-align: center;
      font-size: var(--legramme-h2-title-size);

      @media screen and (min-width: 1040px) {
        font-size: 30px;
      }
    }
  }

  .seo-links-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 30px;

    li {
      display: inline-block;

      a {
        background: var(--legramme-gray);
        padding: 2px 15px;
        border-radius: 20px;
        transition: .3s;

        &:hover {
          background: var(--legramme-body-text);
          color: var(--legramme-white);
        }
      }
    }

  }

  .btn-seo-text {
    
    display: block;
    z-index: 1;
    margin: 10px auto;
    
    
    
    background: transparent;
    border: none;
    color: var(--legramme-body-text);
    text-decoration: underline;
    padding: 3px;
  }

  html:not(.no-js) & {
    & {
      .seo-text-content-wrapper {
        display: block;
        overflow: initial;
      }
    }

    &:not(.seo-text-visible) {
      .seo-text-content-wrapper {
        .seo-text-content {
          position: relative;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 10;
          overflow: hidden;

          @media screen and (min-width: 1040px) {
            -webkit-line-clamp: 5;
          }

          &:after {
            content: '';
            position: absolute;
            top: 50%;
            bottom: 0;
            left: 0;
            right: 0;
            background: linear-gradient(to top, rgba(255, 255, 255, .8), rgba(255, 255, 255, .4));
          }
        }
      }
    }
  }
}

.reinsurance-slider {
  margin: 2px auto;
  overflow: hidden;
  display: flex;

  &:hover {
    .reinsurance-slider-track {
      animation-play-state: paused;
    }
  }

  .reinsurance-slider-track {
    flex: 0 0 100%;
    display: flex;

    will-change: transform; /* We should be nice to the browser - let it know what we're going to animate. */
    animation: reinsurance-slider-autoplay 20s linear infinite;

    @media screen and (min-width: 1040px) {
      
    }
  }

  .reinsurance-slider-item {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    font-size: 30px;
    white-space: nowrap;
    font-family: legramme-bold, sans-serif;

    @media screen and (min-width: 1040px) {
      font-size: 46px;
    }

    &:after {
      content: '';
      display: block;
      width: 12px;
      height: 12px;
      background: var(--legramme-body-text);
      margin-left: 40px;
      margin-right: 40px;
    }

    &:hover {
      
    }
  }
}

@keyframes reinsurance-slider-autoplay {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}



#shopify-section-footer {
  .footer__reinsurance {
    padding-top: 50px;
    padding-bottom: 40px;

    @media screen and (min-width: 1040px) {
      padding: 0;
    }

    .footer__reinsurance-item {
      padding: 20px 15px;
      text-align: center;

      @media screen and (min-width: 1040px){
        padding: 0;
      }

      img {
        display: inline-block;
        width: auto;
      }

      .footer__reinsurance-item-title {
        font-size: 17px;
        font-weight: 700;
        margin-top: 20px;

        &:not(:last-child) {
          margin-bottom: 20px;
        }
      }
    }

    @media screen and (max-width: 1023px) {
      &.swiper {
        display: block;

        .swiper-wrapper {
          width: 100%;
        }

        @media screen and (max-width: 768px) {
          .swiper-wrapper {
            height: auto !important;
          }
        }

        .footer__reinsurance-item {
          width: 100%;
        }

        .swiper-pagination {
          position: static;
          margin-top: 0;
          display: block;
          text-align: center;

          .dot {
            display: inline-block;
            width: 4px;
            height: 4px;
            margin: 0;
            background: rgba(0, 0, 0, 0.2);
            opacity: 1;
            border-radius: 50%;
            &:not(:last-child) {
              margin-right: 12px;
            }

            &.is-selected {
              background: var(--legramme-body-text);
            }
          }
        }
      }
    }

    @media screen and (min-width: 1024px) {
      display: flex;
      padding: 80px 40px;

      .footer__reinsurance-item {
        flex-grow: 1;
        padding: 0 var(--legramme-container-gap);
        max-width: 25%;
      }
    }
  }

  .footer__content {
    padding: 40px 0 0;
  }

  .footer__layout {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .footer__newsletter-block {
    max-width: 1000px;
    margin: 0 auto;
    padding-left: var(--legramme-container-gap);
    padding-right: var(--legramme-container-gap);
    text-align: center;

    .footer__tagline {
      margin-bottom: 20px;
    }

    .footer__newsletter-form,
    .footer__newsletter-input-group {
      width: 100%;
    }

    .footer__description-container {
      margin-top: 15px;
    }

    .footer__newsletter-rgpd {
      color: var(--legramme-gray);
      margin-top: 5px;

      @media screen and (min-width: 1024px) {
        margin-top: 20px;
      }
    }
  }

  .footer__socials {
    display: flex;
    justify-content: center;

    .footer__socials-list {
      display: flex;
      justify-content: center;
      gap: 12px;
      @media screen and (min-width: 1024px) {
        gap: 20px;
      }

      li {
        margin-left: 0;

        .icon,
        svg {
          width: 20px;
          height: 20px;
        }
      }
    }
  }

  .footer__menus {
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    padding-left: var(--legramme-container-gap);
    padding-right: var(--legramme-container-gap);
    margin-top: 20px;

    @media screen and (min-width: 1024px) {
      margin-top: 40px;
    }

    .footer__menu-column {
      position: relative;
      padding-top: 15px;
      padding-bottom: 15px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.3);

      &:last-child {
        border-bottom: 0;
      }
    }

    .footer__menu-title {
      margin-bottom: 15px;
      letter-spacing: 0.08em;
      color: #fff;
      font-size: 15px;
    }

    .footer__menu-toggle {
      position: absolute;
      opacity: 0;
      pointer-events: none;
    }

    .footer__menu-toggle-label {
      margin-bottom: 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      cursor: pointer;

      .icon {
        width: 10px;
        height: 8px;
        transition: transform 0.2s ease;
        fill: #fff;
      }

      .icon path {
        fill: #fff;
      }
    }

    .footer__menu-toggle:checked + .footer__menu-toggle-label .icon {
      transform: rotate(180deg);
    }

    .footer__menu-content {
      display: none;
    }

    .footer__menu-toggle:checked + .footer__menu-toggle-label + .footer__menu-content {
      display: block;
    }

    .footer__menu {
      margin-top: 15px;

      &::after {
        content: none;
        display: none;
      }
    }

    .footer__menu-item {
      height: auto;

      & + .footer__menu-item {
        margin-top: 5px;
      }
    }

    .footer__menu-item-link {
      color: #fff;
      font-size: 14px;
    }
  }

  .footer__brand-row {
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    padding: 35px 0;
    padding-left: var(--legramme-container-gap);
    padding-right: var(--legramme-container-gap);
    display: flex;
    justify-content: center;

    .footer__brand-logo {
      width: 100%;
      display: flex;
      justify-content: center;

      .footer__brand-logo-image {
        width: 100%;
        max-width: 800px;
        filter: invert(1);
      }
    }
  }

  .footer__bottom-bar {
    
    margin-top: 10px;

    .footer__bottom-inner {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      justify-content: center;
      gap: 10px;
      padding-top: 16px;
      padding-bottom: 16px;
    }

    .footer__payment-cards {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
      gap: 12px;
      padding-left: var(--legramme-container-gap);
      padding-right: var(--legramme-container-gap);
      padding-bottom: var(--legramme-container-gap);
      border-bottom: 1px solid rgba(0, 0, 0, 0.2);

      @media screen and (min-width: 1024px) {
        justify-content: flex-start;
      }


      .icon--payment-cards,
      .icon--payment-mollie {
        max-width: 100%;
        width: auto;
        height: 10px;
      }

      .icon--payment-mollie {
        margin-top: 0;
      }

      svg,
      svg path {
      
        
        fill: var(--legramme-dark-gray);
      }
    }

    .footer__language-switcher {
      width: 100%;
      display: flex;
      justify-content: center;
      padding-left: var(--legramme-container-gap);
      padding-right: var(--legramme-container-gap);

      @media screen and (min-width: 1024px) {
        justify-content: flex-end;
        text-align: right;
      }

      .footer-country-selector-btn {
        text-transform: lowercase;
      }
    }

    .footer__country-trigger {
      border: 0;
      background: transparent;
      padding: 0;
      display: flex;
      align-items: center;
      gap: 8px;
      cursor: pointer;
      user-select: none;

      .icon {
        width: 10px;
        height: 8px;
        fill: currentColor;
        transition: transform 0.2s ease;
      }
    }

    .footer__country-flag {
      width: 1.2em;
      height: 1.2em;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 1em;
      line-height: 1;
    }
  }

  @media screen and (min-width: 1024px) {
    .footer__content {
      padding-top: 60px;
    }

    .footer__newsletter-block {
      .footer__tagline {
        font-size: 46px;
        line-height: 1.1;
      }

      .footer__description {
        font-size: 16px;
        line-height: 1.4;
      }

      .footer__newsletter-input-group {
        margin-top: 20px;
      }
    }

    .footer__socials {
      .footer__socials-list {
        gap: 18px;
      }
    }

    .footer__menus {
      .footer__menu-column {
        margin-bottom: 0;
        padding-top: 50px;
        padding-bottom: 50px;
        border-bottom: 0;
        border-right: 1px solid rgba(255, 255, 255, 0.3);

        &:not(:first-child) {
          padding-left: 40px;
        }

        &:last-child {
          border-right: 0;
        }
      }

      .footer__menu-content {
        display: block;
      }

      .footer__menu-toggle-label {
        cursor: default;
        pointer-events: none;

        .icon {
          display: none;
        }
      }
    }

    .footer__bottom-bar {
      .footer__payment-cards {
        flex-direction: column;
        align-items: flex-start;
        
        gap: 0;
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 0;
        border-bottom: 0;

        .icon--payment-cards,
        .icon--payment-mollie {
          height: 16px;
        }
      }

      .footer__bottom-inner {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        padding-top: 0;
        
        padding-bottom: 10px;
        padding-left: var(--legramme-container-gap);
        padding-right: var(--legramme-container-gap);
        
      }

      .footer__language-switcher {
        width: auto;
        margin-left: auto;
        justify-content: flex-end;
        padding-left: 0;
        padding-right: 0;
      }
    }
  }
}
.text-image-section-container {
  margin: 50px 0 40px;
  padding: 0 var(--legramme-container-gap);

  


  .text-image-section {
    .text-image-section--content {
      margin-bottom: 40px;

      @media screen and (min-width: 1024px) {
        margin-bottom: 0;
      }
    }

    .text-image-section-section__title {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      font-size: var(--legramme-h2-title-size);

      @media screen and (min-width: 1440px) {
        font-size: 30px;
      }

      
    }

    .text-image-section-section__title,
    .text-image-section--content-text {
      margin-bottom: 30px;
    }

    @media screen and (min-width: 1024px) {
      display: flex;
      flex-direction: row;
      align-items: center;

      & > div {
        width: 50%;

        &.text-image-section--content {
          padding-left: 100px;
          padding-right: 100px;
          text-align: justify;

          & > * {
            max-width: 715px;
            margin-left: auto;
            margin-right: 0;
          }
        }
      }

      &.text-image-section-left {
        flex-direction: row-reverse;
      }
    }

    .section-button {
      @media screen and (max-width: 1023px) {
        text-align: center;
      }
    }
    .button {
      background: var(--legramme-body-text);
      border: 1px solid var(--legramme-body-text);
      color: var(--legramme-white);
    }
  }
}

.faq-section {
  margin: 0 auto;
  max-width: 920px;
  padding: 0 var(--legramme-container-gap);

  .faq-title {
    font-weight: bold;
    text-transform: lowercase;
    margin-bottom: 1.5rem;
    font-size: var(--legramme-h2-title-size);

    @media screen and (min-width: 1440px) {
      font-size: 30px;
    }
  }

  .faq-answer-button-wrapper {
    margin-top: 20px;
    text-align: center;

    .faq-answer-button {
      
      
      background: none;
      border: none;
      text-decoration: underline;
      padding: 3px;
      font-size: 16px;
    }
  }

  .faq-list {

    .faq-item {
      border-top: 1px solid rgba(0, 0, 0, .1);

      &:not(:last-child) {
        margin-bottom: 1px;
      }

      &[open] {
        .faq-question {
          font-weight: 700;
        }

        .faq-answer {
          
          padding-bottom: 20px;
        }

        .faq-answer-inner {
          
          max-height: 500px!important;
        }

        .faq-question-toggle {
          &::before {
            transform: translateY(-50%) rotate(0deg) scaleX(1)!important;
          }

          &::after {
            transform: translateY(-50%) rotate(180deg) scaleX(1)!important;
          }
        }
      }

      .faq-question,
      .faq-answer {
        
        padding: 20px 0;
        
        text-align: justify;
      }

      .faq-question {
        text-align: left;

        @media screen and (min-width: 1024px) {
          text-align: justify;
        }
      }

      .faq-answer {
        
        padding-top: 0;
        padding-bottom: 0;

        .faq-answer-inner {
          
          
          
          transition: .7s linear;
          max-height: 0;
        }

        p {
          text-transform: lowercase;
        }
      }

      .faq-question {
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 10px;

        .faq-question-toggle {
          position: relative;
          display: inline-block;
          font-size: 1.2rem;
          line-height: 1;
          font-weight: 400;
          inline-size: 0.8em;
          block-size: 0.8em;

          &::before,
          &::after {
            content: '';
            position: absolute;
            left: 0;
            top: 50%;
            width: 100%;
            border-top: 1px solid currentColor;
            transition: transform 0.3s ease;
            transform-origin: center;
          }

          &::before {
            transform: translateY(-50%) rotate(0deg) scaleX(1);
          }

          &::after {
            transform: translateY(-50%) rotate(90deg) scaleX(1);
          }
        }
      }
    }
  }

}

.product-section {
  .product__content-wrapper {
    padding-bottom: 0;

    .product__form-wrapper {
      position: relative;

      .product__form-container {
        padding: var(--legramme-container-gap) var(--legramme-container-gap) 20px;
        transition: opacity 0.2s ease;

        .product__infos-container {
          .product-product__infos--title {
            p {
              font-size: 15px;
            }
          }
          .product__infos-details {
            margin-top: 10px;
            .product__infos-detail {
              font-size: 13px;

              &:not(:last-child) {
                margin-bottom: 2px;
              }

              &:first-child {
                margin-top: 0!important;
                padding-top: 0!important;
              }

              .product__infos-detail-key {
                color: var(--legramme-dark-gray);
              }
              .product__infos-detail-value {

              }
            }
          }

          .buttons-container {
            text-align: right;
            margin-top: 10px;

            .cancel {
              padding: 0;
              color: var(--legramme-dark-gray);

              & > span {
                font-size: 14px;
                text-decoration: underline;
              }
            }
          }
        }

        .product__infos-container,
        .product-group__container,
        .product__variants-container {
          padding-top: 15px;
          margin-top: 15px;
          border-top: 1px solid rgba(0, 0, 0, .1);
        }

        .product-group__container {
          .product-group--title {
            justify-content: space-between;
            height: auto;
            p {
              font-size: 15px;
            }
          }

          .product-group__image {
            margin-top: 32px;

            .product-group__image-item {
              .meta-change {
                background: none;
                color: var(--legramme-dark-gray);
              }
            }
          }
        }
      }

      &.is-size-picker-open {
        .product__form-container {
          opacity: 0;
        }
      }

      body:not(.product-carte-cadeau) & {
        .product__variants-native {
          display: none;
        }
      }

      .product__size-picker {
        margin-top: 10px;
        margin-bottom: 10px;

        .product__size-picker-trigger {
          display: flex;
          align-items: center;
          justify-content: space-between;
          padding: 0;

          span[data-element="size-trigger-label"] {
            font-family: legramme,sans-serif;
          }

          .product__size-picker-trigger-angle {
            display: inline-flex;
            align-items: center;
            justify-content: center;

            .icon {
              width: 7px;
            }
          }
        }
      }

      .product__size-picker-overlay {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 5;
        background: rgb(255 255 255 / 0.8);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: opacity 0.2s ease, visibility 0.2s ease;

        &.is-open {
          opacity: 1;
          visibility: visible;
          pointer-events: auto;
        }

        .product__size-picker-overlay-panel {
          display: flex;
          flex-direction: column;
          padding: 30px 30px 20px;
          height: 100%;
        }

        .product__size-picker-overlay-header {
          display: flex;
          align-items: center;
          justify-content: space-between;
          padding-bottom: 15px;
          margin-bottom: 15px;
          border-bottom: 1px solid rgb(0 0 0 / 0.1);

          .product__size-picker-overlay-title {
            margin-bottom: 0;
            font-size: 16px;

            @media screen and (min-width: 1024px) {
              font-size: 20px;
            }
          }
        }

        .product__size-picker-overlay-footer {
          padding-top: 15px;
          margin-top: 15px;
          border-top: 1px solid rgb(0 0 0 / 0.1);

          .product__size-guide-container {
            text-align: right;

            .product__size-guide-link {
              &:after {
                content: none;
              }

              .icon {
                width: 18px;
                margin-right: 5px;
              }

              span {
                text-decoration: underline;
              }
            }
          }
        }

        .product__size-picker-overlay-close {
          border: none;
          background: transparent;
          padding: 0;
          margin: 0;

          .product__size-picker-overlay-close-cross {
            font-size: 18px;
            line-height: 1;
          }
        }

        .product__size-picker-overlay-list {
          display: flex;
          flex-direction: column;
          flex-grow: 1;
          overflow: auto;
          margin: 0 -30px;
        }

        .product__size-guide-container {
          position: relative;
          top: initial;
          right: initial;
        }

        .product__size-picker-overlay-option {
          display: flex;
          align-items: center;
          justify-content: space-between;
          gap: 12px;
          border: none;
          background: transparent;
          padding: 10px 30px;
          text-align: left;

          &:hover {
            
            
            background-color: rgba(243, 243, 243, .8);
          }

          & > span {
            font-size: 14px;
          }

          &.is-selected {
            font-weight: 700;
          }

          &.unavailable {
            font-weight: 700;
            & > span {
              &:first-child {
                text-decoration: line-through;
              }
              &, &.product__availablity > span {
                color: var(--legramme-dark-gray);
              }
            }
          }

          .product__availablity {
            & > span {
              color: var(--legramme-body-text);

              &:before {
                margin-right: 10px;
              }
            }
          }
        }

        .product__availablity {
          margin-top: 0;
        }
      }

      .product__form-submit-container {
        display: grid;
        gap: 5px;

        .product__form-error-container {
          bottom: -10px;
          z-index: 4;

          &.active {
            transform: translateY(100%);
          }
        }

        .product__submit-button {
          &:not(.product__personalize-button) {
            &:hover {
              background: var(--legramme-yellow);
              border-color: var(--legramme-yellow);
              color: var(--legramme-body-text);
            }
          }
        }
      }

      .product-group__image {
        align-items: flex-start;

        .product-group__image-item {
          
          padding: 0;
          width: 30px;
          margin-right: 10px;

          &.active {
            padding-bottom: 4px;

            &:before {
              width: 30px;
            }
          }
        }
      }
    }
  }

  .product__images-container-slider {
    .swiper-wrapper {
      

      .product__image-item {
        position: relative;
        display: block!important;
      }
    }

    .product__images-slider-container {
      max-width: 100%;
      overflow: hidden;
      @media screen and (max-width: 1023px) {
        button {
          position: absolute;
          
          bottom: 20px;
          
          border: none;
          z-index: 1;
          font-size: 22px;

          &.button--prev {
            
            left: 50%;
            transform: translateX(-150%);
          }

          &.button--next {
            
            right: 50%;
            transform: translateX(150%);
          }
        }
      }
    }
  }

  @media screen and (min-width: 1024px) {
    .product__desktop-slider {
      position: relative;
      padding: 0;
    }

    .product__desktop-overlay-wrapper {
      position: relative;
    }

    .product__desktop-slider-media {
      display: flex;
      overflow-x: hidden;

      .swiper-wrapper {
        transition-timing-function: linear !important;
      }
    }

    .product__desktop-slider-item {
      flex: 0 0 min(70vw, 900px);
      appearance: none;
      border: 0;
      background: none;
      padding: 0;
      margin: 0!important;
      cursor: url('//legramme.com/cdn/shop/t/78/assets/fullscreen-cursor.svg?v=6439221795560168111777368410') 30 17, auto;
    }


    .product__top-container {
      .product__content-wrapper {
        display: block;
        padding: 0;

        .product__form-wrapper {
          position: absolute;
          z-index: 3;
          right: var(--legramme-container-gap);
          bottom: 80px;
          box-shadow: 0 0 25px 0 rgb(0 0 0 / 0.1);
          -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
          height: auto;
          max-width: 400px;
          width: 100%;

          .product__form-container {
            border-top: none;
            background: rgb(255 255 255 / 0.8);
            padding: 30px 30px 20px;
          }

          .product-group__image {
            .product-group__image-item {
              .meta-change {
                background: none;
              }

              &.plus {
                min-height: 30px;
                font-size: inherit;
              }
            }
          }
        }
      }

      .product__images-nav,
      .product__images-container {
        display: none;
      }
    }
  }

  .product__top-container {
    .product__content-wrapper {
      .product__form-wrapper {
        .product-group__image {
          .product-group__image-item {
            &.plus {
              @media screen and (max-width: 1023px) {
                background: none;
                font-size: 12px;
                min-height: 30px;
              }
            }
          }
        }
      }
    }
  }
}

.breadcrumb {
  padding: 15px var(--legramme-container-gap);
  border-bottom: 1px solid rgba(0, 0, 0, .1);

  .breadcrumb__list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
  }

  .breadcrumb__item {
    display: flex;
    align-items: center;
    color: var(--legramme-body-text);
    

    &:not(:last-child) {
      &::after {
        content: url("data:image/svg+xml,%3Csvg width='5' height='8' viewBox='0 0 5 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.823082 7.82483L0 7L3.08524 3.91242L0 0.824833L0.825415 0L3.90833 3.08758C4.12704 3.30637 4.24991 3.60306 4.24991 3.91242C4.24991 4.22177 4.12704 4.51847 3.90833 4.73725L0.823082 7.82483Z' fill='black'/%3E%3C/svg%3E");
        display: inline-block;
        margin-left: 8px;
        vertical-align: middle;
      }
    }
  }

  .breadcrumb__link,
  .breadcrumb__current {
    font-size: 12px;
    text-transform: lowercase;
  }

  &.breadcrumb--product {
    padding: 0;
    border-bottom: none;
    margin-bottom: 30px;

    .breadcrumb__item {
      color: var(--legramme-dark-gray);

      &:not(:last-child) {
        &::after {
          content: url("data:image/svg+xml,%3Csvg width='5' height='8' viewBox='0 0 5 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.823082 7.82483L0 7L3.08524 3.91242L0 0.824833L0.825415 0L3.90833 3.08758C4.12704 3.30637 4.24991 3.60306 4.24991 3.91242C4.24991 4.22177 4.12704 4.51847 3.90833 4.73725L0.823082 7.82483Z' fill='%23676767'/%3E%3C/svg%3E");
        }
      }
    }
  }
}

.product__recommendations {
  margin-top: 40px;
  margin-bottom: 50px;

  .product__recommendations-title {
    font-family: legramme-bold,sans-serif;
    margin-bottom: 20px;
    font-size: var(--legramme-h2-title-size);

    @media screen and (min-width: 1440px) {
      font-size: 30px;
    }
  }

  .product__recommendations-swiper-wrapper {
    margin: 0 calc(-1 * var(--legramme-container-gap));
  }

  .product__recommendations-swiper {
    overflow: hidden;
    padding: 0 var(--legramme-container-gap);
    padding-bottom: 40px;
    --swiper-pagination-color: var(--legramme-body-text);

    .swiper-slide {
      height: auto;
    }

    & > .swiper-scrollbar {
      
      
      height: 2px;
    }

    & > .swiper-pagination,
    & > .swiper-scrollbar {
      height: 2px;
      margin-left: auto;
      margin-right: auto;
      max-width: 360px;
      width: 100%;
      top: auto;
      bottom: 0;
      left: 50%!important;
      transform: translateX(-50%);
    }

    & > .swiper-scrollbar {
      background: transparent;

      .swiper-scrollbar-drag {
        background: var(--legramme-body-text);
      }
    }

    & > .swiper-pagination {
      pointer-events: none;
      background: var(--legramme-gray);

      .swiper-pagination-progressbar-fill {
        transition-duration: 0ms!important;
      }
    }

    > .swiper-navigation-container {
      .swiper-button-prev,
      .swiper-button-next {
        border: none;
        box-shadow: none;

        &:after {
          content: none;
        }

        svg {
          width: 10px;
        }
      }

      .swiper-button-prev {
        svg {
          transform: rotate(180deg);
        }
      }
      .swiper-button-next {}
    }
  }
}

html {
  &:has(.mini-cart-open),
  &:has(.cwsmenu-body-open),
  &:has(.header__menu-toggle:checked),
  &:has(.product__properties-container.active) {
    &, body {
      overflow: hidden!important;
    }
  }
}

body {
  &.template-product {
    main {
      background-color: var(--legramme-white)!important;

      .product-section {
        @media screen and (min-width: 1024px) {
          background: var(--legramme-gray);
        }
      }

      .product__content-container {
        padding: 0 var(--legramme-container-gap);
        max-width: none;
        width: auto;

        @media screen and (min-width: 1024px) {
          margin-top: 40px;
        }

        .product__informational-container {
          .product__informational-title-container {
            border-color: rgba(0, 0, 0, .1);
            padding-top: 20px;
            padding-bottom: 20px;

            .product__informational-title {
              margin-bottom: 0;
              text-transform: uppercase;
            }
          }

          .product__informational-content {
            color: var(--legramme-body-text);
            padding-right: 0;
            padding-bottom: 20px;

            p {
              &:not(:last-child) {
                margin-bottom: .8em;
              }
            }

            .product-detail-icons {
              display: flex;
              flex-wrap: wrap;

              & > div {
                &:not(:last-child) {
                  margin-right: 50px;
                  margin-bottom: 10px;
                }

                & > span {
                  display: block;
                }
              }

              .product-detail-measure {
                & > span {
                  & > span {
                    display: inline-block;
                    color: var(--legramme-dark-gray);

                    &:not(:last-child) {
                      &:after {
                        content: '|';
                        color: var(--legramme-dark-gray);
                        margin-left: 5px;
                      }
                    }

                    & > span {
                      color: var(--legramme-body-text);

                      &:not(:last-child) {
                        &:after {
                          content: ' x ';
                        }
                      }
                    }

                  }
                }
              }
            }

            .product__informational-conten-para {
              & > span {
                & > span {
                  display: inline-block;

                  &:first-child {
                    color: var(--legramme-dark-gray);
                  }
                }
              }
              .product-sku {
                color: var(--legramme-dark-gray);
                text-transform: uppercase;
                margin-top: 10px;
              }
            }

            .product-how-to-personalize,
            .product_personalization_warning {
              margin-top: 20px;
            }

            .product-how-to-personalize {
              & > p {
                svg {
                  margin-right: 10px;
                }
                span {
                  display: inline-block;
                }
                & > * {
                  vertical-align: middle;
                }
              }

              & > div {
                border-left: 1px solid rgba(0, 0, 0, .1);
                padding-left: 20px;
              }
            }

            .product_personalization_warning {
              svg {
                vertical-align: middle;
                margin-right: 10px;
              }

              span {
                display: inline;
                vertical-align: middle;
              }
            }

            .testimonial-section__container {
              .testimonial-section__wrapper {
                @media screen and (min-width: 1024px) {
                  display: block;
                }

                .testimonial-section__content {
                  display: block!important;
                  width: 100%;
                  min-width: auto;
                  margin-right: 0;
                  padding: 15px;
                  background: var(--legramme-gray);
                  border-left: none;
                  height: auto;

                  &:not(:last-child) {
                    
                    

                    @media screen and (min-width: 1024px) {
                      margin-bottom: 10px;
                    }
                  }

                  .testimonial-section__content--note {
                    margin-bottom: 5px;
                  }

                  .testimonial-section__content--auteur {
                    position: relative;
                    bottom: initial;
                    left: initial;
                  }

                  .testimonial-section__content--text {
                    font-size: 15px;
                    font-style: italic;
                  }
                }
              }
            }

          }
        }

        .product_shippings_returns {
          margin-bottom: 15px;

          & + .row {
            & > div {
              &:first-child {
                margin-bottom: 20px;

                @media screen and (min-width: 1024px) {
                  margin-bottom: 0;
                  border-right: 1px solid rgba(0, 0, 0, .1);
                }
              }

            }
          }
        }

        .product__shipping-returns-subtitle {
          display: flex;
          align-items: center;
          gap: 10px;
          margin-bottom: 10px;

          svg {
            height: 20px;
          }
        }

        .product__shipping-delivery-times {
          &:not(:last-child) {
            margin-bottom: 10px;
          }

          p {
            margin-bottom: 0!important;
          }

          ul {
            li {
              list-style: inside;

              &::marker {
                color: var(--legramme-dark-gray);
              }
              span {
                color: var(--legramme-dark-gray);
              }
            }
          }
        }

        .product__content-column--1 {
          .product__category-image-container {
            margin-bottom: 20px;
          }
        }

        .product__category-image-container {
          position: sticky;
          top: 140px;
        }

        .product__content {
          @media screen and (min-width: 1024px) {
            padding-top: 30px;
            padding-left: 50px;
          }
        }

        .product__content-intro {
          margin-bottom: 20px;

          @media screen and (min-width: 1024px) {
            margin-bottom: 40px;
          }

          .product__content-intro-title {
            margin-bottom: 10px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            font-size: 22px;

            @media screen and (min-width: 1024px) {
              font-size: var(--legramme-h2-title-size);
            }

            
          }
        }

        @media screen and (min-width: 1024px) {
          .product__content-column--1 {
            .product__category-image-container {
              margin-bottom: 0;
              padding-right: 30px;
            }
          }
        }

        .editorial-carousel-section__container {
          padding: 0;
        }

        .product__scroll-nav {
          border-top: none;
          border-bottom: none!important;
          
          
          background: transparent;
          transition:0.2s ease;

          @media screen and (min-width: 1024px) {
            
            
            
            
            box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1);
            background: var(--legramme-white);
            padding-left: var(--legramme-container-gap);
            padding-right: var(--legramme-container-gap);
            top: auto;
            bottom: 0;
          }

          .scroll-nav__container {
            background: transparent;
            padding-bottom: calc(env(safe-area-inset-bottom) + 10px);

            @media screen and (max-width: 1023px) {
              padding-left: var(--legramme-container-gap);
              padding-right: var(--legramme-container-gap);
            }

            @media screen and (min-width: 1024px) {
              padding-bottom: 0;
            }

            .scroll-nav__product {
              @media screen and (min-width: 1024px) {
                margin-left: 0;
              }

              .scroll-nav__product-title,
              .scroll-nav__product-variant  {
                @media screen and (min-width: 1024px) {
                  font-size: 18px;
                }
              }
            }

            .scroll-nav__image {
              border-right: none;
              margin-top: 0;
              margin-bottom: 0;
            }

            .scroll-nav__price {
              .item-price__container {
                margin-bottom: 0;

                .item-price {
                  @media screen and (min-width: 1024px) {
                    line-height: 1;
                  }
                }

                &.variant-compare {
                  .item-price--new {
                    background: none;
                    padding-left: 0;
                    padding-right: 0;
                    color: var(--legramme-body-text);
                  }
                }
              }
            }
          }

          .scroll-nav__right {
            .scroll-nav__buttons-container {
              flex-direction: column;
              justify-content: center;

              @media screen and (min-width: 1024px) {
                flex-direction: row;
                border-left: none;
                width: auto;
              }

              .button {
                padding: 10px 15px;
                @media screen and (min-width: 1024px) {
                  
                  padding: 10px 25px;
                }

                &.product__personalize-button {
                  background: var(--legramme-white);
                  margin-bottom: 10px;

                  @media screen and (max-width: 1023px) {
                    padding: 16px 15px;
                  }

                  @media screen and (min-width: 1024px) {
                    margin-bottom: 0;
                    margin-right: 10px;
                  }
                }

                &:not(.product__personalize-button) {
                  &:hover {
                    background: var(--legramme-yellow);
                    border-color: var(--legramme-yellow);
                    color: var(--legramme-body-text);
                  }
                }
              }

              .product__submit-button {
                width: auto;

                @media screen and (max-width: 1023px) {
                  padding: 16px 15px;
                }

                .scroll-nav__price {
                  padding-left: 10px;
                  vertical-align: middle;

                  .item-price__container {
                    margin-bottom: 0;

                    .item-price--old {
                     display: none!important;
                    }

                    .item-price--new {
                      padding: 0;
                      color: inherit;
                      background: none;
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }

  &.template-collection {
    --legramme-collection-sticky-top: 55px;

    @media screen and (min-width: 1024px) {
      --legramme-collection-sticky-top: 50px;
    }

    &.has-announcement-bar {
      --legramme-collection-sticky-top: 90px;

      @media screen and (min-width: 1200px) {
        --legramme-collection-sticky-top: 150px;
      }
    }

    .collection__header.page__header {
      position: relative;
      display: grid;
      min-height: 200px;
      overflow: auto;
      padding-bottom: var(--legramme-container-gap);

      @media screen and (min-width: 1024px) {
        
        min-height: 400px;
      }

      .collection-links {
        margin-top: 20px;

        .collection-links-list-wrapper {
          .collection-links-list {
            @media screen and (min-width: 1024px) {
              justify-content: flex-start;
            }
          }
        }

        &[aria-hidden=true] {
          padding: 0;

          .collection-links-list-wrapper {
            .collection-links-list {
              .collection-links-list-item {
                label {
                  color: var(--legramme-white);
                  background: transparent;
                  border: 1px solid rgba(255, 255, 255, 0.5);

                  &:hover {
                    border-color: var(--legramme-body-text);
                    color: var(--legramme-body-text);
                  }
                }

                input:checked + label {
                  background: var(--legramme-white);
                  border-color: var(--legramme-white);
                  color: var(--legramme-body-text);
                }
              }
            }
          }
        }
      }

      .collection__header-images {
        transform: none!important;

        .aspect-ratio {
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          padding-bottom: 0 !important;
          transform: none;
        }
      }

      .collection__header-meta {
        position: relative;
        z-index: 1;

        .breadcrumb--collection {
          border: none;
          

          .breadcrumb__item {
            &:not(:last-child) {
              &::after {
                content: url("data:image/svg+xml,%3Csvg width='5' height='8' viewBox='0 0 5 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.823082 7.82483L0 7L3.08524 3.91242L0 0.824833L0.825415 0L3.90833 3.08758C4.12704 3.30637 4.24991 3.60306 4.24991 3.91242C4.24991 4.22177 4.12704 4.51847 3.90833 4.73725L0.823082 7.82483Z' fill='%23ffffff'/%3E%3C/svg%3E");
              }
            }
          }

          .breadcrumb__item,
          .breadcrumb__link,
          .breadcrumb__current {
            color: var(--legramme-white);
          }
        }
      }

      .collection__sticky-title-wrapper {
        align-self: end;
        max-width: none;
        z-index: 5;
        padding-left: var(--legramme-container-gap);
        padding-right: var(--legramme-container-gap);

        .collection__sticky-title {
          margin: 0;
          color: var(--legramme-white);
        }
      }
    }

    .collection__filters-container {
      padding-top: 30px;

      .collection__filters-mobile {
        border: none;
        justify-content: space-between;

        .collection__open-filter {
          border-right: none;
        }

        .icon {
          width: 8px;
          margin-left: 5px;
        }

        .collection__open-filter,
        .collection__open-sort {
          @media screen and (max-width: 1023px) {
            justify-content: flex-start;
            width: auto;

            span {
              text-transform: uppercase;
            }
          }
        }
      }

      &.fixed {
        padding-bottom: 0;

        .collection__filters-items-container {
          position: relative;
          top: auto;
          left: auto;
          border: 1px solid #dedede;
        }

        .collection__filters-mobile {
          top: 54px;
          z-index: 5;
        }
      }

      .collection__filters-items-container {
        padding-left: var(--legramme-container-gap);
        padding-right: var(--legramme-container-gap);
        border: none!important;

        @media screen and (min-width: 1024px) {
        }

        .product__property-wrapper {
          border-color: rgba(0, 0, 0, .1);
          
          @media screen and (max-width: 1023px) {
            background: none;
          }

          @media screen and (min-width: 1024px) {
            border: none !important;
            flex-grow: 0;
          }

          .product__property-title-container {
            border-top: none;

            @media screen and (min-width: 1024px) {
              padding-top: 5px;
              padding-bottom: 5px;

              .icon--arrow-down {
                top: 7px;
              }
            }

            @media screen and (max-width: 1023px) {
              padding: 20px;
              display: flex;
              justify-content: space-between;

              &[aria-expanded="true"] {
                .icon {
                  transform: rotate(180deg);
                }
              }

              .icon {
                max-width: 8px;
              }
            }

            .product__property-title {
              text-transform: uppercase;
              white-space: nowrap;
              color: var(--legramme-body-text);

              @media screen and (max-width: 1023px) {
                font-size: 16px;
              }

              @media screen and (min-width: 1024px) {
                color: var(--legramme-dark-gray);
              }
            }

            .icon--arrow-down {
              fill: var(--legramme-dark-gray);
            }

            & + .product__property-list {
              @media screen and (min-width: 1024px) {
                top: 30px;
              }

              .product__property-list-items {
                @media screen and (max-width: 1023px) {
                  padding-top: 20px;
                  padding-bottom: 20px;
                  border-top: 1px solid rgba(0, 0, 0, .1);
                }
              }
            }

            &[aria-expanded="true"] {
              @media screen and (min-width: 1024px) {
                background: none;

                &:after {
                  content: none;
                }
              }

              & + .product__property-list {
                


                @media screen and (min-width: 1024px) {
                  box-shadow: 0 0 25px 0 rgba(0, 0, 0, .1);
                  
                  background: var(--legramme-white);
                  left: 20px;
                  max-width: 250px;

                  .product__property-list-items {
                    
                  }
                }
              }
            }
          }

          input:checked {
            & + label.product__property-link {
              &::before {
                background: var(--legramme-body-text)!important;
              }

              span {
                font-family: "legramme-bold", sans-serif;
              }
            }
          }

          .product__property-list {
            &:not(.product__property-list--grid) {
              .product__property-link {
                padding-left: 15px;

                @media screen and (max-width: 1023px) {
                  padding-top: 8px;
                  padding-bottom: 8px;
                }

                &::before {
                  content: '';
                  position: absolute;
                  display: inline-block;
                  top: 50%;
                  transform: translateY(-50%);
                  width: 7px;
                  height: 7px;
                  background: transparent;
                  border: 1px solid var(--legramme-body-text);
                }

                &::after {
                  content: none;
                }

                & > span {
                  padding-left: 15px;
                  cursor: pointer;
                }
              }
            }

            &.product__property-list--grid {
              .product__property-link {
                @media screen and (max-width: 1023px) {
                  padding-left: 15px;
                  padding-top: 8px;
                  padding-bottom: 8px;

                  &::before {
                    content: '';
                    position: absolute;
                    display: inline-block;
                    top: 50%;
                    transform: translateY(-50%);
                    width: 7px;
                    height: 7px;
                    background: transparent;
                    border: 1px solid var(--legramme-body-text);
                  }

                  &::after {
                    content: none;
                  }

                  & > span {
                    padding-left: 15px;
                    cursor: pointer;
                  }
                }
              }
            }
          }

          .product__property-list-items {
            scrollbar-width: thin;
            scrollbar-color: var(--legramme-body-text) var(--legramme-gray);

            &::-webkit-scrollbar {
              width: 2px;
              height: 2px;
            }

            &::-webkit-scrollbar-track {
              background: var(--legramme-gray);
            }

            &::-webkit-scrollbar-button {
              -webkit-appearance: none;
              display: none;
              width: 0;
              height: 0;
            }

            &::-webkit-scrollbar-button:single-button,
            &::-webkit-scrollbar-button:start:decrement,
            &::-webkit-scrollbar-button:end:increment {
              -webkit-appearance: none;
              display: none;
              width: 0;
              height: 0;
            }

            &::-webkit-scrollbar-thumb {
              background-color: var(--legramme-body-text);
              border-radius: 999px;

              &:hover {
                background-color: var(--legramme-body-text);
              }
            }
          }

          .product__property-item {
            background: none;

            @media screen and (max-width: 1023px) {
              border-top: none;
            }

            @media screen and (min-width: 1024px) {
              &:hover {
                background: var(--legramme-gray);

                span {
                  background: none;
                }
              }
            }
          }

          .product__property-footer-submit {
            
            
            background: var(--legramme-body-text);
            color: var(--legramme-white);
            
            border: none;
            padding: 10px;
            margin-top: 0;
            width: 100%;

            & > span {
              font-size: 15px;
            }
          }
        }

        #filter-menu-sizes {
          @media screen and (min-width: 1024px) {
            left: 0;
            right: auto;
          }
        }

        #sort-menu {
          .product__property-list-items {
            border-top: none;

            @media screen and (min-width: 1024px) {
              padding-top: 0;
            }
          }
        }

        .product__property-list--grid {
          .product__property-list-items {
            @media screen and (min-width: 1024px) {
              display: flex;
              flex-wrap: wrap;
              margin: 14px;
            }

            .product__property-item {
              @media screen and (min-width: 1024px) {
                width: calc(100% / 6);
                height: 35px;
              }

              .product__property-link {
                @media screen and (min-width: 1024px) {
                  height: 35px;
                  line-height: 35px;
                }

                &:before,
                &:after {
                  @media screen and (min-width: 1024px) {
                    width: 100%;
                    height: 35px;
                  }
                }
              }
            }
          }
        }
      }
    }

    .collection__products {
      padding-left: var(--legramme-container-gap);
      padding-right: var(--legramme-container-gap);

      .collection-grid-wrapper {
        @media screen and (min-width: 1200px) {
          padding-bottom: 50px;
        }
      }

      .collection-grid-row {
        grid-gap: 10px;
        grid-template-columns: calc(50% - 5px) calc(50% - 5px);

        @media screen and (min-width: 1024px) {
          grid-gap: 30px;
          grid-template-columns: 1fr 1fr 1fr 1fr;
        }

        

        .product-item {
          
        }

        .collection-grid-info {
          display: grid;
          position: relative;

          .collection-grid-info__image {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            overflow: hidden;

            img {
              object-fit: cover;
              height: 100%;
            }
          }

          .collection-grid-info__content {
            position: sticky;
            bottom: var(--legramme-sticky-position-bottom);
            align-self: end;
            z-index: 1;
            top: auto;
            left: auto;
            height: auto;
            padding: 10% 20px 30px;

            @media screen and (min-width: 1024px) {
              padding: 10% 40px 30px;
            }


            &:has(.collection-grid-info__subtitle) {
              .collection-grid-info__description {
                margin-bottom: 5px;
              }
            }

            .collection-grid-info__description {
              font-size: 36px;

              @media screen and (min-width: 1024px) {
                font-size: 46px;
              }
            }

            .collection-grid-info__subtitle {
              text-transform: uppercase;
              font-size: 16px;
              margin-bottom: 30px;

              @media screen and (min-width: 1024px) {
                font-size: 18px;
              }
            }
          }

          &.collection-grid-info-1 {
            grid-column-start: 1;
            grid-column-end: 3;
            grid-row-start: 3;
            grid-row-end: 5;
            min-height: 400px;

            @media screen and (min-width: 1024px) {
              min-height: auto;
              grid-column-start: 1;
              grid-column-end: 3;
              grid-row-start: 3;
              grid-row-end: 5;
            }
          }

          &.collection-grid-info-2 {
            grid-column-start: 1;
            grid-column-end: 3;
            grid-row-start: 8;
            grid-row-end: 10;
            min-height: 400px;

            @media screen and (min-width: 1024px) {
              min-height: auto;
              grid-column-start: 3;
              grid-column-end: 5;
              grid-row-start: 8;
              grid-row-end: 10;
            }
          }

          &.collection-grid-info-3 {
            grid-column-start: 1;
            grid-column-end: 3;
            grid-row-start: 12;
            grid-row-end: 14;
            min-height: 400px;

            @media screen and (min-width: 1024px) {
              min-height: auto;
              grid-column-start: 1;
              grid-column-end: 3;
              grid-row-start: 13;
              grid-row-end: 15;
            }
          }
        }

        .collection-grid-reinsurance-slider {
          grid-column-start: 1;
          grid-column-end: 3;
          grid-row-start: 5;
          grid-row-end: 5;
          padding: 15px 0;

          @media screen and (min-width: 1024px) {
            grid-column-start: 1;
            grid-column-end: 5;
            grid-row-start: 5;
            grid-row-end: 5;
            padding: 0;
          }

          .reinsurance-slider {
            margin: 0 calc(-1 * var(--legramme-container-gap));
          }
        }
      }
    }

  }

  &.template-page {
    .shopify-section {
      &.editorial-carousel-section {
        margin-top: 50px;
      }
    }
  }
}

// Rajout du style suite à la suppression des h1 et h2 de la modal de guide des tailles
.guide {
  .h1,
  .h2 {
    font-family: "legramme-bold", sans-serif;
    font-size: 50px;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
  }

  .h1 {
    color: #767676;
    font-size: 50px;
    margin-bottom: 0;
    margin-top: 20px;
  }
  .h2 {
    color: var(--legramme-body-text);
    font-size: 50px;
  }
}

.product-zoom-container {
  height: 100%;

  .product-zoom-images {
    height: 100%;
  }
}

.product-lightbox-modal-overlay {
  .product-lightbox-images {
    overflow: hidden;
    max-height: none;

    .flickity-viewport {
      height: 100%!important;
    }

    .product-lightbox-images__item {
      width: 100%;
      height: 100%;

      .product-lightbox-images__container {
        height: 100%;

        .product-lightbox-images__image {
          img {
            padding: 0!important;
            height: 100%;
            object-fit: contain;
          }
        }
      }
    }
  }

  .flickity-prev-next-button {
    
    
    right: auto;
    border-radius: 50%;
    top: 80%;

    @media screen and (min-width: 1024px) {
      bottom: auto;
    }

    &.previous {
      left: 50%;
      transform: translateX(-120%);

      @media screen and (min-width: 1024px) {
        top: 50%;
        left: 20px;
        transform: translateY(-50%);
      }
    }

    &.next {
      right: 50%;
      transform: translateX(120%);
      

      @media screen and (min-width: 1024px) {
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
      }
    }
  }
}

.cart-section {
  .mini-cart__reassurance {
    @media screen and (min-width: 768px) {
      padding-top: 15px;
      padding-bottom: 15px;
    }

    &:before,
    &:after {
      content: none;
    }
  }

  .mini-cart__button-container {
    background: rgb(255 255 255 / 0.92);
    border: 1px solid rgb(0 0 0 / 0.08);
    box-shadow: 0 0 25px 0 rgb(0 0 0 / 0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);


    @media screen and (min-width: 1200px) {
      top: calc(var(--legramme-fixed-header-height) + 20px);
    }

    .mini-cart__total,
    .reassurance-slider {
      margin: 0 var(--legramme-container-gap);
      border-color: rgb(0 0 0 / 0.1);
    }

    .mini-cart__total {
      color: var(--legramme-body-text);
    }

    .mini-cart__button {
      margin: 0 var(--legramme-container-gap);
      border: 1px solid var(--legramme-body-text);
      background-color: var(--legramme-body-text);
      color: var(--legramme-white);

      .icon {
        fill: var(--legramme-white);
      }
    }

    .mini-cart__links-container {
      padding: 0;

      @media screen and (min-width: 1200px) {
        margin-top: 0;
        background: none;
      }

      .mini-cart__links-items {
        @media screen and (min-width: 1200px) {
          padding: 0;
        }

        .mini-cart__links-item {
          @media screen and (min-width: 1200px) {
            border-bottom: none;
            border-top: 1px solid var(--legramme-gray);
          }

          a {
            color: var(--legramme-body-text);

            @media screen and (min-width: 1200px) {
              padding: 0 30px;
            }

            svg {
              fill: currentColor;

              path {
                fill: currentColor;
              }
            }
          }
        }
      }
    }
  }
}

.reassurance-slider {
  margin-top: 10px;
  margin-bottom: 10px;
  @media screen and (min-width: 1024px) {
    margin-bottom: 0;
  }

  .reassurance-slider__swiper {
    position: relative;

    .reassurance-slider__items {
      margin: 0;
      flex-wrap: nowrap;
      align-items: center;
      gap: 0;

      p {
        margin-bottom: 0;
      }
    }

    .reassurance-slider__item {
      &.swiper-slide {
        display: flex;
        gap: 10px;
        align-items: center;
        justify-content: center;
        text-align: center;
        padding: 0 28px;
        border: none;
        margin-right: 0 !important;
        color: var(--legramme-body-text);

        .icon {
          width: 18px;
        }

        &:before {
          content: none;
        }

        .icon {
          margin-bottom: 0;
          margin-right: 0;
          min-width: 14px;

          &.icon--3-times {
            min-width: 22px;
          }
        }

        .span_alma {
          display: flex;
          gap: 10px;
          padding: 0;
          align-items: center;
        }
      }
    }

    .reassurance-slider__nav {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      border: 0;
      background: transparent;
      padding: 2px 5px;
      margin: 0;
      z-index: 2;
    }

    .reassurance-slider__nav--prev {
      left: -5px;
    }

    .reassurance-slider__nav--next {
      right: -5px;
    }
  }
}

body {
  &.fixed-header {
    .mini-cart {
      top: var(--legramme-fixed-header-height, 54px);

      @media screen and (min-width: 1024px) {
        top: var(--legramme-fixed-header-height);
      }
    }
  }

  &:not(.fixed-header) {
    &:has(.essential_annoucement_bar_wrapper):has(#shopify-section-header .header__menu-toggle:checked) {
      .essential_annoucement_bar_wrapper {
        &.top_page {
          
          max-height: 0;
        }
      }
    }
  }
}

.mini-cart-open {
  .product__scroll-nav {
    &.active {
      @media screen and (min-width: 1024px) {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
      }
    }
  }

  .collection-links {
    &[aria-hidden="false"] {
      @media screen and (min-width: 1024px) {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
      }
    }
  }
}

.mini-cart {
  bottom: 0;
  top: var(--legramme-header-height);

  .mini-cart__reassurance {
    margin-left: 0;
    margin-right: 0;
    padding-left: var(--legramme-container-gap);
    padding-right: var(--legramme-container-gap);
  }

  .mini-cart__items-list {
    .mini-cart-item {
      padding-top: 15px;
      border-color: rgba(0, 0, 0, .1);

      &:first-child {
        border-top: none;
        margin-top: 0;
      }

      &:not(:first-child) {
        margin-top: 15px;
      }
    }

    .mini-cart-item__personnalisation-image {
      @media screen and (min-width: 768px) {
        padding-left: 180px;
      }
    }

    .mini-cart-item__remove {
      opacity: 1;
    }
  }

  .mini-cart__button {
    width: auto;
  }
}

.cart__container {
  .cart__items-list {
    .mini-cart-item {
      padding-top: 15px;
      border-color: rgba(0, 0, 0, .1);

      &:first-child {
        border-top: none;
        margin-top: 0;
      }

      &:not(:first-child) {
        margin-top: 15px;
      }

      .mini-cart-item__top {
        &:after {
          content: none;
        }
      }
    }

    .mini-cart-item__personnalisation {
      .mini-cart-item__personnalisation-container {
        padding-top: 15px;
        @media screen and (min-width: 768px) {
          padding-top: 0;
        }

        .mini-cart-item__personnalisation-image {
          @media screen and (min-width: 768px) {
            padding-left: 180px;
          }
        }
      }
    }
  }
}

.cart-section,
.mini-cart {
  .reassurance-slider__items {
    animation: none;
  }

  .mini-cart__button-container {
    background: var(--legramme-white);

    .mini-cart__total {
      color: var(--legramme-body-text);
      border-bottom: none;
    }

    .mini-cart__button {
      background: var(--legramme-body-text);
      color: var(--legramme-white);
      padding: 16px 15px;
      margin: 0 15px;
      @media screen and (min-width: 1024px) {
        margin: 0 30px;
      }
    }

    .reassurance-slider {
      margin-top: 0;
      margin-bottom: 0;

      .reassurance-slider__swiper {
        position: relative;
        overflow: hidden;

        .reassurance-slider__items {
          margin: 0;
          flex-wrap: nowrap;
          align-items: center;
          gap: 0;
        }

        .reassurance-slider__item {
          &.swiper-slide {
            display: flex;
            gap: 10px;
            align-items: center;
            justify-content: center;
            text-align: center;
            padding: 0 28px;
            border: none;
            margin-right: 0 !important;
          }
        }

        .reassurance-slider__nav {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          border: 0;
          background: transparent;
          padding: 2px 5px;
          margin: 0;
          z-index: 2;
        }

        .reassurance-slider__nav--prev {
          left: -5px;
        }

        .reassurance-slider__nav--next {
          right: -5px;
        }
      }
    }
  }
}

.template-cart {
  .footer {
    .footer__outer {
      display: block;
    }
  }
}

.product__properties-container {
  @media screen and (max-width: 1023px) {
    background: var(--legramme-white);
    
    
    height: auto;
    bottom: env(safe-area-inset-bottom);
  }

  &.active {
    @media screen and (max-width: 1023px) {
      display: flex;
      flex-direction: column;
    }
  }

  @media screen and (min-width: 1024px) {
    display: flex;
    flex-wrap: wrap;
  }

  .product__properties-wrapper {
    @media screen and (max-width: 1023px) {
      flex-grow: 1;
    }

    #filters-form {
      @media screen and (min-width: 1024px) and (max-width: 1240px) {
        flex-wrap: wrap;
      }
    }
  }

  .product__properties-mobile-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    

    .product__properties-mobile-close {
      display: inline-flex;
      border: none;

      svg {
        width: 16px;
        margin-right: 15px;
      }

      span {
        text-transform: uppercase;
      }
    }
  }

  .product__properties-buttons-container {
    @media screen and (max-width: 1023px) {
      position: relative;
      background: none;
      padding: 0;
      left: auto;
      bottom: auto;

      .button {
        
        
        background: var(--legramme-body-text);
        color: var(--legramme-white);
        padding-top: 15px;
        padding-bottom: 15px;

        &, span {
          font-family: legramme, sans-serif;
          font-size: 17px;
        }

        &.is-loading {
          svg {
            fill: var(--legramme-white)
          }
        }
      }
    }
  }

  .collection__selected-filters-container {
    margin-left: 20px;
    align-self: center;

    &:not([hidden]) {
      display: flex;
    }

    .collection__selected-filters-list {
      display: flex;
      flex-wrap: wrap;
      gap: 0 20px;
      margin-right: 20px;
    }

    .collection__selected-filters-item {
      display: inline-flex;
      align-items: center;
      gap: 6px;

      span {
        padding: 4px;
      }

      .collection__selected-filters-item-remove {
        border: 0;
        background: transparent;
        padding: 0;
        margin: 0;
        line-height: 1;
        font-size: 14px;
        cursor: pointer;
      }
    }

    .collection__selected-filters-reset {
      display: inline-block;
      border: none;
      color: var(--legramme-dark-gray);
      text-decoration: underline;
      padding: 4px;
    }
  }
}

.shopify-columns-content-section {
  .columns-content-section {
    padding: 50px var(--legramme-container-gap);

    @media screen and (min-width: 1024px) {
      padding-left: 130px;
      padding-right: 130px;
    }

    & > .row {
      @media screen and (min-width: 1024px) {
        margin: 0 -25px;
      }

      & > div {
        @media screen and (min-width: 1024px) {
          padding: 0 25px;
        }

        &:not(:last-child) {
          margin-bottom: 50px;
          @media screen and (min-width: 1024px) {
            padding: 0 25px;
            margin-bottom: 0;
          }
        }
      }
    }

    .columns-content-section__item-title {
      font-size: var(--legramme-h2-title-size);

      @media screen and (min-width: 1440px) {
        font-size: 30px;
      }
    }

    .columns-content-section__item-text {
      @media screen and (min-width: 1024px) {
        font-size: 16px;
      }

      ul {
        padding-left: 1em;

        li {
          list-style: disc inside;
        }
      }
    }

    .columns-content-section__item-image {
      img {
        display: block;
        width: 100%;
        height: auto;
      }
    }
  }
}

.footer__newsletter-block {

  .footer__newsletter,
  .footer__newsletter-rgpd {
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
  }

  #footer__newsletter-form {
    .footer__newsletter-input-group {
      border-radius: 0;
      font-size: 17px;

      .footer__newsletter-input {
        padding: 8px 15px;
        line-height: 26px;
      }
    }
  }
}


.shopify-section-product-personalization {
  .modalGravure {
    display: flex;
    background: rgb(255 255 255 / 0.8)!important;
    
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s ease;
    position: absolute!important;
    height: auto!important;
    width: auto!important;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 2!important;


    .leftSide {
      display: none;
      transition: transform 0.2s ease, opacity 0.2s ease, visibility 0.2s ease;
      overflow: hidden;
      
      
      

      @media screen and (min-width: 1024px) {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        transform: translateX(-100%);

        .leftImg {
          transform: translateX(100%);
        }
      }
    }

    &:not(.has-gravure-selected) {
      .leftSide {
        .leftImg {
          transform: translateX(100%)!important;
        }
      }
    }

    &.showed {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;

      .leftSide {
        @media screen and (min-width: 1024px) {
          .leftImg {
            transform: translateX(0);
          }
        }
      }
    }

    .leftImg {
      transition: transform 0.2s ease, opacity 0.2s ease, visibility 0.2s ease;
      width: auto;
    }

    .rightSide {
      width: 100%;
      display: flex;
      flex-direction: column;
      @media screen and (max-width: 1023px) {
        padding-bottom: 0;
      }

      & > .dblbtn {
        padding-left: var(--legramme-container-gap);
        padding-right: var(--legramme-container-gap);
        display: flex;
        gap: 5px;

        .button {
          flex-grow: 1;
        }

        @media screen and (max-width: 1023px) {
          flex-wrap: wrap;
          flex-direction: column-reverse;
          gap: 5px;
        }
      }

      .case {
        
        padding-left: var(--legramme-container-gap);
        padding-right: var(--legramme-container-gap);
        border-top: 1px solid rgba(0, 0, 0, .1);
        background: none;

        &:first-child {
          border-top: none;
        }

        .case-title {
          margin-bottom: 4px;
          font-size: 16px;

          @media screen and (min-width: 1024px) {
            font-size: 20px;
          }
        }

        input {
          &:checked {
            & + label {
              background-color: rgba(243, 243, 243, .5);

              &:before {
                background: var(--legramme-body-text);
              }
            }
          }

          & + label {
          }
        }

        .mobilePersoImg {
          float: left;
          width: 30%;

          #imgGravureMobile {
            height: 100px!important;
          }
        }

        .gravure-labels {
          float: left;
          width: 70%;

          @media screen and (min-width: 1024px) {
            float: none;
            width: auto;
            margin-left: calc(-1 * var(--legramme-container-gap));
            margin-right: calc(-1 * var(--legramme-container-gap));
          }
        }

        .grayBackground {
          padding: 0;
          background: none;
        }

        label {
          background: none;
          padding: 10px var(--legramme-container-gap);

          &:before {
            content: '';
            display: inline-block;
            width: 7px!important;
            height: 7px!important;
            margin-right: 8px!important;
            margin-bottom: -3px;
            border: 1px solid var(--legramme-body-text);
            
          }

          &:hover {
            background-color: rgba(243, 243, 243, .5);
          }

          @media screen and (max-width: 1023px) {
            padding-top: 10px;
            padding-bottom: 10px;
          }
        }

        .case-title,
        .case-subtitle,
        .dblbtn {
          padding-left: 0;
        }

        .case-subtitle {
          color: var(--legramme-dark-gray);
          padding-bottom: 20px;
          margin-bottom: 0;
          line-height: 1.07;
          font-size: 12px;

          @media screen and (min-width: 1024px) {
            font-size: 14px;
          }
        }

        .dblbtn {
          padding-right: 0;

          @media screen and (max-width: 1023px) {
            flex-wrap: wrap;
            flex-direction: column-reverse;
            gap: 5px;
          }

          .button {

          }
        }
      }
    }
  }
}

body {
  &:has(.modalGravure.showed) {
    overflow: initial!important;

    .product__form-container {
      opacity: 0;
    }

    .product__scroll-nav {
      transform: translateY(100%);
    }
  }
}

.product__scroll-nav {
  display: block!important;
  transform: translateY(100%);
  opacity: 0;

  &.active {
    transform: translateY(0);
    opacity: 1;
  }

  .scroll-nav__buttons-container {
    @media screen and (min-width: 1024px) {
      position: relative;
      padding-left: 0;
    }

    &.active {
      @media screen and (min-width: 1024px) {
        padding-top: 19px;
      }
    }
  }

  .product__form-error-container {
    width: calc(100% - 20px);
    top: 10px;
    left: 10px;

    @media screen and (min-width: 1024px) {
      width: 100%;
      left: 0;
    }
  }
}

#shopify-section-group {
  border-top: none;

  &.popup__group {
    
    background-color: var(--legramme-white);
    
    

    .group__title {
      @media screen and (min-width: 1024px) {
        padding-top: 10px;
      }
    }

    .group__close-button {
      @media screen and (min-width: 1024px) {
        display: flex;
        align-items: center;
        justify-content: center;
        top: 0;
        right: 0;
      }

      .icon--close {
        width: 15px;
        height: 15px;
        margin: 0;
      }
    }

    .group__image-item {
      .product-item__images-pagination,
      .product-item__images-scrollbar {
        top: auto;
        bottom: -28px !important;

        @media screen and (min-width: 1024px) {
          bottom: -45px !important;
        }
      }

      .item-price__container {
        margin-bottom: 0;
      }
    }

    .group__product__availablity {
      background: var(--legramme-product-background-color);
      padding: 0 10px 10px 10px;

      @media screen and (min-width: 1024px) {
        margin-top: 0;
        padding: 10px 15px 15px;
      }
    }
  }
}

.guide-des-tailles {
  button {
    &.close {
      background: none!important;
      border: none!important;

      .icon {
        fill: var(--legramme-body-text);
      }
    }
  }
}

.header__search {
  .search-modal {
    background: var(--legramme-white);

    .search-modal__content {
      padding-left: var(--legramme-container-gap);
      padding-right: var(--legramme-container-gap);

      .search-modal__form {
        @media screen and (min-width: 1024px) {
          max-width: none;
        }

        .field {
          &:after {
            content: none;
          }

          .field__label {
            color: var(--legramme-body-text);
          }

          .field__input {
            border-color: var(--legramme-gray);
            background: var(--legramme-gray);
            color: var(--legramme-body-text);

            &:focus,
            &:not(:placeholder-shown),
            &:-webkit-autofill {
              & ~ .field__label {
                font-size: 12px;
              }
            }
          }
        }

        .predictive-search {
          background: var(--legramme-white);
          color: var(--legramme-body-text);
          width: calc(100% + var(--legramme-container-gap) * 2);
          left: calc(-1 *  var(--legramme-container-gap));
          box-shadow: none;
          border: none;

          .predictive-search__item,
          .predictive-search__heading {
            color: var(--legramme-body-text);
          }

          .predictive-search__heading {
            font-size: 14px;
          }
        }

        .search__button {
          svg, path, circle {
            fill: var(--legramme-body-text)!important;
          }
        }
      }
    }
  }
}
