

/* === content-10-title-left-text-right === */

.content-10-til-txr {
    margin: var(--block-margin) 0;
    overflow-x: hidden;
    overflow-x: clip;
    overflow-y: visible;
}

.content-10-til-txr .row {
    --bs-gutter-y: var(--bs-gutter-x);
}

.content-title:last-child {
    margin-bottom: 0;
}

@media screen and (min-width: 992px) {
    .content-10-til-txr .col-left {
        padding-right: calc(var(--bs-gutter-x) / 2 + 3rem);
    }

    .content-10-til-txr .content-text {
        padding-top: .75rem;
    }
}

@media screen and (min-width: 1200px) {
    .content-10-til-txr .col-left {
        padding-right: calc(var(--bs-gutter-x) / 2 + 5rem);
    }
}

@media screen and (max-width: 767.98px) {
    .content-10-til-txr {
        margin: var(--block-margin) 0 calc(var(--block-margin) - 20px);
    }
}
/* === content-10-title-left-text-right === */



/* === installation-01 === */

.installation-01 {
    margin: var(--block-margin) 0;
}

.installation-01 .row {
    --bs-gutter-y: var(--bs-gutter-x);
}

.installation-01-subtitle {
    font-size: 12px;
    line-height: 1;
    letter-spacing: .2em;
    font-weight: 600;
    font-family: var(--h1-font);
    margin-bottom: 2rem;
    color: var(--button-background);
    text-transform: uppercase;
}

.installation-01-wrapper {
    display: flex;
    flex-direction: column;
    padding: 2.5rem;
    padding-left: 2rem;
    background-color: #fff;
    border-radius: var(--bs-border-radius, 10px);
    height: 100%;
}

.installation-01-link {
    color: var(--body-color);
    text-decoration: none;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 0;
    transition: all 0.2s cubic-bezier(.39, .58, .57, 1);
}

.installation-01-link:focus-visible {
    padding-left: 1rem;
    outline: 2px solid var(--button-background);
    outline-offset: 1px;
    border-radius: var(--bs-border-radius, 10px);
    z-index: 1;
    position: relative;
}

.installation-01-link:hover {
    text-decoration: none;
    color: var(--button-background);
    transform: translateX(1rem);
}

.installation-01-link::after {
    content: "\f054";
    font-family: "Font Awesome 6 Pro";
    font-weight: 400;
    font-size: 24px;
    line-height: 1;
    color: var(--button-background);
    padding: 0 1rem;
}


.installation-01-link h3 {
    font-size: var(--h3-fontsize);
    font-weight: var(--h3-fontweight);
    font-family: var(--h3-font);
    margin-bottom: 0;
    position: relative;
    padding-right: 2px;
    text-wrap: nowrap;
}

.installation-01-link {
    counter-increment: installation-counter;
}

.installation-01-wrapper {
    counter-reset: installation-counter;
}

.installation-01-link h3::before {
    content: "0" counter(installation-counter) ".";
    position: absolute;
    top: -6px;
    left: 100%;

    font-family: var(--body-font);
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    color: #c1c1c1;
    letter-spacing: -.025em;

    transition: color 0.2s cubic-bezier(.39, .58, .57, 1);
}

.installation-01-link:hover h3::before {
    color: var(--button-background);
}

.installation-01-item {
    border-top: 1px solid #e9e9e9;
}

.installation-01-item:last-child {
    border-bottom: 1px solid #e9e9e9;
}

@media screen and (max-width: 991.98px) {
    .installation-01-link::after {
        padding-right: 0;
        transition: all 0.2s cubic-bezier(.39, .58, .57, 1);
    }

    .installation-01-link:focus-visible:after {
        padding-right: 1rem;
    }

    .installation-01-wrapper {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

@media screen and (max-width: 767.98px) {
    .installation-01-subtitle {
        font-size: 12px;
        line-height: 16px;
    }

    .installation-01-link h3 {
        font-size: var(--h4-fontsize);
        line-height: var(--h3-fontsize);
    }

    .installation-01-link::after {
        content: unset;
    }

    .installation-01-wrapper {
        padding: 2rem;
    }

    .installation-01 {
        margin: calc(var(--block-margin) - 20px) 0 var(--block-margin);
    }
}

@media screen and (max-width: 575.98px) {
    .installation-01-link::after {
        content: "\f054";
    }
}

@media screen and (max-width: 340px) {
    .installation-01-link::after {
        content: unset;
    }
}
/* === installation-01 === */



/* === call-to-action-01 === */


#call-to-action-01-1181 {
	 --cta-01-background: rgb(233, 141, 60);
	 --cta-01-background-image: url(/images/banner-cta.jpg);
	 --cta-01-color: #fff;
}

.cta-01 {
    background-color: var(--cta-01-background);
    color: var(--cta-01-color);
    text-align: center;
    position: relative;
    overflow: hidden;
}

.cta-01::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background-image: var(--cta-01-background-image);
    background-position: center center;
    background-size: cover;
    mix-blend-mode: multiply;
}

.cta-01 .container {
    padding-top: calc(var(--block-padding) * 2);
    padding-bottom: calc(var(--block-padding) * 1.75);
    position: relative;
    z-index: 2;
}

.cta-01 .container::after {
    content: "";
    position: absolute;
    height: 392px;
    width: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('../images/default/background-regular.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: -1;
    bottom: calc(235px - 392px);
    opacity: 0.12;
}

.cta-01-content {
    max-width: 720px;
    margin: 0 auto;
    display: flex;
    flex-flow: column nowrap;
    gap: 1rem;
}

.cta-01-title {
    margin-bottom: 0;
    padding-inline: 0;
}

.cta-01-text,
.cta-01-text p {
    font-size: 24px;
    line-height: 28px;
}

.cta-01-text p:last-child {
    margin-bottom: 0;
}

.cta-01-btn {
    width: fit-content;
    min-width: 230px;
    margin: 0 auto;
}

.cta-01 p a {
    color: #fff;
    text-wrap: nowrap;
}

.cta-01 p a:where(:hover, :focus-visible, :active) {
    color: #fff;
}

@media screen and (max-width: 1199.98px) and (min-width: 992px) {

    .cta-01 .container {
        padding-top: calc(var(--block-padding) * 2.5);
        padding-bottom: calc(var(--block-padding) * 2);
    }
}

@media screen and (max-width: 991.98px) {
    .cta-01-text {
        text-wrap: balance;
    }

    .cta-01 .container::after {
        width: 124%;
        left: -12%;
    }
}

@media screen and (max-width: 575.98px) {
    .cta-01-btn {
        min-width: unset;
        max-width: 300px;
        width: 100%;
    }

    .cta-01 .container::after {
        left: 50%;
        transform: translateX(-44%);
        width: 1000px;
    }
}
/* === call-to-action-01 === */



/* === tab-slider-01 === */

.tab-slider-01 {
  --block-background: #ffffff;
  margin-top: var(--block-padding, 80px);
  color: var(--body-color);
  overflow-x: hidden;
  overflow-x: clip;
  overflow-y: visible;
}

.tab-slider-01 .tab-slider-title {
  margin-bottom: 1rem;
}

@media screen and (min-width: 992px) {
  .tab-slider-01 .col-left {
    padding-right: calc(var(--bs-gutter-x) / 2 + 3rem);
  }
}

@media screen and (min-width: 1200px) {
  .tab-slider-01 .col-left {
    padding-right: calc(var(--bs-gutter-x) / 2 + 5rem);
  }
}

.tab-slider-01 .tabs-scroll-container {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  margin: 0 auto;
  max-width: 100%;
}

.tab-slider-01 .tabs-wrapper {
  position: relative;
  width: 100%;
}

.tab-slider-01 .tabs-wrapper::before {
  content: "";
  width: 100vw;
  height: 1px;
  position: absolute;
  top: 0;
  left: calc((100vw - 100%) * -.5);
  display: block;
  background-color: #dcdcdc;
}

.tab-slider-01 .nav-tabs-container {
  overflow-x: auto;
  overflow-y: hidden;
  overflow-y: clip;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  width: 100%;
}

.tab-slider-01 .nav-tabs-container::-webkit-scrollbar {
  display: none;
}

.tab-slider-01 .nav-tabs {
  border: unset;
  display: inline-flex;
  flex-wrap: nowrap;
  margin: 0;
  padding: 2px 0 0;
  width: max-content;
  min-width: 100%;
  gap: 3rem;
}

.tab-slider-01 .nav-tab-item {
  display: flex;
  white-space: nowrap;
  flex: 0 0 auto;
}

.tab-slider-01 .nav-tabs .nav-link {
  border: unset;
  border-radius: 0;
  text-decoration: none;
  padding: 1.75rem 0 1.75rem;
  position: relative;
  white-space: nowrap;
  flex-shrink: 0;
  font-size: 12px;
  line-height: 1;
  letter-spacing: .2em;
  font-weight: 600;
  font-family: var(--h1-font);
  color: var(--button-background);
  text-transform: uppercase;
  transition: padding .3s ease, color .3s ease;
}

.tab-slider-01 .nav-tabs .nav-link:first-child {
  padding-left: 0;
}

.tab-slider-01 .nav-tabs .nav-link.active {
  background-color: transparent;
  color: var(--body-color);
}

.tab-slider-01 .nav-tabs .nav-link:focus-visible {
  box-shadow: unset;
  outline: 2px solid var(--button-background);
  outline-offset: -2px;
}

.tab-slider-01 .nav-tabs .nav-link::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 100%;
  height: 2px;

  background: linear-gradient(0deg, var(--body-color), var(--body-color)) no-repeat right bottom / 0 var(--bg-h);
  transition: background-size 350ms !important;
  --bg-h: 100%;
  padding-bottom: 0px;
  --bg-h: 2px;
  text-decoration: none;
  color: var(--button-background);
}

.tab-slider-01 .nav-tabs .nav-link.active::before {
  content: "";
  background-size: 100% var(--bg-h);
  background-position-x: left;
  text-decoration: none;
  color: var(--button-background);
}

.tab-slider-01 .tab-scroll-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 50%;
  background-color: var(--button-background);
  color: var(--button-color);
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  transition: opacity 0.3s ease;
  opacity: 0;
  pointer-events: none;
  color: var(--body-background);
}

.tab-slider-01 .tab-scroll-btn i {
  font-weight: 900;
}

.tab-slider-01 .tab-scroll-btn:hover {
  background-color: var(--button-background-hover,
      rgb(233, 141, 60));
}

.tab-slider-01 .tab-scroll-prev {
  left: 0;
}

.tab-slider-01 .tab-scroll-next {
  right: 0;
}

.tab-slider-01 .tab-scroll-btn.show {
  opacity: 1;
  pointer-events: all;
}

.tab-slider-01 .tab-scroll-btn.disabled {
  opacity: 0;
  cursor: default;
  pointer-events: none;
}

.tab-slider-01 .tabs-scroll-container.no-scroll .tab-scroll-btn {
  opacity: 0;
  cursor: default;
  pointer-events: none;
}

@media (max-width: 768px) {
  .tab-slider-01 .tabs-wrapper {
    max-width: calc(100% - 60px);
  }

  .tab-slider-01 .tab-scroll-btn {
    width: 24px;
    height: 24px;
    font-size: 12px;
  }
}

.tab-slider-01 .tab-content {
  padding: 2rem 0 var(--block-padding);
}

.tab-slider-01 .tab-content-bg {
  width: 100%;
  background-color: var(--block-background,
      #ffffff);
}

.tab-slider-01 .tab-content-bg .container {
  position: relative;
}

.tab-slider-01 .tab-content-bg .container .row {
  position: relative;
  z-index: 1;
}

.tab-slider-01 .tab-content .row {
  --bs-gutter-y: var(--bs-gutter-x);
}

/* .tab-slider-01 .tab-content .slick-slide {
  margin: 0 calc(var(--bs-gutter-y) * 0.5);
}

.tab-slider-01 .tab-content .slick-list {
  margin: 0 calc(var(--bs-gutter-y) * -0.5);
}
 */
.tab-slider-01 .tab-content-bg .overlay {
  position: absolute;
  width: 45%;
  height: 250px;
  right: 0;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  overflow: hidden;
  z-index: 0;
}

.tab-slider-01 .tab-content-bg .overlay svg {
  fill: var(--button-background, rgb(233, 141, 60));
  position: absolute;
  bottom: 0;
}

.tab-slider-01 .tab-content ul li {
  font-size: 18px;
  line-height: 26px;
  margin-bottom: 12px;
  display: flex;
  font-weight: var(--font-weight-text);
}

.tab-slider-01 .tab-content ul {
  list-style: none;
  padding-left: 0;
  text-align: left;
  margin-bottom: 0;
  column-count: 2;
}

.tab-slider-01 .tab-content ul:not(:last-child) {
  margin-bottom: 1.5rem;
}

.tab-slider-01 .tab-content ul li::before {
  content: "";
  padding-right: 10px;
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  color: var(--button-background);
  margin-top: -2px;
}

.tab-slider-01 .tab-content ul li:last-child {
  margin-bottom: 0;
}

.tab-slider-01 h3 {
  font-size: calc(var(--h3-fontsize, 28px) + 2px);
  line-height: 1;
  margin-bottom: 1.5rem;
  text-wrap: balance;
  color: var(--button-background);
}

.tab-slider-01 h4 {
  line-height: 1;
  margin-bottom: 1.5rem;
  margin-top: 2rem;
  padding-top: 2rem;
  text-wrap: balance;
  position: relative;
}

.tab-slider-01 h4::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  top: 0;
  display: block;
  background-color: var(--button-background);
}

.tab-slider-01 .tab-content h2 {
  line-height: 0.8;
  margin-bottom: 30px;
}

.tab-slider-01 .tab-text p {
  font-weight: var(--font-weight-text);
}

.tab-slider-01 .tab-text p:last-child {
  margin-bottom: 0;
}

.tab-slider-01 .tab-text {
  font-size: 18px;
  line-height: 26px;
  color: var(--body-color);
}

.tab-slider-01 .tab-card-text {
  color: var(--body-color);
  font-size: 18px;
  line-height: 36px;
  text-wrap: balance;
  letter-spacing: -0.01em;
}

.tab-slider-01 .col-images {
  --slider-height: 440px;
  /* max-height: min(var(--slider-height), 100svh); */
  height: var(--slider-height);
  position: relative;
}

.tab-slider-01 .col-images .slider-overlay {
  position: absolute;

  --slider-overlay-padding: 30px;

  /* bottom: calc(100% - calc(min(var(--slider-height), 100svh) + var(--block-margin, 80px)*2) + var(--slider-overlay-padding) - 30px); */
  right: var(--slider-overlay-padding);
  height: var(--slider-height);
  width: 200px;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  overflow: hidden;
  z-index: 2;
}

.tab-slider-01 .col-images .slider-overlay svg {
  fill: var(--button-background, rgb(233, 141, 60));
}

.tab-slider-01 .col-images .tab-image-slider {
  transition: 0.3s opacity;
  opacity: 0;
}

.tab-slider-01 .col-images .tab-image-slider.slick-initialized {
  opacity: 1;
}

.tab-slider-01 .tab-image-slider .slick-slide {
  background-color: var(--body-background);
}

.tab-slider-01 .slick-track {
  height: var(--slider-height) !important;
  min-width: 100%;
  opacity: 1 !important;
}

.tab-slider-01 .col-images img {
  width: 100%;
  height: var(--slider-height) !important;
  /* height: calc(min(var(--slider-height), 100svh) + var(--block-margin, 80px)*2); */
  object-fit: cover;
  position: relative;
  overflow: hidden;
  object-fit: cover;
}

.tab-slider-01 .col-images img::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: var(--body-background);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.tab-slider-01 .col-images img::after {
  content: "🏞️" " " attr(alt);
  font-size: 18px;
  background-color: var(--body-background);
  display: block;
  position: absolute;
  z-index: 2;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.tab-slider-01 .tab-content-border-left {
  position: relative;
}

.tab-slider-01 .tab-content-border-left::before {
  content: "";
  position: absolute;
  margin: 2% 0 3%;
  height: 95%;
  left: 0;
  border-left: 1px solid #cecece;
}

.tab-slider-01 .tab-image-slider {
  position: relative;
  /* overflow-x: hidden;
    overflow-x: clip;
    overflow-y: visible; */
  height: var(--slider-height);
  /*     height: calc(min(var(--slider-height), 100svh) + var(--block-margin, 80px)*2); */
}

.tab-slider-01 .tab-image-slider:not(.slick-initialized) {
  display: flex;
  flex-direction: row;
  gap: var(--bs-gutter-x, 34px);
  opacity: 1 !important;
}

.tab-slider-01 .tab-image-slider:not(.slick-initialized)>div {
  display: none;
}

.tab-slider-01 .tab-image-slider:not(.slick-initialized)>div>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.tab-slider-01 .tab-image-slider:not(.slick-initialized)>div:nth-child(1) {
  display: block !important;
  width: 100%;

  object-position: center;
  border-radius: var(--bs-border-radius, 10px);
  background-color: var(--body-background);
}

.tab-slider-01 .tab-image-slider .slick-list {
  overflow: hidden !important;
  border-radius: var(--bs-border-radius, 10px);
}

.tab-slider-01 .tab-image-slider .slick-slide {
  height: 100%;
}

.tab-slider-01 .tab-image-slider .slick-slide>div {
  height: 100%;
}

.tab-slider-01 .tab-image-slider .slick-arrow {
  position: absolute;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  color: #fff;
  font-size: 0;
  width: var(--button-size, 70px);
  height: var(--button-size, 70px);
  cursor: pointer;
  background-color: var(--block-background,
      #ffffff);
  border-radius: 50%;
  padding: 0;
  --button-size: 70px;
}

.tab-slider-01 .tab-image-slider .slick-prev {
  left: calc(var(--button-size, 70px) * -.5);
}

.tab-slider-01 .tab-image-slider .slick-next {
  right: calc(var(--button-size, 70px) * -.5);
}

.tab-slider-01 .tab-image-slider .slick-arrow i {
  text-decoration: none;
  font-style: normal;
  width: var(--button-size, 70px);
  height: var(--button-size, 70px);
  font-size: 28px;
  font-weight: 400;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--button-background);
}

@media screen and (max-width: 1399.97px) {}

@media screen and (max-width: 1199.97px) {
  .tab-slider-01 .col-images {
    --slider-height: 360px;
  }

  .tab-slider-01 {
    margin-top: var(--block-margin, 80px);
  }

  .tab-slider-01 .tab-content {
    padding-bottom: calc(var(--block-margin, 65px) + 10px);
  }
}

@media screen and (max-width: 1199.97px) and (min-width: 992px) {
  .tab-slider-01 .tab-content ul {
    column-count: 1;
  }

  .tab-slider-01 .col-images {
    --slider-height: 560px;
  }
}

@media screen and (max-width: 991.97px) {

  .tab-slider-01 .tab-content .row {
    --bs-gutter-x: 34px;
    --bs-gutter-y: 34px;
  }

  .tab-slider-01 .col-images {
    --slider-height: 450px;
  }

  .tab-slider-01 .nav-tabs {
    gap: 2rem;
  }

  .tab-slider-01 h4 {
    margin-top: 2.25rem;
    padding-top: 2.25rem;
  }
}

@media screen and (max-width: 767.97px) {
  .tab-card-text>p {
    display: inline-grid;
    display: -moz-inline-grid;
    display: -ms-inline-grid;
  }

  .tab-card-text>p>b:not(:first-child) {
    margin-top: 10px;
  }

  .tab-slider-01 .nav-tabs {
    gap: 3rem;
  }

  .tab-slider-01 .col-images {
    --slider-height: 340px;
  }
}

@media screen and (max-width: 575.97px) {

  .tab-slider-01 .nav-tabs {
    gap: 2rem;
  }

  .tab-slider-01 .tabs-wrapper {
    max-width: calc(100% - 60px);
  }

  .tab-slider-01 .tabs-scroll-container {
    width: calc(100% + 60px);
    max-width: unset;
    left: -30px;
  }

  .tab-slider-01 .tabs-wrapper {
    margin: 0 30px;
  }

  .tab-slider-01 .tab-scroll-prev {
    left: 3px;
  }

  .tab-slider-01 .tab-scroll-next {
    right: 3px;
  }

  .tab-slider-01 .tab-content ul {
    column-count: 1;
  }

  .tab-slider-01 .col-images {
    --slider-height: 320px;
  }

  .tab-slider-01 .tab-content {
    padding-bottom: var(--block-margin, 60px);
  }
}
/* === tab-slider-01 === */



/* === content-05-image-left-text-right === */

.content-05 {
    background-color: #1d1d1d;
    padding: var(--block-padding) 0;
    position: relative;
    z-index: 2;
    color: #fff;
    overflow: hidden;
}

.content-05 .container {
    position: relative;
}

.content-05 .container::before {
    content: "";
    background-image: url('/images/default/background-left.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center left;
    position: absolute;
    top: 14%;
    transform: translateY(-430px);
    right: 5rem;
    height: 1043px;
    width: 392px;
    z-index: -1;
    filter: brightness(0) saturate(100%) invert(11%) sepia(99%) saturate(0%) hue-rotate(257deg) brightness(85%) contrast(93%);
}

.content-05 .row {
    --bs-gutter-y: var(--bs-gutter-x);
}

@media screen and (min-width: 992px) {
    .content-05 .col-text {
        padding-left: calc(var(--bs-gutter-x) / 2 + 3rem);
    }
}

@media screen and (min-width: 1200px) {
    .content-05 .col-text {
        padding-left: calc(var(--bs-gutter-x) / 2 + 5rem);
    }
}

.content-05 span.subtitle {
    color: #8e8e8e;
    margin-bottom: 1.5rem;
}

.content-05-title {
    margin-bottom: 1.5rem;
}

.content-05-text {
    margin-bottom: 1.5rem;
}

.content-05-text p:last-child {
    margin-bottom: 0;
}

.content-05 .btn {
    width: fit-content;
}

.content-05-wrapper {
    display: flex;
    flex-flow: column;
    justify-content: center;
    height: 100%;
}

.content-05-wrapper>*:last-child {
    margin-bottom: 0;
}

.content-05 img {
    width: 100%;
    height: 100%;
    position: relative;
    min-height: 480px;
    object-fit: cover;
    object-position: center;
    border-radius: var(--bs-border-radius, 10px);
}

@media screen and (max-width: 991.98px) and (min-width: 768px) {
    .content-05 .col-image {
        padding-right: calc(var(--bs-gutter-x) / 2 + 2rem);
    }
}

@media screen and (max-width: 767.98px) and (min-width: 576px) {
    .content-05 .col-image {
        padding-right: calc(var(--bs-gutter-x) / 2 + 1rem);
    }
}

@media (max-width: 991.98px) {

    .content-05 {
        padding: calc(var(--block-padding) + 15px) 0;
    }

    .content-05 img {
        min-height: 320px;
        max-height: 440px;
    }

    .content-05 .container::before {
        right: 1rem;
        width: 392px;
        top: 12%;
    }
}

@media screen and (max-width: 767.98px) {

    .content-05 .container::before {
        content: unset;
    }

}

@media screen and (max-width: 575.98px) {

    .content-05 {
        padding: var(--block-padding) 0;
    }

    .content-05 .col-image {
        display: none;
    }

    .content-05-image {
        margin-bottom: 1.5rem;
    }

    .content-05 .btn {
        width: 100%;
        max-width: 300px;
    }

}
/* === content-05-image-left-text-right === */



/* === our-benefits-01 === */

.our-benefits-01 {
    color: var(--body-color);
    background-color: #f5f5f5;
    padding: calc(var(--block-margin, 70px) + 10px) 0;

    --block-height: 375px;
    --closed-width: 120px;
    --button-height: 55px;
}

.our-benefits-01 .row {
    --bs-gutter-x: 1rem;
}

.our-benefits-01 span.subtitle {
    margin-bottom: 2rem;
}

.our-benefits-01 .our-benefits-title {
    margin-bottom: 2rem;
    text-wrap: balance;
}

.our-benefits-01 .our-benefits-wrapper {
    display: flex;
    gap: var(--bs-gutter-x, 2rem);
    align-items: stretch;
    min-height: var(--block-height, 375px);
    width: 100%;
}

.our-benefits-01 .benefit-item {
    transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1), filter 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: width, filter;
    position: relative;
    width: var(--closed-width, 120px);
    overflow: hidden;
    display: flex;
    padding: 0;
    height: var(--block-height, 375px);
    filter: drop-shadow(0 0 0px rgba(0, 0, 0, 0));
}

.our-benefits-01 .benefit-item.active {
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1));
    width: calc(100% - (var(--closed-width, 120px) * 4) - (var(--bs-gutter-x, 2rem) * 4));
    flex-shrink: 0;
}

.our-benefits-01 .benefit-closed-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    background-color: #e4e4e4;
    border-radius: 12px;
    min-height: var(--block-height, 375px);
    height: 100%;
    gap: 1rem;
    width: var(--closed-width, 120px);
    padding: 2rem;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.6s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.6s cubic-bezier(0.4, 0, 0.2, 1), padding 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform, opacity, visibility, background-color, padding;
    opacity: 1;
    visibility: visible;
    transform: translateX(0) scale(1);
    cursor: pointer;
}

.our-benefits-01 .benefit-active-state {
    display: flex;
    gap: 0;
    align-items: center;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transform: translateX(0px);
    transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.6s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: opacity, visibility, background-color;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
}

.our-benefits-01 .benefit-item.active .benefit-closed-state {
    transform: translateX(1 * var(--closed-width, 120px));
    pointer-events: none;
    padding-left: 0;
    padding-right: 0;
    position: absolute;
    background-color: #fff;
}

.our-benefits-01 .benefit-closed-state::after {
    content: "";
    bottom: 0;
    left: 0;
    display: block;
    height: calc(.5* var(--button-height, 55px) + 2rem);
    width: 100%;
    background: #e4e4e4;
    z-index: 1;
    position: absolute;
    border-radius: 0 0 var(--bs-border-radius, 10px) var(--bs-border-radius, 10px);
    transition: background-color 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: background-color;
}

.our-benefits-01 .benefit-item.active .benefit-closed-state::after {
    background-color: #fff;
}

.our-benefits-01 .benefit-item.active .benefit-active-state {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
    position: relative;
    border-radius: var(--bs-border-radius, 10px);
    height: 100%;
    min-height: fit-content;
    left: 0;
    z-index: 1;
}

/* Closed state elements */
.our-benefits-01 .benefit-vertical-title {
    writing-mode: sideways-lr;
    font-size: var(--h3-fontsize, 28px);
    line-height: 1;
    font-family: var(--h3-font);
    font-weight: var(--h3-fontweight, 600);
    color: var(--body-color);
    letter-spacing: -.025em;
    text-wrap: balance;
    height: auto;
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    text-align: left;
    opacity: 1;
    transform: translateY(0.1px) translateZ(0);
    transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    /* dont use flex: 1; it breaks writing-mode in firefox */
    height: calc(var(--block-height, 375px) - (var(--button-height, 55px) + 2rem + 2rem + 1rem));
}

.our-benefits-01 .benefit-item.active .benefit-closed-state .benefit-vertical-title {
    transform: translateY(var(--block-height, 375px)) translateZ(0);
}

.our-benefits-01 .benefit-number-btn {
    width: var(--button-height, 55px);
    height: var(--button-height, 55px);
    aspect-ratio: 1/1;
    border-radius: 50%;
    background-color: var(--button-background, #e9903c);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 400;
    font-family: var(--h3-font);
    transition: opacity 0.3s linear, background-color 0.3s linear;
    will-change: opacity, background-color;
    position: relative;
    z-index: 2;
    opacity: 1;
}

.our-benefits-01 .benefit-item.active .benefit-number-btn {
    background-color: #1d1d1d;
}

.our-benefits-01 .benefit-content-card {
    flex: 0 0 360px;
    flex: 0 0 min(360px, calc(100% - (var(--button-height, 55px) + 4rem)));
    min-width: 300px;
    max-height: var(--block-height, 375px);
    position: relative;
    height: 100%;
    padding: 2rem;
    opacity: 1;
    border-radius: var(--bs-border-radius, 10px) 0 0 var(--bs-border-radius, 10px);
    background-color: #ffffff;
}

@media screen and (min-width: 1400px) {
    .our-benefits-01 .benefit-content-card {
        flex: 0 0 390px;
        flex: 0 0 min(390px, calc(100% - (var(--button-height, 55px) + 4rem)));
        min-width: 390px;
    }
}

@media screen and (min-width: 1200px) {
    .our-benefits-01 .benefit-content-card {
        min-width: 360px;
    }
}

.our-benefits-01 .benefit-item.active .benefit-content-card {
    background-color: #fff;
    opacity: 1;
}

.our-benefits-01 .benefit-card-number {
    font-size: 14px;
    font-weight: 400;
    color: #c1c1c1;
    margin-bottom: 1rem;
    letter-spacing: -.025em;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.4s ease 0.3s, transform 0.4s ease 0.3s;
    will-change: opacity, transform;
}

.our-benefits-01 .benefit-item.active .benefit-card-number {
    opacity: 1;
    transform: translateY(0);
}

.our-benefits-01 .benefit-card-title {
    font-size: var(--h3-fontsize, 28px);
    line-height: 1;
    margin-bottom: 1rem;
    color: var(--button-background, #e9903c);
    text-wrap: balance;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.5s ease 0.4s, transform 0.5s ease 0.4s;
    will-change: opacity, transform;
}

.our-benefits-01 .benefit-item.active .benefit-card-title {
    opacity: 1;
    transform: translateY(0);
}

.our-benefits-01 .benefit-card-text {
    font-size: 18px;
    line-height: 26px;
    color: var(--body-color);
    letter-spacing: -.025em;
    margin-bottom: calc(2rem + var(--button-height, 55px));
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.5s ease 0.5s, transform 0.5s ease 0.5s;
    will-change: opacity, transform;
}

.our-benefits-01 .benefit-item.active .benefit-card-text {
    opacity: 1;
    transform: translateY(0);
}

.our-benefits-01 .benefit-card-text p {
    margin-bottom: 1rem;
}

.our-benefits-01 .benefit-card-text p:last-child {
    margin-bottom: 0;
}

.our-benefits-01 .benefit-nav-circle {
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    width: var(--button-height, 55px);
    height: var(--button-height, 55px);
    border-radius: 50%;
    background-color: #1d1d1d;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-family: var(--h3-font);
    font-weight: 400;
    background-color: var(--button-background);
    transition: background-color 0.3s linear;
}

.our-benefits-01 .benefit-item.active .benefit-nav-circle {
    background-color: #1d1d1d;
}

.our-benefits-01 .benefit-image-container {
    position: relative;
    flex: 1;
    height: 100%;
    overflow: hidden;
    background-color: #e4e4e4;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.3s;
    will-change: transform;
    z-index: 1;
    min-width: calc(var(--button-height, 55px) + 4rem);
    border-radius: 0 var(--bs-border-radius, 10px) var(--bs-border-radius, 10px) 0;
}

.our-benefits-01 .benefit-image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
    will-change: transform;
}

.our-benefits-01 .benefit-link-btn {
    position: absolute;
    padding: 0;
    min-width: unset;
    bottom: 2rem;
    right: 2rem;
    width: var(--button-height, 55px);
    height: var(--button-height, 55px);
    border-radius: 50%;
    background-color: var(--button-background, #e9903c);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
    z-index: 2;
}

.our-benefits-01 .benefit-item {
    outline: none;
}

.our-benefits-01 .benefit-item:focus-visible {
    outline: 2px solid var(--button-background, #e9903c);
    outline-offset: 2px;
    border-radius: var(--bs-border-radius, 10px);
}

.our-benefits-01 .benefit-item:focus-visible .benefit-closed-state {
    box-shadow: 0 0 0 2px var(--button-background, #e9903c);
    border-radius: var(--bs-border-radius, 10px);
}

.our-benefits-01 .benefit-item:focus-visible.active .benefit-active-state {
    box-shadow: 0 0 0 2px var(--button-background, #e9903c);
    border-radius: var(--bs-border-radius, 10px);
}

@media screen and (max-width: 1199.98px) and (min-width: 992px) {

    .our-benefits-01 {
        --closed-width: 106px;
    }

    .our-benefits-01 .benefit-closed-state {
        padding: 2rem 1.55rem;
    }

    .our-benefits-01 .benefit-nav-circle {
        left: 1.55rem;
        transition: left 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .our-benefits-01 .benefit-content-card {
        padding: 1.55rem !important;
    }

}

@media screen and (max-width: 991.98px) {

    .our-benefits-01 {
        --block-height: 520px;
        --closed-width: 103px;
        padding: var(--block-margin, 70px) 0;
    }

    .our-benefits-01 .benefit-item .benefit-card-title br,
    .our-benefits-01 .benefit-vertical-title br {
        display: none;
    }

    .our-benefits-01 .benefit-vertical-title,
    .our-benefits-01 .benefit-item .benefit-card-title {
        line-height: var(--button-height, 55px);
        margin-bottom: 0rem;
    }

    .our-benefits-01 .benefit-item {
        height: var(--closed-width);
        transition: height 0.6s cubic-bezier(0.4, 0, 0.2, 1), filter 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .our-benefits-01 .benefit-item.active {
        height: var(--block-height, 520px);
        min-height: unset;
    }

    .our-benefits-01 .our-benefits-wrapper {
        flex-flow: column wrap;
    }

    .our-benefits-01 .benefit-item,
    .our-benefits-01 .benefit-item.active {
        width: 100%;
    }

    .our-benefits-01 .benefit-item.active .benefit-closed-state {
        width: 100%;
        padding: 1.5rem;
    }

    .our-benefits-01 .benefit-closed-state {
        min-height: unset;
        width: 100%;
        height: var(--closed-width, 90px);
    }

    .our-benefits-01 .benefit-vertical-title {
        writing-mode: inherit;
        height: 100%;
    }

    .our-benefits-01 .benefit-item .benefit-card-title {
        text-wrap: nowrap;
    }

    .our-benefits-01 .benefit-item.active .benefit-closed-state .benefit-vertical-title {
        opacity: 0;
        transform: translateY(0);
    }

    .our-benefits-01 .benefit-item .benefit-card-title {
        opacity: 1;
        transform: translateY(0);
    }

    .our-benefits-01 .benefit-item .benefit-card-text {
        opacity: 1;
        transform: translateY(0);
    }

    .our-benefits-01 .benefit-closed-state {
        flex-flow: row-reverse nowrap;
        justify-content: start;
        align-items: center;
        padding: 1.5rem;
    }

    .our-benefits-01 .benefit-closed-state::after {
        content: "";
        top: 0;
        left: 0;
        height: 100%;
        width: calc(.5* var(--button-height, 55px) + 2rem);
        border-radius: var(--bs-border-radius, 10px) 0 0 var(--bs-border-radius, 10px);
    }

    .our-benefits-01 .benefit-active-state {
        flex-flow: column nowrap;
    }

    .our-benefits-01 .benefit-content-card {
        flex: 0;
        padding: 1.5rem;
        padding-left: calc(var(--button-height, 55px) + 2.5rem);
        padding-right: 4rem;
        min-height: unset;
        border-radius: var(--bs-border-radius, 10px) var(--bs-border-radius, 10px) 0 0;
        min-width: unset;
    }

    .our-benefits-01 .benefit-image-container {
        width: 100%;
        border-radius: 0 0 var(--bs-border-radius, 10px) var(--bs-border-radius, 10px);
        flex: 1;
    }

    .our-benefits-01 .benefit-card-number {
        display: none;
    }

    .our-benefits-01 .benefit-nav-circle {
        bottom: unset;
        left: 1.5rem;
        top: 1.5rem;
    }

    .our-benefits-01 .benefit-card-text {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 767.98px) {

    .our-benefits-01 {
        padding: calc(var(--block-padding, 70px) + 10px) 0 var(--block-padding, 60px);
        --block-height: 4var(--button-height, 55px);
    }
}

@media screen and (max-width: 575.98px) {

    .our-benefits-01 {
        --block-height: 520px;
        --closed-width: 88px;
        --button-height: 44px;

        padding-bottom: var(--block-margin, 60px);
    }

    .our-benefits-01 .benefit-item.active .benefit-closed-state,
    .our-benefits-01 .benefit-closed-state,
    .our-benefits-01 .benefit-content-card {
        padding: 22px;
    }

    .our-benefits-01 .benefit-nav-circle {
        left: 22px;
        top: 22px;
    }

    .our-benefits-01 .benefit-vertical-title,
    .our-benefits-01 .benefit-item .benefit-card-title {
        text-wrap: balance;
        line-height: 1;
        font-size: calc(var(--h4-fontsize, 24px) + 2px);
        height: var(--button-height, 55px);
        display: block;
        align-content: center;
        margin: 0;
    }

    .our-benefits-01 .benefit-item .benefit-card-title {
        padding-left: calc(var(--button-height, 55px) + 1rem);
        margin-bottom: 1rem;
    }

    .our-benefits-01 .benefit-link-btn {
        display: none;
    }
}
/* === our-benefits-01 === */



/* === testimonial-carousel === */

.testimonial-carousel {
    padding: var(--block-padding) 0;
    text-align: center;
    background-color: #fff;

    --button-size: 55px;
}

.testimonial-carousel span.subtitle {
    margin-bottom: 1.5rem;
}

.testimonial-carousel .testimonial-title {
    margin-bottom: 1.5rem;
    text-wrap: balance;
}

.testimonial-content::before {
    content: "";
    width: 60px;
    height: 2px;
    display: block;
    background-color: var(--button-background);
    order: 2;
}

.testimonial-carousel .testimonial_author {
    display: block;
    font-size: 12px;
    margin-top: 8px;
    line-height: 1;
    font-weight: 500;
    font-family: var(--h1-font);
    text-transform: uppercase;
    letter-spacing: 0.2em;
    order: 3;
}

.testimonial-slick-slider {
    max-width: 900px;
    margin-inline: auto;
}

.testimonial-slick-slider.slick-initialized {
    position: relative;
    margin-bottom: calc(var(--button-size) + var(--block-margin));
}

.testimonial-slide {
    display: none;
}

.testimonial-slick-slider .testimonial-slide:first-child,
.testimonial-slick-slider.slick-initialized .testimonial-slide {
    display: flex !important;
}

.testimonialstyletitle {
    margin-bottom: 0 !important;
}

.testimonial-content {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    gap: 1.5rem;
    margin: auto;
}

.testimonial-carousel .slick-arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    width: var(--button-size);
    height: var(--button-size);
    border-radius: 50%;
    background-color: #f5f5f5;
    font-size: 0;
    border: unset;
    position: absolute;
    bottom: calc((var(--button-size) + var(--block-margin)) * -1);
}

.testimonial-carousel .slick-arrow::before {
    font-family: "Font Awesome 6 Pro";
    font-weight: 400;
    font-size: 24px;
    color: var(--body-color);
}

.testimonial-carousel .slick-arrow.slick-prev {
    left: calc(50% - var(--button-size) - 2px);
}

.testimonial-carousel .slick-arrow.slick-prev::before {
    content: "\f104";
}

.testimonial-carousel .slick-arrow.slick-next {
    right: calc(50% - var(--button-size) - 2px);
}

.testimonial-carousel .slick-arrow.slick-next::before {
    content: "\f105";
}

.testimonial-carousel .review-text.truncated {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.testimonial-carousel .read-more,
.testimonial-carousel .read-less {
    display: inline-block;
    margin-top: 10px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--button-background);
    cursor: pointer;
}


@media screen and (max-width: 575.98px) {

    .testimonial-carousel {
        padding: var(--block-padding) 0 var(--block-margin);
    }

    .testimonial-slick-slider.slick-initialized {
        margin-bottom: calc(var(--button-size) + var(--button-size));
    }

    .testimonial-carousel .slick-arrow {
        bottom: calc((var(--button-size) + var(--button-size)) * -1);
    }
}
/* === testimonial-carousel === */



/* === instagram-feed01 === */

.gallery-section {
    --gallery-section-bg: #fff;
    --gallery-grid-bg: #f1f1f1;
    --overlay-color: var(--button-background);
    --transition-duration: 0.3s;
    background: var(--gallery-section-bg);
    overflow: hidden;
    padding: 20px 0;
}

.testimonial-carousel+.gallery-section {
    padding-top: 0;
}

.gallery-section .slick-slide {
    margin: 0 calc(var(--gallery-gap) * 0.5);
}

.gallery-section .slick-list {
    margin: 0 calc(var(--gallery-gap) * -0.5);
    overflow: visible !important;
}

.gallery-section .slick-track {
    padding: 0;
}

.gallery-slider {
    width: 100%;
    margin: 0 auto;
    --gallery-gap: var(--bs-gutter-x);
}

.gallery-slider:not(.slick-initialized) {
    display: flex;
    flex-flow: row nowrap;
    gap: var(--gallery-gap);
    justify-content: center;
}

.gallery-slider:not(.slick-initialized)>* {
    display: none;
}

.gallery-slider:not(.slick-initialized)>*:nth-child(1),
.gallery-slider:not(.slick-initialized)>*:nth-child(2) {
    display: flex;
    width: 50%;
}

.gallery-slider:not(.slick-initialized) .gallery-grid-1 .gallery-grid-item {
    width: 100%;
    height: 100%;
}

.gallery-slide {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gallery-gap);
    justify-content: center;
    align-items: stretch;
    margin-bottom: 0;
}

.gallery-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--gallery-gap);
    gap: var(--gallery-gap);
    display: flex !important;
    flex-flow: row wrap;
}

.gallery-grid-4>* {
    width: calc(50% - var(--gallery-gap) * 0.5);
    height: calc((100% - var(--gallery-gap)) * 0.5);
    aspect-ratio: 1/1;
}

.gallery-grid-4 .gallery-grid-item.video-item .video-play-overlay {
    width: 60px;
    height: 60px;
}

.gallery-grid-4 .gallery-grid-item.video-item .video-play-overlay i {
    font-size: 22px;
    margin-left: 3px;
}

.gallery-grid-4 .gallery-grid-item.video-item:hover .video-play-overlay {
    transform: translate(-50%, -50%) scale(1.1);
}

.gallery-grid-1 {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--gallery-gap);
}

.gallery-grid-item {
    background: var(--gallery-grid-bg);
    border-radius: var(--bs-border-radius, 10px);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    aspect-ratio: 1/1;
}

.gallery-grid-item img {
    -o-object-fit: cover;
    object-fit: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: transform var(--transition-duration);
    width: 100%;
    height: 100%;
    scale: 1;
    will-change: transform;
}

.gallery-grid-item a.instagram-post {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
}

.gallery-grid-item a.instagram-post:focus-visible img {
    outline: 2px solid var(--button-background);
    outline-offset: -4px;
    border-radius: var(--bs-border-radius, 10px);
}

.gallery-grid-item .instagram-post::before {
    content: "";
    opacity: 0;
    position: absolute;
    left: -25%;
    top: 0;
    width: 140%;
    height: 100%;
    z-index: 1;
    background-image: url("/images/default/background-regular.png");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 200%;
    transition: var(--transition-duration) ease-in-out;
}

.gallery-grid-item::before {
    content: "";
    background-color: rgba(233, 141, 60, 0.7);
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: var(--transition-duration) ease-in-out;
    z-index: 3;
    pointer-events: none;
}

.gallery-grid-item::after {
    content: "";
    position: absolute;
    left: 5%;
    top: 0;
    width: 90%;
    height: 100%;
    opacity: 0;
    transition: var(--transition-duration) ease-in-out;
    background-image: url("/images/default/follow-us.png");
    background-size: auto;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 4;
    pointer-events: none;
}

.gallery-grid-item.video-item::after {
    display: none;
}

.gallery-grid-item.video-item a.instagram-post {
    z-index: 5;
}

.gallery-grid-item.video-item .video-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gallery-grid-item.video-item .video-wrapper::after {
    content: "";
    background-color: var(--button-background);
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: var(--transition-duration) ease-in-out;
    z-index: 3;
    pointer-events: none;
}

.gallery-grid-item.video-item .video-play-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background: rgba(255, 255, 255, 0.7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: var(--transition-duration) ease-in-out;
    pointer-events: none;
}

.gallery-grid-item.video-item .video-play-overlay i {
    font-size: 30px;
    color: var(--button-background);
    margin-left: 3px;
}

.gallery-grid-item.video-item:hover .video-wrapper .video-play-overlay {
    background: rgb(255, 255, 255);
    transform: translate(-50%, -50%) scale(1.1);
}

.gallery-grid-item.video-item:hover .video-wrapper::after {
    opacity: 0.8;
}

.gallery-grid-item:hover img {
    transform: scale(1.04);
}

.gallery-grid-item:hover::before {
    opacity: 1;
}

.gallery-grid-item:hover::after {
    opacity: 1;
}

.gallery-grid-item:hover .instagram-post::before {
    opacity: 1;
}


.gallery-section .block-title br {
    display: none;
}

@media screen and (max-width: 575.98px) {
    .gallery-slider {
        --gallery-gap: 12px;
    }

    .gallery-section .block-title {
        margin-top: 15px;
        max-width: 300px;
        margin-inline: auto;
    }
}
/* === instagram-feed01 === */



/* === accredetations-01 === */

.accredetations-01 {
    padding: var(--block-margin) 0;
    overflow: hidden;
    background-color: #fff;
}

.accredetations-01 span.subtitle {
    margin-bottom: 2.5rem;
}

.gallery-section+.accredetations-01 {
    padding-top: calc(var(--block-margin) - 20px);
}

.accreditation-slider {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
}

.accreditation-item {
    flex: 0 0 auto;
    text-align: center;
    filter: grayscale(1);
    transition: filter 0.3s ease;
}

.accreditation-item:hover {
    filter: grayscale(0);
}

.accreditation-item img {
    width: auto;
    height: auto;
    max-height: 80px;
    object-fit: contain;
}

.accreditation-slider .slick-slide {
    margin: 0 1.5rem;
}

.accreditation-slider .slick-list {
    margin: 0 -1rem;
}

.accreditation-slider .slick-list {
    overflow-y: hidden;
    overflow-y: clip;
    overflow-x: visible !important;
}
/* === accredetations-01 === */



/* === footer-05-brochure === */

/* Footer 05 Styles */

.footer05 {
  padding: calc(var(--block-padding) - 2rem) 0 var(--block-margin);
  background-color: #1d1d1d;
  color: #fff;
}

.footer05 form .bottom-box {
  margin-bottom: 0;
}

.footer05 .row.first-footer>[class*="col-"] {
  display: flex;
  flex-direction: column;
}

.footer05 .f06_block {
  border-radius: var(--bs-border-radius, 10px);
  padding: 0px 45px 40px 45px;
  /*margin-top: var(--bs-gutter-x);*/
  height: 100%;
}

.footer05 .f06_subtitle {
  margin-top: 10px;
  margin-bottom: 0;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: -0.025em;
}

.footer05 .f06-mt {
  margin-top: var(--bs-gutter-x);
}

.footer05 .f06_block.grey {
  background-color: #222222;
  padding-top: 40px;
  display: flex;
  flex-flow: column;
}

@media screen and (min-width: 1200px) {
  .footer05 .f06_block.location_block {
    min-height: 578px;
  }
}

.footer05 .f06_block.location_block .f06_content>i {
  margin-bottom: 1.5rem;
}

.footer05 .f06_block i {
  font-size: 30px;
  line-height: 26px;
  margin-bottom: 1rem;
  font-family: "Font Awesome 6 Pro";
}

.footer05 .f06_block i.fa-phone {
  font-size: 26px;
}

.footer05 .f06_block h3 {
  margin-bottom: 1rem;
  font-size: 38px;
}

.footer05 .address {
  font-size: 16px;
  line-height: 22px;
}

.footer05 .address .company-name {
  color: var(--button-background);
}

.footer05 .address p {
  margin-bottom: 0px;
}

.footer05 .address .addr.company {
  font-weight: 600;
}

.footer05 .address :last-child {
  margin-bottom: 0;
}

.footer05 .view_on_map {
  font-size: 15px;
  background: none !important;
  outline: none !important;
  padding: 5px 0px;
  color: inherit;
  font-weight: 600;
  border: none !important;
  margin-top: 10px;
}

.footer05 .view_on_map i {
  font-size: 15px;
  margin-right: 5px;
  margin-bottom: 0px;
}

.footer05 .social {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-top: auto;
}

.footer05 .social a {
  color: #fff;
  fill: #fff;
  stroke: #fff;
  display: flex;
  width: 55px;
  height: 55px;
  align-items: center;
  justify-content: center;
  background-color: var(--button-background);
  border-radius: var(--bs-border-radius, 10px);
  min-width: 55px;
  min-height: 55px;
  text-decoration: none;
  margin-right: 6px;
  margin-bottom: 6px;
  border-radius: 50%;
  transition: 0.3s ease-in-out;
  padding: 0;
}

.footer05 .social a:hover {
  background-color: var(--button-background-hover);
  color: #fff;
  fill: #fff;
  stroke: #fff;
}

.footer05 .social a i {
  color: inherit;
  margin: 0;
  padding: 0;
  font-size: 18px;
  font-family: 'Font Awesome 5 Brands';
}

.footer05 .social a svg,
.footer05 .social a img {
  fill: inherit;
  stroke: inherit;
  width: 20px;
  height: 20px;
}

.footer05 .f06_block a.contact-link {
  font-size: 18px;
  line-height: 24px;
  color: var(--button-background);
  text-decoration: none;
  display: block;
  transition: color 0.3s ease-in-out;
  font-weight: 500;
  width: fit-content;
}

.footer05 .f06_block a.contact-link-email {
  font-size: 18px;
  line-height: 24px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: inline-block;
  max-width: 100%;
}

.footer05 .f06_block.form {
  padding: 3.5rem 42px 40px;
}

.footer05 .form a {
  color: inherit;
}

.footer05 .form .form-control {
  padding: 17px 20px;
  min-height: 62px;
  height: 62px;
  border: unset !important;
}

.footer05 .form textarea.form-control {
  height: 244px;
}

.footer05 .form .col-form-label {
  font-size: 16px;
  line-height: 22px;
}

.footer05 .form .required {
  display: none;
}

.footer05 .form .required-star,
.footer05 .form .required {
  color: #ff7d7d;
}

.footer05 .reload_captcha {
  width: 60px;
  padding: 0;
  height: 60px;
}

.footer05 .reload_captcha:before {
  display: none;
}

.footer05 .reload_captcha i {
  margin: 0;
  padding: 0;
}

.footer05 .captcha-image img {
  height: 100%;
}

.footer05 .form .error+.error {
  font-size: 14px;
  color: #ff7d7d;
  position: absolute;
  top: 100%;
}

.footer05 .form .error+div.error,
.footer05 .form .form-group.has-error div.error {
  font-size: 14px;
  white-space: nowrap;
  color: #ff7d7d;
}

.footer05 .f06_block.f06_title {
  text-align: center;
  padding: 3rem 2.75rem 40px 2.75rem;
  height: auto;
}

.footer05 .f06_block.f06_title h2 {
  text-align: center;
  padding: 0;
}

.f06-mt-lg {
  margin-top: var(--bs-gutter-x);
}

.footer05 .subtitle::after {
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 1200px) and (max-width: 1399.98px) {

  .footer05 .f06_block,
  .footer05 .f06_block.grey {
    padding: 2rem;
  }

  .footer05 .row {
    --bs-gutter-x: 1.5rem;
  }
}

@media (max-width: 1199.98px) {
  .footer05 {
    padding: var(--block-padding) 0 var(--block-margin);
  }

  .footer05 .address-lines {
    display: flex;
    flex-flow: row wrap;
  }

  .footer05 .location_block {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
  }

  .footer05 .address-lines p {
    width: fit-content;
  }

  .footer05 .address-lines p:not(.has-coma, :last-child)::after {
    content: ",";
    margin-right: 4px;
  }

  .footer05 .social {
    max-width: 240px;
    margin-top: 2rem;
  }

  .footer05 .row {
    --bs-gutter-x: 1.5rem;
  }

  .footer05 .f06_block.f06_title {
    padding-left: 0;
    padding-right: 0;
    text-align: left;
  }

  .footer05 .f06_block.f06_title br {
    display: none;
  }

  .f06-mt-lg {
    margin-top: 0;
  }

  .f06-mt-md {
    margin-top: var(--bs-gutter-x);
  }

  .footer05 .row {
    --bs-gutter-x: 1.5rem;
  }
}

@media screen and (max-width: 991.98px) {
  .footer05 .row {
    --bs-gutter-x: 20px;
  }

  .footer05 .f06_block.form {
    padding: 32px 36px 36px;
  }

  .footer05 .f06_block {
    padding: 36px;
  }
}

@media (max-width: 767.98px) {
  .footer05 {
    padding: var(--block-padding) 0 3rem;
  }

  .footer05 .row {
    --bs-gutter-x: 16px;
  }

  .footer05 .f06_block {
    height: 100%;
    padding: 0px 30px 30px 30px;
  }

  .footer05 .f06_block.grey {
    padding-top: 30px;
  }

  .footer05 .row.first-footer>[class*="col-"] {
    height: auto !important;
  }

  .footer05 .f06_block.form {
    padding: 30px 30px;
  }

  .footer05 .f06_block a.contact-link-email {
    font-size: 16px;
  }
}

@media (max-width: 767px) and (min-width: 576px) {
  .footer05 form>.row>.col-12.col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
}

@media (max-width: 575.98px) {
  .footer05 .row {}

  .footer05 .form .row {
    gap: 0px;
  }

  .footer05 .f06_block.form .btn {
    max-width: 280px;
    margin: auto;
  }

  .footer05 .f06_block.f06_title {
    padding-bottom: 0px;
  }

  .footer05 .f06_block.f06_title>.row {
    gap: 0;
  }

  .footer05 .col-12>p:last-child {
    margin-bottom: 0;
  }

  .footer05 .f06_block.form .btn {
    width: 100%;
  }

  .footer05 .first-footer .row .order-1 {
    margin-bottom: var(--bs-gutter-x);
  }
}

/* Footer 05 Styles End */
/* === footer-05-brochure === */



/* === footer-04-ecommerce === */

.footer-04-ecommerce {
    padding: var(--block-margin) 0;
    background-color: #1d1d1d;
    color: #fff;
}

.footer05+.footer-04-ecommerce {
    padding-top: 0;
}

.footer-04-ecommerce a {
    color: #fff;
    text-decoration: none;
}

.footer-04-ecommerce .footer-links {
    display: flex;
    flex-flow: column wrap;
}

.footer-04-ecommerce .links-wrapper {
    display: flex;
    flex-flow: column nowrap;
}

.footer-04-ecommerce .footer-links {
    width: calc((100% - 2rem) * .5);
}

.footer-04-ecommerce .links-wrapper {
    display: flex;
    flex-flow: row wrap;
    gap: 2rem;
}

.footer-04-ecommerce a.footer-link {
    color: var(--button-background);
    text-decoration: none;
    font-size: 18px;
    line-height: 30px;
    margin: 5px 0;
    width: fit-content;
    transition: color 0.3s ease-in-out;
}

.footer-06-copyright,
.footer-06-design {
    color: #fff;
    font-size: 14px;
    line-height: 20px;
    width: 100%;
    display: block;
    letter-spacing: .025em;
}

@media screen and (max-width: 767.98px) {
    .footer-04-ecommerce .row {
        --bs-gutter-y: 2rem;
    }

    .footer-04-ecommerce {
        padding: 3rem 0;
    }
}
/* === footer-04-ecommerce === */

