
/* Boxed containers */
.e-con-boxed > .e-con-inner {
  width: min(calc(100% - (var(--container-padding) * 2)), var(--container-lg));
  margin-inline: auto;
}
.e-con-inner h2, .e-con-inner p {
  z-index:2;
}

/* Text widget */
.elementor-widget-text-editor p + p {
  margin-top: 1em;
}

/* Headings */
.elementor-widget-heading h1,
.elementor-widget-heading h2,
.elementor-widget-heading h3,
.elementor-widget-heading h4,
.elementor-widget-heading h5,
.elementor-widget-heading h6 {
  margin: 0;
}

/* Buttons */
.elementor-button,
a.elementor-button {
  border-radius: var(--radius-pill);
  transition: all var(--ease);
}

/* Forms */
.elementor-field,
.elementor-field-textual {
  min-height: 48px;
  border-radius: var(--radius-md);
}

/* Images */
.elementor img {
  height: auto;
}

/* Avoid random spacing collisions */
.elementor-widget:not(:last-child) {
  margin-bottom: 0;
}

/* buttons */


.elementor-widget-button .elementor-button {
  background-color: var(--color-accent) !important;
  color: var(--color-accent-contrast) !important;
}



.elementor-widget-button .elementor-button:hover,
.elementor-button:hover,
a.elementor-button:hover {
  background-color: var(--color-primary) !important;
  color: var(--color-primary-contrast) !important;
  transform: translateY(-1px);
}

.elementor-widget-button.b-outlined .elementor-button {
  background-color: rgba(255,255,255,0.5) !important;
  color: var(--color-accent) !important;
  border:1px solid var(--color-accent) !important;
}

.elementor-widget-button.btn-lg  .elementor-button {
  padding: 16px 30px;
  font-size: 1.4rem;
  border-radius: 999px;
  font-weight: 500;
}

.elementor-widget-button.btn-lg  .elementor-button:hover {
  transform: translateY(-1px);
}

@media (max-width: 1024px) {
  .elementor-29 .elementor-element.elementor-element-79e01cf.elementor-element {
      margin-left: auto;
  }
}

/* =========================
   Luxury text buttons
========================= */

.elementor-widget-button .elementor-button,
a.elementor-button,
.elementor-widget-form .elementor-button[type="submit"] {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;

  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -0.02em;

  color: var(--color-primary) !important;

  position: relative;
  border-radius: 0 !important;

  transition:
    color 0.3s ease,
    transform 0.3s ease;
}
.elementor-widget-form .elementor-button[type="submit"] span {
  justify-self: flex-start;
}

/* petite ligne */
.elementor-widget-button .elementor-button::after,
a.elementor-button::after,
.elementor-widget-form .elementor-button[type="submit"]::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -8px;

  width: 32px;
  height: 2px;

  background: var(--color-accent);

  transition:
    width 0.35s ease,
    opacity 0.35s ease;

  opacity: 0.8;
}

/* hover */
.elementor-widget-button .elementor-button:hover,
a.elementor-button:hover,
.elementor-widget-form .elementor-button[type="submit"]:hover {
  background: transparent !important;
  color: var(--color-accent) !important;

  transform: translateY(-1px);
}

/* ligne qui grandit */
.elementor-widget-button .elementor-button:hover::after,
a.elementor-button:hover::after,
.elementor-widget-form .elementor-button[type="submit"]:hover::after {
  width: 100%;
  opacity: 1;
}

@media (max-width: 1024px) {
  .elementor-43 .elementor-element.elementor-element-6e7b0a0::before, .elementor-43 .elementor-element.elementor-element-6e7b0a0 > .elementor-background-video-container::before, .elementor-43 .elementor-element.elementor-element-6e7b0a0 > .e-con-inner > .elementor-background-video-container::before, .elementor-43 .elementor-element.elementor-element-6e7b0a0 > .elementor-background-slideshow::before, .elementor-43 .elementor-element.elementor-element-6e7b0a0 > .e-con-inner > .elementor-background-slideshow::before, .elementor-43 .elementor-element.elementor-element-6e7b0a0 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before,
  .elementor-41 .elementor-element.elementor-element-2cbae46::before, .elementor-41 .elementor-element.elementor-element-2cbae46 > .elementor-background-video-container::before, .elementor-41 .elementor-element.elementor-element-2cbae46 > .e-con-inner > .elementor-background-video-container::before, .elementor-41 .elementor-element.elementor-element-2cbae46 > .elementor-background-slideshow::before, .elementor-41 .elementor-element.elementor-element-2cbae46 > .e-con-inner > .elementor-background-slideshow::before, .elementor-41 .elementor-element.elementor-element-2cbae46 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before,
  .elementor-44 .elementor-element.elementor-element-b54e07c::before, .elementor-44 .elementor-element.elementor-element-b54e07c > .elementor-background-video-container::before, .elementor-44 .elementor-element.elementor-element-b54e07c > .e-con-inner > .elementor-background-video-container::before, .elementor-44 .elementor-element.elementor-element-b54e07c > .elementor-background-slideshow::before, .elementor-44 .elementor-element.elementor-element-b54e07c > .e-con-inner > .elementor-background-slideshow::before, .elementor-44 .elementor-element.elementor-element-b54e07c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
    background-color: transparent;
    --background-overlay: '';
    background-image: linear-gradient(90deg, #faf8f2 39%, #faf8f2 74%);
  }
}

@media (max-width: 767px) {
  .elementor-43 .elementor-element.elementor-element-6e7b0a0,
  .elementor-44 .elementor-element.elementor-element-b54e07c,
  .elementor-41 .elementor-element.elementor-element-2cbae46 {
    --overlay-opacity: 0.8;
  }
  .elementor-29 .elementor-element.elementor-element-0c0115f {
    position: absolute;
    right: 12px;
    top: 40px;
  }
  }