/*
Theme Name: 	Betheme Child
Theme URI: 		http://themes.muffingroup.com/betheme
Author: 		Muffin group
Author URI: 	http://muffingroup.com
Description:	Child Theme for Betheme - Premium WordPress Theme
Template:		betheme
Version: 		1.6.1
*/

/* Theme customization starts here
-------------------------------------------------------------- */
:root {
  --primary: #122d3b;
  --second: #ebbca8;
}

@media (max-width: 1240px) {
  .mcb-section .mcb-wrap .mcb-item-gwvl7ph2v .mfn-header-menu > li.mfn-menu-li {
    --mfn-header-menu-gap: 10px;
  }
}

#header_bg .mcb-wrap-inner,
#section_bg,
#button_bg a,
#button_bg .button:before {
}

.logo-wrapper #button_color a,
#text_color p {
  color: var(--primary) !important;
}

span.sparks-letter {
  display: inline-block;
  position: relative;
  &::before {
    content: "";
    display: inline-block;
    width: 1.5ch;
    height: 1.5ch;
    position: absolute;
    bottom: 0.5em;
    left: 0ch;
    background-image: url(dist/img/sparks.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top right;
  }

  &.white-sparks::before {
    filter: brightness(100);
  }
}

span.word-surlign {
  display: inline-block;
  position: relative;
  &::before {
    content: "";
    display: inline-block;
    width: calc(100% + 0.5ch);
    aspect-ratio: 349/110;
    position: absolute;
    top: 0;
    left: -0.25ch;
    background-image: url(dist/img/surlign.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top left;
    z-index: -1;
  }
}

.cards {
  position: relative;
  perspective: 1000px;
  perspective-origin: top;
  margin-bottom: 90px;
  --card-offset: 15px;
}
.custom-card {
  width: 100%;
  padding: 20px 20px;
  background-color: #fff;
  color: #fff;
  margin-bottom: 50px;
  border-radius: 50px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  box-shadow: 0 5px 10px 0px #636363;
  top: calc(var(--card-offset) * var(--card-index));
  transform: translate3d(0px, calc(100vh * var(--card-index)), 0px);
  @media (min-width: 768px) {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  &:first-child {
    /* margin-top:40vh; */
    transform: translate3d(0px, 40vh, 0px);
  }

  /* position:absolute; */
  &:not(:first-child) {
    position: absolute;
  }
}

@media (width>1024px) {
  .custom-card {
    padding: 50px;
  }
}

/* .card1 {
  }
  .card2 {
    top: 30px;
  }
  .card3 {
    top: 60px;
  }
  .card4 {
    top: 90px;
  } */
.opacity {
  -moz-transition: 0.4s ease;
  -ms-transition: 0.4s ease;
  -o-transition: 0.4s ease;
  transition: 0.4s ease;
  -webkit-transition: 0.4s ease;
  opacity: 0.6;
}
.scale {
  moz-transition: 0.4s ease;
  -ms-transition: 0.4s ease;
  -o-transition: 0.4s ease;
  transition: 0.4s ease;
  -webkit-transition: 0.4s ease;
  width: 95%;
}

#services_animation {
  display: flex;
  flex-direction: column;
  gap: 50px;
}

#services_animation .labels {
  display: flex;
  flex-direction: row;
  gap: 5px;
  margin: auto;
  width: max-content;
}

#services_animation .labels label {
  background-color: #fff;
  color: var(--primary);
  padding: 5px 15px;
  border-radius: 100px;
  cursor: pointer;
}

#services_animation .content {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.custom-card .text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.custom-card .text p {
  font-family: "Inter";
  font-weight: 400;
  font-size: 17px;
  line-height: 25px;
  color: var(--primary);
}
.custom-card .text h3 {
  font-family: "Bricolage Grotesque";
  font-weight: 600;
  font-size: clamp(24px, 4vw, 48px);
  line-height: 1.2em;
}

.custom-card:nth-child(odd) .text h3 {
  color: #000;
}

.custom-card:nth-child(even) .text h3 {
  color: var(--primary);
}

.custom-card .img {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.custom-card .img img {
  object-fit: cover;
  width: 100%;
  border-radius: 16px;
  display: block;
  max-width: 100%;
  aspect-ratio: 3/2;
  object-fit: cover;
}

.header-title {
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 35px;
}

.icon-brochure {
  display: inline-block;
  background-image: url("dist/img/icon-brochure.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 1.2em;
  height: 1.2em;
  vertical-align: text-top;
}
.icon-video-play {
  display: inline-block;
  background-image: url("dist/img/icon-play.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 1.2em;
  height: 1.2em;
  vertical-align: text-top;
}
a.brochure-download,
a.ytb-link {
  color: #0e3752;
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: underline;
}
/**estate-block**/
.estates.posts_group,
.estates-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.post-item.post-item-estate h3 a {
  color: #000;
}
.post-item.post-item-estate .price {
  font-family: "Baloo 2" !important;
  font-weight: 700;
  font-size: 20px;
  line-height: 100%;
  color: var(--second);
}
.post-item.post-item-estate div.text {
  padding: 20px;
}
.post-item.post-item-estate div.contenu {
  display: flex;
  gap: 30px;
}
.post-item.post-item-estate div.contenu span img {
  max-width: 25px;
}
.post-item.post-item-estate div.contenu span {
  display: flex;
  gap: 10px;
  flex-direction: row;
  align-items: center;
}
.post-item.post-item-estate .estate-state {
  padding: 5px 10px;
  position: absolute;
  top: 20px;
  left: 22px;
  background: var(--second);
  color: #000;
  border-radius: 2px;
  text-transform: capitalize;
  font-family: Inter;
  font-weight: 400;
  font-size: 14px;
}
.post-item.post-item-estate .content {
  font-family: "Comfortaa";
  font-weight: 400;
  font-size: 13px;
  line-height: 21px;
  letter-spacing: 0%;
  color: var(--primary);
}
.post-item.post-item-estate h3 {
  font-family: Bricolage Grotesque;
  text-transform: none;
  font-weight: 700;
  font-size: 20px;
  line-height: 100%;
}
.post-item.post-item-estate {
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  border-radius: 4px;
}
.grid .post-item.post-item-estate {
  width: 100% !important;
  max-width: 350px;

  background-color: transparent !important;
  transform: scale(1);
}
@media (max-width: 960px) {
  .grid .post-item.post-item-estate {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
@media (min-width: 960px) {
  .estates.posts_group::after {
    content: "";
    display: block;
    width: 100% !important;
    max-width: 350px;
  }
}
.grid .post-item.post-item-estate .image_wrapper {
  overflow: hidden;
}
.grid .post-item.post-item-estate .image_wrapper img {
  transform: scale(1);
  transition: transform 0.3s ease-in-out;
}
.grid .post-item.post-item-estate .image_wrapper:hover img {
  transform: scale(1.05);
}
.post-item-estate .estate-country {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-block;
  padding: 0 10px;
  background-color: #ff4f03;
  color: #fff;
}
.slider-estates-container .post-item-estate .estate-country {
  right: 10px;
}
.post-item-estate h3,
.post-item-estate h3 a {
  color: #1b4765;
}
.post-item-estate .image_wrapper {
  height: 320px;
  margin-bottom: 15px;
}
@media (min-width: 440px) {
  .post-item-estate .image_wrapper {
    height: 350px;
  }
}

.post-item-estate h3 {
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 5px;
}
.post-item-estate p:not(.link-container) {
  font-size: 20px;
  line-height: 1em;
  margin-bottom: 5px;
  color: #1b4765;
}
.post-item-estate p.ref {
  margin-top: 30px;
  margin-bottom: 20px;
  font-size: 14px;
}
.post-item-estate p.link-container {
  text-align: center;
}
.post-item-estate .image_wrapper img {
  height: 100% !important;
  width: 100%;
  object-fit: cover;
  object-position: center;
}
/*slider estate*/

.slider-estates-container .post-item,
.single-estate-slider-main > div,
.single-estate-slider-nav > div {
  display: none;
}
.single-estate-slider-nav {
  margin-top: 20px;
}
.slider-estates-container.slick-initialized .post-item,
.single-estate-slider-main.slick-initialized > div,
.single-estate-slider-nav.slick-initialized > div {
  display: block;
}
.slider-estates-container .slick-arrow,
.single-estate-slider-main .slick-arrow,
.single-estate-slider-nav .slick-arrow {
  position: absolute;
  top: calc(50% - 30px);
  height: 60px;
  width: 40px;
  z-index: 10;
  color: transparent;
  background-color: transparent;
  background-image: url("dist/img/fleche.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  margin: 0;
  box-shadow: none;
  outline: none;
}

.single-estate-slider-main .slick-slide {
  width: 100%;
}
.slider-estates-container .slick-arrow.slick-disabled,
.single-estate-slider-nav .slick-arrow.slick-disabled,
.single-estate-slider-main .slick-arrow.slick-disabled {
  visibility: hidden;
}
.slick-arrow::after {
  display: none;
}
.slider-estates-container .slick-arrow.slick-prev,
.single-estate-slider-nav .slick-arrow.slick-prev,
.single-estate-slider-main .slick-arrow.slick-prev {
  left: -40px;
  transform: rotate(180deg);
}
.slider-estates-container .slick-arrow.slick-next,
.single-estate-slider-nav .slick-arrow.slick-next,
.single-estate-slider-main .slick-arrow.slick-next {
  right: -40px;
}

.single-estate-slider-main .slick-slide a {
  position: relative;
  /* height:0;
    padding-top:75%; */
  display: block;
}
.single-estate-slider-main .slick-slide a > img {
  aspect-ratio: 4/3;

  object-position: center;
  object-fit: cover;
}
/* .single-estate-slider-main .image_wrapper{
    height:0;
    padding-top:75%;
    position:relative;
}
.single-estate-slider-main .image_wrapper img{
    position:absolute;
    top:0;
    left:0;
    height:100%!important;
    width:100%!important;
    object-position:center;
    object-fit:cover
} */
.single-estate-slider-nav .slick-slide img {
  width: 80px;
  height: 80px !important;
  object-fit: cover;
  display: block;
  margin: auto;
  cursor: pointer;
}
@media (min-width: 768px) {
  .slider-estates-container .post-item,
  .single-estate-slider-nav .slick-slide {
    padding: 0 10px;
  }
  .single-estate-slider-nav .slick-slide img {
    width: 120px;
    height: 120px !important;
  }
}
@media (min-width: 1024px) {
  .single-estate-slider-nav .slick-slide img {
    width: 90px;
    height: 90px !important;
  }
}
@media (min-width: 1240px) {
  .slider-estates-container .slick-arrow.slick-prev {
    left: -60px;
  }
  .slider-estates-container .slick-arrow.slick-next {
    right: -60px;
  }
  .single-estate-slider-nav .slick-slide img {
    width: 120px;
    height: 120px !important;
  }
}
#estate-main {
  padding-top: 100px;
}
/*estate single*/
@media (min-width: 1024px) {
  #estate-main {
    display: flex;
    flex-wrap: wrap;
  }
  #estate-main > div {
    width: 50%;
    box-sizing: border-box;
  }
  #estate-main > div:nth-child(2) {
    padding-left: 50px;
  }
}

@media (max-width: 1023px) {
  #estate-main {
    display: block !important;
  }
}

#Footer ul > li > a {
  padding: 0;
}
#Footer .widget {
  margin-top: 15px !important;
  padding: 0 !important;
}

.lb-nav a.lb-next {
  background: url("dist/img/fleche.png") top 50% right 5% no-repeat;
}
.lb-nav a.lb-prev {
  background-image: url("dist/img/fleche.png");
  background: url("dist/img/fleche.png") top 50% right 5% no-repeat;
  transform: rotate(180deg);
}

#estate-keys-row a {
  color: inherit;
}

.single .lity-container {
  max-width: 90%;
}

@media (min-width: 1440px) {
  .single .lity-container {
    max-width: 1400px;
  }
}
.estate-description {
  margin-top: 1em;
}

#Footer .social {
  display: flex;
  justify-content: space-between;
}

.desc {
  .social-sc {
    text-align: left;
    a {
      margin-right: 2rem;
    }
  }
}

#nav_menu-2 {
  text-align: right;
}

#menu-footer-menu,
#menu-footer-menu-nl,
#menu-footer-menu-en {
  list-style-type: none;
  background: transparent !important;
  text-decoration: underline;
  padding: 0;
}
#Footer .widget_nav_menu ul li:after {
  border: none;
}
.btn_red_border,
.button-estate {
  border: solid 2px #ff4f03;
  background: transparent;
  border-radius: 8px;
  color: #ff4f03;
  padding: 15px 70px !important;
  position: relative !important;
  transition: 0.3s all ease-in-out;
  display: inline-block;
}
.button-estate {
  padding: 10px 70px !important;
}
.btn_red_border:after,
.button-estate:after {
  content: "" !important;
  width: 1em !important;
  height: 20px !important;
  background-size: contain !important;
  position: absolute !important;
  transform: translateY(-50%) !important;
  top: 50% !important;
  right: 5px !important;
  left: inherit !important;
}

.btn_red_border:hover,
.elementor_btn_style
  .elementor-widget-container
  .elementor-button-wrapper
  .elementor-button:hover,
.button-estate:hover,
.elementor-button:hover {
  box-shadow: none !important;
  background: #fff6f6 !important;
  text-decoration: none;
}

#Footer .footer_adress {
  text-transform: uppercase;
}

.elementor-widget-google_maps,
.elementor-widget-google_maps .elementor-widget-container,
.elementor-widget-google_maps
  .elementor-widget-container
  .elementor-custom-embed,
.elementor-widget-google_maps
  .elementor-widget-container
  .elementor-custom-embed
  iframe {
  height: 100% !important;
}
.slider-estates-container .slick-prev,
.slider-estates-container .slick-next,
.single-estate-slider-nav .slick-prev,
.single-estate-slider-nav .slick-next {
  opacity: 1;
  transition: 0.3s all ease-in-out;
}
.slider-estates-container .slick-disabled,
.single-estate-slider-nav .slick-disabled {
  opacity: 0;
}
@media only screen and (max-width: 767px) {
  #Footer #media_image-2 {
    text-align: center;
  }
  #text-3 {
    margin-top: 0;
  }
  #submit {
    text-align: center;
  }
  #html-1 {
    text-align: center;
  }
  .post-item-estate .image_wrapper {
    height: 250px;
  }
  .slider-estates-container .slick-list {
    margin: 0 35px;
  }
  .slider-estates-container .slick-prev {
    left: -7px !important;
  }
  .slider-estates-container .slick-next {
    right: -7px !important;
  }
}

/* Single style */

/* Single style END */

.pager .pages a.active {
  background-color: #ff4f03 !important;
}

a.page:hover {
  background-color: #ff4f03 !important;
}

a.next_page:hover {
  color: #ff4f03 !important;
}

a {
  color: #ff4f03;
}

#estate-main h1 {
  color: #ff4f03 !important;
}

#estate-keys-row {
  width: 100%;

  & > div {
    max-width: 500px;
    margin: auto;
    & > div {
      display: flex;
      justify-content: space-between;
      & > span:first-child {
        font-weight: 600;
      }
    }
  }

  @media (width>960px) {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
    & > div {
      max-width: initial;
      margin: 0;
    }
  }
}

#address-row {
  width: 100%;
  margin-top: 100px;
}

.estate-keys {
  margin-bottom: 50px;
}

.button-default button:after {
  background: transparent;
}
.nice-select .list {
  max-height: 300px;
  overflow-y: auto !important;
}
.nice-select.nice {
  border-color: #0000005b;
  border-radius: 60px;
  width: 100%;

  .current {
    color: #000;
  }
}
#immo-filters {
  background: #fff;
  display: grid;
  align-items: center;
  gap: 20px;
  padding: 20px;
  min-height: 90px;
  border-radius: 30px;
  width: auto;
  box-shadow: 0px 4px 16px 0px #0000000a;
}

div:has(> #immo-filters) {
  container-type: inline-size;
  container-name: immofilter;
}
@container immofilter (min-width: 600px) {
  #immo-filters {
    display: inline-flex;
    flex-wrap: wrap;
    border-radius: 60px;
  }
}
#immo-filters select {
  width: initial;
  field-sizing: fit-content;

  margin-bottom: 0;
}

#immo-filters button {
  background-color: #bda587;
  color: #fff;
  border-radius: 60px;
  padding: 13px 20px 13px 45px;
  background-image: url(dist/img/loupe.png);
  background-size: 1.4em;
  background-repeat: no-repeat;
  background-position: center left 13px;
}

.notfound {
  margin-top: 40px;
  margin-bottom: 40px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  h3,
  p {
    text-align: center;
  }
}

#immofaqs {
  display: grid;
  flex-wrap: wrap;
  gap: 20px;
  @media (min-width: 1240px) {
    grid-template-columns: 1fr 1fr;
  }

  details {
    width: 100%;
    box-shadow: 2px 2px 29px 0px #122d3b17;
    border-radius: 10px;
    padding: 20px 40px;
    margin-bottom: 20px;
    summary {
      list-style: none;
      position: relative;
      cursor: pointer;
      color: #000;
      font-size: 18px;
      line-height: 1.2em;
      font-weight: 500;
      div {
        padding-top: 10px;
      }

      &::after {
        content: "";
        display: block;
        width: 18px;
        height: 18px;
        position: absolute;
        right: 0px;
        top: calc(50% - 9px);
        background-image: url(dist/img/arrow-down.svg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
      }
    }
    &[open] summary::after {
      transform: rotate(180deg);
    }
    summary::marker,
    summary::-webkit-details-marker {
      display: none;
    }
  }
}

.OverlapImageBlock {
  @media (min-width: 1240px) {
    .column_image .image_frame {
      width: calc(100% + 100px);
      max-width: initial;
    }
  }

  .mcb-section-inner {
    img {
      position: relative;
      z-index: 9999;
      @media (min-width: 1240px) {
        left: 3rem;
      }
    }
  }
}

.pt-90 {
  padding-top: 90px;
}
.pb-20 {
  padding-bottom: 20px;
}

.pb-50 {
  padding-bottom: 50px;
}

.mt-35 {
  margin-top: 35px;
}

.HeaderMenu {
  a {
    & :hover {
      border-bottom: #bda587;
    }
  }
}

.CommentHomePage {
  @media (min-width: 1240px) {
    top: -21rem;
    left: 30rem;
    position: relative;
  }
}

.my-testimonial-swiper .swiper-slide {
  width: clamp(300px, 20vw, 430px);
}
.my-testimonial-swiper.swiper {
  overflow: visible;
  width: 100%;
}
.testimonial-content {
  gap: 4rem;
  background-color: #fff;
  padding: 1rem;
  border-radius: 9px;
  overflow: hidden;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
  @media (min-width: 1240px) {
    gap: 4rem;
    background-color: #fff;
    padding: 1rem;
    border-radius: 9px;
  }
}
.section_wrapper:has(.my-testimonial-swiper) {
  width: 100%;
}
.TestimonialPicture img {
  @media (width < 768px) {
    /* width: 500px;
    height: 800px; */
  }
}

.sectionWrapperParentTestimonial {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  @media (min-width: 1240px) {
    overflow: hidden;
  }
}
.sectionWrapperParentTestimonial::before {
  @media (min-width: 1240px) {
    content: "";
    display: block;
    position: absolute;
    top: 275px;
    left: 580px;
    background-color: #122d3b;
    width: 100vw;
    height: 450px;
  }
}

.testimonialHeader {
  @media (min-width: 1240px) {
    padding-left: 3rem;
  }
}

.HeaderMenu {
  border-top: 1px solid #ffff;
  /* ERROR - Double ligne  & rajouter logo*/
}
*/ .TextContainer {
  @media (min-width: 767px) {
    margin-top: -2rem;
  }
}

.imageContainerText {
  @media (min-width: 1240px) {
    /* top: -2rem; */
  }
}
