.elementor-22 .elementor-element.elementor-element-b87d8d8{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* =========================
   HEADER SOABEL PREMIUM
========================= */

.sb-header{
  position:sticky;
  top:0;
  z-index:999;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(0,0,0,.06);
}

.sb-nav{
  max-width:1200px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 20px;
}

.sb-logo{
  font-weight:700;
  letter-spacing:2px;
  font-size:18px;
  color:#5b2333;
}

.sb-menu{
  display:flex;
  gap:28px;
}

.sb-menu a{
  text-decoration:none;
  color:#222;
  font-weight:500;
  font-size:15px;
  transition:.2s;
}

.sb-menu a:hover{
  color:#5b2333;
}

.sb-book{
  background:#5b2333;
  color:white;
  padding:10px 18px;
  border-radius:30px;
  text-decoration:none;
  font-weight:600;
  transition:.2s;
}

.sb-book:hover{
  background:#3f1824;
}

.sb-burger{
  display:none;
  font-size:24px;
  cursor:pointer;
}

/* MOBILE */
@media (max-width:900px){

  .sb-menu{
    display:none;
  }

  .sb-burger{
    display:block;
  }

  .sb-book{
    display:none;
  }

}
/* =========================
   MENU MOBILE
========================= */

.sb-mobile-menu{
  position:fixed;
  top:0;
  right:-100%;
  width:260px;
  height:100vh;
  background:white;
  box-shadow:-10px 0 30px rgba(0,0,0,.1);
  padding:40px 20px;
  display:flex;
  flex-direction:column;
  gap:18px;
  transition:.3s;
  z-index:1000;
}

.sb-mobile-menu.active{
  right:0;
}

.sb-mobile-menu a{
  text-decoration:none;
  color:#222;
  font-size:18px;
}

.sb-mobile-book{
  margin-top:20px;
  background:#5b2333;
  color:white !important;
  padding:12px;
  border-radius:30px;
  text-align:center;
}

/* mobile header behavior */
@media (max-width:900px){

  .sb-menu{ display:none; }
  .sb-book{ display:none; }
  .sb-burger{ display:block; }

}
/* =========================
   OVERLAY
========================= */

.sb-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.35);
  opacity:0;
  pointer-events:none;
  transition:.3s;
  z-index:999;
}

.sb-overlay.active{
  opacity:1;
  pointer-events:auto;
}

/* =========================
   MENU MOBILE AMÉLIORÉ
========================= */

.sb-mobile-menu{
  transform:translateX(100%);
  transition:transform .35s cubic-bezier(.77,0,.18,1);
}

.sb-mobile-menu.active{
  transform:translateX(0);
}

/* =========================
   BURGER ANIMÉ
========================= */

.sb-burger{
  width:26px;
  height:18px;
  position:relative;
}

.sb-burger span{
  position:absolute;
  width:100%;
  height:3px;
  background:#222;
  left:0;
  transition:.3s;
}

.sb-burger span:nth-child(1){ top:0; }
.sb-burger span:nth-child(2){ top:7px; }
.sb-burger span:nth-child(3){ bottom:0; }

.sb-burger.active span:nth-child(1){
  transform:rotate(45deg);
  top:7px;
}

.sb-burger.active span:nth-child(2){
  opacity:0;
}

.sb-burger.active span:nth-child(3){
  transform:rotate(-45deg);
  bottom:8px;
}/* End custom CSS */