
/* ============================================
   MWASI STUDIO - CSS FINAL DEFINITIF
   ============================================ */

/* === VIDEO PORTFOLIO 9:16 === */
.elementor-element-f5a98cc .elementor-widget-container,
.elementor-element-b2aef1c .elementor-widget-container,
.elementor-element-ef5e699 .elementor-widget-container,
.elementor-element-1a52d8a .elementor-widget-container,
.elementor-element-2df7718 .elementor-widget-container {
  aspect-ratio: 9 / 16 !important;
  overflow: hidden !important;
  height: auto !important;
}
.elementor-element-f5a98cc .elementor-widget-container video,
.elementor-element-b2aef1c .elementor-widget-container video,
.elementor-element-ef5e699 .elementor-widget-container video,
.elementor-element-1a52d8a .elementor-widget-container video,
.elementor-element-2df7718 .elementor-widget-container video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* === STUDIO* : overflow visible partout === */
.elementor-element-f97ed0a,
.elementor-element-93910fb {
  overflow: visible !important;
  width: 100% !important;
}
.elementor-element-f97ed0a .elementor-heading-title,
.elementor-element-93910fb .elementor-heading-title {
  overflow: visible !important;
  white-space: nowrap !important;
  display: block !important;
}

/* === DESKTOP >= 1025px === */
@media (min-width: 1025px) {
  .elementor-element-f5a98cc,
  .elementor-element-b2aef1c,
  .elementor-element-ef5e699,
  .elementor-element-1a52d8a,
  .elementor-element-2df7718 {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 6px !important;
  }
}

/* === TABLETTE 768px - 1024px === */
@media (min-width: 768px) and (max-width: 1024px) {

  /* Videos 2 par 2 */
  .elementor-element-f5a98cc,
  .elementor-element-b2aef1c,
  .elementor-element-ef5e699,
  .elementor-element-1a52d8a,
  .elementor-element-2df7718 {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 6px !important;
  }

  /* Studio* tablette */
  .elementor-element-f97ed0a .elementor-heading-title,
  .elementor-element-93910fb .elementor-heading-title {
    font-size: clamp(4rem, 11vw, 9rem) !important;
    line-height: 1 !important;
  }

  /* Bouton tablette pleine largeur */
  .elementor-element-15d7b75,
  .elementor-element-737308f {
    width: 100% !important;
    max-width: 100% !important;
  }
  .elementor-element-15d7b75 .elementor-button-wrapper,
  .elementor-element-737308f .elementor-button-wrapper,
  .elementor-element-15d7b75 .elementor-button,
  .elementor-element-737308f .elementor-button {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  /* Textes tablette */
  .elementor-5550 .elementor-widget-text-editor p {
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    max-width: 100% !important;
  }

  /* Espaces titres/textes tablette */
  .elementor-element-99bc5e7, .elementor-element-36c4ded,
  .elementor-element-7e9dd48, .elementor-element-d92e956,
  .elementor-element-9c90985, .elementor-element-4cc7ad4,
  .elementor-element-71fdfd3, .elementor-element-2423a6a {
    margin-bottom: 8px !important;
  }
}

/* === MOBILE <= 767px === */
@media (max-width: 767px) {

  /* Studio* mobile : 13vw pour tenir sur une ligne */
  .elementor-element-f97ed0a .elementor-heading-title,
  .elementor-element-93910fb .elementor-heading-title {
    font-size: 13vw !important;
    letter-spacing: -1px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-align: center !important;
    display: block !important;
    width: 100% !important;
  }

  /* Videos mobile 1 colonne */
  .elementor-element-f5a98cc,
  .elementor-element-b2aef1c,
  .elementor-element-ef5e699,
  .elementor-element-1a52d8a,
  .elementor-element-2df7718 {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }

  /* Bouton mobile pleine largeur */
  .elementor-element-15d7b75,
  .elementor-element-737308f {
    width: 100% !important;
    max-width: 100% !important;
  }
  .elementor-element-15d7b75 .elementor-button-wrapper,
  .elementor-element-737308f .elementor-button-wrapper,
  .elementor-element-15d7b75 .elementor-button,
  .elementor-element-737308f .elementor-button {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    box-sizing: border-box !important;
    text-align: center !important;
    padding: 14px 20px !important;
  }

  /* Textes mobile */
  .elementor-5550 .elementor-widget-text-editor,
  .elementor-5550 .elementor-widget-heading {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    box-sizing: border-box !important;
  }

  /* Espaces titres/textes mobile */
  .elementor-element-99bc5e7, .elementor-element-36c4ded,
  .elementor-element-a254543, .elementor-element-6ac4e31,
  .elementor-element-4355a3d, .elementor-element-f1f283e,
  .elementor-element-7e9dd48, .elementor-element-d92e956,
  .elementor-element-9c90985, .elementor-element-4cc7ad4,
  .elementor-element-71fdfd3, .elementor-element-2423a6a {
    margin-bottom: 8px !important;
  }
}

/* --- Stats grille 2x2 sur mobile --- */
@media (max-width: 767px) {
  .elementor-element-78cce9f {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
    flex-direction: unset !important;
  }
  .elementor-element-dcacb31 {
    width: 100% !important;
  }
}

/* --- Bouton DISCUTONS : fix tablette --- */
@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-element-737308f {
    width: auto !important;
    max-width: 100% !important;
  }
  .elementor-element-737308f .elementor-button {
    white-space: nowrap !important;
    width: auto !important;
    display: inline-block !important;
    padding: 14px 30px !important;
  }
}
