/*
--------------------------------------
section Title
--------------------------------------
*/
.section__title {
  text-align : center;
}

.section__title .c-title {
  padding : 1em 1.5em;
}

/*
--------------------------------------
title
--------------------------------------
*/
.c-title__subtitle {
  font-size      : calc(11px + (12 - 11) * ((100vw - 320px) / (1920 - 320)));
  margin-bottom  : 1em;
  letter-spacing : 0.075em;
}

.c-title {
  margin         : 0;
  color          : var(--color-white-default);
  font-weight    : 400;
  background     : transparent;
  text-transform : uppercase;
  letter-spacing : 0.025em;
  position       : relative;
  display        : flex;
  flex-direction : column;
  font-size      : calc(18px + (24 - 18) * ((100vw - 320px) / (1920 - 320)));
}

/*
--------------------------------------
REASSURANCE LIST
--------------------------------------
*/
.section__reassurance-list {
  background : white;
  padding    : 4vh 0;
}

.c-reassurance-list__inner {
  display               : grid;
  grid-template-columns : repeat(auto-fit, minmax(150px, 1fr));
  grid-gap              : 15px 20px;
  padding               : 15px 0;
}

.c-reassurance-list .c-reassurance {
  text-align : center;
}

.section__reassurance {
  flex            : 1 0 0;
  display         : flex;
  justify-content : center;
  text-align      : center;
}

/*
--------------------------------------
REASSURANCE
--------------------------------------
*/
.c-reassurance {
  font-size      : calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
  letter-spacing : 0.075em;
  color          : #516765;
  line-height    : 1.7em;
}

.c-reassurance__img {
  height : 35px;
}

.c-reassurance__title {
  font-weight    : 700;
  text-transform : uppercase;
  margin-top     : 1em;
}


/*
--------------------------------------
Tabs
--------------------------------------
*/
.section__tabs-titles {
  position        : relative;
  z-index         : 2;
  display         : flex;
  flex-wrap       : wrap;
  justify-content : center;
  border-bottom   : 1px solid #eceef4;
}

.section__tabs-titles .selected__option {
  width       : 100%;
  border      : 1px solid #f7f7f7;
  background  : white;
  padding     : 1em 1.6em;
  font-size   : 1.25rem;
  color       : var(--color-black-default);
  font-weight : 700;
}

.section__tabs-titles .available__options {
  display        : none;
  position       : absolute;
  top            : 100%;
  left           : 0;
  width          : 100%;
  flex-direction : column;
  background     : white;
}

.section__tabs-titles .available__options.--visible {
  display : flex;
}

.section__tabs-titles .available__options .section__title__part + .section__title__part {
  border-top : 1px solid #f7f7f7;
}

.section__tabs-titles .available__options .section__title {
  display     : flex;
  align-items : center;
}

.section__tabs-titles .available__options .section__title .c-title__subtitle {
  margin-right : .5em;
}

.section__tabs-titles .section__title__part {
  position    : relative;
  padding     : 0 2em;
  display     : flex;
  align-items : flex-end;
  cursor      : pointer;
  text-align  : center;
}

.s-tabs-title-content .section__content {
  position : relative;
  z-index  : 1;
}

.s-tabs-title-content .section__content__part {
  position       : absolute;
  top            : 0;
  left           : 0;
  width          : 100%;
  opacity        : 0;
  visibility     : hidden;
  pointer-events : none;
}

.s-tabs-title-content .section__content__part--active {
  position       : relative;
  opacity        : 1;
  visibility     : visible;
  pointer-events : all;
}

@media (min-width : 768px) {
  .section__tabs-titles .selected__option {
    display : none;
  }

  .section__tabs-titles .available__options {
    display         : flex;
    justify-content : center;
    position        : initial;
    flex-direction  : row;
    background      : transparent;
  }

  .section__tabs-titles .available__options .section__title__part + .section__title__part {
    border-top : none;
  }

  .section__tabs-titles .available__options .section__title {
    display        : flex;
    flex-direction : column;
    align-items    : normal;
  }

  .section__tabs-titles .available__options .section__title .c-title__subtitle {
    margin-right : 0;
  }

  .section__tabs-titles .section__title__part:after {
    content           : "";
    height            : 3px;
    width             : 100%;
    background-color  : var(--color-primary);
    position          : absolute;
    bottom            : 1px;
    left              : 0;
    -webkit-transform : scaleX(0);
    -ms-transform     : scaleX(0);
    transform         : scaleX(0);
    transition        : transform .4s cubic-bezier(.165, .84, .44, 1);
  }

  .section__tabs-titles .section__content__part--active:after {
    transform : scaleX(1);
  }
}

/**********************************************************/
/* Slider manufacturers
/*********************************************************/
.slider-manufacturers .brand-miniature img {
  max-height : 6.25rem;
}

/*
--------------------------------------
mini boutique list
--------------------------------------
*/
.c-mini-boutique-list__inner {
  display               : grid;
  grid-gap              : 25px;
  grid-template-columns : repeat(auto-fit, minmax(200px, 1fr));
}

/*
--------------------------------------
mini boutique
--------------------------------------
*/
.c-mini-boutique {
  position : relative;
  z-index  : 0;
  padding  : 75% 4% 4%;
}

.c-mini-boutique__link:focus {
  text-decoration : none;
  outline         : none;
}

.c-mini-boutique__background {
  position   : absolute;
  z-index    : -1;
  top        : 0;
  left       : 0;
  width      : 100%;
  height     : 100%;
  background : var(--color-grey-default);
}

.c-mini-boutique__subtitle {
  color          : var(--color-black-default);
  font-size      : calc(11px + (12 - 11) * ((100vw - 320px) / (1920 - 320)));
  margin-bottom  : 1em;
  letter-spacing : 0.075em;
}

.c-mini-boutique__title {
  color          : var(--color-black-default);
  font-weight    : 400;
  background     : transparent;
  text-transform : uppercase;
  letter-spacing : 0.025em;
  font-size      : calc(18px + (24 - 18) * ((100vw - 320px) / (1920 - 320)));
}
