/* 
Theme Name: Senioriales theme
Description: A custom theme based on Hello Elementor
Author: Agence Markus
Author URI: https://www.agence-markus.com/
Template: hello-elementor
Version: .0.0
Text Domain: senioriales
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

@import "cs-base.css";
@import "el-cs-base.css";
@import "cs-base-resp.css";
:root {
  /*SIZES*/

  --red: #e43353;
  --l-red: #ec6663;
  --lter-red: #f27471;
  --dker-red: #db1e26;

  --dker-blue: #0e3e74;
  --d-blue: #003989;
  --blue: #004899;
  --l-blue: #76a5d8;
  --m-blue: #0074be;
  --m-blue2: #5b95d0;
  --m-blue3: #5f90e0;
  --lter-blue: #86bcf7;

  --d-orange: #ec7346;
  --l-orange: #f8b532;
  --orange: #efaa23;
  --orange2: #f0ac27;

  --dker-purple: #65286a;
  --l-purple: #9e8cc2;
  --purple: #894171;
  --m-purple: #94539a;
  --d-purple: #773561;
  --d-purple2: #71305e;
  --m-purple2: #86478b;

  --black: #000000;
  --m-gray: #707070;
  --l-gray: #eaeaea;
  --lter-gray2: #f8f8f8;

  --alt-font: "Antonio", sans-serif;

  --df-p: 3.75rem;
  --alt-p: 4.37rem;
  --other-p: 3.125rem;
  --p-50: 3.125rem; /*padding equivalent à 50px sur une résolution de 1920px de large*/
}

@media screen and (max-width: 1438px) {
  :root {
    --df-p: 2rem;
  }
}
@media screen and (max-width: 1025px) {
  :root {
    --df-p: 20px;
    --alt-p: 30px;
    --p-50-t: 50px;
  }
}
html {
  margin-top: 0 !important;
  /* font-size: clamp(0.875rem, 0.6667rem + 0.2778vw, 1rem); */
  font-size: clamp(0.8125rem, 0.2484rem + 0.6263vw, 1rem);
  word-break: keep-all;
}
@media screen and (max-width: 1461px) {
  html {
    margin-top: 0 !important;
    /* font-size: clamp(0.875rem, 0.6667rem + 0.2778vw, 1rem); */
    font-size: clamp(0.8125rem, 0.2484rem + 0.6263vw, 1rem);
  }
}



html,
body {
  overflow-x: hidden;
  min-height: 100%;
}
.logged-in #wpadminbar {
  top: initial;
  display: block;
  bottom: 0;
}
#wpadminbar {
  display: none;
}
/**********************/
/** ORGANISATION CSS */
/********************/

/**********************/
/******* TAGS *******/
/********************/

.e-loop-item * {
  word-break:initial !important;
}


/**************************************/
/** Main elements, default elements, default classes **/
/************************************/

/*= FONTS*/
.alt-font {
  font-family: var(--alt-font);
}

/*= DEFAULT PADDINGS*/
.df-p {
  padding-left: var(--df-p);
  padding-right: var(--df-p);
}
.df-mb {
  margin-bottom: var(--df-p);
}
.df-gap {
  gap: var(--df-p);
}

.df-gap-half {
  gap: calc(var(--df-p) / 2);
}

.df-mr {
  margin-right: var(--df-p);
}

.df-p-all {
  padding: var(--df-p);
}

.articles-nac-pr {
  padding-right: calc(var(--df-p) + 18.5575%);
}
.df-px2,
.df-p-x2 {
  padding-left: calc(var(--df-p) * 2);
  padding-right: calc(var(--df-p) * 2);
}
.df-ptb-x2 {
  padding-top: calc(var(--df-p) * 2);
  padding-bottom: calc(var(--df-p) * 2);
}
.df-pt-x2 {
  padding-top: calc(var(--df-p) * 2);
}
.df-pb-x2 {
  padding-bottom: calc(var(--df-p) * 2);
}
.df-pl-x2 {
  padding-left: calc(var(--df-p) * 2);
}
.df-pr-x2 {
  padding-right: calc(var(--df-p) * 2);
}
.alt-pr-x2 {
  padding-right: calc(var(--alt-p) * 2);
}

.df-p-half-all,
.df-p-all-half {
  padding: calc(var(--df-p) / 2);
}
.df-pt-half {
  padding-top: calc(var(--df-p) / 2);
}

.df-p-half {
  padding-right: calc(var(--df-p) / 2);
  padding-left: calc(var(--df-p) / 2);
}
.df-pl-half {
  padding-left: calc(var(--df-p) / 2);
}
.df-pr-half {
  padding-right: calc(var(--df-p) / 2);
}
.df-ptb-half {
  padding-top: calc(var(--df-p) / 2);
  padding-bottom: calc(var(--df-p) / 2);
}

.df-pr {
  padding-right: var(--df-p);
}
.df-pl {
  padding-left: var(--df-p);
}
.df-plx2 {
  padding-left: var(--df-p);
}

.df-p-b,
.df-pb {
  padding-bottom: var(--df-p);
}
.df-p-tb,
.df-ptb {
  padding-top: var(--df-p);
  padding-bottom: var(--df-p);
}
.df-p-t,
.df-pt {
  padding-top: var(--df-p);
}

.alt-p {
  padding: var(--alt-p); /*70px*/
}
.alt-pl {
  padding-left: var(--alt-p); /*70px*/
}
.alt-pr {
  padding-right: var(--alt-p); /*70px*/
}

.alt-pt {
  padding-top: var(--alt-p); /*70px*/
}
.alt-pb {
  padding-bottom: var(--alt-p); /*70px*/
}
.alt-ptb {
  padding-bottom: var(--alt-p); /*70px*/
  padding-top: var(--alt-p); /*70px*/
}

.ptb-3_125,
.oth-ptb {
  padding-top: var(--p-50);
  padding-bottom: var(--p-50);
}

.oth-p-all {
  padding: var(--p-50);
}
.oth-pl {
  padding-left: var(--p-50);
}
.oth-pr {
  padding-right: var(--p-50);
}
.oth-pt {
  padding-top: var(--p-50);
}
.oth-pb {
  padding-bottom: var(--p-50);
}

/**MARGINS*/
.df--ml-x2 {
  margin-left: calc(var(--df-p) * -2);
}
/**RESPONSIVE WIDE SCREEN */
@media screen and (max-width: 1438px) {
  .df-p-w {
    padding-right: var(--df-p);
    padding-left: var(--df-p);
  }

  .df-pr-x2-w {
    padding-right: calc(var(--df-p) * 2);
  }
}

/**RESPONSIVE TABLET*/
@media screen and (max-width: 1025px) {
  .df-pr-x2-t {
    padding-right: calc(var(--df-p) * 2);
  }
  .df-p-x2-t {
    padding-right: calc(var(--df-p) * 2);
    padding-left: calc(var(--df-p) * 2);
  }
  .p-50p-tab {
    padding: 50px 50px 50px 50px;
  }
  .pt-50p-tab {
    padding-top: 50px;
  }
  .pb-50p-tab {
    padding-bottom: 50px;
  }
  .pr-50p-tab {
    padding-right: 50px;
  }
  .pl-50p-tab {
    padding-left: 50px;
  }
  .df-p-tab {
    padding-left: var(--df-p);
    padding-right: var(--df-p);
  }
  .df-p-all-tab {
    padding: var(--df-p);
  }

  .df-pb-x2-t {
    padding-bottom: calc(var(--df-p) * 2);
  }
  .df-pl-tab {
    padding-left: var(--df-p);
  }
  .df-pt-tab,
  .df-pt-t {
    padding-top: var(--df-p);
  }
  .df-ptb-t {
    padding-top: var(--df-p);
    padding-bottom: var(--df-p);
  }

  .df-pr-tab {
    padding-right: var(--df-p);
  }
  .df-pb-tab,
  .df-pb-t {
    padding-bottom: var(--df-p);
  }
  .df-mb-t {
    margin-bottom: var(--df-p);
  }

  .alt-p-tab {
    padding-left: var(--alt-p);
    padding-right: var(--alt-p);
  }
  .alt-pl-tab {
    padding-left: var(--alt-p);
  }
  .alt-pt-tab {
    padding-top: var(--alt-p);
  }
  .alt-pr-tab {
    padding-right: var(--alt-p);
  }
  .alt-pb-tab {
    padding-bottom: var(--alt-p);
  }
  .alt-mb-t {
    margin-bottom: var(--alt-p);
  }
  .alt-ptb-t {
    padding-bottom: var(--alt-p); /*70px*/
    padding-top: var(--alt-p); /*70px*/
  }
  .df-pt-x2-t {
    padding-top: calc(var(--df-p) * 2);
  }
}

@media screen and (max-width: 1025px) {
  .elementor-element.el-fs-50-t .elementor-widget-container p,
  .elementor-element.el-fs-50-t
    .elementor-widget-container
    h2.elementor-heading-title {
    font-size: 50px;
    line-height: 1.01em;
  }
  .elementor-element.el-fs-30-t
    .elementor-widget-container
    h3.elementor-heading-title,
  .elementor-element.el-fs-30-t
    .elementor-widget-container
    h2.elementor-heading-title {
    font-size: 30px;
  }
  .elementor-element.el-fs-18-t
    .elementor-widget-container
    h3.elementor-heading-title,
  .elementor-element.el-fs-18-t
    .elementor-widget-container
    h2.elementor-heading-title {
    font-size: 18px;
  }
}

@media screen and (max-width: 769px) {
  .elementor-element.el-fs-20-m
    .elementor-widget-container
    h3.elementor-heading-title,
  .elementor-element.el-fs-20-m
    .elementor-widget-container
    h2.elementor-heading-title {
    font-size: 20px;
  }
  .elementor-element.el-fs-25-m
    .elementor-widget-container
    h3.elementor-heading-title,
  .elementor-element.el-fs-25-m
    .elementor-widget-container
    h2.elementor-heading-title {
    font-size: 25px;
  }

  .el-fs-14-m .elementor-widget-container p {
    font-size: 14px;
  }

  .df-pt-half-m {
    padding-top: calc(var(--df-p) / 2);
  }
  .pb-50p-m {
    padding-bottom: 50px;
  }
  .mb-50p-m {
    margin-bottom: 50px;
  }
  .df-pt-x2-m {
    padding-top: calc(var(--df-p) * 2);
  }
  .df--ml-m {
    margin-left: calc(var(--df-p) * -1);
  }
  .alt-pb-x2-m {
    padding-bottom: calc(var(--df-p) * 2);
  }
  .alt-pb-x3-m {
    padding-bottom: calc(var(--df-p) * 3);
  }
  .alt-pb-m {
    padding-bottom: var(--alt-p); /*70px*/
  }
  .df-pb-half-m {
    padding-bottom: calc(var(--df-p) / 2);
  }
  .df-pb-x2-m {
    padding-bottom: calc(var(--df-p) * 2);
  }
  .pr-50p-m {
    padding-right: 50px;
  }
  .df-p-half-m {
    padding-right: calc(var(--df-p) / 2);
    padding-left: calc(var(--df-p) / 2);
  }
  .df-p-all-m {
    padding-left: var(--df-p);
    padding-right: var(--df-p);
    padding-top: var(--df-p);
    padding-bottom: var(--df-p);
  }
  .df-p-m {
    padding-left: var(--df-p);
    padding-right: var(--df-p);
  }
  .df-pl-m {
    padding-left: var(--df-p);
  }
  .df-pr-m {
    padding-right: var(--df-p);
  }
  .df-pt-m {
    padding-top: var(--df-p);
  }
  .df-pr-x2-m {
    padding-right: calc(var(--df-p) * 2);
  }
  .df-ptb-x2-m {
    padding-top: calc(var(--df-p) * 2);
    padding-bottom: calc(var(--df-p) * 2);
  }
  .alt-p-m {
    padding-left: var(--alt-p);
    padding-right: var(--alt-p);
  }
  .alt-pt-m {
    padding-top: var(--alt-p);
  }

  .alt-mb-m {
    margin-bottom: var(--alt-p);
  }
  .alt-ptb-m {
    padding-top: var(--alt-p);
    padding-bottom: var(--alt-p);
  }
  .ptb-50p-m {
    padding-bottom: 50px;
    padding-top: 50px;
  }
  .pt-50p-m {
    padding-top: 50px;
  }
  .df-gap-m {
    gap: var(--df-p);
  }
  .alt-gap-m {
    gap: var(--alt-p);
  }
  .df-gap-m {
    gap: var(--df-p);
  }
}

/*= DEFAULT GRADIENTS and bg colors*/
.bg-red {
  background-color: var(--red);
}

.bg-red-gradient {
  background: rgb(228, 51, 83);
  background: linear-gradient(90deg, var(--red) 0%, var(--l-red) 100%);
}
.bg-red-gradient-b {
  background: rgb(228, 51, 83);
  background: linear-gradient(200deg, var(--red) 0%, var(--l-red) 100%);
}

.bg-orange-gradient {
  background: var(--orange);
  background: linear-gradient(90deg, var(--orange) 0%, var(--l-orange) 100%);
}
.bg-orange-gradient-b {
  background: var(--orange);
  background: linear-gradient(90deg, var(--orange) 0%, var(--d-orange) 100%);
}

.bg-blue-gradient {
  background: var(--blue);
  background: linear-gradient(90deg, var(--blue) 0%, var(--l-blue) 100%);
}
.bg-purple-gradient {
  background: var(--purple);
  background: linear-gradient(90deg, var(--purple) 0%, var(--l-purple) 100%);
}
.bg-purple-gradient-b {
  background: var(--d-purple);
  background: linear-gradient(90deg, var(--d-purple) 0%, var(--m-purple) 100%);
}
/*=COLORS*/

.white {
  color: white;
}
.black {
  color: black;
}

.bg-white {
  background-color: white;
}

/* bloc infos dans bloc carto nearby template résidence (shortcode) */
#map_menu .liste-nearby-infos {
    list-style: none;
    padding: 0;
    margin: 0 0 2vw 0;
}

#map_menu .liste-nearby-infos .localisation-item {
    position: relative;
    padding-left: 1.5rem;
    margin-bottom: 0.75rem;
    line-height: 1.25em;
}

#map_menu .liste-nearby-infos .localisation-item::before {
    content:"";
    position: absolute;
    left: 0;
    top: 0.4rem;
    width: 0.5rem;
    height: 0.5rem;
    background-color: #76A5D8;
    border-radius: 50%; /* rend le bullet rond */
}


/**********************/
/****** MODULES ******/
/********************/

/** ELEMENTOR MODULES*/

/*=> Single post template ! actualités, articles...*/
.se-single-post-content .elementor-element .elementor-widget-container p {
  font-size: 1.125rem;
  line-height: 1.33em;
}
.se-single-post-content
  .elementor-element
  .elementor-widget-container
  p:last-child {
  margin-bottom: 0;
}


/*==> RES LOTS SWIPER*/
.res-lot-swiper-wrapper{
  overflow: hidden;
}
.res-lot-swiper-slide_content-wrapper {
	position: relative;
	width: 100%;
	height: 1px;
	overflow: hidden;
	padding-bottom: 48%;
}
.res-lot-swiper-slide_img-wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.swiper-slide-image {
	object-fit: cover;
	width: 100%;
	height: 100% !important;
}
.res-lot-swiper-pagination{

	justify-content: center;
	margin: 0 auto;
	align-items: center;
	display: flex;
	padding-top: 1.5rem;

}
.res-lot-swiper-pagination .swiper-pagination-bullet {
  background-color: var(--blue);
}

/*=> OTHER LOTS SWIPER -> Sur les pages single lot*/
.other-lots-swiper.elementor-element
  .elementor-widget-container
  .swiper.elementor-loop-container {
  padding-bottom: 2px; /* ? corrige  border-bottom qui disparaît*/
}

.other-lots-swiper .elementor-swiper-button.elementor-swiper-button-prev {
  display: none;
}
.other-lots-swiper .swiper-pagination {
  display: none;
}
.other-lots-swiper .elementor-swiper-button.elementor-swiper-button-next {
  width: 2.25rem;
  height: 2.25rem;
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}
.other-lots-swiper .elementor-swiper-button.elementor-swiper-button-next svg {
  width: 10px;
}
.other-lots-swiper .swiper-slide {
  opacity: 1;
  transition: 0.2s;
}
.other-lots-swiper .swiper-slide.last-visible-slide {
  opacity: 0.5;
}
@media screen and (max-width: 769px) {
  .other-lots-swiper .swiper-pagination {
    display: flex;
    bottom: 0;
  }
  .other-lots-swiper.elementor-element
    .elementor-widget-container
    .swiper.elementor-loop-container {
    padding-bottom: var(--alt-p); /* ? corrige  border-bottom qui disparaît*/
    padding-top: 2px;
  }

  .other-lots-swiper .elementor-swiper-button.elementor-swiper-button-next {
    display: none;
  }
}

.lots-swiper-seniors .swiper-button-prev,
.lots-swiper-seniors .swiper-button-next,
.lots-swiper-proj-louer .swiper-button-prev,
.lots-swiper-proj-louer .swiper-button-next,
.lots-swiper-home .swiper-button-prev,
.lots-swiper-home .swiper-button-next
 {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: white;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);

  display: flex;
  align-items: center;
  justify-content: center;

  top: 30%;
  transform: translateY(-50%);
  margin-top: 0;
}
.lots-swiper-proj-louer .swiper-button-prev,
.lots-swiper-proj-louer .swiper-button-next {
  top: 38%;
}
.lots-swiper-home .swiper-button-prev,
.lots-swiper-home .swiper-button-next {
   top: 42%;
}

.lots-swiper-seniors .swiper-button-prev {
  left: 56px;
}
.lots-swiper-home .swiper-button-prev {
  left: 48px;
}

.lots-swiper-proj-louer .swiper-button-prev {
  left: 2px;
}

.lots-swiper-seniors .swiper-button-next,
.lots-swiper-proj-louer .swiper-button-prev {
  right: 6px;
}

.lots-swiper-seniors .swiper-button-prev:after,
.lots-swiper-seniors .swiper-button-next:after,
.lots-swiper-proj-louer .swiper-button-prev:after,
.lots-swiper-proj-louer .swiper-button-next:after,
.lots-swiper-home .swiper-button-prev:after,
.lots-swiper-home .swiper-button-next:after {
  font-size: 22px;
  font-weight: 700;
}
@media screen and (max-width: 769px) {
  .lots-swiper-seniors .swiper-button-prev,
  .lots-swiper-seniors .swiper-button-next,
  .lots-swiper-proj-louer .swiper-button-prev,
  .lots-swiper-proj-louer .swiper-button-next,
  .lots-swiper-home .swiper-button-prev,
  .lots-swiper-home .swiper-button-next {  
    top: 30%;
  }

  .lots-swiper-seniors .swiper-button-prev,
  .lots-swiper-proj-louer .swiper-button-prev,
  .lots-swiper-home .swiper-button-prev {
   left: -12px;
  }
}


.lot-mini-card_btn {
  position: absolute;
  bottom: calc(var(--df-p) / 2);
  left: calc(var(--df-p) / 2);
}

@media screen and (max-width: 769px) {
  .lot-mini-card_btn {
    bottom: 50%;
    transform: translateY(50%);
    left: initial;
    right: 10px;
  }
  .lot-mini-card_btn .elementor-button {
    width: 45px;
    height: 45px;
    padding: 0 0 0 0;
    justify-content: center;
    align-items: center;
    display: flex;
  }
  .lot-mini-card_btn .elementor-button .elementor-button-text {
    display: none;
  }
}

/*= DEFAULT TYPO BLOCKS : titles, paragraphs etc.*/
.df-title-b h2.elementor-heading-title {
  font-family: "Antonio", sans-serif;
  font-size: 2.5rem;
  line-height: 1em;

  text-transform: uppercase;
  font-weight: 700;
}
@media screen and (max-width: 1025px) {
  .df-title-b h2.elementor-heading-title {
    font-size: 30px;
    line-height: 1.16em;
  }
}
/*=DEFAULT SECTIONS*/

.se-banner-title {
  padding: 1.25rem 5.625rem 1.25rem var(--df-p);
  font-family: "Antonio", sans-serif;
  width: fit-content;
}
.se-banner-title-alt {
  padding: 1.25rem calc(var(--df-p) / 2) 1.25rem var(--df-p);
  font-family: "Antonio", sans-serif;
  width: fit-content !important;
}

/*Pour les single properties et lots*/
.se-banner-title-alt-b {
  padding: 1.25rem calc(var(--df-p) / 2) 1.25rem var(--df-p);
  font-family: "Antonio", sans-serif;
  width: calc(100% + var(--df-p) + calc(var(--df-p) / 2));
}

/*Essentiellement pour l'en-tête page "La vie en résidence"*/
.se-banner-title-big {
  padding: 1.25rem calc(var(--df-p) / 2) 1.25rem var(--df-p);
  font-family: "Antonio", sans-serif;
  width: calc(100% + var(--df-p) + calc(var(--df-p) / 2));
}

.se-banner-title_left {
  margin-left: calc(var(--df-p) * -1);
}
.se-banner-title_title h2.elementor-heading-title,
.se-banner-title_title h3.elementor-heading-title {
  font-family: "Antonio", sans-serif;
  font-size: 3.125rem;
  line-height: 1.1em;
  text-transform: uppercase;
  font-weight: 700;
}

.df-sct-1 {
  padding: 5vw 0 3.6vw 6.5vw;
}
@media screen and (max-width: 1025px) {
  .se-banner-title {
    padding: 10px 30px 10px var(--df-p);
    font-family: "Antonio", sans-serif;
    width: fit-content;
  }
  .df-sct-1 {
    padding: calc(var(--df-p) * 2) var(--df-p);
  }
  .se-banner-title_title h2.elementor-heading-title,
  .se-banner-title_title h3.elementor-heading-title {
    font-size: 30px;
  }
  .se-banner-title-alt {
    padding: 10px 30px 10px var(--df-p);
  }
}
@media screen and (max-width: 769px) {
  .se-banner-title {
    width: fit-content;
    margin-right: 20px;
  }
  .se-banner-title-alt-b {
    width: fit-content;
    padding-top: 10px;
    padding-bottom: 12px;
  }
  .se-banner-title-alt-b
    .elementor-widget-container
    h1.elementor-heading-title {
    width: 17ch;
    font-size: 28px !important;
  }
}

.elementor-widget-n-menu .e-n-menu-title.e-current .e-n-menu-title-container {
  color: black !important;
}
.elementor-widget-n-menu
  .e-n-menu-title.e-current:hover
  .e-n-menu-title-container {
  color: white !important;
}
.elementor-sub-menu {
  display: none;
}

.e-child.submenu-visible {
  display: flex !important;
  position: absolute !important;
  top: 4.7vw;
}

.se-main-nav .e-n-menu-title-container {
  height: 100%;
  cursor: pointer;
}
.se-main-nav .e-n-menu .e-n-menu-wrapper .e-n-menu-heading {
  height: 4.7vw;
}

.se-main-nav .e-n-menu {
}
.se-main-nav .e-n-menu .e-n-menu-item .elementor-icon-box-wrapper {
  cursor: pointer;
}

.se-main-nav .e-n-menu .e-n-menu-title-text {
  cursor: pointer;
}

.se-main-nav #vie-en-residence:hover {
  color: white;
  background: rgb(228, 51, 83);
  background: linear-gradient(90deg, var(--red) 0%, var(--l-red) 100%);
}

.se-main-nav #concept-senioriales:hover {
  color: white;
  background: var(--purple);
  background: linear-gradient(90deg, var(--purple) 0%, var(--l-purple) 100%);
}
.se-main-nav #espace-pro:hover {
  color: white;
  background: var(--orange);
  background: linear-gradient(90deg, var(--orange) 0%, var(--l-orange) 100%);
}

.se-main-nav #vos-projets-immobiliers:hover {
  color: white;
  background: var(--blue);
  background: linear-gradient(90deg, var(--blue) 0%, var(--l-blue) 100%);
}

.se-main-nav .se-main-nav_sub-menu .e-con-full {
  padding-left: 3.75rem;
  padding-right: 3.75rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.se-main-nav_sub-menu {
}
.se-icon-box {
  position: relative;
  padding: 0 4rem 0 1.875rem;
}
.se-icon-box:after {
  content: "";
  display: block;
  position: absolute;

  top: 0%;
  width: 1px;
  height: 60px;
  background-color: white;
  right: 0;
}

@media screen and (max-width: 1025px) {
  .se-icon-txt_text {
    width: calc(100% - 46px);
  }

  .se-mobile-icon-box
    .elementor-widget-container
    .elementor-icon-box-wrapper
    .elementor-icon-box-icon {
    margin-top: 0px;
    width: 31px;
  }
  .se-mobile-icon-box
    .elementor-widget-container
    .elementor-icon-box-wrapper
    .elementor-icon-box-icon
    .elementor-icon {
    font-size: 31px;
  }

  .se-mobile-icon-box .elementor-icon-box-wrapper .elementor-icon-box-title {
    font-size: 16px;
    line-height: 1.1875em;
    font-weight: 600;
    margin: 0 0 1px 0;
  }
  .se-mobile-icon-box
    .elementor-icon-box-wrapper
    .elementor-icon-box-description {
    font-size: 13px;
    line-height: 15px;
  }
}

.se-main-nav_sub-menu .se-icon-box:last-child:after {
  display: none;
}
@media screen and (max-width: 768px) {
  .se-mmenu-wrapper {
    padding-left: 20px;
    padding-right: 10px;
  }
}
@media screen and (max-width: 390px) {
  .se-mmenu-wrapper {
    padding-left: 10px;
    padding-right: 10px;
  }
}
/**OFFCANVAS AND OFFCANVAS TRIGGER*/
.elementor-element.se-offc-trigger .elementor-widget-container {
  max-width: 46px;
  max-height: 46px;
  width: 11vw;
  height: 11vw;
  min-width: 32px;
  min-height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.elementor-element.se-offc-trigger
  .elementor-widget-container
  .elementor-icon-wrapper {
}
.elementor-element.se-offc-trigger
  .elementor-widget-container
  .elementor-icon-wrapper
  .elementor-icon {
  font-size: 17px;
  max-width: 46px;
  max-height: 46px;
  width: 10vw;
  height: 10vw;
  min-width: 32px;
  min-height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
}

/*=> POSTS NAVIGATION, template single articles*/

.elementor-post-navigation__next {
  padding-left: 11.5%;
}
.elementor-post-navigation__prev {
  padding-right: 11.5%;
}
.post-navigation__prev--label,
.post-navigation__next--label {
  display: flex;
  width: fit-content;
  line-height: 1em;
  padding-top: 12px;
  padding-bottom: 10px;
  border: 1px solid white;
  border-radius: 2.5rem;
  margin-bottom: 12px;
  position: relative;
}
.post-navigation__next--label {
  padding-right: 2.25rem;
  padding-left: 1.25rem;
}
.post-navigation__prev--label {
  padding-right: 1.25rem;
  padding-left: 2.25rem;
}
.post-navigation__prev--label::before,
.post-navigation__next--label::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;

  background-image: url("assets/img/btn-arrow.svg");
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  width: 10px;
  height: 12px;
}
.post-navigation__next--label::before {
  transform: translateY(-50%) scale(1);
  right: 1.25rem;
}
.post-navigation__prev--label::before {
  transform: translateY(-50%) scale(-1);
  left: 1.25rem;
}

.post-navigation__next--title,
.post-navigation__prev--title {
  text-decoration: underline;
  width: 100%;
  text-align: right;
  text-overflow: initial;
  white-space: wrap;
  max-width: 100%;
  box-sizing: border-box;
}
.elementor-post-navigation__link__next {
  align-items: flex-end;
}
@media screen and (max-width: 1025px) {
  .elementor-post-navigation__next {
    padding-left: 16px;
  }
  .elementor-post-navigation__prev {
    padding-right: 16px;
  }
  .post-navigation__next--title,
  .post-navigation__prev--title {
    display: none;
  }
  .post-navigation__prev--label,
  .post-navigation__next--label {
    margin-bottom: 0;
  }
}

/*=> READ MORE*/

.se-read-more__link-wrap {
  position: relative;
  z-index: 20;
}
.se-read-more__link-wrap .se-read-more__link {
  font-size: 15px;
  font-weight: 700;
  color: var(--l-red) !important;
}
.orange-read-more .se-read-more__link-wrap .se-read-more__link {
  font-size: 15px;
  font-weight: 700;
  color: var(--l-orange) !important;
}
.js-read-smore[data-read-smore-words="0"] {
  line-height: 0;

  opacity: 0;
  transition: all 0.5s;
}
.js-read-smore.is-expanded[data-read-smore-words="0"] {
  line-height: inherit;
  opacity: 1;
}
.js-read-smore {
  transition: all 0.3s;
}
.js-read-smore.is-expanded {
}

/*= PARAGRAPHS*/

/***************/
/*= CTA BLOCKS*/
/*************/

.df-cta-block {
  gap: 1.5rem;
}

.df-para-m p {
  margin-bottom: 0;
  margin-top: 1rem;
}

.df-para-m2 p {
  margin-bottom: 0;
  margin-top: 0.5rem;
}
.df-para-m3 p {
  margin-bottom: 0;
  margin-top: 0.75rem;
}
.para-m-0 p {
  margin-top: 0;
  margin-bottom: 0;
}

.df-cta-block .df-para-m:first-child p {
  margin-top: 0;
}
.df-cta-btn .elementor-button {
  padding: 1.25rem 2.5rem;
  border-radius: 1.875rem;
}

.df-cta-btn .elementor-button-text {
  font-size: 1.25rem;
  font-weight: 600;
}
@media screen and (max-width: 1025px) {
  .df-cta-block {
    gap: 20px;
  }

  .df-cta-btn .elementor-button {
    margin-bottom: 16px;
    padding: 18px 40px;
    font-size: 16px;
  }
  .df-cta-btn.no-mb .elementor-button {
    margin-bottom: 0;
  }
  .df-cta-btn .elementor-button-text {
    font-size: 16px;
    font-weight: 600;
  }
}

@media screen and (max-width: 428px) {
  .df-cta-btn.df-cta-btn-full-xm .elementor-button {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }
}
/* = ELEMENTOR MODULES => home page*/
.se-home-slider_right-content__title-block {
  padding: 1.5rem 5rem 1.5rem calc(var(--df-p) / 2);
  margin-left: calc(0px - var(--df-p) / 2);
  width: fit-content;
  max-width: 90%;
  position: relative;
  z-index: 12;
}

@media screen and (max-width: 1025px) {
  .se-home-slider_right-content__title-block {
    padding: 12px 30px 12px var(--df-p);
    margin-left: 0;
  }
}

/*= ELEMENTOR POSTS CARROUSSEL*/

.se-post-card {
  margin-right: 3.125rem;
}

.se-post-card .e-con-full {
  height: 100%;
}
.se-post-card_btn {
  position: absolute;
  bottom: 1.25rem;
  top: initial;
  left: 0;
  width: 100%;
}
.se-post-card_btn .elementor-button-content-wrapper {
  align-items: center;
  justify-content: center;
}
.se-post-card_btn .elementor-button-icon {
  width: 10px;
}

/*=> ELEMENTOR IMAGE SLIDER*/
.se-image-slider .elementor-element {
  height: 100%;
}
.se-image-slider .elementor-image-carousel-wrapper {
  height: 100%;
}
.se-image-slider .swiper-slide {
  height: 100%;
  position: relative;
  transition-property: transform;
  overflow: hidden;
  padding-bottom: 52%;
}
.se-image-slider .swiper-slide-inner {
  width: 100%;
  height: 100%;

  overflow: hidden;
  position: absolute;
}
.se-image-slider .swiper-slide-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  object-position: center;
}

.se-image-slider .swiper-pagination-bullet {
  transition: all 0.2s;
}
.se-image-slider .swiper-pagination-bullet-active {
  width: 70px !important;
  border-radius: 20px;
}
.se-image-slider.elementor-element
  .swiper
  .swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 1rem;
}

.se-image-slider.elementor-element.ext-pagination
  .swiper
  .swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: -32px;
}

@media screen and (max-width: 1025px) {
  .se-image-slider.elementor-element
    .swiper
    .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: 0;
  }
  .l-blue-bullets-t.elementor-element
    .swiper
    div.swiper-pagination
    span.swiper-pagination-bullet {
    background-color: var(--l-blue);
  }
}
/*= ELEMENTOR FOOTER MENU*/

.se-footer-menu-title.elementor-element h3.elementor-heading-title,
.se-footer-menu-title.elementor-element h2.elementor-heading-title {
  font-weight: 900;
  font-size: 1rem;
  margin-bottom: 12px;
}
.se-footer-menu.elementor-element.elementor-widget {
  margin-bottom: 2rem;
  margin-block-end: 2rem;
}
.se-footer-menu.elementor-element.elementor-widget:last-child {
  margin-bottom: 0;
  margin-block-end: 0;
}

.se-footer-menu .elementor-nav-menu .menu-item.menu-item-object-custom {
  margin-bottom: 8px;
}
.se-footer-menu
  .elementor-nav-menu
  .menu-item.menu-item-object-custom
  .elementor-item {
  display: inline;
  padding: 0;
}

/*=ELEMNYTOR POINTS CLES*/
.se-point-cle {
  position: relative;
}
.se-point-cle::before {
  padding-right: 0.5rem;
  color: white;
  font-size: 2.2rem;
  position: absolute;
  left: -2rem;
  top: -0.05rem;
  display: block;
}
.point-1 {
  content: "1.";
}
.point-2 {
  content: "2.";
}
.point-3 {
  content: "3.";
}
.point-4 {
  content: "4.";
}

/*= ELEMENTOR VALEURS BLOCKS (vie en résidence)*/

.se-valeur-block {
  padding: 0 0 1.25rem 0;
  width: 10.4vw;
  height: 10.4vw;
  border: 1px solid var(--l-red);
  justify-content: flex-end;
  gap: 1rem;
}

.se-valeur-block_image {
  width: 100%;
  padding: 0 var(--p-50);
}
.se-valeur-block_title h3.elementor-heading-title {
  font-size: 1.125rem;
  font-weight: 900;
  line-height: 1.3em;
  text-align: center;
}
.se-valeur-block_title span {
  color: var(--red);
}

@media screen and (max-width: 1438px) {
  .se-valeur-block {
    width: 150px;
    height: 150px;
  }
}
@media screen and (max-width: 769px) {
  .se-valeur-block {
    padding: 0 0 20px 0;
    width: 180px;
    height: 180px;
    gap: 12px;
  }
}
@media screen and (max-width: 420px) {
  .se-valeur-block {
    padding: 0 0 8px 0;
    width: 40vw;
    height: 40vw;
    gap: 8px;
  }
  .se-valeur-block_image {
    width: 100%;
    padding: 0 var(--alt-p);
  }
}

/*= ELEMENTOR types logements BLOCKS (vie en résidence)*/
.se-lgmt-type-block {
  height: 1px;
  overflow: hidden;
  padding: 0 0 50% 0;
  position: relative;
  cursor: pointer;
}

.se-lgmt-type-block::before {
  content: "";
  display: block;
  position: absolute;
  top: 0%;
  background-color: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
  left: 0;
  transition: all 0.3s;
}
.se-lgmt-type-block_title,
.se-lgmt-type-block_title-b {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  left: 50%;
  width: 100%;
  padding: 0 1rem 0 1rem;
  transition: all 0.3s;
}

.se-lgmt-type-block_tagl-b {
  padding-top: 6.25rem;
  padding-left: 0;
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  left: 0;
  width: 100%;
  opacity: 0;
  transition: all 0.3s;
}

.se-lgmt-type-block_tagl {
  padding-top: 2rem;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  left: 50%;
  width: 100%;
  opacity: 0;
  transition: all 0.3s;
}

.se-lgmt-type-block:hover .se-lgmt-type-block_tagl,
.se-lgmt-type-block:hover .se-lgmt-type-block_tagl-b {
  opacity: 1;
}
.se-lgmt-type-block:hover .se-lgmt-type-block_tagl-b {
  padding-left: 1.875rem;
}

.se-lgmt-type-block:hover .se-lgmt-type-block_title {
  padding-bottom: 2.75rem;
}
.se-lgmt-type-block:hover .se-lgmt-type-block_title-b {
  padding-left: 2.75rem;
}

.se-lgmt-type-block_title h3.elementor-heading-title {
  font-family: var(--alt-font);
  color: white;
  font-size: 2.5rem;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
}
.se-lgmt-type-block:hover::before {
  background-color: rgba(0, 0, 0, 0.6);
}

.se-lgmt-type-block_title-b h3.elementor-heading-title {
  font-family: var(--alt-font);
  color: white;
  font-size: 3.125rem;
  font-weight: 700;
  text-transform: uppercase;
  text-align: left;
}
@media screen and (max-width: 1025px) {
  .se-lgmt-type-block_title-b h3.elementor-heading-title,
  .se-lgmt-type-block_title h3.elementor-heading-title {
    font-size: 30px;
    text-align: center;
  }
}
.red {
  color: var(--red);
}
.bigger-sup {
  font-size: 1.5rem;
  vertical-align: super;
  line-height: 0;
}
@media screen and (max-width: 1025px) {
  .bigger-sup {
    font-size: 19px;
  }
}

/*=> ELEMENTOR CUSTOM BTNS*/

.alt-el-btn a.elementor-button {
  font-weight: 600;
}
@media screen and (max-width: 1281px) {
  .alt-el-btn a.elementor-button {
    font-size: 14px;
  }
}

@media screen and (max-width: 1025px) {
  .alt-el-btn a.elementor-button {
    font-size: 16px;
    padding: 16px 24px;
    min-width: 200px;
  }
}

/* = MODULES CODES (shortcodes, templates php etc.)*/

/* => MON ESPACE CLIENT FORM*/

p.my-space-welcome{
  margin-bottom: 2.25rem;
  text-align: center;
  font-size: 1.5625rem;
}

.my-space-infos-wrapper{
border: 1px solid white;
}
.my-space-form {
  display: flex;
  flex-direction: column;
  gap: 0;
}

input.my-space-form_input[type="text"],
input.my-space-form_input[type="password"],
textarea.my-space-form_input,
select.my-space-form_input {
  border-radius: 0;
}
 input.my-space-form_input[type="text"]:focus,
  input.my-space-form_input[type="password"]:focus,
textarea.my-space-form_input:focus,
select.my-space-form_input:focus {
    outline: none;
    box-shadow: 0 1px rgba(255, 255, 255, 1); /* Optional subtle glow */
    border-radius: 0; /* Keep rounded corners if you want */
}
.my-space-form--white {
  color: white;
}

.my-space-form_label {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 300;
}

.my-space-form--white input.my-space-form_input {
  color: white;
  font-weight: 500;
}

.my-space-form p{
  margin-bottom: 0;
}

input.my-space-form_input[type="date"],
input.my-space-form_input[type="email"],
input.my-space-form_input[type="number"],
input.my-space-form_input[type="password"],
input.my-space-form_input[type="search"],
input.my-space-form_input[type="tel"],
input.my-space-form_input[type="text"],
input.my-space-form_input[type="url"] {
  background: transparent;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  border-bottom: 1px solid white;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
}

.my-space-form_input-wrapper {

margin-bottom: 1.875rem;
  position: relative;
}
.editable::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-64%);
  background-image: url(assets/img/pen.svg);
  background-size: 100%;
  width: 15px;
  height: 15px;
  right: 0;
}

.my-space-form_img-element{
  margin-bottom: var(--p-50);

	width: 135px;
position: relative;
	flex-direction: column;

}
.my-space-form_img-element .upload-btn{
 position: absolute;
 right: 0;
 bottom: 0;
	width: 26px;
  z-index: 2;
	height: 26px;
cursor: pointer;
	background: white;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

}

.my-space-form_img-element .upload-btn img{
  width: 15px;
}

.my-space-form_img-element input{
  display: none;
}
.my-space-form_img-wrapper{
border-radius: 50%;
width: 135px;
height: 135px;
overflow: hidden;
}



.my-space-form_img-wrapper img{
  
	object-fit: cover;
	width: 100%;
	height: 100%;
	object-position: center;

}

/*=> SEARCH MODULE GENERAL SETTINGS (commun à tous les modules)*/

.w-420px {
  width: 420px;
  max-width: 100%;
}
.df-form-wrapper {
  margin-left: -5px;
  margin-right: -5px;
}

.se-search_place::before,
.df-form-place::before {
  content: "";
  mask-size: contain;
  mask-position: left center;
  transform: translateY(-50%);
  mask-image: url(assets/img/place-target.svg);
  -webkit-mask-image: url(assets/img/place-target.svg);
  top: 48%;
}
.df-form-adresse::before {
  content: "";
  mask-size: contain;
  mask-position: right center;
  mask-repeat: no-repeat;
  transform: translateY(-50%);
  mask-image: url(assets/img/adr-pin.svg);
  -webkit-mask-image: url(assets/img/adr-pin.svg);
  top: 48%;
}
.df-form-element-white-icon::before {
  background-color: white;
}

.df-form-element.df-form-file-upload{
 
	display: flex;
	flex-direction: column;

}
.df-form-link{
  font-weight: 500;
}
.df-form-link:hover{
  text-decoration: underline;
  color: white;
}

.df-form-select {
  position: relative;
}
.df-form-select select {
  appearance: none; /* Standard */
  -webkit-appearance: none; /* Chrome, Safari */
  -moz-appearance: none; /* Firefox */
  background: none;
  outline: none;
  transition: border 0.2s ease; /* Optional: remove any default BG */
}

.df-form-element input {
  outline: none;
  transition: box-shadow 0.2s ease;
}

.df-form-element input:focus {
  box-shadow: inset 0 0 0 1px #fff; /* Simulated green border */
  border-color: white;
}
.df-form-select select:focus {
  box-shadow: inset 0 0 0 1px #fff; /* Simulated green border */
  border-color: white;
}

.df-form-select::before {
  position: absolute;
  display: block;
  right: 10px;
  content: "";
  mask-size: contain;
  mask-position: left center;
  background-color: white;
  mask-image: url(assets/img/select-arrow.svg);
  -webkit-mask-image: url(assets/img/select-arrow.svg);
  top: 50%;
  transform: translatey(-50%);
  mask-repeat: no-repeat;
  width: 14px !important;
  height: 14px !important;
}

.se-search_budget::before,
.df-form-budget::before {
  content: "€";
  font-weight: 700;
  top: 52%;
  transform: translateY(-50%);
  font-size: 16px;
  line-height: 1em;
}

/* 1. Hide the native checkbox */
.custom-checkbox input[type="checkbox"],
.custom-checkbox input[type="radio"] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

/* 2. Style the custom box */
.custom-checkbox .checkmark {
  display: inline-block;
  width: 27px;
  height: 27px;
  border: 1px solid;
  margin-right: 0.5rem;
  vertical-align: middle;
  position: relative;
  transition: all 0.2s ease-in-out;
}

.custom-checkbox .sharp {
  border-radius: 0;
}
.custom-checkbox .rounded {
  border-radius: 04px;
}

.custom-checkbox .white-brd {
  border-color: white;
}
.custom-checkbox .black-brd {
  border-color: black;
}

/* 3. Style the label itself */
.custom-checkbox {
  display: flex;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  user-select: none;
  color: black;
  margin-bottom: 0;
  position: relative;
}

/* 4. Show custom checkmark when checked */
.custom-checkbox input[type="checkbox"]:checked + .checkmark::after,
.custom-checkbox input[type="radio"]:checked + .checkmark::after {
  content: "";
  position: absolute;
  left: 4px;
  border-radius: 2px;
  top: 4px;
  display: block;
  width: 17px;
  height: 17px;
}

.se-form .custom-checkbox input[type="checkbox"]:checked + .tr-checkmark:after,
.se-form .custom-checkbox input[type="radio"]:checked + .tr-checkmark:after {
  background-color: white;
}
.white-form
  .custom-checkbox
  input[type="checkbox"]:checked
  + .tr-checkmark:after {
  background-color: black;
}
/* 5. Optional: change background when checked */
.custom-checkbox input[type="checkbox"]:checked + .white-checkmark:after {
  background-color: var(--m-blue);
}

.ctc-form_checkbox-txt {
  text-transform: initial;
  font-size: 13px;
}

p.df-form-checkbox-txt {
  text-transform: initial;
  font-size: 13px;
  margin-bottom: 0;
}
.df-form-checkbox-content {
  width: calc(100% - 37px);
  padding-left: 10px;
}
/*= Home search module --> Module de recherche de la page d'accueil*/
.home-search_tagline {
  margin: 0 0 1.25rem 0;
  text-align: center;
  font-size: 1.25rem;
  color: black;
}
.df-search-tagline {
  margin: 0 0 1.25rem 0;
  text-align: center;
  font-size: 1.25rem;
  color: white;
  text-align: left;
}
.df-form-tagline {
  margin: 0 0 1.25rem 0;
  font-size: 1.25rem;
}

@media screen and (max-width: 1025px) {
  .df-search-tagline {
    margin: 0 0 20px 0;

    font-size: 16px;
  }
}
.se-home-search {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  gap: 0;
  margin: 0 auto;
  width: 90%;
}
.se-home-search_form-group {
  border-radius: 0;
  position: relative;
}
.se-home-search_checkbox-group {
  padding: 0.5rem 2.5rem;
}
.se-home-search_form-group input::placeholder {
  color: #434343;
  font-size: 13px;
  font-weight: 400;
}

.home-search-place {
  width: 34%;
  position: relative;
}

.home-search-budget {
  width: 27%;
  position: relative;
}
.home-search-projet {
  width: 39%;
  display: flex;
  gap: 1.875rem;
  align-items: center;
}

.home-search-place input {
  border: 0px;
  border-radius: 0;
}

.se-home-search_form-group:before {
  position: absolute;
  width: 20px;
  z-index: 4;
  height: 20px;
  display: block;
}

.main-search-element:before,
.df-form-element:before {
  position: absolute;
  width: 20px;
  z-index: 4;
  height: 20px;
  display: block;
  right: 1.25rem;
}

.home-search-place::before {
  left: 010px;
}

.home-search-budget::before {
  left: 2.5rem;
}

.home-search-budget input {
  border-left: 1px solid #d5d5d5;
  border-right: 1px solid #d5d5d5;
  border-top: 0;
  border-bottom: 0;
  border-radius: 0;
  padding: 0.5rem 2.5rem 0.5rem 3.75rem;
}

.home-search-place input {
  padding: 0.5rem 2.5rem 0.5rem 2.5rem;
  border-radius: 0;
}

.home-search-projet_title {
  font-size: 13px;
  margin: 0;
  min-width: 82px;
  font-weight: 500;
}

.home-search-submit-wrapper {
  margin-bottom: -5rem;
  margin-top: 1.25rem;
  position: relative;
  z-index: 8;
}

.home-search-submit_btn[type="submit"] {
  background: black;
  color: white;
  border: 0;
  padding: 1.25rem 4.37rem;
  border-radius: 4rem;
  font-size: 1.25rem;
  line-height: 1em;
}
.home-search-submit_btn[type="submit"]:hover {
  background-color: black;
}

.main-search .se-search-submit,
.se-ctc-form .ctc-form-submit {
  color: white;
  border: 0;
  padding: 1.25rem 2.5rem;
  border-radius: 1.875rem;
  font-size: 1.25rem;
  line-height: 1em;
}

.main-search .main-search-submit,
.ctc-form .ctc-form-submit {
  background-color: var(--red);
  margin-top: 1.5rem;
  color: white;
}
.main-search .main-search-submit:hover,
.se-ctc-form .ctc-form-submit {
  background-color: var(--red);
  color: white;
}

.se-search-submit_btn[type="submit"]:hover {
}
.home-form-more-options {
  margin-bottom: -4rem;
  margin-top: 10px;
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
}
.home-form .custom-checkbox input[type="checkbox"]:checked + .tr-checkmark:after,
.home-form .custom-checkbox input[type="radio"]:checked + .tr-checkmark:after {
  background-color: black;
}
/*=> Le module de rechreche principal (celui que l'onr etrouve sur les pages Acheter, vendre etc.)*/
.main-search-tagline {
  font-size: 1.125rem;
  color: white;
  text-align: left;
  margin: 0 0 1.25rem 0;
}

.se-ctc-form,
.main-search,
.df-form {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  margin: 0 0 0 0;
  gap: 0;
  flex-wrap: wrap;
}

.df-form.emploi-form {
  justify-content: center;
  gap: 10px;
}
@media screen and (max-width: 1025px) {
  .emploi-search-wrapper {
    max-width: 640px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .df-form.emploi-form {
    gap: 0;
  }
}
.df-form.home-form {
  width: fit-content;
  flex-direction: row;
  gap: 0 2vw;
  justify-content: center;
}

.main-search-element,
.ctc-form-element,
.df-form-element {
  position: relative;
  margin-bottom: 10px;
}
.df-form-element:last-child {
  margin-bottom: 0;
}

.ctc-form-element,
.df-form-element {
  padding-left: 5px;
  padding-right: 5px;
}

.home-form-element {
  position: relative;
}
.home-form-element:after {
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 1px;
  background-color: #d5d5d5;
  right: -1vw;
  bottom: 0;
}
@media screen and (max-width: 1025px) {
  .df-form.home-form {
    flex-direction: column;
    gap: 0;
    justify-content: flex-start;
    width: 100%;
    max-width: 100%;
  }

  .white-form.home-form .home-form-element input {
    position: relative;
    border: 1px solid #d5d5d5;
  }
  .home-form-element:after {
    display: none;
  }
}
.emploi-form-select-group {
  min-width: 300px;
}
@media screen and (max-width: 769px) {
  .emploi-form-select-group {
    min-width: initial;
    max-width: 100%;
  }
}

.df-form-element select,
.df-form-element input {
  border: 1px solid white;
  padding: 14px 5rem 14px 1.25rem;
  font-size: 14px;
  border-radius: 0;
}

.main-search-element input,
.df-form-element input,
.se-form .df-form-element select {
  background-color: transparent;
  color: white;
}
.white-form .df-form-element select {
  background-color: white;
  color: black;
}

.white-form .df-form-element input {
  background-color: white;
  color: black;
}

.df-form-element select {
  font-weight: 600;
  border-radius: 0;
}

.df-form-element option {
  background-color: white;
  color: black;
}

.main-search_place::before,
.df-form-place::before {
  background-color: white;
}
.white-form .main-search_place::before,
.white-form .df-form-place::before {
  background-color: black;
}
.main-search-element input::placeholder,
.df-form-element input::placeholder {
  color: white;
}

.white-form .main-search-element input::placeholder,
.white-form .df-form-element input::placeholder {
  color: var(--m-gray);
}

.main-search_checkbox-group {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  padding: 12px 0;
}

.df-form-checkbox-group {
  display: flex;
  align-items: center;
  gap: 2.5rem;
}

.main-search_checkbox-btns-wrapper,
.df-form-checkbox-btns-wrapper {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: row;
  gap: 1.25rem;
}
@media screen and (max-width: 1025px) {
  .df-form-checkbox-group {
    gap: 10px 30px;
    flex-wrap: wrap;
  }
  .main-search_checkbox-btns-wrapper,
  .df-form-checkbox-btns-wrapper {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px 20px;
  }
}
.se-form .main-search_checkbox-btn {
  color: white;
}
.white-form .main-search_checkbox-btn {
  color: black;
}
.se-form .main-search_checkbox-btn .checkmark,
.se-form .df-form-checkbox-btn .checkmark {
  border: 1px solid white;
}

.white-checkmark {
  background-color: white;
}

.tr-checkmark {
  background-color: transparent;
}

.main-search-element_title {
  font-size: 14px;
  font-weight: 600;
  color: white;
  margin: 0 0 0 0;
}

.df-form-news-sub-content {
  padding: 14px 0.5rem 14px 2rem;
  background: var(--red);
}
.news-sub-content-title {
  font-size: 1rem;
  font-weight: 700;
  text-transform: initial;
  margin: 0 0 4px 0;
}

.df-form-element-title {
  font-size: 14px;
  font-weight: 600;
  padding-left: 1.25rem;
}

.main-search-element::before,
.se-form .df-form-element::before,
.se-form .df-form-select::before {
  color: white;
}

.white-form .df-form-element::before,
.white-form .df-form-select::before {
  color: black;
}
.se-form .main-search_projet-title {
  color: white;
}
.white-form .main-search_projet-title {
  color: black;
}
.radio-group,
.ctc-form-radio-group,
.df-form-radio-group {
  display: flex;
  gap: 10px;
}

.radio-group input[type="radio"],
.df-form-radio-group input[type="radio"] {
  display: none; /* Hide actual radio buttons */
}

.df-form .df-form-radio-group label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  height: 50px;
  border-radius: 0;
  cursor: pointer;
  font-family: sans-serif;
  font-size: 16px;
  user-select: none;
  transition: all 0.2s ease;
}
.my-space-form  .df-form-radio-group {
  margin-top:4px;
  padding:0
}
.my-space-form  .df-form-radio-group label {
  display: flex;
  align-items: center;
  justify-content: center;
width: 84px;
  height: 40px;
  border-radius: 0;
  cursor: pointer;
  font-family: sans-serif;
  font-size: 16px;
  user-select: none;
  transition: all 0.2s ease;
}

.radio-group label,
.se-form .df-form-radio-group label {
  background-color: transparent;
  border: 1px solid white;
  color: white;
}
.radio-group label,
.white-form .df-form-radio-group label {
  background-color: white;
  border: 1px solid white;
  color: black;
}

.se-form .radio-group input[type="radio"]:checked + label,
.se-form .df-form-radio-group input[type="radio"]:checked + label {
  background-color: white;
  color: black;
}
.white-form .radio-group input[type="radio"]:checked + label,
.white-form .df-form-radio-group input[type="radio"]:checked + label {
  background-color: black;
  color: white;
}
.radio-group label:hover,
.df-form-radio-group label:hover {
}

/**CONTACT CARD (append aux résultats de recherche)*/
.se-ctc-card {
  border: 0.625rem solid white;

  background-image: linear-gradient(
    120deg,
    rgba(0, 116, 190, 1) 16%,
    rgba(134, 71, 139, 1) 100%
  );
}
.se-ctc-card-content {
  padding: 2rem 15px;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 0;
  background-image: url(assets/img/keys-line.svg);
  background-size: 89%;
  background-position: center center;
  background-repeat: no-repeat;
}
.se-ctc-card .se-ctc-card-content .se-ctc-card-title {
  color: white;
  width: 8ch;
  text-transform: uppercase;
  font-family: "Antonio", Sans-serif;
  font-size: 2.1875rem;
  font-weight: 700;
  line-height: 1.28em;
}
@media screen and (max-width: 1025px) {
  .se-ctc-card .se-ctc-card-content .se-ctc-card-title {
    width: 18ch;
    font-size: 25px;
  }
  .se-ctc-card-content {
    background-image: url(assets/img/resp-keys.svg);
    background-size: contain;
    background-position: 90% center;
  }
}
/*= Default buttons*/

.df-btn-wrapper {
  display: flex;
}
.df-btn {
  border-radius: 30px;
}

a.df-big-btn,
button.df-big-btn,
.df-big-btn {
  padding: 1.25rem 2.5rem;
  line-height: 1em;
  font-size: 1.25rem;
  font-weight: 600;
  border-radius: 2.5rem;
}
a.df-big-btn-alt,
button.df-big-btn-alt,
.df-big-btn-alt {
  padding: 0.5rem 2.5rem;
  line-height: 1em;
  font-size: 1.25rem;
  font-weight: 600;
  border-radius: 2.5rem;
  height: 100%;
  margin-bottom: 10px;
}
.df-smaller-btn {
  padding: 0.875rem 1rem;
  font-size: 1rem;
  line-height: 1em;
}

.df-small-btn {
  border-radius: 30px;
  padding: 1rem 1.25rem;
  font-size: 1rem;
  line-height: 1em;
  font-weight: 600 !important;
}

.df-icon-btn {
  display: flex;
  flex-direction: row;
  gap: 10px;
  justify-content: center;
}
.oth-smaller-icon-btn {
  font-size: 1rem;
  display: flex;
  flex-direction: row;
  gap: 0;
  justify-content: center;
  position: relative;
  padding: 0.875rem 3rem 0.875rem 1rem;
  border-radius: 6px;
}
.oth-smaller-icon-btn::before {
  content: "";
  display: block;
  position: absolute;
  top: 48%;
  transform: translateY(-50%);
  background-position: right center;
  background-size: contain;
  width: 13px;
  height: 13px;
  right: 1rem;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1025px) {
  .oth-smaller-icon-btn {
  }
}
.right-arrow-btn:before {
  background-image: url("assets/img/btn-arrow.svg");
}

.df-icon-btn-b {
  font-size: 1rem;
  font-weight: 600;
  color: white;
  padding: 1rem 1.25rem 1rem 2.25rem;
  border-radius: 30px;
  position: relative;
}
.df-icon-btn-b:hover {
  color: white;
}
.df-icon-btn-b::before {
  content: "";
  display: block;
  position: absolute;
  top: 48%;
  transform: translateY(-50%);
  background-image: url("");
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 01.25rem;
  background-repeat: no-repeat;
}

.db-arrow-icon:before {
  background-image: url(assets/img/db-arrow.svg);
  background-repeat: no-repeat;
}
.df-small-btn-b {
  border-radius: 30px;
  padding: 10px 26px;
  font-size: 16px;
  line-height: 1em;
  font-weight: 600 !important;
}
button.df-small-btn-b.white-btn:active,
button.df-small-btn-b.white-btn:hover {
  background-color: #adadad;
  color: white;
}
@media screen and (max-width: 1025px) {
  .df-icon-btn-b {
    padding: 12px 20px 12px 32px;
    font-size: 16px;
  }
  .df-icon-btn-b::before {
    left: 16px;
  }
  button.df-small-btn-b {
    border-radius: 30px;
    padding: 10px 26px;
    font-size: 16px;
    line-height: 1em;
    font-weight: 600 !important;
  }
}

.icon-btn_txt {
}
.icon-btn_img {
  width: 10px;
  max-width: 10px;
}
.black-btn {
  background-color: black;
  border: 0px;
  color: white;
}
.black-btn:hover {
  background-color: black;
  border: 0px;
  color: white;
}
.l-red-btn {
  background-color: var(--l-red);
  border-color: var(--l-red);
  color: white;
}
.l-red-btn:hover {
  background-color: var(--l-red);
  border-color: var(--l-red);
  color: white;
}
.l-orange-btn {
  background-color: var(--l-orange);
  border-color: var(--l-orange);
  color: white;
}
.l-orange-btn:hover {
  background-color: var(--l-orange);
  border-color: var(--l-orange);
  color: white;
}
.white-btn {
  background-color: white;
  color: black;
  border: 1px solid #adadad;
}
.white-btn:hover {
  background-color: white;
  color: black;
}
.blue-btn {
  background-color: var(--blue);
  border-color: var(--blue);
  color: white;
}
.blue-btn:hover {
  background-color: var(--blue);
  border-color: var(--blue);
  color: white;
}
.m-blue-btn {
  background-color: var(--m-blue);
  border-color: var(--m-blue);
  color: white;
}
.m-blue-btn:hover {
  background-color: var(--m-blue);
  border-color: var(--m-blue);
  color: white;
}

.l-blue-btn {
  background-color: var(--l-blue);
  border-color: var(--l-blue);
  color: white;
}
.l-blue-btn:hover {
  background-color: var(--l-blue);
  border-color: var(--l-blue);
  color: white;
}
.purple-btn {
  background-color: var(--purple);
  border-color: var(--purple);
  color: white;
}
.purple-btn:hover {
  color: white;
  background-color: var(--purple);
  border-color: var(--purple);
}

.red-btn {
  background-color: var(--red);
  border-color: var(--red);
  color: white;
}
.red-btn:hover {
  color: white;
  background-color: var(--red);
  border-color: var(--red);
}

/* = BLOC SERVICES (Vie en résidence)*/
.services-blocks {
  display: flex;
  gap: var(--other-p);
  flex-wrap: nowrap;
  flex-direction: column;
}
.services-blocks-m .accordionjs .acc_section .acc_head {
  display: flex;
}

@media (min-width: 768px) {
  .services-blocks-m {
    display: none;
  }
}
@media (max-width: 1025px) {
  .services-blocks {
    display: none;
  }
}
.services-wrapper {
  background-color: white;
  padding: 0;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.875rem;
}

.service-block {
  background-color: var(--lter-gray2);
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: center;
  justify-content: flex-start;
  padding: 3.125rem 1.25rem 2.875rem 1.25rem;
}
.service-block_title-element {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1.25rem;
  flex-direction: column;
}
.service-block_icon {
  width: auto;
  display: flex;
  justify-content: center;
  height: 4.6875rem;
}
h3.service-block_title {
  margin: 0 0 0 0;
  font-size: 1.875rem;
  line-height: 1.1em;
  font-family: "antonio", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  color: var(--red);
}
.service-block_content {
  font-size: 1.125rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 1025px) {
  .service-block_icon {
    height: 75px;
  }
  h3.service-block_title {
    font-size: 30px;
  }
  .service-block_content {
    font-size: 18px;
  }
}
.service-block_pres {
  font-size: 1rem;
  line-height: 1.5em;
}
.services-block_infos-list {
  padding-left: 1.5rem;
  display: none;
}
.services-block_infos-list p {
  position: relative;
  padding-left: 20px;
}
.services-block_infos-list p::before {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  background-color: var(--l-red);
  transform: rotate(45deg);
  width: 10px;
  height: 10px;
  left: 0;
}

@media screen and (max-width: 1025px) {
  .services-wrapper {
    background-color: #f8f8f8;
    padding: 35px 20px;
    width: 100%;
  }
  .service-block .acc_head {
    position: relative;
  }
  .service-block .acc_head:after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) scale(-1);
    background-image: url(assets/img/red-arrow-top.svg);
    background-size: contain;
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    background-position: center;
  }
  .service-block.acc_active .acc_head:after {
    transform: translateY(-50%) scale(1);
  }
  .services-block_infos-list {
    padding-left: 0;
  }
}

.yellow-check-list .elementor-widget-container {
  display: flex;
  gap: 8px;
  flex-direction: column;
}

.yellow-check-list .elementor-widget-container p {
  margin-bottom: 0;
  position: relative;
  padding-left: 24px;
}
.yellow-check-list .elementor-widget-container p:before {
  position: absolute;
  left: 0;
  content: "";
  display: block;
  background-size: contain;
  background-position: left top;
  top: 0;
  background-image: url(assets/img/chk-yellow.svg);
  width: 15px;
  height: 15px;
}

/* = DAY SCHEDULE WRAPPER*/
.dsb-wrapper {
  display: flex;
  flex-direction: row;
}

.dsb-fixed-content-wrapper {
  display: flex;
  width: 22.25%;
  margin-right: 1.114%;
  position: relative;
  z-index: 6;
}

.dsb-fixed-content {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.dsb-fixed-content::after {
  content: "";
  display: block;
  position: absolute;
  top: 0%;

  background-image: url(assets/img/arrow-big-r-5.svg);
  background-size: contain;
  background-position: right center;
  background-repeat: no-repeat;
  background-color: transparent;
  width: 47%;
  height: 100%;
  left: 53%;
}
.dsb-fixed-content::before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  background-color: white;
  width: var(--df-p);
  left: calc(var(--df-p) * -1);
}
.dsb-slider {
  width: 76%;
  position: relative;
  z-index: 4;
}

.dsb-title-block {
  background-color: white;
  width: 68%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-left: 2.5vw;
}

.elementor-widget-container .dsb-title-block .dsb-title {
  color: var(--red);
  text-transform: uppercase;
  font-size: 2.084vw;
  font-family: var(--alt-font);
  font-weight: 700;
  margin: 0 0 0 0;
  position: relative;
  z-index: 20;
}
.elementor-widget-container .dsb-title-block .dsb-title:before {
  content: "...";
}

.dsb-slide-wrapper {
  display: flex;
  padding-right: 6.4%;
  height: 100%;
}
.dsb-slide-sizer {
  position: relative;
  width: 100%;
  left: 0;
  height: 1px;
  padding-bottom: 100%;
  background: white;
  top: 0;
}
.dsb-content-slide-inside {
  padding: 2.61vw 1.045vw 1.045vw;
  background-color: white;
  display: flex;
  flex-direction: column;
  gap: 0;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.dsb-content {
  position: relative;
  height: 100%;
}
.elementor-widget-container .dsb-content-slide .dsb-content_title-block {
  margin: 0 0 1.045vw 0;
  font-size: 1.25vw;
  font-family: var(--alt-font);
  color: black;
  text-transform: uppercase;
  font-weight: 700;
  border-bottom: 1px solid var(--m-gray);
  padding-bottom: 1.045vw;
}

.dsb-content_txt-block {
  font-size: 0.834vw;
  line-height: 1.25em;
  font-weight: 500;
  color: #000000;
}

.dsb-content_icons-list {
  list-style-type: none;
  position: absolute;
  bottom: 0;
  padding-left: 0;
  margin-left: 0;
  left: 0;
  display: flex;
  gap: 0.5vw;
  align-items: flex-end;
  list-style-type: none;
}

.dsb-image {
  display: flex;
  width: 100%;
  height: 100%;
}
.dsb-image img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

@media screen and (max-width: 1438px) {
  .dsb-fixed-content-wrapper {
    width: 27.25%;
    margin-right: 1.114%;
  }

  .dsb-slider {
    width: 71%;
  }

  .dsb-content-slide-inside {
    padding: 32px 15px;
  }
  .elementor-widget-container .dsb-content-slide .dsb-content_title-block {
    margin: 0 0 10px 0;
    font-size: 19px;
    padding-bottom: 10px;
  }

  .dsb-content_txt-block {
    font-size: 14px;
  }

  .dsb-content_icons-list {
    gap: 10px;
  }
}
@media screen and (max-width: 1280px) {
  .dsb-fixed-content-wrapper {
    width: 33%;
    margin-right: 1%;
  }

  .dsb-slider {
    width: 66%;
  }
}
@media screen and (max-width: 1025px) {
  .dsb-content_icons-list__li img {
    height: 20px;
  }
  .dsb-fixed-content::before {
    width: 50%;
  }
  .dsb-fixed-content-wrapper {
    width: 42%;
    margin-right: 1%;
  }

  .dsb-slider {
    width: 58%;
  }
  .dsb-content_icons-list {
    justify-content: flex-start;
  }
  .elementor-widget-container .dsb-content-slide .dsb-content_title-block {
    margin: 0 0 10px 0;
    font-size: 15px;
    padding-bottom: 10px;
  }

  .dsb-content_txt-block {
    font-size: 12px;
  }
  .elementor-widget-container .dsb-title-block {
    width: 100%;
    justify-content: flex-start;
    background-color: transparent;
    padding-left: 20px;
  }
  .elementor-widget-container .dsb-title-block .dsb-title {
    width: 11ch;
    font-size: 20px;
    line-height: 1.16em;
  }
  .elementor-widget-container .dsb-title-block .dsb-title br {
    display: none;
  }
  .dsb-fixed-content::after {
    width: 74%;
    left: 21%;
  }
  @media screen and (max-width: 1025px) {
    .dsb-content-slide-inside {
      padding: 20px 12px 8px 12px;
    }
  }
}
/* = FAQ : La vie en résidence*/
.faq-tab {
}
.faq-tab_title {
  font-size: 1.875rem;
  line-height: 1em;
  font-weight: 300;
  text-transform: uppercase;
  background: white;
  padding: 2.5rem 0 2rem 0;
  border-bottom: 2px solid var(--m-gray);
  margin-bottom: 0;
}
.faq-tab .acc_head {
  position: relative;
}

.faq-tab .acc_head:after {
  content: "";
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%) scale(-1);
  mask-image: url(assets/img/red-arrow-top.svg);
  -webkit-mask-image: url(assets/img/red-arrow-top.svg);
  mask-size: contain;
  width: 20px;
  height: 20px;
  mask-repeat: no-repeat;
  mask-position: center;
  background-color: black;
}

.faq-sub-tab .acc_head:after {
  transform: translateY(-50%) scale(-1);
  background-color: var(--m-gray);
}
.faq-tab.acc_active > .acc_head:after,
.faq-sub-tab.acc_active > .acc_head:after {
  transform: translateY(-50%) scale(1);
}
ul.faq-sub-tab-list {
  margin: 0 0 0 0;
}
li.faq-sub-tab {
  list-style-type: none;
}
.faq-sub-tab_title {
  padding: 1.75rem 1.875rem;
  background-color: #f8f8f8;
  font-size: 1.125rem;
  line-height: 1.33em;
  font-weight: 600;
  border-bottom: 2px solid white;
}
.faq-sub-tab_content {
  padding: 1rem 1.875rem 1.75rem;
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 1025px) {
  .faq-tab_title {
    font-size: 20px;
    line-height: 1em;
    font-weight: 300;
    text-transform: uppercase;
    background: white;
    padding: 40px 0;
    border-bottom: 2px solid var(--m-gray);
    margin-bottom: 0;
  }
  .faq-sub-tab_title {
    font-size: 16px;
  }
  .faq-tab .acc_head:after {
    right: 0;
  }
  .faq-sub-tab .acc_head:after {
    right: 10px;
  }
}

/*= SWIPER CREA (espace pro)*/
.se-rea-list .swiper-pagination {
  left: 0;
  transform: translate(0);
}
.se-rea-list .swiper-pagination .swiper-pagination-bullet {
  opacity: 1;
}
.se-rea-list
  .swiper-pagination
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 70px;
  border-radius: 40px;
}

/*= SWIPER REFS (espace pro)*/
.se-ref-list .swiper-pagination {
  bottom: -2.25rem !important;
  position: absolute;
  top: initial;
  left: 23rem;
  transform: translate(0);
}
.se-ref-list .swiper-pagination .swiper-pagination-bullet {
  opacity: 1;
}
.se-ref-list
  .swiper-pagination
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 70px;
  border-radius: 40px;
}

@media screen and (max-width: 1025px) {
  .se-ref-list .swiper-pagination {
    bottom: 0rem !important;
    position: absolute;
    top: initial;
    left: 50%;
    transform: translatex(-50%);
  }
}
/*= TESTIMONIAL SLIDER : Témoignages*/

.avis-slider {
  overflow: hidden;
}

.swiper-avis-pagination {
  padding-top: 2rem;
  display: flex;
  justify-content: center;
  /* padding-left: 17%; */
  width: 40% !important;
}
.swiper-avis-pagination .swiper-pagination-bullet-active {
  background-color: #000000;
}
.swiper-slide.avis-slide {
  /* width: 60%; */
  display: flex;
  justify-content: stretch;
  height: auto !important;
}
@media screen and (max-width: 769px) {
  .avis-slider {
  }
  .avis-slider .avis-slide_content-wrapper
/* .avis-slider .swiper-slide-shadow-left,
.avis-slider .swiper-slide-shadow-right */ {
    left: 0;
    transition: all 0;
    height: 100%;
  }

  .avis-slider .custom-prev .avis-slide_content-wrapper
/* .avis-slider .custom-prev .swiper-slide-shadow-left,
.avis-slider .custom-prev .swiper-slide-shadow-right */ {
    left: 63%;
  }
  .avis-slider .custom-next .avis-slide_content-wrapper
/* .avis-slider .custom-next .swiper-slide-shadow-left
.avis-slider .custom-next .swiper-slide-shadow-right */ {
    left: -63%;
  }
  .swiper-slide.avis-slide {
    width: 83%;
  }
  .swiper-avis-pagination {
    width: 100% !important;
  }
}
.swiper-slide.avis-slide.swiper-slide-prev .avis-slide_content-wrapper {
}

.swiper-slide.avis-slide.swiper-slide-visible.swiper-slide-active {
}

/* .swiper-slide.avis-slide.swiper-slide-visible.swiper-slide-prev::before{
z-index: 5;
position: absolute;
content: "";
display: block;
width: 100%;
right: -0%;
height: 100%;
background: rgba(0, 0, 0, 0.99);
background: linear-gradient(90deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 66%);
opacity: 0.8;
}

.swiper-slide.avis-slide.swiper-slide-visible.swiper-slide-next::before{
z-index: 5;
position: absolute;
content: "";
display: block;
width: 100%;
right: -0%;
height: 100%;
background: rgba(0, 0, 0, 0.99);
background: linear-gradient(90deg, rgba(0, 0, 0, 0) 100%, rgba(0, 0, 0, 1) 0%);
opacity: 0.8;
} */

.avis-slide_content-wrapper {
  display: flex;
  gap: 0;
  position: relative;
  max-width: 100%;
  width: 100%;
  background: white;
  padding: 1.875rem 2.625rem;
  transition: all 0.2s;
  border-radius: 10px;
}
.avis-slide_content {
  padding-left: 1.25rem;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  width: fit-content;
}
.avis-slide_img {
  width: 2.5rem;
}

.avis-slide_content h3.avis-slide_name {
  font-family: "Antonio", sans-serif;
  font-size: 1.875rem;
  text-transform: uppercase;
  line-height: 1.16em;
  margin: 0 0 10px 0;
}
.avis-slide_job {
  font-size: 1rem;
  line-height: 1.5rem;
  margin-bottom: 1.5rem;
}
.avis-slide_content p.avis-slide_p {
  font-size: 1.125rem;
  margin-bottom: 0;
  line-height: 1.16em;
  color: var(--d-orange);
  font-weight: 700;
}
@media screen and (max-width: 1025px) {
  .avis-slide_content-wrapper {
    flex-direction: column;
    padding: var(--df-p);
  }
  .avis-slide_content {
    align-items: flex-start;
  }
}
@media screen and (max-width: 769px) {
  .custom-prev .avis-slide_content-wrapper:before {
    background: white;
    transition: all 0.3s;
    opacity: 0;
  }
  .custom-prev .avis-slide_content-wrapper:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: #000000;
    background: linear-gradient(
      270deg,
      rgba(0, 0, 0, 1) 80%,
      rgba(0, 0, 0, 0.3) 100%
    );
    opacity: 0.5;
    z-index: 4;
    left: 0;
    top: 0;
  }
  .custom-next .avis-slide_content-wrapper:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: #000000;
    background: linear-gradient(
      90deg,
      rgba(0, 0, 0, 10) 80%,
      rgba(0, 0, 0, 0.3) 100%
    );
    opacity: 0.5;
    z-index: 4;
    left: 0;
    top: 0;
  }

  .avis-slider .custom-prev .swiper-slide-shadow-right,
  .avis-slider .custom-prev .swiper-slide-shadow-left,
  .avis-slider .custom-next .swiper-slide-shadow-right,
  .avis-slider .custom-next .swiper-slide-shadow-left {
    opacity: 0 !important;
  }
  .avis-slide_img {
    width: 50%;
    max-width: 150px;
    margin-bottom: 10px;
  }
  .avis-slide_content {
    padding-left: 0;
  }
}
/*= SE BULLET LIST (paragraphes traités comme des listes)*/
.se-bullet-list {
  margin-top: 0.65rem;
}
.se-bullet-list-alt {
  padding-left: 1.25rem;
}
.se-bullet-list_li p {
  font-weight: 500;
  margin-bottom: 10px;
  font-size: 1.125rem;
  line-height: 1.33em;
  position: relative;
  padding-left: 16px;
}


.se-wysi-block{
    font-weight: 500;

  font-size: 1.125rem;
  line-height: 1.33em;

}
.se-wysi-block p{
  margin-bottom: 0;
  font-size: 1.125rem;
  line-height: 1.33em;
}
.se-wysi-block .elementor-widget-container > *:not(:first-child) {
  margin-top: 1.5rem;
}

.se-wysi-block ul{
    margin-bottom: 0;
  list-style-type: none;
  margin-left: 0;
  padding-left: 0;
}
.se-wysi-block ul li{
    position: relative;
  padding-left: 1.25rem;
   margin-top: 0.65rem;
}
.se-bullet-list_li p::before,
.se-wysi-block ul li:before
{
  content: "";
  display: block;
  position: absolute;
  top: 0.5rem;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  left: 0;
  position: absolute;
}

.se-purple-list .se-bullet-list_li p::before {
  background-color: var(--purple);
}
.se-blue-list .se-bullet-list_li p::before,
.se-wysi-block.se-blue-list li:before
{
  background-color: var(--blue);
}
.se-black-list .se-bullet-list_li p::before {
  background-color: black;
}
.se-l-blue-list .se-bullet-list_li p::before,
.se-wysi-block.se-l-blue-list li:before
{
  background-color: var(--l-blue);
}

.se-big-bullet-list .se-bullet-list_li p {
  margin-bottom: 8px;
  padding-left: 20px;
}

.se-big-bullet-list .se-bullet-list_li p::before {
  width: 10px;
  height: 10px;
}

.se-big-arrow-list {
  list-style-type: none;
}

.se-big-arrow-list_li {
}

.se-big-arrow-list_li {
  position: relative;
  font-size: 1.125rem;
  line-height: 1.33em;
  padding-left: 0;
  font-weight: 500;
  margin-bottom: 0;
  padding-left: calc(3.5rem + 10px);
  min-height: 2.25rem;
  display: flex;
  align-items: center;
}

.se-big-arrow-list_li p {
  margin-bottom: 0;
}
.se-big-arrow-list_li strong {
  color: var(--m-blue);
}

.se-big-arrow-list_li:before {
  background-image: url(assets/img/big-arrow.svg);
  width: 3.5rem;
  background-size: 100%;
  display: block;
  background-repeat: no-repeat;
  position: absolute;
  content: "";
  height: 2.25rem;
  background-position: center;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width: 769px) {
  .se-big-arrow-list_li {
    font-size: 14px;
    line-height: 1.33em;
    padding-left: calc(54px + 10px);
    min-height: 36px;
  }

  .se-big-arrow-list_li:before {
    width: 54px;
    height: 36px;
  }
}

/*= BLUE BLOCKS : Niveaux d'accompagnement (page vente et gestion)*/

.se-blue-block.elementor-element {
  padding: 0;
}
.se-blue-block_header {
  background-color: var(--d-blue);
  padding: 3.125rem 1.25rem 1.25rem 1.25rem;
  position: relative;
}
.se-blue-block_header.alt-blue-block_header {
  background-color: var(--d-blue);
  padding: 1.875rem 1.25rem 1.5rem 1.25rem;
  position: relative;
}

.se-blue-block_header::before {
  font-size: 1.25rem;
  font-weight: 900;
  text-align: center;
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
  border-radius: 50%;
  position: absolute;
  top: -1.25rem;
  left: 1.25rem;
  width: 2.5rem;
  height: 2.5rem;
  line-height: 1em;
  padding-top: 3px;
}
.se-blue-block_header.alt-blue-block_header::before {
  top: 50%;
  left: -1.25rem;
  color: var(--red);
  transform: translateY(-50%);
}

.se-blue-block_header.alt-blue-block_header .elementor-widget-heading {
  padding-left: 15px;
}
@media screen and (max-width: 1025px) {
  .se-blue-block_header.alt-blue-block_header .elementor-widget-heading {
    padding-left: 20px;
  }
}
.se-blue-blocks-group
  .accomp-swiper-slide:first-child
  .se-blue-block_header::before {
  content: "1";
}

.se-blue-blocks-group
  .accomp-swiper-slide:nth-child(2)
  .se-blue-block_header::before {
  content: "2";
}
.se-blue-blocks-group
  .accomp-swiper-slide:nth-child(3)
  .se-blue-block_header::before {
  content: "3";
}
.se-blue-block_header .elementor-heading-title {
  min-height: 2.75rem;
}
.se-blue-block_header.alt-blue-block_header .elementor-heading-title {
  min-height: 1rem;
}
.se-blue-block_content {
  padding: 1.25rem;
}
.se-blue-block_header.alt-blue-block_header + .se-blue-block_content {
  padding: 1.25rem 2rem 2rem 2rem;
}
@media screen and (max-width: 769px) {
  .se-blue-block_header {
    padding: 40px 20px 16px 20px;
  }
  .se-blue-block_header br {
    display: none;
  }
  .se-blue-block_header::before {
    width: 40px;
    height: 40px;
    top: -20px;
    font-size: 20px;
  }
  .se-blue-block_content {
    padding: 20px;
  }
}
.se-diam-list {
  margin: 0 00 0 0;
}
.se-diam-list_li .elementor-widget-container p,
.se-diam-list_li .elementor-widget-container div {
  position: relative;
  font-size: 1.125rem;
  padding-left: 1.25rem;
  color: var(--d-blue) !important;
  margin-bottom: 0.9rem;
}
@media screen and (max-width: 1025px) {
  .se-diam-list_li .elementor-widget-container p,
  .se-diam-list_li .elementor-widget-container div {
    font-size: 16px;
  }
}
.se-diam-list_li:last-child .elementor-widget-container p,
.se-diam-list_li:last-child .elementor-widget-container div {
  margin-bottom: 0;
}

.se-diam-list_li .elementor-widget-container p::before,
.se-diam-list_li .elementor-widget-container div::before {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  transform: rotate(45deg);
  width: 10px;
  height: 10px;
  left: 0;
}
.blue-diam_li .elementor-widget-container p::before,
.blue-diam_li .elementor-widget-container div::before {
  background-color: var(--m-blue);
}

/*= **************************/
/*= TEMPLATE SINGLE PROGRAMME*/
/*= **************************/

/**HEADER elements*/

.se-pr-landing-left-col.elementor-element.e-con {
}

.se-bullet-list-b.elementor-element {
  margin-bottom: 0.75rem;
  padding: 0 0 0 0;
}

.se-bullet-list-b_li,
.se-bullet-list-b-alt_li {
  position: relative;
  min-height: 1.4rem;
  margin-bottom: 1rem;
  padding: 0 0 0 1rem;
}
.se-bullet-list-b_li:before,
.se-bullet-list-b-alt_li:before {
  content: "";
  display: block;
  position: absolute;
  background-color: white;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  left: 0;
  position: absolute;
}

.se-bullet-list-b_li:before {
  top: 50%;
}
.se-bullet-list-b-alt_li:before {
  top: 30%;
}

/*= Services Block*/
.se-services-block {
  border: 1px solid white;
  padding: 1.875rem 2rem 1.875rem 2.5rem;
  background-color: transparent;
  gap: 0;
}

/*= Simu block*/
.se-simu-block {
  border: 1px solid white;
  padding: 1.875rem 1.5rem 1.25rem 1.5rem;
  background-color: transparent;
  gap: 7px;
}

.se-small-btn .elementor-button-wrapper .elementor-button {
  padding: 0.7rem 1.25rem 0.7rem 1.25rem;
}
.se-small-btn
  .elementor-button-wrapper
  .elementor-button
  .elementor-button-icon {
  width: 8px;
}

@media screen and (max-width: 769px) {
  .se-simu-block {
    display: flex;
    flex-direction: row;
    padding: 14px 20px;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
  }
  .se-small-icon-btn .elementor-button {
    width: 45px;
    height: 45px;
    padding: 0 0 0 0;
    justify-content: center;
    align-items: center;
    display: flex;
  }
}
@media screen and (max-width: 420px) {
  .se-simu-block {
    padding: 8px;
  }
  .se-small-icon-btn .elementor-button {
    width: 36px;
    height: 36px;
    padding: 0 0 0 0;
    justify-content: center;
    align-items: center;
    display: flex;
  }
}

.df-swiper-pag .swiper-pagination-bullet {
  opacity: 1;
  transition: all 0.3s;
  width: 13px;
  height: 13px;
  border-radius: 50%;
}
.white-bullets .swiper-pagination-bullet {
  background-color: white;
}
.df-swiper-pag .swiper-pagination-bullet-active {
  border-radius: 20px;
  width: 70px;
}
/*= SWIPER SLIDER default settings : ex pour la pagination*/
.se-pagination .swiper-pagination-bullet {
  opacity: 1;
  transition: all 0.3s;
  width: 13px;
  height: 13px;
  border-radius: 50%;
}
.se-pagination .swiper-pagination-bullet-active {
  border-radius: 20px;
  width: 70px;
}

/* = SWIPER LOTS => Mini liste des lots à vendre ou achter*/

.lots-swiper-wrapper {
  width: 100%;
  overflow-x: hidden;
  margin: 0 auto;
  max-width: 1460px;
}
.lots-swiper {
  padding: 1.5rem 0 4rem 0;
}
.lot-slide-wrapper {
  margin-right: 1.375rem;
  -webkit-box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.16);
}
.lots-swiper .swiper-wrapper {
}

.lots-swiper .res-swiper-pagination {
  justify-content: center;
  display: flex;
  margin-top: 2rem;
}

.lots-swiper-home .res-swiper-pagination,
.lots-swiper-seniors .res-swiper-pagination,
.lots-swiper-proj-louer .res-swiper-pagination
{
  justify-content: flex-start;
  display: flex;
  padding-left: 5.24rem;
  margin-top: 3.125rem;
}

@media screen and (max-width: 1025px) {
  .lots-swiper-home .res-swiper-pagination {
    justify-content: center;
    padding-left: 0;
    margin-top: var(--df-p);
  }
}

.lots-swiper .swiper-pagination-bullet
{
  background-color: var(--blue);
}

.lots-swiper-home .swiper-pagination-bullet,
.lots-swiper-seniors .swiper-pagination-bullet {
  background-color: white;
}

.seniors-lots-swiper-home .lots-swiper-home .swiper-pagination-bullet,
.lots-swiper-proj-louer .swiper-pagination-bullet
{
  background-color: var(--d-blue);
}

.lots-swiper .swiper-pagination-bullet-active {
}

.lots-swiper-wrapper .lot-swiper-slide {
  justify-content: stretch;
  height: auto;
  display: flex;
}

.lot-swiper-slide_content-wrapper {
  width: 100%;
}

.lot-slide_head {
  padding: 0.625rem;
  background-color: white;
}
.lot-slide_img-wrapper {
  width: 100%;
  padding-bottom: 60%;
  height: 1px;
  overflow: hidden;
  position: relative;
}
.lot-slide_img {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  left: 0;
}

.lot-slide_img img {
  object-fit: cover;
  object-position: center;
  position: relative;
  width: 100%;
  height: 100%;
}

.lot-slide_content {
  padding: 1.5rem 1.25rem 1.25rem 1.25rem;
  position: relative;
  height: 38%;
}

.lot-slide-achat,
.lot-slide-wrapper-achat {
  background-color: var(--d-blue);
}
.lot-slide-location,
.lot-slide-wrapper-location {
  background-color: var(--l-blue);
}
.lot-cat-badge {
  width: fit-content;
  background-color: var(--m-blue);
  position: absolute;
  left: 0;
  top: -1.25rem;
  z-index: 4;
  padding: 5px 1.5rem;
}
.lot-cat-badge_name {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1em;
  color: white;
  font-family: var(--alt-font);
  text-transform: uppercase;
}

.lot-infos-block {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  justify-content: flex-start;
  align-items: flex-start;
  padding-bottom: 1vw;
  margin-bottom: 0.75rem;
  height: 100%;
}

.lot-place {
  font-family: var(--alt-font);
  padding-left: 1rem;
  position: relative;
  color: white;
  font-size: 1.25rem;
  line-height: 1em;
  text-transform: uppercase;
  font-weight: 600;
}

.lot-place_city {
}
.lot-place_cp {
  font-weight: 300;
}

.lot-place::before {
  content: "";
  display: block;
  position: absolute;
  top: 0%;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: bottom left;
  background-image: url(assets/img/se-mini-pin.svg);
  background-size: 100%;
  width: 8px;
  height: 100%;
  left: 0;
}
p.lot-infos-block_p {
  margin-bottom: 0;
  font-size: 0.9375rem;
  line-height: 1.3em;
  font-weight: 700;
  color: white;
}

.lot-price_banner {
  color: white;
  padding: 6px 10px 8px 10px;
  width: fit-content;
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: flex-start;
  gap: 4px;
  margin-top: auto;
}
.lot-achat_price-banner {
  background-color: var(--l-red);
}
.lot-location_price-banner {
  background-color: var(--red);
}

.lot-price_banner__mini-txt {
  font-size: 13px;
  line-height: 1em;
  margin-bottom: -3px;
}

.lot-price_banner__price {
  font-family: var(--alt-font);
  font-size: 1.3rem;
  line-height: 1em;
  text-transform: uppercase;
  font-weight: 700;
}
.lot-slide_btn {
  display: flex;
  margin-top: auto;
}
.lot-slide_btn__link {
  padding: 1.025rem 1.25rem;
  background: white;
  border-radius: 30px;
  font-size: 1rem;
  color: var(--blue);
  line-height: 0.95em;
  font-weight: 600;
}
.lot-slide_btn__link a {
  color: var(--blue);
}

/*=> SWIPER slider Accompagnements -> page gestion et vente*/
.el-accomp-swiper-wrapper {
  overflow-x: hidden;
}
@media screen and (max-width: 1281px) {
  .el-accomp-swiper-wrapper {
    padding: 70px 0;
  }
}
@media screen and (max-width: 769px) {
  .el-accomp-swiper-wrapper {
    padding: 50px 0 70px 0;
  }
}

.accomp-swiper-slide {
  height: auto;
}
.accomp-swiper-slide div.elementor {
  height: 100%;
}
.accomp-swiper-slide div.elementor .se-blue-block {
  height: 100%;
}

.accomp-swiper-slide_content-wrapper {
  margin-right: var(--df-p);
  height: 100%;
}
.accomp-swiper-slide_content-wrapper {
  margin-right: var(--df-p);
  height: 100%;
}
@media screen and (max-width: 1025px) {
  .accomp-swiper-rev-slide_content-wrapper {
    margin-right: 36px;
  }
}
.accomp-swiper-wrapper .accomp-swiper-pagination {
  position: absolute;
  bottom: 30px;
}

/*= Appartements à la une SLIDER*/

.apt-swiper-wrapper {
  padding: 0 var(--other-p);
}

.apt-slider {
  overflow-x: hidden;
}

.apt-swiper-slide {
  display: flex;
  height: auto;
  background-color: white;
}
.apt-slide-wrapper {
  width: 100%;
  display: flex;
  flex-direction: row;
  gap: 0;
  -webkit-box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.16);
}

.apt-slide_left {
  width: 70%;
}
.apt-slide_right {
  width: 30%;
  display: flex;
  flex-direction: column;
  background-color: white;
  padding: 1.875rem 1.875rem;
}

@media screen and (max-width: 1441px) {
  .apt-slide_left {
    width: 55%;
  }
  .apt-slide_right {
    width: 45%;
    background-color: white;
    padding: 1.875rem 1.875rem;
  }
}

.apt-banner-txt {
  font-size: 1.875rem;
  display: flex;
  line-height: 1em;

  padding: 6px 1.5rem 12px 2.5rem;
  margin-left: -1.875rem;
  font-weight: 700;
  text-transform: uppercase;
  width: fit-content;
  margin-bottom: 0;
  font-family: "Antonio", sans-serif;
}
p.apt-banner-txt {
  margin-bottom: 0;
}
.apt-tagline_1 {
  background-color: white;
  color: black;
}
.apt-tagline_2 {
  color: white;
  background-color: var(--m-blue);
}
.apt-place {
  color: white;
  background-color: var(--l-blue);
}

.apt-price_banner {
  color: white;
  padding: 6px 10px 8px 10px;
  width: fit-content;
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: flex-start;
  gap: 4px;
}
.apt-achat_price-banner {
  background-color: var(--l-red);
}
.apt-location_price-banner {
  background-color: var(--red);
}

.apt-price_banner__mini-txt {
  font-size: 1rem;
  line-height: 1em;
  margin-bottom: -3px;
}
.apt-price_banner__price {
  font-family: var(--alt-font);
  font-size: 1.875rem;
  line-height: 1em;
  text-transform: uppercase;
  font-weight: 700;
}

.apt-infos-block_p {
  margin-bottom: 1.25rem;
  margin-top: 1.25rem;
}
.apt-slide_img-wrapper {
  width: 100%;
  overflow: hidden;
  padding-bottom: 52%;
  position: relative;
  height: 100%;
}
.apt-slide_img {
  height: 100%;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.apt-slide_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  object-position: center;
}

.apt-swiper-pagination {
  display: flex;
  justify-content: center;
  padding-top: 1.25rem;
}

.apt-swiper-pagination .swiper-pagination-bullet,
.white-bullets .swiper-pagination-bullet {
  background-color: white;
}
.apt-swiper-pagination .swiper-pagination-bullet-active,
.white-bullets .swiper-pagination-bullet-active {
  background-color: white;
}

.apt-swiper-button,
.avis-swiper-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.25rem;
  height: 2.25rem;
  background-color: white;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  z-index: 99;
}
.apt-swiper-button:before,
.avis-swiper-button:before {
  width: 12px;
  height: 15px;
  display: block;
  mask-image: url(assets/img/btn-arrow.svg);
  -webkit-mask-image: url(assets/img/btn-arrow.svg);
  content: "";
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}

.apt-swiper-button:before {
  background-color: var(--l-blue);
}
.avis-swiper-button:before {
  background-color: var(--red);
}

.apt-swiper-button-prev {
  left: 0;
}
.avis-swiper-button-prev {
  left: 015%;
}
.apt-swiper-button-prev:before,
.avis-swiper-button-prev:before {
  transform: scale(-1);
}

.apt-swiper-button-next {
  right: 0;
}
.avis-swiper-button-next {
  right: 015%;
}
.apt-swiper-button img {
  display: block;
  width: 10px;
  max-width: 100%;
  margin: 0 auto;
}
.apt-swiper-button-next img {
  right: 0;
  transform: scale(-1);
}
.apt-slide_btn {
  margin-top: auto;
}
@media screen and (max-width: 1025px) {
  .apt-slide-wrapper {
    flex-direction: column;
  }
  .apt-slide_left {
    width: 100%;
  }
  .apt-slide_right {
    width: 100%;
    height: 100%;
    padding-top: 0;
  }
  .apt-infos-block {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
  }
  .apt-infos-block .apt-banner-txt:first-child {
    margin-top: -34px;
    z-index: 4;
  }
  .apt-banner-txt {
    padding: 4px 20px 6px 20px;
    margin-left: 0;
  }
  .apt-infos-block_p {
    text-align: center;
  }

  .apt-slide_btn {
    justify-content: center;
  }
}
@media screen and (max-width: 769px) {
  .avis-slider {
    /* border-left: 10px solid #ededed;
    border-right: 10px solid #ededed; */
  }
  .avis-slider .swiper-wrapper {
    padding-left: 10px;
  }
  .avis-swiper-button-prev {
    left: 0;
  }
  .avis-swiper-button-next {
    right: 0;
  }
}
/* = APT ROW LISTS*/
.apt-row-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 4px;
}

.apt-row-list_li.achat {
  background: var(--d-blue);
}
.apt-row-list_li.location {
  background: var(--l-blue);
}
.apt-row-list_li.achat .df-small-btn {
  background: var(--red);
}
.apt-row-list_li.location .df-small-btn {
  background: var(--l-red);
}
.apt-row-list_li .df-small-btn:hover {
  color: white;
}

.apt-row-list_li {
  line-height: 1em;
  display: flex;
  flex-direction: row;
  color: white;
  padding: 10px 1.5rem;
  justify-content: flex-start;
  align-items: center;
  font-size: 1.125rem;
  font-weight: 600;
  gap: 0;
}

.apt-row-list_li__child {
  padding: 0 1rem;
}

.apt-row-list_li__type {
  width: 25%;
}
.apt-row-list_li__surface {
  width: 20%;
}
.apt-row-list_li__price {
  width: 35%;
}

.apt-row-list_li__price .info-mini-btn {
  position: absolute;
  top: 0;
  width: 1.25rem;
  display: block;
  right: -2rem;
}
.apt-row-list_li__price .info-mini-btn img {
  width: 100%;
  max-width: 100%;
}
.apt-row-list_li__price .info-mini-btn img {
  filter: drop-shadow(0px 0px 10px var(--red));
}

.apt-row-list_li__btn {
  margin-left: auto;
  justify-content: flex-end;
  width: 20%;
}

@media screen and (max-width: 1025px) {
  .apt-row-list_li {
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 6px;
    position: relative;
    padding: 10px 10px 10px 15px;
  }
  .apt-row-list_li__child {
    font-size: 14px;
    padding: 0 0 0 0;
  }

  .apt-row-list_li__type {
    width: 75%;
  }
  .apt-row-list_li__surface {
    width: 75%;
  }
  .apt-row-list_li__price {
    width: 75%;
  }
  .apt-row-list_li__btn {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
  }
  .apt-row-list_li__btn .icon-btn_txt {
    display: none;
  }
  .apt-row-list_li__btn .df-icon-btn {
    padding: 0;
    width: 45px;
    height: 45px;
  }
}

/* = PAGE QUI SOMMES6NOUS*/
/*=> Blocks chiffres clés en-tête*/

.se-key-feat_content {
  height: 100%;
}
.se-key-feat_content p {
  font-size: 1rem;
  line-height: 1.2em;
  font-weight: 700;
  margin-bottom: 0;
}
.se-key-feat_content > .elementor-widget-container {
  height: 100%;
  display: flex;
  align-items: center;
}

.key-number {
  font-size: 3.5625rem;
  opacity: 0.6;
  font-weight: 900;
  line-height: 0.88em;
  position: relative;
  top: 2px;
  letter-spacing: -2px;
}
@media screen and (max-width: 1438px) {
  .key-number {
    font-size: 36px;
  }
  .se-key-feat_content p {
    font-size: 13px;

    margin-bottom: 0;
  }
}
@media screen and (max-width: 1281px) {
  .key-number {
    font-size: 32px;
  }
  .se-key-feat_content p {
    font-size: 12px;

    margin-bottom: 0;
  }
}
@media screen and (max-width: 1025px) {
  .key-number {
    font-size: 57px;
  }
  .se-key-feat_content p {
    font-size: 20px;
    line-height: 1.05em;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 420px) {
  .key-number {
    font-size: 42px;
  }
  .se-key-feat_content p {
    font-size: 16px;
  }
}
.se-number-list-b:before {
  position: absolute;
  width: 3rem;
  height: 3rem;
  background-color: var(--purple);
  color: white;
  top: 0;
  left: 0;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 900;
  font-size: 2.1rem;
  line-height: 0.8em;
  padding-top: 0.1em;
}

.se-number-list-b.se-number-list-blue:before {
  background-color: var(--blue) !important;
}


@media screen and (max-width: 1441px) {
  .se-number-list-b {
    padding-left: calc(var(--df-p) * 2);
  }

  .se-number-list-b:before {
    width: 36px;
    height: 36px;
    top: 02px;
    font-size: 18px;
    line-height: 0.8em;
    padding-top: 0.1em;
  }
}
@media screen and (max-width: 769px) {
  .se-number-list-b {
    padding-left: 60px;
  }

  .se-number-list-b:before {
    width: 48px;
    height: 48px;
    top: -2px;
    font-size: 33px;
    line-height: 0.8em;
    padding-top: 0.1em;
  }
}

.se-number-list-b:first-child:before {
  content: "1";
}
.se-number-list-b:nth-child(2):before {
  content: "2";
}
.se-number-list-b:nth-child(3):before {
  content: "3";
}
.se-number-list-b:nth-child(4):before {
  content: "4";
}
.se-number-list-b:nth-child(5):before {
  content: "5";
}
.se-number-list-b:nth-child(6):before {
  content: "6";
}
.se-number-list-b:nth-child(7):before {
  content: "7";
}

.se-number-list-b:nth-child(8):before {
  content: "8";
}
.se-number-list-b:nth-child(9):before {
  content: "9";
}
.se-number-list-b:nth-child(10):before {
  content: "10";
}
.se-number-list-b:nth-child(11):before {
  content: "11";
}
.se-number-list-b:nth-child(12):before {
  content: "12";
}
.se-number-list-b:nth-child(13):before {
  content: "13";
}



/** PRESSE TEMPLATE*/
.press-txt {
  position: relative;
  padding-left: 3.5rem;
}
.keys-txt {
  position: relative;
  padding-left: 3rem;
}
.helmet-txt {
  position: relative;
  padding-left: 3rem;
}

.keys-line-txt .elementor-heading-title {
  position: relative;
}
.helmet-line-txt .elementor-heading-title {
  position: relative;
}
.keys-line-txt .elementor-heading-title:before {
  display: inline-block;
  content: "";
  width: 5.1rem;
  height: 3rem;
  margin-right: 0;
}
.helmet-line-txt .elementor-heading-title:before {
  display: inline-block;
  content: "";
  width: 5.1rem;
  height: 3rem;
  margin-right: 0;
}
.press-txt::before,
.keys-txt::before {
  display: block;
  width: 2.75rem;
  height: 2.75rem;
  content: "";
  position: absolute;
  left: 0;
  bottom: 0.35rem;
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 769px) {
  .keys-line-txt .elementor-heading-title:before {
    display: none;
  }
  .keys-line-txt {
    padding-left: 70px;
  }
  .helmet-line-txt .elementor-heading-title::before {
    display: none;
  }
}
@media screen and (max-width: 421px) {
  .keys-line-txt {
    padding-left: 20px;
  }
}
.press-txt::before {
  background-image: url(assets/img/press-icon.svg);
}
.keys-txt::before {
  background-image: url(assets/img/keys-icon.svg);
}

.se-contact-press-title {
  position: relative;
}
.se-contact-press-title:before {
  background-image: url(assets/img/haut-parleur.svg);
  content: "";
  width: 4.375rem;
  height: 4rem;
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top left;
  position: absolute;
  left: 0.5rem;
  top: -2.5rem;
}
@media screen and (max-width: 769px) {
  .se-contact-press-title:before {
    width: 70px;
    height: 70px;
    left: 0;
    top: -44px;
  }
}
/**PAGE ACTUALITES*/

/*=> SIDEBAR ACTUALITES*/

/**LISTE categories actualites*/

.se-actu-cat-list {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  gap: 6px;
  margin-left: 0;
  padding-left: 0;
}

.se-actu-cat-list_li {
  font-size: 11px;
  line-height: 1em;
  text-transform: uppercase;
  font-weight: 400;
  display: flex;
}
.se-actu-cat-list_li__a {
  font-weight: 500;
  border-width: 1px;
  border-style: solid;
  border-radius: 20px;
  padding: 4px 10px;
}
.se-actu-cat-list_li__a:hover,
.se-actu-cat-list_li__a.current {
  color: white;
}

.se-actu-cat-list_li__a span {
  position: relative;
  top: 1px;
}
.se-cat-dossier,
.se-actu-mini-list
  .se-cat-dossier.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-dossier.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container {
  border-color: var(--l-purple);
}
.se-cat-evenements,
.se-actu-mini-list
  .se-cat-evenements.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-evenements.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container {
  border-color: var(--l-red);
}
.se-cat-immobilier,
.se-actu-mini-list
  .se-cat-immobilier.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-immobilier.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container {
  border-color: var(--l-orange);
}
.se-cat-innovation,
.se-actu-mini-list
  .se-cat-innovation.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-innovation.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container {
  border-color: var(--dker-red);
}
.se-cat-temoignage,
.se-actu-mini-list
  .se-cat-temoignage.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-temoignage.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container {
  border-color: var(--purple);
}
.se-cat-residence,
.se-actu-mini-list
  .se-cat-residence.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-residence.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container {
  border-color: var(--m-blue);
}
.se-cat-vie-quotidienne,
.se-actu-mini-list
  .se-cat-vie-quotidienne.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-vie-quotidienne.elementor-element.se-actu-mini-cat-list
  > .elementor-widget-container {
  border-color: var(--m-blue2);
}

/*=> hovered and current/focused mini-btns*/
a.se-cat-dossier:hover,
a.se-cat-dossier.current,
.se-actu-mini-list
  .se-cat-dossier.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-dossier.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container {
  background-color: var(--l-purple);
}
a.se-cat-evenements:hover,
a.se-cat-evenements.current,
.se-actu-mini-list
  .se-cat-evenements.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-evenements.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container {
  background-color: var(--l-red);
}
a.se-cat-immobilier:hover,
a.se-cat-immobilier.current,
.se-actu-mini-list
  .se-cat-immobilier.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-immobilier.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container {
  background-color: var(--l-orange);
}
a.se-cat-innovation:hover,
a.se-cat-innovation.current,
.se-actu-mini-list
  .se-cat-innovation.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-innovation.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container {
  background-color: var(--dker-red);
}
a.se-cat-temoignage:hover,
a.se-cat-temoignage.current,
.se-actu-mini-list
  .se-cat-temoignage.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-temoignage.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container {
  background-color: var(--purple);
}
a.se-cat-residence:hover,
a.se-cat-residence.current,
.se-actu-mini-list
  .se-cat-residence.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-residence.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container {
  background-color: var(--m-blue);
}
a.se-cat-vie-quotidienne:hover,
a.se-cat-vie-quotidienne.current,
.se-actu-mini-list
  .se-cat-vie-quotidienne.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container,
.se-actu-med-list
  .se-cat-vie-quotidienne.elementor-element.se-actu-mini-cat-list:hover
  > .elementor-widget-container {
  background-color: var(--m-blue2);
}

/*=> Current filters*/
#current-filters .active-filter-btn {
  border: 1px solid white;
  border-radius: 32px;
  line-height: 1em;
  color: white;
  font-size: 1.25rem;
  text-transform: uppercase;
  padding: 0.75rem 1.25rem 0.75rem 1.875rem;
  position: relative;
  display: flex;
  gap: 1.25rem;
  justify-content: center;
  align-items: center;
  transition: all 0.2s;
  opacity: 1;
}

#current-filters .active-filter-btn span {
  position: relative;
  top: 2px;
}

.active-filter-btn:after {
  position: relative;
  background-image: url(assets/img/close-icon.svg);
  content: "";
  width: 14px;
  height: 14px;
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#current-filters .active-filter-btn:hover {
  opacity: 0.8;
  background-color: transparent;
  border-color: white;
  color: white;
}

@media screen and (max-width: 769px) {
  #current-filters .active-filter-btn {
    font-size: 13px;
    padding: 12px 20px;
    gap: 8px;
  }
}

/*=> Current filters*/
#current-filters-presse .presse-active-filter-btn {
  border: 1px solid white;
  border-radius: 32px;
  line-height: 1em;
  color: white;
  font-size: 1.25rem;
  text-transform: uppercase;
  padding: 0.75rem 1.25rem 0.75rem 1.875rem;
  position: relative;
  display: flex;
  gap: 1.25rem;
  justify-content: center;
  align-items: center;
  transition: all 0.2s;
  opacity: 1;
}

#current-filters-presse .presse-active-filter-btn span {
  position: relative;
  top: 2px;
}

.presse-active-filter-btn:after {
  position: relative;
  background-image: url(assets/img/close-icon.svg);
  content: "";
  width: 14px;
  height: 14px;
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#current-filters-presse .presse-active-filter-btn:hover {
  opacity: 0.8;
  background-color: transparent;
  border-color: white;
  color: white;
}

@media screen and (max-width: 769px) {
  #current-filters-presse .presse-active-filter-btn {
    font-size: 13px;
    padding: 12px 20px;
    gap: 8px;
  }
}


.tax-categorie_presse #current-filters,
.presse-template-default  #current-filters
{
  display: none;
  pointer-events: none;
}
.tax-categorie_presse #se-filtered-result,
.presse-template-default #se-filtered-result
{
  display: none;
  pointer-events: none;
}
.tax-categorie_presse #mini_actualite_filters,
.presse-template-default  #mini_actualite_filters
{
  display: none;
  pointer-events: none;
}
.tax-categorie_presse #all_actualite,
.presse-template-default  #all_actualite
{
  display: none;
  pointer-events: none;
}
.search-results  #actu-cs-title,
.tax-categorie_presse #actu-cs-title,
.presse-template-default #actu-cs-title
{
  display: none;
  pointer-events: none;
}


.search-results #current-filters-presse,
.tax-categorie_actualite #current-filters-presse,
.actualite-template-default  #current-filters-presse

{
  display: none;
  pointer-events: none;
}


.search-results #se-filtered-result-presse,
.tax-categorie_actualite #se-filtered-result-presse,
.actualite-template-default  #se-filtered-result-presse

{
  display: none;
  pointer-events: none;
}


.post-type-archive-actualite #mini_presse_filters,
.tax-categorie_actualite #mini_presse_filters,
.actualite-template-default  #mini_presse_filters,
.search-results #mini_presse_filters
{
  display: none;
  pointer-events: none;
}


.post-type-archive-actualite #all_presse,
.tax-categorie_actualite #all_presse,
.actualite-template-default  #all_presse
{
  display: none;
  pointer-events: none;
}



.tax-categorie_actualite #presse-cs-title,
.actualite-template-default  #presse-cs-title,
.search-results #presse-cs-title
{
  display: none;
  pointer-events: none;
}





#ajax-card-display-container .grid:not(:first-child) {
  padding-top: var(--alt-p);
}
@media screen and (max-width: 1025px) {
  #ajax-card-display-container {
    padding-bottom: 30px;
  }
}
/*= The results of the filter*/
.se-filtered-posts-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.875rem;
}
@media screen and (max-width: 1620px) {
  .se-filtered-posts-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
}



@media screen and (max-width: 1281px) {
  .se-filtered-posts-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}

@media screen and (max-width: 540px) {
  .se-filtered-posts-grid {
    grid-template-columns: 1fr;
  }
}
.se-ajax-post .e-loop-item {
  height: 100%;
}

.se-df-grid .e-loop-item .e-con-boxed,
.se-ajax-post .e-loop-item .e-con-boxed {
  height: 100%;
}

.se-df-grid .elementor-inline-items {
  list-style: none;
  padding-left: 0;
}
.se-posts-list .page-numbers.next {
  border: 1px solid #adadad;
  border-radius: 30px;
  padding: 0.75rem 1.25rem;
}
#ajax-card-display-pagination {
  display: flex;
  justify-content: center;
  padding-top: 1.5rem;
  gap: 1rem;
  font-weight: 500;
  color: black;
  align-items: center;
}
.ajax-card-page-link.next {
  border: 1px solid #adadad;
  padding: 0.75rem 2.25rem 0.75rem 1.25rem;
  border-radius: 20px;
  line-height: 1em;
  font-weight: 600;
  color: black;
  position: relative;
}
.ajax-card-page-link.next:after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1rem;
  width: 0.75rem;
  height: 0.75rem;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-image: url(assets/img/btn-arrow.svg);
  -webkit-mask-image: url(assets/img/btn-arrow.svg);
  content: "";
  display: block;
  background-color: black;
}

a.ajax-card-page-link {
  color: black;
}
a.ajax-card-page-link.active {
  font-weight: 700;
}
.resp-txt .elementor-heading-title {
  white-space: nowrap; /* empêche le retour à la ligne */

  display: inline-block;
}

.se-ref-list .swiper-wrapper .swiper-slide:nth-child(odd) .orange-title-block {
  background-color: transparent;
  background-image: linear-gradient(124deg, #ec7346 10%, #f8b532 100%);
}


.ui-autocomplete { z-index:9999; list-style-type:none; max-width:300px; padding:0; box-shadow:0 0 8px rgba(0,0,0,0.3); }
.ui-autocomplete .ui-menu-item { background:white; height:34px; line-height:34px; padding:0 12px; cursor:pointer; border-bottom:solid 1px #ccc; }
.ui-autocomplete .ui-menu-item:last-child { border-bottom:none; }
.ui-autocomplete .ui-menu-item:hover { background:steelblue; color:white; }

.df-form-element.error [type="text"],
.df-form-element.error [type="number"],
.df-form-element.error [type="email"],
.df-form-element.error select { border:solid 1px red; }

form.contact #confirmation { color:ref; font-size:20px; text-align:center; }