/** Shopify CDN: Minification failed

Line 184:0 Unexpected "}"
Line 658:0 Expected "}" to go with "{"

**/
/* =====================
   Ajoutez ici vos propres styles css personnalisés
   ===================== */
/* =========================================
/* =========================================
/* =========================================
/* =========================================
   
/* =========================================
   REVIEWS GRID - SLEPTOPIA
   ========================================= */

/* FOND DE LA SECTION */
div:has([data-widget-name="jdgm-reviews-grid-widget"]) {
  background-color: #F4F0E5 !important;
}

/* TITRE "DE NOS CLIENTS" */
.jm-grid-header__text {
  color: #1A2740 !important;
}

/* NOTE 4.5 ★ (132) */
.jm-average-rating-display,
.jm-average-rating-display * {
  color: #1A2740 !important;
  fill: #1A2740 !important;
  -webkit-text-fill-color: #1A2740 !important;
}

/* AFFICHER PLUS — BOUTON EXACT */
div:has([data-widget-name="jdgm-reviews-grid-widget"]) button.jm-show-more-button {
  color: #1A2740 !important;
  -webkit-text-fill-color: #1A2740 !important;
  opacity: 1 !important;
}

div:has([data-widget-name="jdgm-reviews-grid-widget"]) button.jm-show-more-button::before,
div:has([data-widget-name="jdgm-reviews-grid-widget"]) button.jm-show-more-button::after {
  color: #1A2740 !important;
  background-color: transparent !important;
}

div:has([data-widget-name="jdgm-reviews-grid-widget"]) button.jm-show-more-button svg {
  color: #1A2740 !important;
  fill: #1A2740 !important;
  stroke: #1A2740 !important;
}
/* SUPPRIMER L'ESPACE AU-DESSUS DE LA SECTION REVIEWS GRID */
section:has(.jdgm-reviews-grid-widget) {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

div:has([data-widget-name="jdgm-reviews-grid-widget"]) .jm-average-rating-display span.jm-text:last-of-type{
  display:none!important;
}

/* =========================================
   ACCORDÉONS VISUELS
   ========================================= */

.accordion-visual .accordion-button>span{
  font-size:28px!important;
  line-height:1.1!important;
}
.accordion-visual .accordion-body,
.accordion-visual .accordion-body .title,
.accordion-visual .accordion-body .description{
  color:#fff!important;
}
.accordion-visual .accordion-header:has(.accordion-button[aria-expanded="false"]){
  height:120px!important;
  min-height:120px!important;
  overflow:hidden!important;
}
@media screen and (min-width:990px){

  .accordion-visual .accordion{
    display:flex!important;
    width:100%!important;
    align-items:stretch!important;
    gap:0!important;
  }

  .accordion-visual .accordion-item{
    flex:1 1 0;
    min-width:0;
  }

  .accordion-visual .accordion-item{
  position:relative;
  top:30px!important;
}

.accordion-visual{
  padding-bottom:5px!important;
}

.accordion-visual .accordion-item:has(.accordion-button[aria-expanded="true"]) .accordion-collapse{
  transform:translateY(-90px)!important;
}

  /* Cartes fermées plus hautes */
  .accordion-visual .accordion-item:not(:has(.accordion-button[aria-expanded="true"])) .accordion-header{
    height:400px!important;
    min-height:400px!important;
    overflow:hidden!important;
  }

  /* Titres fermés verticaux */
  .accordion-visual .accordion-item:not(:has(.accordion-button[aria-expanded="true"])) .accordion-button>span{
    writing-mode:vertical-rl!important;
    text-orientation:mixed!important;
    transform:rotate(180deg)!important;
  }

  /* Accordéon ouvert */
  .accordion-visual .accordion-item:has(.accordion-button[aria-expanded="true"]){
    flex:0 0 70%!important;
    display:grid!important;
    grid-template-columns:40% 60%!important;
  }

  .accordion-visual .accordion-item:has(.accordion-button[aria-expanded="true"]) .accordion-header{
    grid-column:1;
    height:280px!important;
    min-height:280px!important;
  }

  .accordion-visual .accordion-item:has(.accordion-button[aria-expanded="true"]) .accordion-collapse{
    grid-column:2;
    grid-row:1;
  }

  /* Titre ouvert horizontal */
  .accordion-visual .accordion-item:has(.accordion-button[aria-expanded="true"]) .accordion-button>span{
    writing-mode:horizontal-tb!important;
    transform:none!important;
  }

  .accordion-visual .accordion-body{
    width:100%!important;
    max-width:850px!important;
    margin:0 auto!important;
  }
}
@media screen and (min-width:990px){
  .tab-content .tab-pane .col-lg-6.mb-6.mb-lg-0 img{
    max-width:80%!important;
    height:auto!important;
  }
}
@media screen and (min-width:990px){
  #splide01 .splide__slide img{
    max-width:85%!important;
    height:auto!important;
    margin:0 auto!important;
  }
}
@media screen and (min-width:990px){
  h2.title.mt-1{
    margin-top:25px!important;
  }
}
@media screen and (min-width:990px){
  .nav.nav-pills.justify-content-center{
    margin-top:30px!important;
  }
}

/* =========================================
   TEXTE IMPACT — PAGE ACCEUIL
   ========================================= */
span.impact-text__text{
  font-size:calc(min(15vw,1600px * 0.15) / 1 * 0.4)!important;
}
}

/* =========================================
   UNIVERS SONORE — ORDINATEUR
   ========================================= */

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

  /* Introduction */
  .accordion-visual .description p:first-child {
    text-align: center !important;
    font-size: 20px !important;
  }

  /* Tous les paragraphes */
  .accordion-visual .description p {
    margin-bottom: 0 !important;
  }

  /* Titres */
  .accordion-visual .description p strong {
    display: inline !important;
    text-align: center !important;
    font-size: 26px !important;
    margin: 0 !important;
  }

  /* Textes sous les titres */
  .accordion-visual .description p:not(:first-child) {
    text-align: center !important;
    font-size: 24px !important;
  }

  /* Retour à la ligne entre titre et texte */
  .accordion-visual .description p:not(:first-child) br {
    display: block !important;
  }

  /* Espace entre les différents blocs */
  .accordion-visual .description p + p {
    margin-top: 28px !important;
  }
}

/* =========================================
   UNIVERS SONORE — MOBILE
   ========================================= */

@media screen and (max-width: 600px) {

  /* Texte d'introduction */
  .accordion-visual > div > .description p:first-child {
    text-align: center !important;
    font-size: 17px !important;
  }

  /* Tous les paragraphes */
  .accordion-visual > div > .description p {
    margin-bottom: 0 !important;
  }

  /* Titres */
  .accordion-visual > div > .description p strong {
    display: inline !important;
    text-align: center !important;
    font-size: 18px !important;
    margin: 0 !important;
  }

   /* Marges à gauche */
  .accordion-visual > div > .description {
  padding-left: 14px !important;
  padding-right: 10px !important;
}

  /* Textes sous les titres */
  .accordion-visual > div > .description p:not(:first-child) {
    text-align: left !important;
    font-size: 16px !important;
  }

  /* Un seul retour à la ligne entre titre et texte */
  .accordion-visual > div > .description p:not(:first-child) br {
    display: block !important;
  }

  /* Espace entre les différents blocs */
  .accordion-visual > div > .description p + p {
    margin-top: 28px !important;
  }
}

/* =========================================
   EXTRAIT AUDIO — UNIVERS SONORE SOMNIA
   ========================================= */

.somnia-audio-preview {
  text-align: center;
  margin: 28px auto 10px;
  width: 100%;
}

.somnia-audio-label {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #FFFFFF;
  margin-bottom: 10px;
}

/* =========================================
   LECTEUR AUDIO PERSONNALISÉ — SOMNIA
   ========================================= */

.somnia-audio-player {
  width: min(100%, 420px);
  height: 46px;
  margin: 0 auto;
  padding: 0 18px;
  box-sizing: border-box;

  display: flex;
  align-items: center;
  gap: 14px;

  background: #FFFFFF;
  border-radius: 999px;
}

/* Audio natif caché */
.somnia-audio {
  display: none;
}

/* Bouton Play / Pause */
.somnia-audio-play {
  width: 32px;
  height: 32px;
  min-width: 32px;
  padding: 0;

  border: 0;
  background: transparent;

  display: flex;
  align-items: center;
  justify-content: center;

  cursor: pointer;
  color: #111111;
}

.somnia-audio-play svg {
  width: 25px;
  height: 25px;
  fill: #111111;
}

/* Temps */
.somnia-audio-time {
  font-size: 16px;
  line-height: 1;
  color: #111111;
  white-space: nowrap;
}

/* Barre de progression */
.somnia-audio-progress {
  flex: 1;
  min-width: 60px;
  height: 4px;
  margin: 0;

  appearance: none;
  -webkit-appearance: none;

  background: #D9D9D9;
  border-radius: 999px;
  cursor: pointer;
}

/* Barre remplie — Chrome / Safari */
.somnia-audio-progress::-webkit-slider-runnable-track {
  height: 4px;
  background: #D9D9D9;
  border-radius: 999px;
}

.somnia-audio-progress::-webkit-slider-thumb {
  appearance: none;
  -webkit-appearance: none;

  width: 14px;
  height: 14px;

  margin-top: -5px;

  background: #111111;
  border: none;
  border-radius: 50%;
}

/* Firefox */
.somnia-audio-progress::-moz-range-track {
  height: 4px;
  background: #D9D9D9;
  border-radius: 999px;
}

.somnia-audio-progress::-moz-range-thumb {
  width: 14px;
  height: 14px;

  background: #111111;
  border: none;
  border-radius: 50%;
}

/* Volume */
.somnia-audio-volume {
  width: 30px;
  height: 30px;
  min-width: 30px;

  padding: 0;
  border: 0;
  background: transparent;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #111111;
  cursor: pointer;
}

.somnia-audio-volume svg {
  width: 23px;
  height: 23px;
  fill: #111111;
}

/* Mobile */
@media screen and (max-width: 600px) {
  .somnia-audio-player {
    width: calc(100% - 30px);
    height: 60px;
    padding: 0 18px;
    gap: 12px;
  }

  .somnia-audio-time {
    font-size: 15px;
  }

  .somnia-audio-play {
    width: 30px;
    min-width: 30px;
  }

  .somnia-audio-volume {
    width: 28px;
    min-width: 28px;
  }

.somnia-audio-subtitle {
    margin-top: 6px;
    margin-bottom: 18px;
    line-height: 1.3;
}

/* =========================================
   MINI SCORES PROGESSIONS PRODUIT (FORMAT)
   ========================================= */

.product-block-score-progress{
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  vertical-align:top!important;
  width:33.333%!important;
  margin:0!important;
}

.product-block-score-progress .progress-circle-wrapper{
  display:flex!important;
  justify-content:center!important;
  width:100%!important;
}

.product-block-score-progress .progress-circle-text{
  width:100%!important;
  text-align:center!important;
  margin-top:10px!important;
}

.product-block-score-progress .progress-circle-text p{
  text-align:center!important;
  margin:0!important;
}
.product-block-score-progress{
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  vertical-align:top!important;
  width:33.333%!important;
  margin:0!important;
}

.product-block-score-progress .progress-circle-wrapper{
  display:flex!important;
  justify-content:center!important;
  width:100%!important;
}

.product-block-score-progress .progress-circle-text{
  width:100%!important;
  text-align:center!important;
  margin-top:10px!important;
}

.product-block-score-progress .progress-circle-text p{
  text-align:center!important;
  margin:0!important;
}
.product-block-score-progress{
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  vertical-align:top!important;
  width:32%!important;
  min-width:0!important;
  margin:0!important;
}

.product-block-score-progress .progress-circle-wrapper{
  display:flex!important;
  justify-content:center!important;
  width:100%!important;
}

.product-block-score-progress .progress-circle-text{
  width:100%!important;
  text-align:center!important;
  margin-top:10px!important;
}

.product-block-score-progress .progress-circle-text p{
  text-align:center!important;
  margin:0!important;
}
.product-block-score-progress{
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  vertical-align:top!important;
  width:32%!important;
  min-width:0!important;
  margin:0!important;
}

.product-block-score-progress .progress-circle-wrapper{
  display:flex!important;
  justify-content:center!important;
  width:100%!important;
}

.product-block-score-progress .progress-circle-text{
  width:100%!important;
  text-align:center!important;
  margin-top:10px!important;
}

.product-block-score-progress .progress-circle-text p{
  text-align:center!important;
  margin:0!important;
}

/* =========================================
   BORDURE STICKY ATC
   ========================================= */

#sticky-atc {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* =========================================
   ONGLET SOMNIA — TEXTES MOBILE
   ========================================= */

@media screen and (max-width: 989px) {

  /* Organisation mobile : titre → image → texte */
  .tab-content .tab-pane .row.align-items-center {
    display: flex !important;
    flex-direction: column !important;
  }

  /* Permet au titre et au texte de devenir des éléments flex indépendants */
  .tab-content .tab-pane .row.align-items-center > .col-lg-6:last-child {
    display: contents !important;
  }

  /* Image en 2e position */
  .tab-content .tab-pane .row.align-items-center > .col-lg-6:first-child {
    order: 2 !important;
  }

  /* Titres au-dessus de l'image */
  .tab-content .tab-pane .row.align-items-center h3 {
    order: 1 !important;
    max-width: 330px !important;
    margin: 5px auto 15px !important;
    line-height: 1.05 !important;
  }

  /* Description sous l'image */
  .tab-content .tab-pane .row.align-items-center .description {
    order: 3 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding-left: 18px !important;
    padding-right: 14px !important;
    text-align: left !important;
  }

  /* Titres dans la description */
  .tab-content .tab-pane .row.align-items-center .description p strong {
    font-size: 18px !important;
  }

  /* Texte dans la description */
  .tab-content .tab-pane .row.align-items-center .description p {
    font-size: 16px !important;
  }

/* =========================================
   ONGLET SOMNIA — TEXTES ORDINATEUR
   ========================================= */

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

  /* Titres */
  .tab-content .tab-pane .row.align-items-center .description p strong {
    font-size: 19px !important;
  }

  /* Textes */
  .tab-content .tab-pane .row.align-items-center .description p {
    font-size: 16px !important;
  }
}

/* =========================================
   CARTE IMAGE SOMNIA — MARGE AUTOUR DU TITRE ET ESPACEMENT ENTRE LES CARTES
   ========================================= */
   
   .cards-with-image .card-body {
    padding-top: 10px !important;
    padding-bottom: 5px !important;
}

@media screen and (max-width: 575px) {
  .cards-with-image .row.xs-scroll > .col {
    flex: 0 0 85% !important;
    max-width: 85% !important;
  }
}
