/* -------------------------------------------
    Compatibility with Elementor
---------------------------------------------- */

@use "sass:math";

@import "../../../../assets/sass/config";
@import "../../../assets/sass/mixins/mixins";
@import "../../../assets/sass/mixins/direction";

.elementor div.row > .elementor-element {
  width: calc(100% / var(--alpus-col));
}

.elementor-row.row > .elementor-column {
  padding-left: var(--alpus-gap);
  padding-right: var(--alpus-gap);
}

.elementor-row.gutter-lg > .elementor-column {
  padding-right: var(--alpus-gap);
  padding-left: var(--alpus-gap);
}

.elementor-row.gutter-sm > .elementor-column {
  padding-right: var(--alpus-gap);
  padding-left: var(--alpus-gap);
}

.elementor-row.gutter-xs > .elementor-column {
  padding-right: var(--alpus-gap);
  padding-left: var(--alpus-gap);
}

.elementor-row.gutter-no > .elementor-column {
  padding-right: var(--alpus-gap);
  padding-left: var(--alpus-gap);
}

.elementor-section {
  display: flex;
  justify-content: center;

  .elementor-container {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

.elementor-row .elementor-column {
  min-height: 0;
}

.elementor-column > .elementor-element-empty {
  min-width: 100px;
}

.elementor-edit-area-active .elementor-inner-section:first-child {
  margin-top: 0;
}

.container
  .elementor-top-section:not(.elementor-section-stretched)
  > .elementor-container,
.container-fluid
  .elementor-top-section:not(.elementor-section-stretched)
  > .elementor-container,
.mfp-container
  .elementor-top-section:not(.elementor-section-stretched)
  > .elementor-container {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

.container
  .elementor-section-boxed:not(.elementor-section-stretched)
  > .elementor-container {
  width: 100%;
}

.elementor-container > .elementor-column > .elementor-element-populated,
.elementor-container
  > .elementor-row
  > .elementor-column
  > .elementor-element-populated
  > .elementor-widget-wrap {
  padding: var(--alpus-el-section-gap);
}

.elementor-section.elementor-section-boxed > .container-fluid {
  padding: 0;
}

.elementor-section.elementor-section-boxed > .elementor-container {
  max-width: calc(
    var(--alpus-container-width) - 4 * var(--alpus-gap) + 2 *
      var(--alpus-el-section-gap)
  );
}

.elementor-section.elementor-section-boxed
  > .container-fluid.elementor-container {
  max-width: calc(
    var(--alpus-container-fluid-width) - 4 * var(--alpus-gap) + 2 *
      var(--alpus-el-section-gap)
  );
}

.elementor-section > .elementor-container {
  margin-left: calc(-1 * var(--alpus-el-section-gap));
  margin-right: calc(-1 * var(--alpus-el-section-gap));
  width: calc(100% + 2 * var(--alpus-el-section-gap));
}

.elementor-column-gap-default {
  --alpus-el-section-gap: var(--alpus-gap);
}

.elementor-column-gap-no {
  --alpus-el-section-gap: 0px;
}

.elementor-column-gap-narrow {
  --alpus-el-section-gap: 5px;
}

.elementor-column-gap-extended {
  --alpus-el-section-gap: 15px;
}

.elementor-column-gap-wide {
  --alpus-el-section-gap: 20px;
}

.elementor-column-gap-wider {
  --alpus-el-section-gap: 30px;
}

.elementor-column-gap-custom {
  --alpus-el-section-gap: 0px;
}

.elementor-button-link .elementor-button-icon {
  text-decoration: none;
}

.elementor-background-overlay {
  background-color: transparent;
  opacity: 0;
}

.elementor-background-video-container .elementor-background-video-hosted {
  width: 100% !important;
  height: 100% !important;
}

// Responsive
@media (max-width: 479px) {
  .elementor-top-section.elementor-section-boxed > .elementor-container,
  .elementor-section-full_width
    .elementor-section-boxed
    > .elementor-container {
    width: calc(100% - 40px + 2 * var(--alpus-el-section-gap));
  }
  .elementor-top-section.elementor-section-boxed
    > .slider-container.slider-shadow,
  .elementor-section-full_width
    .elementor-section-boxed
    > .slider-container.slider-shadow {
    width: calc(100% - 10px) !important;
  }
}

.container,
.container-fluid {
  .elementor-section.elementor-section-boxed > .elementor-container {
    width: calc(100% + 2 * var(--alpus-el-section-gap));
  }
}

// Animation
.elementor-invisible {
  opacity: 0;
}

.appear-animation-visible {
  opacity: 1;
}

// Header Builder and footer builder
.elementor-column.elementor-col-flex-1,
.elementor-column[data-col="flex-1"],
.elementor-column.elementor-col-flex-auto,
.elementor-column[data-col="flex-auto"] {
  align-content: center;
  align-items: center;
}

.elementor-column.elementor-col-flex-1,
.elementor-column[data-col="flex-1"] {
  flex: 1;
}

.elementor-column.elementor-col-flex-1:last-child .elementor-widget-wrap,
.elementor-column[data-col="flex-1"]:last-child .elementor-widget-wrap {
  justify-content: flex-end;
}

.elementor-column.elementor-col-flex-1:nth-child(2):not(:last-child)
  .elementor-widget-wrap,
.elementor-column[data-col="flex-1"]:nth-child(2):not(:last-child)
  .elementor-widget-wrap {
  justify-content: center;
}

.custom-header {
  .elementor-column.elementor-col-flex-1,
  .elementor-column[data-col="flex-1"],
  .elementor-column.elementor-col-flex-auto,
  .elementor-column[data-col="flex-auto"] {
    width: auto;
  }
}

// Sticky Column
.alpus-sticky-column {
  align-items: flex-start;

  > .elementor-column-wrap,
  > .elementor-widget-wrap {
    position: sticky;
  }
}

// Parallax section
html.skrollr .parallax.elementor-section {
  background-image: none !important;
}

// Banner
.banner {
  figure img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: inherit;
  }
}

// Flex Wrap Section
.flex-wrap {
  > .elementor-container,
  > .elementor-container .elementor-row {
    flex-wrap: wrap;
  }
}
