:root {
  --white-25: rgba(255, 255, 255, .25);
  --primary-color-dark: #141517;
  --color-pro: #2A56FF;
  --gutter: var(--gutter-sm, 1.5rem);
  --h3-font-size: 2rem;
  --h4-font-size: 1.7rem;
}

/*================================================
=                     General                    =
================================================*/
.mt-0 {
  margin-top: 0 !important;
}
.container--narrow {
  max-width: 110rem;
}
.enlarge-text.reading-width {
  max-width: 100%;
}
@media screen and (max-width: 599px) {
  .sm\:gap-x-6,
  .sm\:gap-y-6 {
    gap: 0;
    margin-left: calc(-1*var(--gutter));
    margin-right: calc(-1*var(--gutter));
  }
  .sm\:flex-col {
    flex-direction: column;
  }
  .items-center--mobile {
    align-items: center;
    justify-content: center;
  }
}
@media screen and (min-width: 600px) {
  .sm\:hidden{
    display: none;
  }
  .sm\:gap-x-6{
    column-gap: calc(6 * var(--space-unit));
  }
  .sm\:gap-y-6{
    row-gap: calc(6 * var(--space-unit));
  }
  .items-center--mobile {
    width: 100%;
  }
}
.section--padded-large {
  padding-top: calc(5 * var(--space-unit));
  padding-bottom: calc(5 * var(--space-unit));
}
@media (min-width: 769px) {
  .md\:text-start{
    text-align: start;
  }
  .section--padded-large {
    padding-top: calc(11 * var(--space-unit));
    padding-bottom: calc(10 * var(--space-unit));
  }
  .cc-pop-up + .cc-icons-with-text .section--padded-large {
    padding-top: calc(6 * var(--space-unit));
    padding-bottom: calc(15 * var(--space-unit));
  }
  .cc-slideshow + .cc-icons-with-text + * .section {
    margin-top: 0;
  }
}

/*================================================
=                   Typography                   =
================================================*/
.h0,
.text-h0,
h1,
.h1,
.text-h1,
h2,
.h2,
.text-h2,
.subheading,
.main-nav__promos .promo__content {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 700;
  font-style: italic;
}
.h0,
.text-h0 {
  line-height: 1.1;
}
h2, .h2 {
  line-height: 100%;
}
h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  line-height: 100%;
  font-style: normal;
}
@media screen and (max-width: 599.98px) {
  h2, .h2 {
    font-size: 2.6rem;
  }
}
.product-info__price .price__current {
  font-size: 2.4rem;
}
.subheading,
.product-info__price .price__was {
  font-size: 1.8rem;
}
.subheading {
  color: rgb(var(--link-color));
}
.enlarge-text,
.price__current {
  font-size: 1.7rem;
  line-height: 100%;
}
.link,
.btn--tertiary,
.footer__main .footer-col--newsletter .input-with-button > .input,
.card--product .card__title,
.card--related .title {
  font-size: 1.6rem;
  line-height: 100%;
}
.card--product .price__was {
  font-size: 1.5rem;
}
.btn,
.input,
select {
  font-size: 1.5rem;
  @media screen and (min-width: 769px) {
    font-size: 1.6rem;
  }
}
.footer__main .disclosure__title,
.footer__main .footer-block__heading {
  font-size: 1.5rem;
  @media screen and (min-width: 769px) {
    font-size: 2rem;
  }
}
.label {
  font-size: 1.4rem;
}
.header__icon .text,
.breadcrumbs-list,
.cc-promo-strip .h6,
.promo-strip__rte,
.promo-strip__button,
.footer__main {
  font-size: 1.3rem;
}
@media screen and (min-width: 769px) {
  .product-label {
    font-size: 1.2rem;
  }
  .cc-promo-strip .h6 {
    font-size: 1.8rem;
  }
  :root {
    --h5-font-size: 1.7rem;
    --h6-font-size: 1.7rem;
  }
}
/*== Weight ==*/
.link,
.btn--tertiary {
  font-weight: 700;
}
.price__current {
  font-weight: 600;
}
.card--product .price__was {
  font-weight: 400;
}
/*== Line height ==*/
.promo-item--grid_list .card--promo__content {
  line-height: 100%;
}

/*================================================
=                     Button                    =
================================================*/
.color-scheme:not(.color-scheme--no-btns) .btn--secondary--reverse {
  --btn-alt-bg-alpha: 0;
  --btn-alt-text-color: var(--btn-bg-color);
  background-color: transparent;
}
.color-scheme--2 .btn--primary {
  --btn-bg-color: var(--color-scheme-1-btn-bg);
  --btn-bg-hover-color: var(--color-scheme-1-btn-bg-hover);
  --btn-text-color: var(--color-scheme-1-btn-text);
}
.color-scheme--2:not(.color-scheme--no-btns) .btn--secondary--reverse {
  --btn-alt-bg-color: var(--color-scheme-2-btn-bg);
  --btn-alt-bg-hover-color: var(--color-scheme-2-btn-bg-hover);
  --btn-alt-text-color: var(--color-scheme-2-btn-text);
  --btn-alt-bg-alpha: 1;
    background-color: var(--color-scheme-2-btn-bg);
    background: rgba(var(--btn-alt-bg-color) / 1) linear-gradient(104deg, rgba(var(--btn-alt-text-color) / 0.07) 60%, rgba(var(--btn-alt-bg-color) / var(--btn-alt-bg-alpha)) 60%, rgba(var(--btn-alt-bg-color) / var(--btn-alt-bg-alpha)) 100%) no-repeat 100% 100%;
    background-size: 300% 100%;
    color: rgb(var(--btn-alt-text-color));
}
.btn--secondary--reverse {
  border: var(--btn-border-width) solid rgb(var(--btn-alt-bg-color));
  outline-color: rgb(var(--btn-alt-bg-color));
  outline-offset: 0.3rem;
  background: transparent;
  background-size: 300% 100%;
  color: rgb(var(--btn-alt-bg-color));
}
@media (hover: hover) and (pointer: fine) {
.btn--secondary--reverse:not(.slider-nav__btn):not([disabled]):hover {
    background-position: 0 100%;
  }
}
.btn--sm {
  padding: 0.6rem 1.6rem;
  font-size: 1.5rem;
  font-weight: 700;
}
.btn--tertiary {
  color: currentColor;
}
/*== Button - Link list ==*/
.btn--tertiary .btn--icon {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  margin-right: 1rem;
}
.btn--tertiary .icon {
  width: 2.5rem;
  height: 2.5rem;
}
.btn--tertiary > *:not(.btn--icon):not(.icon) {
  border-bottom: 0.1rem solid currentColor;
}
/*== Button - Promo card in menu ==*/
.main-nav__promos .promo__content + .btn--tertiary {
  color: var(--promo-text-color);
  padding: 0 1.5em 1em calc(1.5em - 0.8rem);
  z-index: 1; 
}
/*== Button - Carousel ==*/
.btn--tertiary + .btn--tertiary {
  transform: rotate(180deg);
}
/*== Button in rte ===*/
.rte a.btn--primary,
.rte a.btn--secondary,
.rte a.btn--secondary--reverse {
  text-decoration: none;
}

/*================================================
=                     Form                     =
================================================*/

/*================================================
=                     Header                     =
================================================*/
.header {
  border-bottom: none;
}
.header__logo { 
  position: absolute;
  top: -3.4rem;
}
@media screen and (max-width: 768.98px) {
  .header__logo { 
    width: 5.7rem;
  }
  .header__search {
    margin-top: 0.3rem;
  }
}
@media screen and (min-width: 769px) {
  .header__search,
  .main-menu,
  .cc-promo-strip .section .container > *:first-child {
    margin-left: 10rem;
  }
}
/*============ Promo Strip ============*/
.cc-promo-strip .section {
  --space-unit: .2em;
  background-color: var(--primary-color-dark);
  color: white;
  padding-top: 0.3rem;
}
.cc-promo-strip .section a {
  color: white;
  text-decoration: none;
}
.cc-promo-strip .h6 {
  color: rgb(var(--link-color));
}
.divider {
  padding: 0 0.5rem 0 0.6rem;
}

/*============ Header Icons ============*/
.header__icon .text {
  display: none;
}
@media (min-width: 1024px) {
  .header__icon.text-current {
    display: flex;
    flex-direction: row;
    gap: 0.6rem;
    width: 100%;
  }
  .header__icon svg {
    width: 3rem;
    height: 3rem;
    flex-shrink: 0;
  }
  .header__icon svg.icon-basket {
    width: 2.3rem;
    height: 2.2rem;
  }
  .header__icon .text {
    display: block;
  }
  #cart-icon-bubble {
    position: relative;
  }
  .header__cart-count {
    top: -1.9rem;
    left: -5.9rem;
    right: auto;
  }
}

/*============ Search ============*/
.search__submit {
  padding-left: 1rem;
}
.search__speech {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 769px) {
  .header__search {
    flex: 3 1 auto;
  }
}

/*================================================
=                  Announcement                  =
================================================*/
.cc-announcement {
  margin-top: -1px;
}

/*================================================
=                    Menus                      =
================================================*/
.main-nav__item--toggle .icon,
.main-nav__item--back .icon,
.main-nav__item--go .icon {
  width: 1.6rem;
  height: 1.6rem;
}
.main-nav__item--go,
.mega-nav--pills.mega-nav--no-grandchildren .main-nav__item:not(.main-nav__item-header) {
  font-weight: 500;
}
.secondary-nav__item:not(.secondary-nav__cta) {
  background-color: var( --color-pro);
  padding: 0.2rem 1.2rem;
  margin-bottom: 1.2rem;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
}
.secondary-nav__item:not(.secondary-nav__cta)::before {
  content: '';
  display: inline-block;
  width: 1.6rem;
  height: 1.4rem;
  background: url('client-pro.svg') no-repeat center center;
  margin-right: 1.2rem;
}
.secondary-nav__item:not(.secondary-nav__cta) {
  color: white;
}
@media (max-width: 768.98px) {
  .main-menu__content,
  .js .main-nav__child {
    --nav-child-bg-color: var(--color-scheme-2-bg);
    --nav-child-text-color: var(--color-scheme-2-text);
  }
  .js .is-open>.main-menu__content, 
  .no-js [open]>.main-menu__content,
  .main-nav__child,
  .child-nav__item--toggle+.disclosure__panel {
    border-top: 0.1rem solid var(--white-25);
  }
  .main-nav>li, 
  .child-nav>li, 
  .grandchild-nav>li {
    --nav-line-color: var(--white-25);
  }
  .child-nav>li:has(>*.main-nav__item-header), 
  .grandchild-nav>li:has(>*.main-nav__item-header) {
    border-bottom: 0;
  }
  .main-nav__item--back {
    color: var(--nav-child-text-color);
  }
  .main-nav__item-header {
    text-align: center;
    color: rgb(var(--color-scheme-2-bg));
    background-color: rgb(var(--color-scheme-2-text));
    border-radius: 0.2rem;
    padding-top: 1.8rem;
    padding-bottom: 1.8rem;
    margin-bottom: 2.5rem;
  }
  .main-nav__item--back {
    font-weight: 700;
  }
}
@media screen and (min-width: 769px) {
  .main-nav__item--primary {
    padding-bottom: 1.3rem;
  }  
}

/*=============== Promo ===============*/
.main-nav__promos .promo__content {
  line-height: 2.8rem;
}

/*================================================
=                    Footer                     =
================================================*/
/*== Margins, Paddings ==*/
.cc-footer .footer {
  padding: calc(2 * var(--space-unit)) 0 calc(4 * var(--space-unit));
  @media (min-width: 769px) {
    padding: calc(48 * var(--fluid-1-125)) 0 calc(6 * var(--space-unit));
  }
}
.footer__main .footer-block+.footer-block {
  --space-unit: 0.291rem;
  @media (min-width: 769px) {
    --space-unit: 0.3333rem;
  }
}
.footer .footer__hr {
  --space-unit: 0;
  @media (min-width: 769px) {
    --space-unit: .2rem;
  }
}
.social__link {
  padding: 0.7rem;
}

.footer__main .footer-menu__links>li {
  margin-bottom: 1.3rem;
}
@media (max-width: 768.98px) {
  .footer-col--newsletter.footer-col--not-collapsed {
    margin-top: 2.4rem;
  }
}
@media (min-width: 769px) {
  .footer__main > .footer-col--text {
    margin-top: -5.4rem;
  }
  .footer__main .footer-menu .disclosure__title,
  .footer__main .footer-block__heading {
      margin-bottom: 1.5rem;
  }
}
/*== Block widths ==*/
@media (min-width: 1024px) {
  .footer__main .footer-col--links {
    flex: 1 1 auto;
    max-width: 24%;
  }
  .footer__main .footer-col--newsletter {
    flex: 0 1 37.7rem;
  }
  .footer__main .footer-col--text:not(.footer-col--text-full-width) {
    flex: 1 1 30rem;
    max-width: 25%;
  }
}
/*== Block Newsletter ==*/
.footer__main .footer-col--newsletter .input-with-button {
  border-radius: 0.2rem;
}
/*== Copyright ==*/
.footer__base {
  display: flex;
  justify-content: space-between;
}

/*================================================
=                   Breadcrumb                   =
================================================*/
.breadcrumbs {
  margin: 1rem 0 2rem 0;
}
@media (min-width: 600px) {
  .breadcrumbs {
    margin-bottom: 3rem;
  }
}
.breadcrumbs-list .divider {
  margin: 0 0.2rem;
}
.breadcrumbs-list__link:not(.current) {
  opacity: .25;
  transition: opacity .2s ease-in-out;
}
.breadcrumbs-list__link:not(.current):hover {
  opacity: 1;
}
.breadcrumbs-list__link.current {
  font-weight: 700;
}

/*================================================
=                 PRODUCT - Card                 =
================================================*/
@media screen and (max-width: 599px) {
  .products-grid-container {
    padding-right: 0;
  }
}
.card__vendor {
  font-weight: 500;
  text-transform: uppercase;
}
/*=== Label ===*/
.product-label {
  padding: 0.1rem 0.6rem;
  font-weight: 700;
  border-radius: 0.2rem;
}
@media (min-width: 769px) {
  .product-label {
    padding: 0.3rem 0.8rem;
  }
}
/*=== Price ===*/
.price__current {
  color: rgb(var(--link-color));
}
.card--product .price__default:has(.price__was) > .price__current {
  background-color: rgb(var(--link-color));
  color: white;
  padding: 0.5rem;
} 
.card--product .price__was {
  margin-left: 1rem;
}
/*=== Avis vérifiés ===*/
.skeepers_product__stars {
  min-height: 3rem;
}
.skeepers_product__stars:empty {
  display: none;
}
.skeepers_product__stars .stars__rating .rate-aggregate,
.skeepers_product__stars .stars__rating .rate-aggregate__separator,
.skeepers_product__stars .stars__rating .rate-aggregate__max {
  display: none;
}

/*================================================
=                    PRODUCT                    =
================================================*/
/*=== Product media ===*/
.media-ctrl .media-ctrl__btn {
  border: 0;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, .5);
}
.media-ctrl .media-ctrl__btn .icon{
  width: 2.6rem;
  height: 2.6rem;
}
.media-ctrl .media-ctrl__btn[name="prev"] {
  transform: rotate(180deg);
}

/*=== Product info ===*/
.product-main .product-info::before,
.product-main .product-info::after,
.cc-main-product.product-main + .shopify-section:not(.product-details)::before,
.cc-product-details.product-details+.shopify-section:before {
  display: none;
}
.cc-main-product.product-main .product-media {
  border: 0;
}
/* Labels and Vendor logo */
#product-info + .product-info__block {
  margin: 0;
}
/* Price */
.product-info__price .price__current {
  padding-inline-end: 3rem;
}
/* Rating and SKU */
.product-info__block .skeepers_product__stars:not(:empty) {
  margin-right: 4rem;
}
/* Quantity */
.js .qty-input--combined {
  --btn-border-width: 1px;
  border: var(--btn-border-width) solid rgba(var(--input-text-color) / 1);
}
.js-product-form-main .product-info__add-to-cart quantity-input {
  max-width: 14.5rem;
}
.js-product-form-main quantity-input + .product-info__add-button {
  max-width: 19.6rem;
}
/* Icon text */
.product-info__icon-text .icon {
  margin-right: 2rem;
}
/* Related products */
.card--related {
  background-color: rgba(var(--panel-bg-color));
}

/*==== Product details =====*/
.product-main + .cc-product-details.product-details > .container {
  width: 100%;
  border-inline-end: 0;
  float: none;
  clear: both;
}
.product-details__disclosures > details-disclosure:first-child > .disclosure--row {
  border-top: 0;
}
.product-details__description > .disclosure--row {
  border-top: 0;
}
/* Product accordion content in two columns */
.disclosure__content.product-description .flex-wrap {
  gap: 2rem;
}
@media screen and (min-width: 769px) {
  .disclosure__content.product-description .flex-wrap > * {
    width: calc(50% - 1.5rem);
  }
  .disclosure__content.product-description .flex-wrap > *:not(:last-child) {
    padding-right: 1rem;
    border-right: 0.1rem solid rgba(var(--text-color) / 0.15);
  }
}
@media screen and (min-width: 1200px) {
  .disclosure__content.product-description .flex-wrap {
    gap: 3rem;
  }
  .disclosure__content.product-description .flex-wrap > * {
    width: calc(50% - 2rem);
  }
}

/*================================================
=           SECTION - Icon with text            =
================================================*/
.icons-with-text__title {
  margin-bottom: 1rem;
}
.icons-with-text .icons-with-text__text {
  width: 100%;
}
.icons-with-text__text p {
  line-height: 1.1;
}
.icons-with-text .carousel {
  margin: 0 calc(var(--gutter)/2);
  padding: 0 calc(var(--gutter));
}

/*================================================
=         SECTION - Featured collection          =
================================================*/
[data-overlayscrollbars~=host] {
  overflow: visible;
}

/*================================================
=          SECTION - Media with text           =
================================================*/
@media (min-width: 769px) {
  .cc-media-with-text .media-with-text {
      max-width: 100%;
  }
  .cc-media-with-text .media-with-text__text {
    --text-width: calc(100% - var(--media-width));
    --padding-left: calc(var(--text-width) - 50%);
    --padding-right: calc(var(--text-width) - var(--padding-left) - 51.1rem);
    padding-left: var(--padding-left);
    padding-right: var(--padding-right);
  }
}
.section__block--heading p {
  font-size: 1.8rem;
  color: rgb(var(--link-color));
  text-transform: var(--subheading-text-transform);
  margin-top: 1em;
}

/*================================================
=          SECTION - Shoppable image           =
================================================*/
.shoppable-image .hotspot__card {
  padding: calc(4* var(--space-unit));
}
.hotspot__card .card-link:before {
  display: none;
}
.cc-media-with-text:has(.section--padded) + .cc-shoppable-image .section {
  margin-top: 0;
}
.shoppable-image__text .card.card--wide.h-full{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

/*================================================
=          SECTION - Featured blog           =
================================================*/
.card.color-scheme .card__info {
  --space-unit: .2rem;
}

/*================================================
=          SECTION - Image banner           =
================================================*/
@media (max-width: 599.98px) {
  .mobile-stacked .image-banner .text-overlay {
    --space-unit: .2em;
  }
  .mobile-stacked .image-banner .text-overlay:has(.sm\:hidden) {
    padding-top: 0;
  }
  .cc-image-banner + .cc-breadcrumbs {
    display: none;
  }
}
/*=== Collection page ===*/
.collection__image-collection {
  position: absolute;
  right: 10%;
  top: 50%;
  transform: translateY(-50%);
  height: 90%;
  background-color: white !important;
  mix-blend-mode: multiply;
  border-radius: 50%;
}
.collection__image-collection img {
  max-height: 100%;
  width: auto;
  mix-blend-mode: multiply;
}
.collection__logo-brand {
  width: 17rem;
  height: 17rem;
  padding: 3rem;
  background: white;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  z-index: 1;
  @media (max-width: 599.98px) {
    margin-top: 4rem;
  }
  @media (min-width: 769px) {
    width: 20rem;
    height: 20rem;
    padding: 3rem;
  }
}
@media (max-width: 599.98px) {
  .collection__logo-brand + div {
    margin-top: 0;
  }
  .collection__logo-brand + div > h1 {
    text-align: center;
  }
  .cc-image-banner:has(.collection__logo-brand) + .cc-breadcrumbs + .cc-collection-products {
    margin-top: 1.5rem;
  }
}
.collection__logo-brand img {
  height: auto;
  width: auto;
  max-height: 100%;
  max-width: 100%;
}

/*================================================
=          SECTION - Collection list           =
================================================*/
.card--promo__info .btn,
.promo__button {
  width: auto;
}
.promo .rte > * + * {
  margin-top: 1.5rem;
}
.card__collection--with-border .card__media {
  border-radius: 50%;
}
.rte--inherit-heading-color .h3 {
    color: inherit;
}

/*================================================
=            SECTION - Media grid             =
================================================*/
.gallery .gallery-block__image {
  padding: max(5%, 25px);
}

/*================================================
=           SECTION - Testimonials            =
================================================*/
.color-scheme--1 .testimonials .slideshow {
  background-color: white;
}
.testimonials .slideshow .testimonial__quote--with-mark:before {
  color: rgb(var(--link-color));
  font-size: max(6em, 96px);
  font-weight: 500;
  line-height: .9;
}
.color-scheme--1 .testimonials {
  --ctrl-space: calc(10 * var(--space-unit));
}
.slideshow__slide {
  padding-top: calc(var(--ctrl-space)/3);
  @media screen and (min-width: 600px) {
    padding-left: calc(var(--ctrl-space)/2);
    padding-right: calc(var(--ctrl-space)/2);
  }
}
@media screen and (min-width: 1280px) {
  .color-scheme--1 slide-show.testimonials {
    --ctrl-bottom: var(--gutter);
  }
}
.testimonials .testimonial-stars .rating__stars {
  --star-color: var(--link-color);
}
.rating__stars {
  --no-rating-col: rgba(var(--text-color));
}

/*================================================
=           SECTION - Rich text            =
================================================*/
.cc-rich-text .rte h2,
.cc-rich-text .rte h3 {
  margin: 2.5rem 0 1.5rem 0;
}

/*================================================
=           SECTION - Metaobject list            =
================================================*/
.marque-item {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  color: rgba(var(--text-color));
  border: 0.1rem solid rgba(var(--text-color) / 0.15);
  padding: 1.5rem;
  line-height: 1.2;
}
@media screen and (max-width: 599px) {
  .marque-list {
    border-top: 0.1rem solid rgba(var(--text-color) / 0.15);
  }
  .marque-item {
    padding: 2rem;
    border: 0;
    border-bottom: 0.1rem solid rgba(var(--text-color) / 0.15);
  }
  .marque-item:nth-child(2n-1) {
    border-right: 0.1rem solid rgba(var(--text-color) / 0.15);
  }
}
.marque-item .marque-logo {
  height: 10rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.marque-logo img {
  max-width: 100%;
  max-height: 100%;
}

/*================================================
=                  CART Drawer                 =
================================================*/
.cart-note-disclosure summary {
  overflow: visible;
}
/*=== App Gift ===*/
.qbk-order-goal {
  padding: 0 4rem !important;
}
.qbk-order-goal__title {
  max-width: 6rem !important;
}