:root {
  --do1011-c-forest: #0b241f;
  --do1011-c-olive: #484c25;
  --do1011-c-charcoal: #303A35;
  --do1011-c-near-black: #2b2926;
  --do1011-c-sage: #9fad9f;
  --do1011-c-slate: #3a3632;
  --do1011-c-navy: #1b1464;
  --do1011-c-forest-dark: #0a231e;
  --do1011-c-red: #ed2734;
  --do1011-c-terracotta: #b84727;
  --do1011-c-taupe: #342d28;
  --do1011-c-bone: #ece9e7;
  --do1011-c-graphite: #313a35;
  --do1011-c-bone-alt: #edeae8;
  --do1011-c-orange-wait: #ec810a;
  --do1011-c-sky: #e9f7fe;
  --do1011-c-rust: #892d1c;
  --do1011-c-green-ok: #108c1b;
  --do1011-c-cream: #f4e2ce;
  --do1011-font-primary: "Raleway";
}

/* === Base layout === */

#do1011-panneau-selecteur {
  max-width: 100%;
  position: relative;
}

#do1011-panneau-batiment-wrapper {
  position: relative;
  display: grid;
}

/* === Desktop filter panel (select2, price slider, type buttons) === */

#do1011-panneau-selecteur #do1011-panneau-filtre {
  width: fit-content;
  min-height: 100px;
  background-color: transparent;
  position: relative;
  z-index: 16;
  display: none;
  grid-template-columns: auto 370px;
  align-content: center;
  gap: 170px;
  pointer-events: all;
  transition: background-color 100ms ease-in-out;
  margin-bottom: 68px;
  overflow: hidden;
}

#do1011-panneau-selecteur #do1011-panneau-filtre.menu-sticked {
  position: fixed;
  top: 160px;
  transition: all 300ms ease-in-out;
}


@media all and (min-width: 1201px) {
  #do1011-panneau-selecteur #do1011-panneau-filtre {
    display: grid;
    padding-left: max(40px, 6vw);
    padding-right: max(40px, 6vw);
  }
}

#do1011-panneau-selecteur #do1011-panneau-filtre>div,
#do1011-panneau-filtre-unites>div {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto 1fr;
  align-items: end;
  justify-items: center;
  gap: 35px;
}

#do1011-panneau-batiment-side-text #do1011-panneau-filtre,
#do1011-panneau-filtre-unites {
  grid-template-columns: 1fr;
  gap: 20px;
}

#do1011-panneau-batiment-side-text #do1011-panneau-filtre>div,
#do1011-panneau-filtre-unites>div {
  grid-template-columns: auto 1fr;
}

#do1011-panneau-batiment-side-text #do1011-panneau-filtre {
  padding-left: 0;
  padding-right: 0;
  margin-top: 50px;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .select2 textarea,
#do1011-panneau-selecteur #do1011-les-filtres-mobile .select2 textarea {
  border: none !important;
  color: var(--do1011-c-charcoal);
  font-size: 16px;
  font-family: var(--do1011-font-primary);
  font-weight: 400;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .select2-container .select2-selection--multiple,
#do1011-panneau-selecteur #do1011-les-filtres-mobile .select2-container .select2-selection--multiple {
  border: none;
  background: transparent;
}

#do1011-panneau-selecteur #do1011-panneau-filtre select,
#do1011-panneau-selecteur #do1011-les-filtres-mobile select {
  font-size: 16px;
  font-family: var(--do1011-font-primary);
  font-weight: 400;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .select2-container .select2-selection,
#do1011-panneau-selecteur #do1011-les-filtres-mobile .select2-container .select2-selection {
  border: none;
  border-radius: 0;
  border-bottom: 2px solid var(--do1011-c-charcoal);
}

#do1011-panneau-selecteur #do1011-panneau-filtre .select2-container textarea,
#do1011-panneau-selecteur #do1011-les-filtres-mobile .select2-container textarea {
  height: 22px;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .select2-selection__choice,
#do1011-panneau-selecteur #do1011-les-filtres-mobile .select2-selection__choice {
  background: transparent;
  border: 1px solid var(--do1011-c-charcoal);
  font-size: 14px;
  font-family: var(--do1011-font-primary);
  font-weight: 500;
  color: var(--do1011-c-charcoal);
  border-radius: 14px;
  padding: 3px 8px 3px 32px;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .select2-selection__choice .select2-selection__choice__remove,
#do1011-panneau-selecteur #do1011-les-filtres-mobile .select2-selection__choice .select2-selection__choice__remove {
  font-size: 16px;
  background-color: var(--do1011-c-near-black);
  color: var(--do1011-c-cream);
  border: none;
  border-radius: 30px;
  width: auto;
  padding: 0;
  height: 100%;
  aspect-ratio: 1/1;

}

#do1011-panneau-selecteur #do1011-panneau-filtre .select2-container .select2-selection__clear,
#do1011-panneau-selecteur #do1011-panneau-filtre .select2-container textarea::placeholder,
#do1011-panneau-selecteur #do1011-les-filtres-mobile .select2-container .select2-selection__clear,
#do1011-panneau-selecteur #do1011-les-filtres-mobile .select2-container textarea::placeholder {
  color: var(--do1011-c-near-black);
}

#do1011-panneau-selecteur #do1011-panneau-filtre .select2-container .select2-selection,
#do1011-panneau-selecteur #do1011-les-filtres-mobile .select2-container .select2-selection {
  background: none;
}

.typeSelectionDropdown .select2-results__option {
  position: relative;
  padding-left: 30px;
}

.typeSelectionDropdown .select2-results__option::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 10px;
  display: block;
  width: 16px;
  height: 16px;
  border: 1px solid var(--do1011-c-charcoal);
  margin-right: 8px;
  z-index: 1;
}

.typeSelectionDropdown .select2-results__option--selected::after {
  content: "✓";
  position: absolute;
  left: 8px;
  top: 8px;
  display: block;
  width: 16px;
  height: 16px;
  color: #ffffff;
  z-index: 2;
  font-size: 13px;
}



#do1011-panneau-selecteur #do1011-panneau-filtre>div>span,
#do1011-panneau-filtre-unites>div>span {
  color: #fff;
  font-size: 18px;
  font-family: var(--do1011-font-primary);
  font-weight: 700;
}

#do1011-panneau-filtre-unites>div>span {
  color: var(--do1011-c-taupe);
}

#do1011-panneau-selecteur #do1011-panneau-filtre select,
#do1011-panneau-selecteur #do1011-les-filtres-mobile select {
  color: #ffffff;
  border: none;
  border-bottom: 1px solid #ffffff !important;
  background: transparent;
  outline: none;
  padding: 0 20px 10px 0;
}

#do1011-panneau-selecteur #do1011-panneau-filtre select option,
#do1011-panneau-selecteur #do1011-les-filtres-mobile select option {
  padding: 0;
  font-family: var(--do1011-font-primary);
  font-weight: 500;
  color: var(--do1011-c-near-black);
}

#do1011-panneau-selecteur #do1011-panneau-filtre .do1011-filtre-type>div,
#do1011-panneau-filtre-unites .do1011-filtre-type>div,
.do1011-filtre-type-mobile>div {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  margin-left: 0;
  margin-right: auto;
}

.do1011-filtre-type-mobile>div {
  justify-content: center;
  grid-template-columns: 1fr 1fr;
}

#do1011-panneau-selecteur #do1011-panneau-filtre button,
#do1011-panneau-filtre-unites button,
.do1011-filtre-type-mobile button {
  display: block;
  border-radius: 8px;
  text-align: center;
  padding: 14px 20px;
  font-size: 16px;
  font-weight: 700;
  font-family: var(--do1011-font-primary);
  text-transform: uppercase;
}



#do1011-panneau-filtre-unites button {
  color: var(--do1011-c-forest-dark);
  background: transparent;
  border: 1px solid var(--do1011-c-forest-dark);
}

.do1011-filtre-type-mobile button {
  background:transparent ;
  border: 1px solid var(--do1011-c-forest);
  padding-top: 22px;
  padding-bottom: 22px;
}
#do1011-panneau-selecteur #do1011-panneau-filtre button sup,
#do1011-panneau-filtre-unites button sup {
  font-size: 45%;
}

#do1011-panneau-selecteur #do1011-panneau-filtre button:not(:first-of-type),
#do1011-panneau-filtre-unites button:not(:first-of-type) {
  font-size: 17px;
}

#do1011-panneau-selecteur #do1011-panneau-filtre button:hover,
#do1011-panneau-selecteur #do1011-panneau-filtre button.active,
.do1011-filtre-type-mobile button.active {
  background: var(--do1011-c-forest);
  color: #fff;
}

#do1011-panneau-filtre-unites button:hover,
#do1011-panneau-filtre-unites button.active {
  background: var(--do1011-c-sage);
  border-color: var(--do1011-c-sage);
  color: #ffffff;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .noUi-horizontal,
#do1011-panneau-filtre-unites .noUi-horizontal,
#do1011-les-filtres-mobile .noUi-horizontal {
  height: 4px;
  top: -8px;
  border: none;
  max-width: 370px;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .noUi-handle,
#do1011-panneau-filtre-unites .noUi-handle {
  width: 18px;
  height: 18px;
  top: -8px;
  border-radius: 18px;
  border-color: #fff;
  background: #fff;
}

#do1011-panneau-filtre-unites .noUi-handle {
  border-color: var(--do1011-c-forest);
  background: var(--do1011-c-forest);
  box-shadow: none;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .noUi-tooltip,
#do1011-panneau-filtre-unites .noUi-tooltip,
#do1011-les-filtres-mobile .noUi-tooltip {
  font-size: 14px;
  line-height: 1;
  color: #fff;
  background: transparent;
  border: none;
  padding: 8px 14px;
  font-family: var(--do1011-font-primary);
  font-weight: 500;
}

#do1011-panneau-filtre-unites .noUi-tooltip {
  color: var(--do1011-c-forest);
}

#do1011-panneau-selecteur #do1011-panneau-filtre .noUi-handle::before,
#do1011-panneau-selecteur #do1011-panneau-filtre .noUi-handle::after,
#do1011-panneau-filtre-unites .noUi-handle::before,
#do1011-panneau-filtre-unites .noUi-handle::after {
  display: none;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .noUi-connect {
  background: #fff;
}

#do1011-panneau-filtre-unites .noUi-connect {
  background: var(--do1011-c-forest);
}

#do1011-panneau-selecteur #do1011-panneau-filtre .do1011-filtre-prix {
  align-content: center;
  padding-right: 36px;
}

#do1011-panneau-selecteur #do1011-panneau-filtre .do1011-filtre-prix>div {
  padding-left: 5px;
}


/* === Building overview SVG (selecteur-vue-ensemble) === */

#do1011-panneau-selecteur svg {
  user-select: none;
}

#do1011-panneau-selecteur #selecteur-vue-ensemble,
#do1011-panneau-selecteur #selecteur-vue-ensemble img {
  width: 100%;
  height: auto;
  display: block;
}

#do1011-panneau-selecteur #selecteur-vue-ensemble {
  position: relative;
  z-index: 11;
  display: none;
}

@media all and (min-width: 1201px) {
  #do1011-panneau-selecteur #selecteur-vue-ensemble {
    display: block;
  }
}

#do1011-panneau-selecteur #do11-over-vue-ensemble {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  user-select: none;
  pointer-events: none;
}

#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble,
#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble-informations {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}

#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble-informations {
  pointer-events: none;
  z-index: 3;
}

#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble polygon,
#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble path {
  fill: var(--do1011-c-sage);
  fill-opacity: 0;
  cursor: pointer;
  transition: all 250ms ease;
}

#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble polygon:hover,
#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble path:hover {
  fill-opacity: 0.4;
}

#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble polygon.filtered,
#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble path.filtered,
#do1011-panneau-selecteur .do1011-svg-etages .do1011-un-etage.filtered {
  fill-opacity: 0.7;
  fill: var(--do1011-c-sage);
  mix-blend-mode: darken;
}

#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble polygon.filtered:hover,
#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble path.filtered:hover,
#do1011-panneau-selecteur .do1011-svg-etages .do1011-un-etage.filtered:hover {
  fill-opacity: 1;
  fill: var(--do1011-c-sage);
  mix-blend-mode: darken;
}

#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble polygon.active,
#do1011-panneau-selecteur #selecteur-vue-ensemble #svg-vue-ensemble path.active,
#do1011-panneau-selecteur .do1011-svg-etages .do1011-un-etage.active {
  fill-opacity: 1;
  fill: #fff;
}

#do1011-panneau-selecteur .svg-vue-ensemble-informations-group {
  overflow: visible;
  opacity: 0;
}

#do1011-panneau-selecteur .svg-vue-ensemble-informations-group>div {
  background-color: #343a20;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: fit-content;
  padding: 16px 24px;
  gap: 7px;
  transform: translate(-50%, 0);
}

#do1011-panneau-selecteur .svg-vue-ensemble-informations-group>div div {
  line-height: 1;
  font-size: 16px;
  color: #fff;
  font-family: var(--do1011-font-primary)
}

#do1011-panneau-selecteur .svg-vue-ensemble-informations-group>div div:nth-of-type(2),
#do1011-panneau-selecteur .svg-vue-ensemble-informations-group>div div:nth-of-type(3) {
  font-size: 14px;
}

/* === Building / floor panel layout === */

#do1011-panneau-selecteur .do1011-panneau-batiment {
  width: 100%;
  height: 100%;
}

#do1011-panneau-selecteur .do1011-panneau-etage {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  pointer-events: none;
}

#do1011-panneau-selecteur .do1011-panneau-global {
  z-index: 5;
}

#do1011-panneau-selecteur .do1011-panneau-batiment {
  z-index: 8;
  transition: transform 0.5s ease-in-out, opacity 0.3s ease-in-out 175ms;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  max-width: 100%;
  opacity: 0;
  pointer-events: none;
}

#do1011-panneau-selecteur .do1011-panneau-batiment.slide-out {
  z-index: 9;
}

#do1011-panneau-selecteur .do1011-panneau-batiment.single {
  position: relative;
}

#do1011-panneau-selecteur .do1011-img-batiment,
#do1011-panneau-selecteur .do1011-img-batiment-effet {
  display: block;
}

#do1011-panneau-selecteur .do1011-panneau-etage {
  z-index: 9;
  display: none;
}

#do1011-panneau-selecteur .do1011-img-batiment.effet-flou,
#do1011-panneau-selecteur .do1011-img-overlay.effet-flou {
  filter: blur(4px) grayscale(60%);
}

.do1011-img-overlay g.hover rect,
.do1011-img-overlay g.filtered rect {
  stroke: var(--do1011-c-charcoal) !important;
  fill: var(--do1011-c-charcoal) !important;
}

#do1011-panneau-selecteur .do1011-img-overlay svg>g {
  opacity: 0;
}

#do1011-panneau-selecteur #do1011-batiment-back {
  position: absolute;
  top: 18%;
  left: 14%;
  border: 1px solid var(--do1011-c-graphite);
  background: transparent;
  border-radius: 0;
  outline: none;
  line-height: 1;
  padding: 15px;
  width: auto;
  color: var(--do1011-c-graphite);
  font-family: var(--do1011-font-primary);
  border-radius: 32px;
  display: grid;
  grid-template-columns: auto auto;
}

#do1011-panneau-selecteur .do1011-panneau-batiment.slide-out #do1011-batiment-back {
  display: none;
}

#do1011-panneau-selecteur #do1011-batiment-back svg {
  height: 14px;
}

#do1011-panneau-selecteur #do1011-batiment-back svg line,
#do1011-panneau-selecteur #do1011-batiment-back svg path {
  stroke: var(--do1011-c-charcoal);
}

#do1011-panneau-selecteur #do1011-batiment-back:hover {
  background: var(--do1011-c-charcoal);
  color: #F7E3CD;
}

#do1011-panneau-selecteur #do1011-batiment-back:hover svg line,
#do1011-panneau-selecteur #do1011-batiment-back:hover svg path {
  stroke: #F7E3CD;
}

#do1011-panneau-selecteur .do1011-panneau-etage-wrapper {
  height: 100%;
  max-height: 100%;
  display: grid;
  grid-gap: 0;
  position: relative;
  width: 100%;
}

#do1011-panneau-selecteur .do1011-panneau-etages,
#do1011-panneau-selecteur .do1011-panneau-filtre {
  direction: ltr;
  position: relative;
}

#do1011-panneau-selecteur .do1011-panneau-filtre {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  justify-content: left;
  gap: 0;
  border-top: 2px solid hsla(0, 0%, 100%, 0.1);
  border-bottom: 2px solid hsla(0, 0%, 100%, 0.1);
}

#do1011-panneau-selecteur .do1011-panneau-unites {
  background: hsla(0, 0%, 100%, 0.8);
  position: relative;
}

#do1011-panneau-selecteur .do1011-panneau-actions {
  background: rgba(43, 43, 43, 0.97);
  position: relative;
  overflow-y: auto;
  direction: rtl;
  box-shadow: 0 0 10px rgba(35, 35, 35, 0.5);
}

#do1011-panneau-selecteur .do1011-panneau-batiment .do1011-img-overlay,
#do1011-panneau-selecteur .do1011-panneau-batiment .do1011-svg-etages,
#do1011-panneau-selecteur .do1011-panneau-batiment .do1011-svg-etages-mobile,
#do1011-panneau-selecteur .do1011-panneau-etage .do1011-img-unite,
#do1011-panneau-selecteur .do1011-panneau-etage .do1011-svg-unites {
  width: 100%;
  height: auto;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
}

#do1011-panneau-selecteur .do1011-panneau-etage .do1011-img-unite {
  height: auto;
  top: 50%;
  transform: translateY(-50%);
}

#do1011-panneau-selecteur .do1011-panneau-batiment .do1011-img-overlay,
#do1011-panneau-selecteur .do1011-panneau-etage .do1011-img-unite {
  pointer-events: none;
}

/* === Floor & unit SVG state interactions (polygons) === */

#do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages-mobile polygon,
#do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages polygon,
#do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages path {
  fill-opacity: 0;
  cursor: pointer;
}

#do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages-mobile polygon.active,
#do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages-mobile polygon:hover,
#do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages polygon:hover,
#do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages path:hover {
  fill-opacity: 0.4;
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon {
  fill-opacity: 0;
  cursor: pointer;
  transition: all 0.25s ease-in-out;
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.disponible {
  fill: #fff;
  fill-opacity: 0;
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile.indisponible,
#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.indisponible {
  fill-opacity: 0.8;
  fill: var(--do1011-c-red);
  cursor: not-allowed;
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.attente {
  fill-opacity: 0.5;
  fill: url(#diagonalHatch);
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.disponible.filtered {
  fill-opacity: 0.4;
  fill: var(--do1011-c-sage);
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.attente.filtre {
  fill-opacity: 0.5;
  fill: url(#diagonalHatchFiltre);
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon:hover {
  fill-opacity: 0.2 !important;
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.indisponible.active,
#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.indisponible:hover {
  fill-opacity: 0.2 !important;
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-sel-etages polygon {
  fill: #fff;
  fill-opacity: 0;
  cursor: pointer;
  transition: all 0.25s ease-in-out;
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-sel-etages polygon.hover,
#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-sel-etages polygon:hover {
  fill-opacity: 0.7 !important;
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-sel-etages polygon.active {
  fill-opacity: 1 !important;
}

#do1011-panneau-selecteur .do1011-panneau-etage-plan {
  display: none;
}

/* === Buttons & tooltip === */

#do1011-panneau-selecteur .do1011-btn,
#do1011-panneau-selecteur .do1011-btn-mobile {
  width: 100%;
  color: #fff;
  cursor: pointer;
  display: block;
  padding: 20px 30px;
  border: none;
  text-align: left;
  text-transform: uppercase;
}

#do1011-panneau-selecteur .do1011-btn-etage {
  background: none;
  text-transform: none;
  transition: all 0.25s ease-in-out;
}

#do1011-panneau-selecteur .do1011-btn-etage:hover {
  background: hsla(0, 0%, 100%, 0.1);
}

#do1011-panneau-selecteur .do1011-btn-etage.active {
  background: var(--do1011-c-red);
}

#do1011-panneau-selecteur .do1011-btn-etage h5 {
  font-size: 18px;
  letter-spacing: 1px;
  margin: 0;
  padding: 0;
  text-transform: uppercase;
}

#do1011-panneau-selecteur .do1011-btn-etage p {
  font-size: 14px;
  display: block;
  padding-top: 4px;
  margin-bottom: 0;
}

#do1011-panneau-selecteur .do1011-btn-etage hr {
  border: 0;
  border-bottom: 1px dashed hsla(0, 0%, 100%, 0.1);
}

#do1011-panneau-selecteur .do1011-btn-retour {
  font-size: 12px;
  letter-spacing: 1px;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  direction: ltr;
  transition: all 0.25s ease-in-out;
}

#do1011-panneau-selecteur .do1011-btn-retour:hover {
  background: rgba(0, 0, 0, 0.9);
}

#do1011-panneau-selecteur .do1011-btn-filtre {
  width: 25%;
  box-sizing: border-box;
  padding: 10px 0;
  border: 1px solid rgba(0, 0, 0, 0.8);
  background: none;
  text-align: center;
  text-transform: uppercase;
  display: block;
  transition: all 0.25s ease-in-out;
  font-size: 14px;
}

#do1011-panneau-selecteur .do1011-btn-filtre:hover {
  background: hsla(0, 0%, 100%, 0.1);
}

#do1011-panneau-selecteur .do1011-btn-filtre.active {
  background: rgba(24, 104, 209, 0.8);
}

#do1011-tooltip {
  width: auto;
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
  text-align: center;
  border-radius: 2px;
  font-size: 12px;
  padding: 6px 12px;
  box-sizing: border-box;
  overflow: visible;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000;
}

/* === Unit detail popup (desktop) === */

#do1011-panneau-popup-id {
  width: 280px;
  margin-top: 0;
  box-sizing: border-box;
  background-color: #fff;
  border: none;
  overflow: visible;
  box-shadow: 2px 2px 10px rgba(25, 25, 25, 0.7);
}

#do1011-panneau-popup-id header {
  background: #191919;
  margin-bottom: 0;
  padding: 10px 10px 0;
  color: #fff;
  position: relative;
}

#do1011-panneau-popup-id .do1011-actions {
  position: absolute;
  right: 0;
  top: 0;
}

#do1011-panneau-popup-id .do1011-actions a i {
  line-height: 36px;
}

#do1011-panneau-popup-id .do1011-actions a.do1011-disabled {
  opacity: 0.2;
  cursor: not-allowed;
}

#do1011-panneau-popup-id .do1011-actions a, #do1011-panneau-formulaire-id .wpcf7-submit,
#do1011-panneau-formulaire-id button[type="submit"]  {
  background-color: var(--do1011-c-forest-dark);
  border-radius: 8px;
  padding: 14px 20px;
  text-decoration: none !important;
  text-transform: uppercase;
  font-family: var(--do1011-font-primary);
  color: var(--do1011-c-bone)
}

#do1011-panneau-formulaire-id span[data-name="consent"] .wpcf7-list-item-label {
  color: var(--do1011-c-forest-dark);
}
#do1011-panneau-formulaire-id  span[data-name="consent"] .wpcf7-list-item {
  margin: 0 !important;
  font-size: 14px;
}
#do1011-panneau-formulaire-id span[data-name="consent"] label > input {
  display: inline-block;
}
#do1011-panneau-popup-id h4 {
  font-size: 14px;
  margin: 0;
  text-transform: uppercase;
}

#do1011-panneau-popup-id .do1011-etat {
  width: 40%;
  height: 22px;
  text-align: center;
  color: #fff;
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: 1px;
  position: absolute;
  right: 0;
  bottom: -22px;
}

#do1011-panneau-popup-id .do1011-etat div {
  width: 100%;
  padding: 6px 0;
  font-size: 14px;
}

#do1011-panneau-popup-id .do1011-couleur-disponible {
  background: var(--do1011-c-green-ok);
}

#do1011-panneau-popup-id .do1011-couleur-indisponible {
  background: rgba(237, 39, 52, 0.8);
}

#do1011-panneau-popup-id .do1011-couleur-attente {
  background: var(--do1011-c-orange-wait);
}

#do1011-panneau-popup-id .do1011-etat-extra {
  text-align: center;
  color: #fff;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 0.5px;
  padding: 10px 12px;
}

#do1011-panneau-popup-id .do1011-etat-extra.do1011-couleur-disponible {
  background: rgba(16, 140, 27, 0.8);
}

#do1011-panneau-popup-id .do1011-etat-extra.do1011-couleur-indisponible {
  background: var(--do1011-c-red);
}

#do1011-panneau-popup-id .do1011-etat-extra.do1011-couleur-attente {
  background: rgba(236, 129, 10, 0.8);
}

#do1011-panneau-popup-id main {
  padding: 0;
  overflow: hidden;
}

#do1011-panneau-popup-id main .do1011-fiche {
  padding: 0 10px 10px;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: auto;
  max-height: 100%;
  overflow: hidden;
}

#do1011-panneau-popup-id main .do1011-fiche .do1011-image {
  height: 100%;
  overflow: hidden;
  margin: 48px 0;
}

#do1011-panneau-popup-id .do1011-fiche h5 {
  padding: 0;
  margin: 0 0 4px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 14px;
  font-weight: 700;
  color: #555;
}

#do1011-panneau-popup-id .do1011-fiche p {
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.3;
  padding: 0;
}

#do1011-panneau-popup-id .fiche p.do1011-sans-padding {
  margin-bottom: 0;
}

#do1011-panneau-popup-id .do1011-fiche .do1011-financier .do1011-prix {
  font-weight: 700;
}

#do1011-panneau-popup-id .do1011-fiche span {
  font-size: 12px;
  font-weight: 400;
}

#do1011-panneau-popup-id:after {
  content: "";
  position: absolute;
  border-color: #fff transparent;
  border-style: solid;
  border-width: 12px 13px 0;
  bottom: -12px;
  left: 45%;
}

#do1011-panneau-popup-id:before {
  content: "";
  position: absolute;
  border-color: #191919;
  border-color: rgba(75, 75, 75, 0.3) transparent;
  border-style: solid;
  border-width: 11px 13px 0;
  bottom: -13px;
  left: 45%;
}

#do1011-panneau-popup-id header.do1011-titre-erreur {
  margin-bottom: 12px;
}

#do1011-panneau-popup-id header.do1011-titre-erreur h4 {
  text-align: center;
}

#do1011-panneau-popup-id {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 900;
}

/* === Inline variant overrides === */

#do1011-panneau-selecteur.inline .do1011-panneau-actions,
#do1011-panneau-selecteur.inline .do1011-panneau-unites {
  background: none;
}

#do1011-panneau-selecteur.inline .do1011-img-etage {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}

#do1011-panneau-selecteur .do1011-panneau-detail-unite {
  position: relative;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id {
  width: 80%;
  background: none;
  margin: 0 auto;
  top: auto;
  left: auto;
  box-shadow: none;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id header {
  background: none;
  color: #000;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id:after,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id:before {
  content: none;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-actions {
  left: auto;
  right: auto;
  position: relative;
}

#do1011-panneau-selecteur.inline .do1011-panneau-filtre {
  border-top: 0;
  border-bottom: 0;
}

#do1011-panneau-selecteur.inline .do1011-btn-filtre {
  width: auto;
  color: #000;
  padding: 6px;
  margin-left: 1px;
  border: none;
  text-align: left;
  display: inline-block;
  transition: all 0.25s ease-in-out;
}

#do1011-panneau-selecteur.inline .do1011-panneau-detail-unite {
  width: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 100%;
  overflow: hidden;
  height: 100%;
  grid-template-rows: 100%;
}

#do1011-panneau-selecteur.inline .do1011-titre-etage {
  position: absolute;
  left: 2.4vw;
  top: 6vw;
}


#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-actions,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-image {
  text-align: left;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-etat div,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-etat div {
  width: auto;
  padding: 0;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0;
  display: inline-block;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-etat div {
  font-size: 18px;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-etat {
  padding-bottom: 0;
      display: grid;
    align-items: center;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-etat {
  width: auto;
  height: auto;
  line-height: 1;
  position: relative;
  text-align: left;
  right: auto;
  bottom: auto;
  text-transform: none;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-couleur-disponible,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-couleur-disponible {
  background: none;
  color: var(--do1011-c-green-ok);
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-couleur-attente,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-couleur-attente {
  background: none;
  color: var(--do1011-c-orange-wait);
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-couleur-indisponible,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-couleur-indisponible {
  background: none;
  color: var(--do1011-c-red);
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-prix,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-prix {
  font-size: 14px;
  color: #000;
  font-weight: 700;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-prix span,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-prix span {
  font-size: 10px;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id header {
  margin-bottom: 0;
}

#do1011-panneau-selecteur.inline .do1011-panneau-etage svg.do1011-svg-unites polygon.disponible.filtre.active {
  fill: #fff;
}

/* === Building slide transition & floor-number badges === */

.do1011-panneau-batiment.slide-out {
  opacity: 0;
  transform: translateX(-50%);
}



.do1011-numero-etage {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.do1011-numero-etage svg foreignObject {
  overflow: visible;
}

.do1011-numero-etage svg div {
  aspect-ratio: 1/1;
  overflow: hidden;
  background: #ffffff;
  border-radius: 8px;
  width: clamp(20px, 3.4vw, 50px);
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  transform: translate(-50%, -50%);
}

.do1011-numero-etage svg span {
  font-size: clamp(10px, 1.23vw, 26px);
  color: var(--do1011-c-forest);
  display: block;
  line-height: 1;
  width: fit-content;
  font-family: var(--do1011-font-primary);
  font-weight: bold;
  top: -0.05em;
  position: relative;
}

.do1011-panneau-batiment[data-batiment-id='58'] .do1011-numero-etage svg div {
  width: clamp(20px, 2.9vw, 70px);
}

.do1011-panneau-batiment[data-batiment-id='58'] .do1011-numero-etage svg span {
  font-size: clamp(10px, 1.1vw, 80px);
}

.do1011-panneau-batiment .do1011-numero-etage .hover div {
  background: var(--do1011-c-terracotta);
}

.do1011-panneau-batiment .do1011-numero-etage .hover span {
  color: #ffffff;
}

.do1011-panneau-batiment .do1011-numero-etage span,
.do1011-panneau-batiment .do1011-numero-etage div,
.do1011-panneau-batiment svg.do1011-svg-etages polygon {
  transition: all 160ms ease-in-out;
}


@-webkit-keyframes slide-in {
  0% {
    left: -100%;
    opacity: 0;
  }

  to {
    left: 0;
    opacity: 1;
  }
}

@keyframes slide-in {
  0% {
    left: -100%;
    opacity: 0;
  }

  to {
    left: 0;
    opacity: 1;
  }
}

@-webkit-keyframes slide-out {
  0% {
    left: 0;
    opacity: 1;
  }

  to {
    left: -100%;
    opacity: 0;
  }
}

@keyframes slide-out {
  0% {
    left: 0;
    opacity: 1;
  }

  to {
    left: -100%;
    opacity: 0;
  }
}

/* === Mobile variant === */

#do1011-panneau-selecteur .do1011-panneau-etage-mobile {
  text-align: center;
}

#do1011-panneau-selecteur .do1011-panneau-etage-mobile h3 {
  font-size: calc(20px + 30 * (100vw - 300px) / 1620) !important;
}

#do1011-panneau-selecteur .do1011-panneau-etage-mobile h4 {
  font-size: calc(15px + 30 * (100vw - 300px) / 1620) !important;
  padding-bottom: 15px;
}

.do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper {
  display: none !important;
}

#do1011-panneau-selecteur .do1011-sel-etages-mobile {
  padding-top: 50px;
  padding-left: 7.5%;
  padding-right: 7.5%;
  background: var(--do1011-c-bone-alt);
}

#do1011-panneau-selecteur #do1011-les-filtres-mobile .do1011-btn-mobile {
  width: auto;
  padding: 6px;
  display: inline-block;
  transition: all 0.25s ease-in-out;
}

#do1011-panneau-selecteur #do1011-les-filtres-mobile select {
  width: 100%;
  font-size: 16px;
  font-family: var(--do1011-font-primary);
  font-weight: 500;
  color: #ffffff;
  border: none;
  border-bottom-color: #ffffff !important;
}

#do1011-panneau-selecteur .do1011-btn-etage-mobile,
#do1011-panneau-selecteur .do1011-btn-unite-mobile {
  display: inline-block;
  background: transparent;
  padding: 12px 5px;
  font-size: 20px;
  text-align: center;
  cursor: pointer;
  border: 1px solid var(--do1011-c-forest);
  user-select: none;
  border-radius: 8px;
  line-height: 1;
  font-family: var(--do1011-font-primary), sans-serif !important;
  font-weight: 500;
  color: var(--do1011-c-forest);
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile {
  width: auto;
  display: grid;
  gap: 6px
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile.filtered {
  background: var(--do1011-c-forest);
  border-color: var(--do1011-c-forest);
  color: #fff;
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile>span:nth-of-type(2) {
  font-size: 72%;
  font-weight: 400;
}

#do1011-panneau-selecteur .do1011-btn-etage-mobile {
  width: auto;
  height: auto;
  padding: 22px 5px;
  overflow: hidden;
  position: relative;
  border-radius: 8px;
  border: 1px solid var(--do1011-c-forest);
  color: var(--do1011-c-forest);
  font-weight: bold;
  font-size: 20px;
  user-select: none;
}

body #do1011-panneau-selecteur .do1011-sel-etages-mobile>div {
      display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
}

#do1011-panneau-selecteur .do1011-btn-etage-mobile div.do1011-etage-texte {
  position: relative;
  display: inline-block;
  z-index: 10;
}

#do1011-panneau-selecteur .do1011-btn-etage-mobile:hover div.do1011-etage-deco {
  color: rgba(0, 0, 0, 0.1);
}

#do1011-panneau-selecteur .do1011-btn-etage-mobile.active {
  background: var(--do1011-c-forest);
  border-color: var(--do1011-c-forest);
  color: #fff;
}

#do1011-panneau-selecteur .do1011-btn-etage-mobile.filtered:not(.active) {
  background: var(--do1011-c-forest) !important;
  border-color: var(--do1011-c-forest);
  color: var(--do1011-c-sky);
}

#do1011-panneau-selecteur .do1011-btn-etage-mobile.active div.do1011-etage-deco {
  color: rgba(24, 104, 209, 0.2);
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile.active,
#do1011-panneau-selecteur .do1011-btn-unite-mobile:hover {
  background: var(--do1011-c-forest);
  color: var(--do1011-c-sky);
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile.indisponible {
  color: #fff;
  background: rgba(0, 0, 0, 0.8);
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile.indisponible.active,
#do1011-panneau-selecteur .do1011-btn-unite-mobile.indisponible:hover {
  background: #000;
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile.attente {
  background: hsla(0, 0%, 39.2%, 0.4);
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile.attente.active,
#do1011-panneau-selecteur .do1011-btn-unite-mobile.attente:hover {
  background: hsla(0, 0%, 39.2%, 0.6);
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile.disponible.filtre {
  background: rgba(24, 104, 209, 0.5);
}

#do1011-panneau-selecteur .do1011-btn-unite-mobile.attente.filtre,
#do1011-panneau-selecteur .do1011-btn-unite-mobile.attente.filtre.active,
#do1011-panneau-selecteur .do1011-btn-unite-mobile.attente.filtre:hover {
  background: rgba(24, 104, 209, 0.3);
}

#do1011-panneau-selecteur #do1011-panneau-popup-id-mobile {
  min-height: 550px;
  text-align: center;
  background: #e4e2dd;
  padding: 50px 0;
}

#do1011-panneau-selecteur #do1011-panneau-popup-id-mobile .do1011-image img {
  width: 100%;
  min-width: 300px;
}

#do1011-panneau-selecteur .do1011-panneau-filtre-mobile {
  display: block;
}

#do1011-panneau-selecteur .do1011-panneau-filtre-mobile h4 {
  padding-bottom: 25px;
}

#do1011-panneau-selecteur .do1011-panneau-unites-mobile {
  padding-top: 50px;
  padding-left: 7.5%;
  padding-right: 7.5%;
  background: var(--do1011-c-bone-alt);
}

.do1011-show-mobile {
  display: none !important;
}

@media screen and (max-width: 1200px) {

  #do1011-panneau-selecteur .do1011-img-batiment,
  #do1011-panneau-selecteur .do1011-panneau-batiment {
    position: relative;
    left: auto !important;
    top: auto;
  }

  #do1011-panneau-selecteur .do1011-hide-mobile {
    display: none !important;
  }

  .do1011-show-mobile {
    display: block !important;
  }

  #do1011-panneau-selecteur .do1011-img-batiment.effet-flou,
  #do1011-panneau-selecteur .do1011-img-overlay.effet-flou {
    filter: none;
  }
}

#do1011-panneau-selecteur.inline {
  width: 100%;
  font-family: var(--do1011-font-primary);
  font-size: 14px;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id {
  position: relative !important;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id header {
  position: relative;
  top: 0;
  left: 0;
  padding-top: 0;
  text-align: center;
}

#do1011-panneau-selecteur.inline .do1011-btn-retour img {
  max-width: 2vw;
}

#do1011-panneau-selecteur.inline .do1011-panneau-filtre button {
  font-weight: 700;
}

#do1011-panneau-selecteur.inline .do1011-btn-filtre:not(.active):hover {
  background: hsla(0, 0%, 100%, 0.1);
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche p {
  font-size: 16px;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche span {
  font-size: 17px;
  font-weight: 400;
}


/* === Vendor: Slick carousel — do not modify, keep byte-identical to upstream === */

.slick-list,
.slick-slider {
  position: relative;
  display: block;
}

.slick-slider {
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-dots li button:focus,
.slick-dots li button:hover,
.slick-list:focus {
  outline: 0;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-list,
.slick-slider .slick-track {
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:after,
.slick-track:before {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir="rtl"] .slick-slide {
  float: right;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-description .info-superficie,
.slick-initialized .slick-slide,
.slick-slide img,
body #do1011-panneau-popup-id-mobile,
body #do1011-panneau-popup-id-mobile .do1011-description>p>span {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 0.5px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-loading .slick-list {
  background: #fff url(ajax-loader.gif) 50% no-repeat;
}

@font-face {
  font-family: slick;
  font-weight: 400;
  font-style: normal;
  src: url(../js/slick/fonts/slick.eot);
  src: url(../js/slick/fonts/slick.eot?#iefix) format("embedded-opentype"),
    url(../js/slick/fonts/slick.woff) format("woff"),
    url(../js/slick/fonts/slick.ttf) format("truetype"),
    url(../js/slick/fonts/slick.svg#slick) format("svg");
}

.slick-next,
.slick-prev {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  cursor: pointer;
  border: 0;
}

.slick-next,
.slick-next:focus,
.slick-next:hover,
.slick-prev,
.slick-prev:focus,
.slick-prev:hover {
  color: transparent;
  outline: 0;
  background: 0 0;
}

.slick-dots li button:focus:before,
.slick-dots li button:hover:before,
.slick-next:focus:before,
.slick-next:hover:before,
.slick-prev:focus:before,
.slick-prev:hover:before {
  opacity: 1;
}

.slick-next.slick-disabled:before,
.slick-prev.slick-disabled:before {
  opacity: 0.25;
}

.slick-dots li button:before,
.slick-next:before,
.slick-prev:before {
  font-family: slick;
  font-size: 20px;
  line-height: 1;
  opacity: 0.75;
  color: #484c25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  right: -25px;
  left: auto;
}

.slick-prev:before {
  content: "←";
}

.slick-next:before,
[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  right: auto;
  left: -25px;
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  display: inline-block;
  margin: 0;
  padding: 0;
}

.slick-dots li,
.slick-dots li button {
  width: 20px;
  height: 20px;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  padding: 5px;
  color: transparent;
  border: 0;
  outline: 0;
  background: 0 0;
}

.slick-dots li button:before {
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: "•";
  text-align: center;
  opacity: 0.25;
  color: #000;
}

.slick-dots li.slick-active button:before {
  opacity: 1;
  color: #484c25;
}

.slick-dots li,
body .do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper .do1011-img-unite {
  position: relative;
}

.do1011-image .slick-arrow,
.do1011-image .slick-arrow:active,
.do1011-image .slick-arrow:focus,
.do1011-image .slick-arrow:hover,
.do1011-image .slick-arrow:visited {
  background-color: transparent !important;
}

/* === End vendor: Slick carousel — floor/unit SVG states continued === */

body #do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages-mobile polygon,
body #do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages polygon,
body #do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages path,
body .do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper polygon {
  transition: none;
  fill: #ffffff;
}

body #do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-sel-etages polygon,
body #do1011-panneau-selecteur.inline .do1011-panneau-batiment svg.do1011-svg-etages-mobile polygon.filtre,
body #do1011-panneau-selecteur.inline .do1011-panneau-batiment svg.do1011-svg-etages polygon.filtre,
body #do1011-panneau-selecteur.inline .do1011-panneau-etage svg.do1011-svg-sel-etages polygon.filtre,
body .do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper polygon.filtre {
  fill: var(--do1011-c-forest-dark);
}

body #do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages-mobile polygon.active,
body #do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages-mobile polygon:hover,
body #do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages polygon.hover,
body #do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages polygon.active,
body #do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages polygon.filtre,
body #do1011-panneau-selecteur .do1011-panneau-batiment svg.do1011-svg-etages polygon:hover {
  fill-opacity: 0.6;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id h4,
body #do1011-panneau-selecteur.inline .do1011-panneau-pre-filtre h4,
body #do1011-panneau-selecteur.inline .do1011-titre-etage h4 {
  color: var(--do1011-c-forest-dark);
  margin-top: 0;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id h4 {
  text-align: center;
  text-transform: uppercase;
  font-size: clamp(32px, 1.8vw, 36px);
  font-weight: 700;
}

#do1011-panneau-selecteur.inline .do1011-panneau-pre-filtre h5 {
  color: var(--do1011-c-forest-dark);
  font-size: 13px;
  font-weight: normal !important;
  margin: 0;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre {
  display: none;
  grid-template-columns: 1fr;
  row-gap: 10px;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre>div {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 16px;
  align-items: center;
  margin-bottom: 20px;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre>div:first-of-type>div {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 6px;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre #do-filtre-prix {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  column-gap: 18px;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile #do-filtre-prix {
  display: grid;
  align-items: center;
  column-gap: 18px;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile>div:nth-of-type(2) {
  margin-top: 50px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile #do-filtre-prix {
  grid-template-columns: 85%;
  row-gap: 16px;
  margin-top: 50px;
  justify-content: center;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre #do-filtre-prix input,
body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile #do-filtre-prix input {
  width: 95px;
  border: 0.5px solid var(--do1011-c-olive);
  background: #fafafa;
  font-family: var(--do1011-font-primary);
  font-weight: 700;
  font-size: 14px;
  text-align: center;
  border-radius: 0;
  padding: 7px;
  margin: 0;
  color: var(--do1011-c-slate);
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile #do-filtre-prix-max {
  justify-self: flex-end;
  padding: 7px;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile .noUi-connect,
body #do1011-panneau-selecteur.inline .do1011-panneau-filtre .noUi-connect {
  background: #fff;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile .noUi-target {
  border: none;
  box-shadow: none;
  background: #edf7fd;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile .noUi-handle,
body #do1011-panneau-selecteur.inline .do1011-panneau-filtre .noUi-handle {
  border-radius: 50%;
  border: none;
  cursor: pointer;
  height: 34px;
  top: -15px;
}

body #do1011-panneau-selecteur.inline .noUi-handle:after,
body #do1011-panneau-selecteur.inline .noUi-handle:before {
  top: 9px;
  display: none;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre #prix-slider,
body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile #prix-slider-mobile {
  padding: 0 12px;
  height: 14px;
}

body #do1011-panneau-selecteur.inline .do1011-panneau-filtre-mobile #prix-slider-mobile {
  grid-column: span 2;
}

body #do1011-panneau-selecteur #do1011-img-batiment-selectionnez {
  position: absolute;
  display: flex;
  align-items: center;
  text-align: left;
  top: 23%;
  color: var(--do1011-c-olive);
  font-family: var(--do1011-font-primary);
  font-size: clamp(15px, 2.7vw, 67px);
  transform: translate(20vw, -50%);
  max-width: 26%;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 44px;
  line-height: 1.22em;
  letter-spacing: 0.15em;
}

body #do1011-panneau-selecteur #do1011-img-batiment-choisissez {
  position: absolute;
  display: flex;
  align-items: center;
  text-align: left;
  left: 0;
  top: 0;
  color: #253450;
  font-family: var(--do1011-font-primary);
  font-size: clamp(15px, 2.7vw, 67px);
  background-image: url(/wp-content/uploads/2021/07/Ellipse-40.svg);
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  aspect-ratio: 1/1;
  padding: 50px;
  transform: translate(2vw, -10%);
  max-width: 25%;
}

@media (max-width: 920px) {

  body #do1011-panneau-selecteur #do1011-img-batiment-choisissez,
  body #do1011-panneau-selecteur #do1011-img-batiment-selectionnez {
    display: none;
  }
}

body #do1011-panneau-selecteur .do1011-btn-unite-mobile.indisponible,
body #do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.indisponible,
body .do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper polygon.indisponible {
  fill: #463227;
  fill-opacity: 0.45;
}

body #do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.indisponible {
  fill: var(--do1011-c-rust) !important;
}

body #do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.attente,
body .do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper polygon.attente {
  fill: var(--do1011-c-terracotta);
  fill-opacity: 0.45;
}

body #do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.disponible,
body .do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper polygon.disponible {
  fill: var(--do1011-c-sage);
  fill-opacity: 0;
}

body #do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.disponible.filtre,
body .do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper polygon.disponible.filtre {
  fill: var(--do1011-c-sage);
  fill-opacity: 0.8;
}

#do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-unites polygon.active,
body .do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper polygon.active {
  fill: var(--do1011-c-sage) !important;
  fill-opacity: 0.9 !important;
}


body #do1011-panneau-selecteur .do1011-panneau-etage .do1011-img-unite {
  transform: none;
  top: 0;
  height: auto;
  position: relative;
}

body #do1011-panneau-selecteur .do1011-panneau-etage .do1011-svg-unites {
  top: 0;
  height: auto;
}

#do1011-panneau-popup-id-mobile .do1011-actions,
body .do1011-panneau-batiment.defaut,
body .do1011-panneau-etage.defaut .do1011-btn-retour {
  display: none !important;
}

body .do1011-panneau-etage.defaut {
  display: block !important;
}

#do1011-panneau-etage-wrapper {
  width: 74%;
  left: 14%;
  position: relative;
  margin-top: 0;
}

.info-style {
  color: inherit;
  display: inline-block;
  text-transform: lowercase;
  border: 0.5px solid var(--do1011-c-navy);
  border-radius: 100%;
  width: 17px;
  height: 17px;
  font-size: 11px;
  text-align: center;
  position: relative;
  top: -1px;
  vertical-align: middle;
  padding-top: 3px;
  transition: all 50ms ease-in;
  margin-left: 4px;
  line-height: 11px;
}

.info-style:hover {
  background-color: var(--do1011-c-navy);
  color: #fff !important;
}

.tippy-box {
  width: 90vw !important;
  max-width: 460px !important;
}

.tippy-content {
  padding: 0;
}

@media (min-width: 1201px) and (max-width: 1400px) {

  body #do1011-panneau-selecteur .do1011-panneau-etage .do1011-img-unite,
  body #do1011-panneau-selecteur .do1011-panneau-etage .do1011-svg-unites {
    top: 0;
  }

  body .do1011-panneau-legende {
    top: unset;
    bottom: 10px;
  }
}

.do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper .do1011-panneau-etage-plan>svg,
body #do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-sel-etages {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}

body #do1011-panneau-selecteur .do1011-panneau-etage svg.do1011-svg-sel-etages polygon:hover {
  fill-opacity: 0.75;
}

.do1011-panneau-legende {
  position: relative;
  display: flex;
  flex-direction: row;
  font-family: var(--do1011-font-primary);
  font-weight: 400;
  font-size: 16px;
  color: var(--do1011-c-taupe);
  pointer-events: none;
  justify-content: center;
}

.do1011-panneau-selections-mobile .do1011-panneau-legende {
  top: unset;
  bottom: 0;
}

.do1011-panneau-legende>span {
  display: flex;
  margin-left: 7px;
  margin-right: 7px;
  align-items: center;
}

.do1011-panneau-legende>span>span {
  display: block;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  margin-right: 10px;
}

body #do1011-panneau-selecteur.inline {
  width: 100%;
  font-family: var(--do1011-font-primary);
  font-size: 14px;
  background: 0 0;
  position: relative;
}

.do1011-panneau-etage-wrapper {
  grid-template-columns: 19.55% 48% 1fr;
}

#do1011-panneau-selecteur.inline .do1011-btn-retour {
  border: none;
  background: var(--do1011-c-terracotta);
  border-radius: 50px;
  outline: none;
  line-height: 0;
  aspect-ratio: 1 / 1;
  padding: 15px;
  width: 60px;
  top: 50%;
  right: -28px;
  position: absolute;
  z-index: 1;
  pointer-events: all;
}

#do1011-panneau-selecteur.inline .do1011-btn-retour,
#do1011-panneau-selecteur.inline .do1011-btn-retour * {
  transition: all 120ms ease;
}

#do1011-panneau-selecteur.inline .do1011-btn-retour:hover {
  background: #fff;
}

#do1011-panneau-selecteur.inline .do1011-btn-retour svg line,
#do1011-panneau-selecteur.inline .do1011-btn-retour svg path {
  stroke: #fff;
}

#do1011-panneau-selecteur.inline .do1011-btn-retour:hover svg line,
#do1011-panneau-selecteur.inline .do1011-btn-retour:hover svg path {
  stroke: var(--do1011-c-terracotta);
}

#do1011-panneau-selecteur.inline .do1011-panneau-retour {
  position: relative;
}

#do1011-panneau-selecteur.inline .do1011-panneau-pre-filtre {
  position: relative;
  left: 0;
  top: 0;
}

#do1011-panneau-selecteur.inline .do1011-panneau-filtre {
  margin-top: 20px;
}

#do1011-panneau-selecteur.inline .do1011-panneau-filtre .do1011-btn-filtre {
  border: 0.5px solid var(--do1011-c-slate);
  font-family: var(--do1011-font-primary);
  font-size: 14px;
  padding: 10px 5px;
  margin-right: 2px;
  text-transform: none;
  margin-bottom: 4px;
  color: var(--do1011-c-slate);
  font-weight: 700;
}

body #do1011-panneau-selecteur.inline .do1011-btn-filtre {
  color: var(--do1011-c-slate);
  border-color: var(--do1011-c-slate);
  outline: 0 !important;
  width: auto;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

body #do1011-panneau-selecteur.inline .do1011-btn-filtre small {
  font-size: 100%;
}

@media (min-width: 1200px) {
  body #do1011-panneau-selecteur.inline .do1011-btn-filtre {
    font-size: 11px;
  }
}

@media (min-width: 1300px) {
  body #do1011-panneau-selecteur.inline .do1011-btn-filtre {
    font-size: 12px;
    margin-right: 0;
    margin-bottom: 0;
  }

  body #do1011-panneau-selecteur.inline .do1011-panneau-filtre>div:first-of-type>div {
    gap: 8px;
  }
}

@media (min-width: 1480px) {
  #do1011-panneau-selecteur.inline .do1011-panneau-filtre .do1011-btn-filtre {
    font-size: 16px;
  }
}

@media (min-width: 1700px) {
  #do1011-panneau-selecteur.inline .do1011-panneau-filtre .do1011-btn-filtre {
    font-size: 20px;
  }
}

body #do1011-panneau-selecteur.inline .do1011-btn-filtre-mobile:active,
body #do1011-panneau-selecteur.inline .do1011-btn-filtre-mobile:focus,
body #do1011-panneau-selecteur.inline .do1011-btn-filtre-mobile:hover,
body #do1011-panneau-selecteur.inline .do1011-btn-filtre-mobile:target,
body #do1011-panneau-selecteur.inline .do1011-btn-filtre:active,
body #do1011-panneau-selecteur.inline .do1011-btn-filtre:focus,
body #do1011-panneau-selecteur.inline .do1011-btn-filtre:target {
  outline: 0 !important;
}

body #do1011-panneau-selecteur.inline .do1011-btn-filtre.active,
body #do1011-panneau-selecteur.inline .do1011-btn-filtre:not(.active):hover {
  background: var(--do1011-c-slate);
  color: #d6d0ca;
}

body #do1011-panneau-selecteur #do1011-les-filtres-mobile .do1011-btn-mobile.active {
  background: var(--do1011-c-slate);
  color: #d6d0ca;
}

body #do1011-panneau-selecteur #do1011-les-filtres-mobile .do1011-btn-mobile:active,
body #do1011-panneau-selecteur #do1011-les-filtres-mobile .do1011-btn-mobile:focus,
body #do1011-panneau-selecteur #do1011-les-filtres-mobile .do1011-btn-mobile:not(.active):hover,
body #do1011-panneau-selecteur #do1011-les-filtres-mobile .do1011-btn-mobile:visited {
  background: 0 0 !important;
  color: var(--do1011-c-olive) !important;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-actions,
body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-actions-mobile {
  text-align: center;
  display: flex;
  gap: 12px;
  justify-content: center;
  align-items: center;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-actions-mobile {
  gap: 30px;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-actions a {
  padding: 14px 37px !important;
  border: 0.5px solid var(--do1011-c-forest);
  background: 0 0 !important;
  border-radius: 0 !important;
  font-weight: 400 !important;
  margin: 5px 0 !important;
  color: var(--do1011-c-forest);
  text-transform: none;
  letter-spacing: 0;
}


#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-actions-mobile a,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-actions a {
  font-size: 16px;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-actions-mobile a {
  text-decoration: none;
  width: 100%;
}

#do1011-panneau-selecteur.inline .fancybox-button--close:hover {
  background-color: #35496a;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-actions-mobile {
  display: grid;
  grid-template-columns: 85%;
  gap: 10%;
  justify-content: center;
}

@media (min-width: 1201px) {

  #do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-actions a.do1011-btn-telechargement {
    display: block !important;
  }

  #do1011-panneau-selecteur.inline .do1011-actions-mobile {
    display: none !important;
  }
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-description span {
  white-space: nowrap;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-description p>span {
  margin-right: 20px;
  display: block;
  text-align: center;
  font-family: var(--do1011-font-primary);
}

#do1011-panneau-popup-id-mobile .info-stationnement {
  padding-left: 10px;
  padding-right: 10px;
}

@media (min-width: 1920px) {
  #do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-description span {
    font-size: 18px;
  }
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-image a {
  display: block;
  width: 100%;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-image a img {
  width: 100%;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .type {
  font-family: var(--do1011-font-primary);
  color: var(--do1011-c-taupe);
  text-transform: none;
  font-size: 18px;
  font-weight: 400;
  margin-right: 20px;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-description,
#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-etat {
  font-family: var(--do1011-font-primary);
  text-transform: none;
  color: var(--do1011-c-taupe);
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-content: center;
  flex-wrap: wrap;
  align-items: center;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche>.do1011-etat {
  display: grid;
  grid-template-columns: 1fr;
  flex-direction: column;
  align-items: start;
  justify-items: center;
}

body .do1011-fiche .do1011-etat>span {
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 16px;
  margin-right: 10px;
}

#do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-description {
  font-weight: 700;
  margin-bottom: 10px;
}

/* === Contact form & unit dialog (wpcf7, jQuery UI dialog) === */

body #do1011-panneau-formulaire-id {
  background: #e7d8cc !important;
  max-width: 680px;
  width: 87vw;
  padding: 28px 10%;
}

body #do1011-panneau-formulaire-id .wpcf7 {
  border: 0.5px solid var(--do1011-c-olive);
  padding: 30px 30px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  align-content: center;
}

body #do1011-panneau-formulaire-id .form-title {
  font-family: "DM Serif Display", Sans-serif;
  font-size: 4.68vw;
  font-weight: 400;
  line-height: 4rem;
  text-align: center;
}

body #do1011-panneau-formulaire-id .form-subtitle {
  font-family: var(--do1011-font-primary);
  font-size: 1.75vw;
  font-weight: 300;
  text-transform: uppercase;
  margin-bottom: 40px;
  text-align: center;
}


.do1011-unite-dialog.ui-widget.ui-widget-content {
  text-align: center;
  background-color: var(--do1011-c-forest-dark);
  border: none;
  padding: 2px 28px;
}

#do1011-unite-dialog.ui-dialog-content {
  background-color: var(--do1011-c-forest-dark);
}

.do1011-unite-dialog .num-unite {
  color: #ffffff;
  text-transform: none;
  font-family: var(--do1011-font-primary);
  font-size: 20px;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0;
}

.do1011-unite-dialog .prix,
.do1011-unite-dialog .type {
  color: #ffffff;
  font-family: var(--do1011-font-primary);
  font-weight: 400;
  font-size: 16px;
  margin-top: 4px;
}

.do1011-unite-dialog .ui-dialog-titlebar {
  display: none;
}

.do1011-description .inclusion {
  list-style-type: none;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 15px;
}

.do1011-description .inclusion li {
  list-style-type: none;
  font-size: 12px;
  background-color: #fff;
  padding: 2px 8px;
  border-radius: 5px;
  color: var(--do1011-c-olive);
  user-select: none;
  display: flex;
  flex-direction: row;
  align-items: center;
}

.do1011-description .inclusion li svg {
  height: 11px;
  width: auto;
  margin-right: 5px;
}

body #do1011-panneau-formulaire-id span.wpcf7-not-valid-tip {
  color: #fff;
  opacity: 1;
}

body #do1011-panneau-formulaire-id .wpcf7-text,
body #do1011-panneau-formulaire-id .wpcf7-textarea {
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--do1011-c-near-black);
  border-radius: 0;
  color: var(--do1011-c-near-black);
  font-family: var(--do1011-font-primary);
  font-weight: 400;
  font-size: 18px;
  padding: 0 0 11px;
}

body #do1011-panneau-formulaire-id .wpcf7-text::placeholder,
body #do1011-panneau-formulaire-id .wpcf7-textarea::placeholder {
  color: var(--do1011-c-near-black);
  font-family: var(--do1011-font-primary);
}

body #do1011-panneau-formulaire-id .wpcf7-textarea {
  height: 145px;
}

@media (min-width: 1201px) {
  body #do1011-panneau-formulaire-id {
    padding: 0;
    margin-top: 0;
  }
}

body #do1011-panneau-formulaire-id h2 {
  color: #111;
  font-family: var(--do1011-font-primary);
  font-size: 31px;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 37px;
  letter-spacing: 1.6px;
  margin-bottom: 26px;
}

.carousel__button.is-close {
  background: #5a5645;
  top: -21px !important;
  right: -21px !important;
  padding: 0 !important;
  width: 42px;
  height: 42px;
  border-width: 0;
  outline: none;
}

.carousel__button.is-close svg {
  width: 18px;
  height: 18px;
  filter: none;
}

.carousel__button.is-close:hover svg {
  stroke: #fff;
}

body #do1011-panneau-formulaire-id .wpcf7-response-output {
  color: #fff;
  border-color: #e8e1da !important;
}

@media (min-width: 1920px) {
  #do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-description {
    font-size: 24px;
  }
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-image .do1011-unite-slider {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  height: 100%;
  overflow: hidden;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-image .do1011-unite-slider .slick-list {
  height: 100% !important;
  overflow: hidden;
  mix-blend-mode: multiply;
}

#do1011-panneau-popup-id-mobile .do1011-unite-slider {
  mix-blend-mode: multiply;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-image .do1011-unite-slider .slick-list .slick-track {
  height: 100% !important;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-image a {
  transition: none !important;
  padding: 0;
}

.do1011-fiche .do1011-image {
  transition: all 0ms ease-in !important;
}

#do1011-panneau-selecteur #do1011-panneau-popup-id-mobile .do1011-image {
  padding-top: 20px;
  padding-bottom: 20px;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id .do1011-fiche .do1011-image a img {
  width: auto;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  margin-left: auto;
  margin-right: auto;
  max-height: 280px;
}

body #do1011-panneau-popup-id-mobile .do1011-fiche .do1011-image a {
  display: block;
  height: 55vw;
  padding: 20px !important;
  margin-left: auto;
  margin-right: auto;
}

body #do1011-panneau-popup-id-mobile .do1011-fiche .do1011-image a img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

body .do1011-fiche .do1011-couleur-disponible>span {
  background-color: var(--do1011-c-sage);
}

body .do1011-fiche .do1011-couleur-indisponible>span {
  background-color: var(--do1011-c-rust);
}

body .do1011-fiche .do1011-couleur-attente>span {
  background-color: var(--do1011-c-terracotta);
}

body .do1011-fiche .do1011-couleur-attente,
body .do1011-fiche .do1011-couleur-disponible,
body .do1011-fiche .do1011-couleur-indisponible {
  color: var(--do1011-c-taupe) !important;
}

body #do1011-panneau-selecteur .do1011-btn-etage-mobile.active div.do1011-etage-deco,
#do1011-panneau-selecteur .do1011-btn-etage-mobile div.do1011-etage-texte {
  color: var(--do1011-c-olive);
}

#do1011-panneau-selecteur .do1011-btn-etage-mobile.filtered div.do1011-etage-texte {
  color: #fff;
}

body #do1011-panneau-selecteur .do1011-btn-etage-mobile.active div.do1011-etage-texte {
  color: #fff;
  text-shadow: none;
  font-family: var(--do1011-font-primary);
  font-weight: 500;
}

body #do1011-panneau-selecteur #do1011-les-filtres-mobile .do1011-btn-mobile {
  margin-bottom: 0;
  padding: 12px 5px;
  border-radius: 0;
  border: 1px solid var(--do1011-c-slate);
  color: var(--do1011-c-graphite);
  font-family: var(--do1011-font-primary), sans-serif !important;
  font-weight: 500;
  font-size: 20px;
  text-transform: lowercase;
  text-align: center;
  border-radius: 34px;
  width: 100%;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-etat div {
  font-family: var(--do1011-font-primary), sans-serif;
  color: var(--do1011-c-slate);
  font-weight: 500;
}

body #do1011-panneau-selecteur .do1011-panneau-etage-plan-mobile,
body #do1011-panneau-selecteur .do1011-panneau-filtre-mobile,
body #do1011-panneau-selecteur .do1011-sel-etages-mobile>div {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

body #do1011-panneau-selecteur .do1011-panneau-filtre-mobile {
  width: 100%;
  background: var(--do1011-c-bone-alt);
  padding: 28px 0;
}

body #do1011-panneau-selecteur .do1011-panneau-filtre-mobile>div {
  padding-left: 7.5%;
  padding-right: 7.5%;
}

body #do1011-panneau-selecteur .do1011-panneau-etage-plan-mobile {
display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}


#do1011-panneau-selecteur .do1011-panneau-filtre-mobile #do1011-choix-batiment-mobile {
  display: flex;
  flex-direction: column;
  gap: 10px;
  background-color: var(--do1011-c-graphite);
  padding-top: 30px;
  padding-bottom: 30px;
  z-index: 9;
}

#do1011-choix-batiment-mobile {
  z-index: 9 !important;
}

#do1011-panneau-selecteur .do1011-panneau-filtre-mobile #do1011-choix-batiment-mobile>div {
  width: 100%;
  font-weight: 600;
  border-radius: 34px;
  padding-top: 12px;
  padding-bottom: 12px;
  font-size: 18px;
  display: grid;
}

#do1011-panneau-selecteur .do1011-panneau-filtre-mobile #do1011-choix-batiment-mobile .btn-batiment-mobile.active {
  background-color: #F9C7A5;
  border-color: #F9C7A5;
  color: #323a35;
}

#do1011-panneau-selecteur .do1011-panneau-filtre-mobile #do1011-choix-batiment-mobile>div>span:nth-of-type(2) {
  font-size: 72%;
  font-weight: 500;
}

body #do1011-panneau-selecteur .do1011-panneau-etage-mobile h4 {
  text-transform: uppercase;
  font-size: 22px !important;
  line-height: 1.45em;
  letter-spacing: 0;
  padding-bottom: 0 !important;
}

body #do1011-panneau-selecteur .do1011-panneau-etage-mobile #do1011-les-filtres-mobile h4 {
  margin-bottom: 20px;
}

body #do1011-panneau-selecteur .do1011-panneau-unites-mobile h4,
body #do1011-panneau-popup-id-mobile.do1011-panneau-popup header h4 {
  text-align: center;
  color: var(--do1011-c-near-black);
}

body #do1011-panneau-popup-id-mobile.do1011-panneau-popup header h4 {
  font-size: 32px !important;
}

#do1011-panneau-selecteur .do1011-panneau-etage-mobile .do1011-sel-etages-mobile h4 {
  color: var(--do1011-c-near-black);
  text-align: center;
}

#do1011-panneau-selecteur .do1011-panneau-etage-mobile .do1011-sel-etages-mobile h4,
body #do1011-panneau-selecteur .do1011-panneau-unites-mobile h4 {
  padding-bottom: 14px !important;
}

body #do1011-panneau-popup-id-mobile .do1011-description>p>span {
  margin-bottom: 0;
  text-align: center;
}

body #do1011-panneau-popup-id-mobile .do1011-description {
  font-family: var(--do1011-font-primary);
  font-weight: 500;
  color: var(--do1011-c-near-black);
  text-transform: none;
  font-size: 18px;
  text-align: center;
  margin-top: 20px;
}

body #do1011-tooltip {
  font-family: var(--do1011-font-primary);
  font-weight: 400;
  font-size: 14px;
  background: #c9b8a1;
  color: #fff;
  padding: 10px;
  margin-right: 2px;
  margin-bottom: 4px;
  border-radius: 0;
}

#do1011-panneau-selecteur.inline .do1011-panneau-unites {
  margin-top: 0;
  background: var(--do1011-c-bone);
  height: auto;
  max-height: 100%;
  display: flex;
  gap: 32px;
  padding: 4vw 2vw 2vw 2vw;
  flex-direction: column;
  justify-content: start;
  pointer-events: all;
  justify-content: center;
}

body #do1011-panneau-selecteur.inline .do1011-titre-etage {
  position: relative;
  top: 0;
}

#do1011-panneau-selecteur .do1011-btn-filtre {
  margin: 0 4px;
}

#do1011-panneau-selecteur.inline .do1011-panneau-detail-unite {
  align-items: start !important;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  background: var(--do1011-c-bone);
  pointer-events: all;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id-mobile .do1011-etat .type {
  margin-right: 16px;
}

body #do1011-panneau-selecteur .do1011-btn-unite-mobile.disponible.filtre {
  background: #cfb13d !important;
  border-color: #cfb13d !important;
}

body #do1011-panneau-selecteur .do1011-panneau-etage-plan-mobile .do1011-btn-unite-mobile.active:not(.indisponible) {
  background: var(--do1011-c-forest);
  border-color: var(--do1011-c-forest);
  color: #fff;
}

body #do1011-panneau-selecteur.inline #do1011-panneau-popup-id {
  background: var(--do1011-c-bone);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 4vw 0 2vw;
  pointer-events: all;
}

@media screen and (min-width: 1400px) {
  #do1011-panneau-selecteur.inline .do1011-panneau-detail-unite {
    margin-bottom: 0 !important;
  }
}

@media screen and (min-width: 1900px) {
  #do1011-panneau-selecteur.inline .do1011-panneau-detail-unite {
    margin-bottom: 0 !important;
  }
}

#do1011-panneau-selecteur.inline {
  height: auto;
  background: var(--do1011-c-navy);
}

@media (min-width: 1201px) {
  body #do1011-panneau-popup-id-mobile {
    display: none;
  }

  #do1011-panneau-selecteur.inline {
    height: auto;
  }

  body #do1011-panneau-selecteur.inline .do1011-btn-filtre small {
    font-size: 100%;
    margin-top: 0;
  }
}

/* === Default / no-selection placeholder panel === */

#do1011-img-batiment-defaut {
  width: 100vw;
  height: 80%;
  background: var(--do1011-c-navy);
  position: relative;
}

#do1011-sel-etages-sol {
  width: 100%;
}

#do1011-img-batiment-defaut-sol {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 4px;
  background-color: #fff;
}

.do1011-img-batiment-defaut-etage {
  width: 80%;
  border-top: 2px solid #fff;
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: start;
  cursor: pointer;
  padding-right: 3%;
}

.do1011-img-batiment-defaut-etage.active,
.do1011-img-batiment-defaut-etage:hover {
  background: hsla(0, 0%, 100%, 0.2);
}

.do1011-img-batiment-defaut-etage>.do1011-etage-numero {
  font-size: 42px;
  font-family: var(--do1011-font-primary);
  font-weight: 500;
  margin-left: 5%;
  transition: margin 0.1s ease-out;
  color: #fff;
}

.do1011-img-batiment-defaut-etage:hover>.do1011-etage-numero {
  margin-left: 6%;
}

.do1011-panneau-etages {
  padding-top: 0;
}

.do1011-panneau-etages #do1011-img-batiment-defaut-sol {
  width: 18%;
}

.do1011-panneau-etages .do1011-img-batiment-defaut-etage {
  width: 15%;
  justify-content: end;
  cursor: pointer;
}

.do1011-panneau-etage-plan-defaut {
  padding-left: 10%;
  padding-right: 10%;
  position: relative;
}

.do1011-panneau-etage-plan-defaut .do1011-btn-unite-defaut {
  color: var(--do1011-c-navy);
  width: 80px;
  display: inline-block;
  background: 0 0;
  padding: 6px;
  font-size: 20px;
  margin: 5px;
  text-align: center;
  cursor: pointer;
  border: 0.5px solid var(--do1011-c-navy);
}

.do1011-panneau-etage-plan-defaut .do1011-btn-unite-defaut.active,
.do1011-panneau-etage-plan-defaut .do1011-btn-unite-defaut:hover {
  background: var(--do1011-c-navy) !important;
  color: #fff !important;
}

.do1011-panneau-etage-plan-defaut .do1011-btn-unite-defaut.filtre {
  background: #fff;
}

.do1011-panneau-etage-plan-defaut .do1011-btn-unite-defaut.active:not(.indisponible) {
  background: var(--do1011-c-navy) !important;
  color: #fff !important;
}

body #do1011-panneau-selecteur .do1011-btn-unite-mobile.indisponible,
body #do1011-panneau-selecteur .do1011-btn-unite-mobile.attente {
  background: #666b68 !important;
  border-color: #666b68 !important;
  color: #bdbab5 !important;
}

body #do1011-panneau-selecteur .do1011-btn-unite-mobile.indisponible:not(.active),
body #do1011-panneau-selecteur .do1011-btn-unite-mobile.attente:not(.active) {
  opacity: 0.3;
}

#do1011-panneau-selecteur .do1011-panneau-selections-mobile {
  padding: 0 0 50px !important;
  background: var(--do1011-c-bone);
}

.do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper {
  left: 0;
  width: 100%;
  padding: 25px;
  margin-top: 0;
}

.do1011-panneau-selections-mobile #do1011-panneau-etage-wrapper .do1011-panneau-etage-plan {
  position: relative;
}

.do1011-panneau-etage-wrapper .nom-rue {
  position: absolute;
  font-family: var(--do1011-font-primary);
  font-weight: 400;
  font-size: 18px;
  color: #7c7773;
  white-space: nowrap;
}

.do1011-panneau-etage-wrapper .rdv {
  width: 6vw;
  min-width: 100px;
  height: auto;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
}

.do1011-etat .do1011-etat-titre {
  justify-self: center;
  margin-bottom: 32px;
}

.do1011-actions-mobile {
  color: var(--do1011-c-forest);
  font-family: var(--do1011-font-primary);
}

.do1011-numero-etage {
  position: absolute;
  inset: 0;
  aspect-ratio: 2000 / 1037;  /* garde la hauteur de l'image sans le svg */
  pointer-events: none;
}
.etage-num {
  position: absolute;
  transform: translate(-50%, -50%); /* centre la pastille sur le point */
  width: 2.5%;                      /* = 50px sur 2000, suit l'échelle de l'image */
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 8px;
  font-weight: 700;
  font-size: clamp(10px, 1.23vw, 26px);
  color: var(--do1011-c-forest);
}

.etage-num.hover{
  background-color: var(--do1011-c-terracotta);
  color: #fff;
}