.elementor-117 .elementor-element.elementor-element-7df96495{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:10rem;--padding-bottom:5rem;--padding-left:1rem;--padding-right:1rem;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-117 .elementor-element.elementor-element-ca5b40c .elementor-heading-title{font-family:var( --e-global-typography-9f73bdb-font-family ), Sans-serif;font-size:var( --e-global-typography-9f73bdb-font-size );font-weight:var( --e-global-typography-9f73bdb-font-weight );line-height:var( --e-global-typography-9f73bdb-line-height );letter-spacing:var( --e-global-typography-9f73bdb-letter-spacing );color:var( --e-global-color-676f6a4 );}body.elementor-page-117:not(.elementor-motion-effects-element-type-background), body.elementor-page-117 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-8165a21 );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-117 .elementor-element.elementor-element-ca5b40c .elementor-heading-title{font-size:var( --e-global-typography-9f73bdb-font-size );line-height:var( --e-global-typography-9f73bdb-line-height );letter-spacing:var( --e-global-typography-9f73bdb-letter-spacing );}}@media(max-width:767px){.elementor-117 .elementor-element.elementor-element-ca5b40c .elementor-heading-title{font-size:var( --e-global-typography-9f73bdb-font-size );line-height:var( --e-global-typography-9f73bdb-line-height );letter-spacing:var( --e-global-typography-9f73bdb-letter-spacing );}}/* Start custom CSS for shortcode, class: .elementor-element-ac27a70 *//* ==========================================================
   IZIFOIL × BOOKINGPRESS — MES RÉSERVATIONS
   À placer dans le CSS personnalisé du widget Shortcode
   ========================================================== */

/* ----------------------------------------------------------
   01. VARIABLES / BASE
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 {
  --izi-bg: #04191f;
  --izi-text: #eaf7f5;
  --izi-white: #ffffff;
  --izi-green: #2ef0d0;
  --izi-orange: #ff5a2b;
  --izi-border: rgba(255, 255, 255, 0.12);
  --izi-border-soft: rgba(255, 255, 255, 0.08);
  --izi-surface: rgba(255, 255, 255, 0.04);
  --izi-surface-hover: rgba(255, 255, 255, 0.07);
  --izi-muted: rgba(234, 247, 245, 0.62);
  --izi-muted-light: rgba(234, 247, 245, 0.42);
  --font-text: "DM Sans", sans-serif;
  --font-title: "Bricolage Grotesque", sans-serif;
  font-family: var(--font-text) !important;
  color: var(--izi-text) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70,
.elementor-117 .elementor-element.elementor-element-ac27a70 *,
.elementor-117 .elementor-element.elementor-element-ac27a70 *::before,
.elementor-117 .elementor-element.elementor-element-ac27a70 *::after {
  box-sizing: border-box;
  font-family: var(--font-text) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-frontend-main-container {
  width: 100% !important;
  max-width: none !important;
  background: transparent !important;
  color: var(--izi-text) !important;
}

/* ----------------------------------------------------------
   02. CONTENEUR PRINCIPAL
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-customer-panel-container {
  display: grid !important;
  grid-template-columns: minmax(220px, 250px) minmax(0, 1fr) !important;
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  background: var(--izi-surface) !important;
  border: 1px solid rgba(255, 255, 255, 0.13) !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

/* BookingPress card */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp-card {
  display: contents !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* ----------------------------------------------------------
   03. SIDEBAR
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp-left-sidebar {
  width: auto !important;
  min-width: 0 !important;
  min-height: 100% !important;
  padding: 34px 22px !important;
  background: rgba(4, 25, 31, 0.4) !important;
  border: 0 !important;
  border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* ----------------------------------------------------------
   04. PROFIL DANS LA SIDEBAR
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-cp-ls__personal-details {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  padding: 0 8px 26px !important;
  margin: 0 0 20px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  text-align: center !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tn__default-img {
  margin: 0 0 12px !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-cp-pd__avatar {
  display: block !important;
  width: 72px !important;
  height: 72px !important;
  border: 2px solid rgba(46, 240, 208, 0.45) !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  background: rgba(255, 255, 255, 0.06) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-cp-pd__title {
  margin: 0 0 4px !important;
  font-family: var(--font-title) !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #fff !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-cp-pd__content {
  font-size: 12px !important;
  line-height: 1.4 !important;
  color: var(--izi-muted) !important;
  overflow-wrap: anywhere !important;
}

/* ----------------------------------------------------------
   05. MENU LATÉRAL
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-cp-ls__tab-menu {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  padding-left: 0 !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tm__item {
  display: flex !important;
  align-items: center !important;
  gap: 13px !important;
  width: 100% !important;
  padding: 13px 14px !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 14px !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  color: rgba(234, 247, 245, 0.5) !important;
  text-decoration: none !important;
  transition:
    color 0.3s ease,
    background 0.3s ease,
    transform 0.3s ease !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tm__item:hover {
  background: rgba(255, 255, 255, 0.05) !important;
  color: #fff !important;
  transform: translateX(3px) !important;
}

/* Actif */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tm__item.__bpa-is-active {
  background: rgba(46, 240, 208, 0.14) !important;
  color: #fff !important;
}

/* Icône */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tm__item-icon {
  display: grid !important;
  place-items: center !important;
  flex: 0 0 30px !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: rgba(234, 247, 245, 0.52) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tm__item-icon svg {
  width: 17px !important;
  height: 17px !important;
  fill: currentColor !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tm__item.__bpa-is-active .bpa-tm__item-icon {
  background: var(--izi-green) !important;
  color: var(--izi-bg) !important;
}

/* Déconnexion légèrement différente */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-cp-ls__tab-menu .bpa-tm__item:last-child:hover {
  background: rgba(255, 90, 43, 0.12) !important;
  color: var(--izi-orange) !important;
}

/* ----------------------------------------------------------
   06. CONTENU PRINCIPAL
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp-body {
  min-width: 0 !important;
  padding: 38px 36px !important;
  background: transparent !important;
}

/* ----------------------------------------------------------
   07. TITRES
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-module-heading {
  margin: 0 0 26px !important;
  font-family: var(--font-title) !important;
  font-size: 28px !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
  color: #fff !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-module-heading[aria-label="Mes réservations"] {
  display: none !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-module-heading *,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-cp-pd__title {
  font-family: var(--font-title) !important;
}

/* ----------------------------------------------------------
   08. FILTRES DES RÉSERVATIONS
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--filter-wrapper {
  margin-bottom: 26px !important;
  padding: 18px !important;
  background: rgba(255, 255, 255, 0.035) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 18px !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__row {
  display: grid !important;
  grid-template-columns: minmax(0, 2fr) minmax(180px, 1fr) auto !important;
  gap: 12px !important;
  margin: 0 !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__col {
  width: 100% !important;
  padding: 0 !important;
}

/* Deux dates */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__date-picker-col {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}

/* ----------------------------------------------------------
   09. INPUTS
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input__wrapper {
  min-height: 48px !important;
  padding: 0 14px !important;
  background: rgba(255, 255, 255, 0.045) !important;
  border: 1px solid rgba(255, 255, 255, 0.13) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  transition:
    border-color 0.3s ease,
    background 0.3s ease,
    box-shadow 0.3s ease !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input__wrapper:hover {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(46, 240, 208, 0.4) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input__wrapper:focus-within {
  border-color: var(--izi-green) !important;
  box-shadow: 0 0 0 2px rgba(46, 240, 208, 0.1) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input__inner {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-family: var(--font-text) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #fff !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input__inner::placeholder {
  color: rgba(234, 247, 245, 0.38) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input__prefix,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input__suffix {
  color: var(--izi-muted) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input__prefix svg,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input__suffix svg {
  color: inherit !important;
}

/* Input désactivé */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-input.is-disabled .bp-input__wrapper {
  background: rgba(255, 255, 255, 0.025) !important;
  border-color: rgba(255, 255, 255, 0.07) !important;
  opacity: 0.65 !important;
}

/* ----------------------------------------------------------
   10. BOUTONS
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-btn {
  min-height: 0 !important;
  padding: 14px 24px !important;
  border-radius: 999px !important;
  font-family: var(--font-text) !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  transition:
    background 0.3s ease,
    border-color 0.3s ease,
    color 0.3s ease,
    transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

/* Principal */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-btn--primary {
  background: var(--izi-orange) !important;
  border: 1px solid var(--izi-orange) !important;
  color: #fff !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-btn--primary:hover {
  background: var(--izi-green) !important;
  border-color: var(--izi-green) !important;
  color: var(--izi-bg) !important;
  transform: translateY(-2px) !important;
}

/* ----------------------------------------------------------
   11. ÉTAT "AUCUNE RÉSERVATION"
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-data-empty-view--my-bookings {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 220px !important;
  padding: 40px 24px !important;
  background: rgba(255, 255, 255, 0.025) !important;
  border: 1px dashed rgba(255, 255, 255, 0.15) !important;
  border-radius: 18px !important;
  text-align: center !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-dev__title {
  font-family: var(--font-title) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: rgba(234, 247, 245, 0.65) !important;
}

/* ----------------------------------------------------------
   12. PAGE "MON PROFIL"
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc {
  max-width: 720px !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc form {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 18px !important;
  padding: 0 !important;
}

/* Upload photo en pleine largeur */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc form .bp-row {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin: 0 !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc form .bp-col {
  padding: 0 !important;
}

/* Champs */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-form-item {
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-form-item__label {
  width: auto !important;
  height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  justify-content: flex-start !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-form-label {
  font-size: 13px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  color: rgba(234, 247, 245, 0.68) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc__req {
  color: var(--izi-orange) !important;
}

/* Bouton profil */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc__submit {
  grid-column: 1 / -1 !important;
  justify-self: start !important;
  margin-top: 4px !important;
}

/* ----------------------------------------------------------
   13. UPLOAD PHOTO
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-upload-component {
  width: 100% !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-upload,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-upload-dragger {
  width: 100% !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-upload-dragger {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 145px !important;
  padding: 24px !important;
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px dashed rgba(255, 255, 255, 0.18) !important;
  border-radius: 18px !important;
  color: var(--izi-muted) !important;
  transition:
    border-color 0.3s ease,
    background 0.3s ease !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bp-upload-dragger:hover {
  background: rgba(46, 240, 208, 0.04) !important;
  border-color: rgba(46, 240, 208, 0.45) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-upload-component__icon {
  margin-bottom: 8px !important;
  border: 1px solid #405055 !important;
  font-size: 8px !important;
  color: lightgrey;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-upload-component__text {
  max-width: 380px !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: var(--izi-muted) !important;
  text-align: center !important;
}

/* ----------------------------------------------------------
   14. SUPPRESSION DU COMPTE
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp-delete-account-belt {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  margin-top: 36px !important;
  padding: 22px 24px !important;
  background: rgba(255, 90, 43, 0.055) !important;
  border: 1px solid rgba(255, 90, 43, 0.2) !important;
  border-radius: 18px !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-dab-left__title {
  margin-bottom: 4px !important;
  font-family: var(--font-title) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #fff !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-dab-left__desc {
  max-width: 500px !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: var(--izi-muted) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc__delete-btn {
  background: transparent !important;
  border: 1px solid rgba(255, 90, 43, 0.55) !important;
  color: var(--izi-orange) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc__delete-btn:hover {
  background: var(--izi-orange) !important;
  border-color: var(--izi-orange) !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
}

/* ----------------------------------------------------------
   15. VERSION MOBILE DU MENU SUPÉRIEUR
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-nav__mobile {
  padding: 18px !important;
  background: rgba(4, 25, 31, 0.5) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tn__dropdown-head {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 7px 10px !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 999px !important;
  color: #fff !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tn__dropdown-head .bpa-cp-pd__avatar {
  width: 30px !important;
  height: 30px !important;
  border-width: 1px !important;
}

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-tn__dropdown-head .bpa-cp-pd__title {
  margin: 0 !important;
  font-family: var(--font-text) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

/* ----------------------------------------------------------
   16. FOCUS
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa_focusable:focus-visible {
  outline: 2px solid var(--izi-green) !important;
  outline-offset: 3px !important;
}

/* ----------------------------------------------------------
   17. TABLETTE
   ---------------------------------------------------------- */

@media (max-width: 1024px) {
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-customer-panel-container {
    grid-template-columns: 200px minmax(0, 1fr) !important;
  }
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp-left-sidebar {
    padding: 26px 16px !important;
  }
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp-body {
    padding: 30px 26px !important;
  }
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__row {
    grid-template-columns: 1fr 1fr !important;
  }
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__date-picker-col {
    grid-column: 1 / -1 !important;
  }
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__col:last-child {
    align-self: end !important;
  }
}

/* ----------------------------------------------------------
   18. MOBILE
   ---------------------------------------------------------- */

@media (max-width: 767px) {
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-customer-panel-container {
    display: block !important;
    border-radius: 22px !important;
  }

  /* Sidebar desktop masquée par BookingPress normalement */
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-nav__desktop {
    display: none !important;
  }

  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-nav__mobile {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp-body {
    padding: 24px 18px !important;
  }

  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-module-heading {
    margin-bottom: 20px !important;
    font-size: 23px !important;
  }

  /* Filtres */
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--filter-wrapper {
    padding: 14px !important;
  }

  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__row,
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__date-picker-col {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__date-picker-col {
    grid-column: auto !important;
  }

  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp--fw__col:last-child.bpa-front-btn {
    width: 100% !important;
  }

  /* Profil */
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc form {
    grid-template-columns: 1fr !important;
  }

  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc form.bp-row,
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc__submit {
    grid-column: 1 !important;
  }

  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc__submit {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Suppression */
  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-cp-delete-account-belt {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 18px !important;
  }

  .elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-pro-mb-acc__delete-btn {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* ----------------------------------------------------------
   19. EXCEPTIONS TYPOGRAPHIQUES
   À conserver à la fin du CSS
   ---------------------------------------------------------- */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-module-heading,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-module-heading *,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-cp-pd__title,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-dab-left__title,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-front-dev__title {
  font-family: var(--font-title) !important;
}

/* ==========================================================
   CORRECTION BOUTONS BOOKINGPRESS
   ========================================================== */

.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-frontend-main-container button.bpa-front-btn,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-frontend-main-container .bp-button.bpa-front-btn,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-frontend-main-container .bp-button.bpa-btn,
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-frontend-main-container button.bp-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 48px !important;
  height: auto !important;
  padding: 14px 24px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  font-family: var(--font-text) !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

/* Boutons pleine largeur uniquement lorsqu'ils le demandent */
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-frontend-main-container .bpa-front-btn--full-width {
  width: 100% !important;
}

/* Bouton principal */
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-frontend-main-container button.bpa-front-btn--primary {
  background: var(--izi-orange) !important;
  border: 1px solid var(--izi-orange) !important;
  color: #fff !important;
}

/* Hover */
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-frontend-main-container button.bpa-front-btn--primary:hover {
  background: var(--izi-green) !important;
  border-color: var(--izi-green) !important;
  color: var(--izi-bg) !important;
  transform: translateY(-2px) !important;
}

/* Le span interne ne doit pas écraser la hauteur */
.elementor-117 .elementor-element.elementor-element-ac27a70 .bpa-frontend-main-container button.bpa-front-btn > span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1.2 !important;
}/* End custom CSS */